小编Mar*_*ore的帖子

如何计算roc曲线?

我写了一个分类器(高斯混合模型)来分类五个人类行为.对于每次观察,分类器计算属于群集的后验概率.

我想要用阈值参数化我的系统的性能,值为0到100.对于每个阈值,对于每个观察,如果属于一个簇的概率大于阈值,我接受分类器的结果否则我丢弃它.

对于每个阈值,我计算真阳性,真阴性,假阳性,假阴性的数量.

比我计算两个函数:灵敏度和特异性为

sensitivity = TP/(TP+FN);

specificity=TN/(TN+FP);
Run Code Online (Sandbox Code Playgroud)

在matlab中:

plot(1-specificity,sensitivity);
Run Code Online (Sandbox Code Playgroud)

有ROC曲线.但结果并不是我所期望的.

这是丢弃,错误,纠正,敏感性和特异性功能的图,改变了一个动作的阈值.

这是丢弃,错误,纠正,敏感性和特异性功能改变阈值的图

这是一个动作的ROC曲线图 这是ROC曲线的图

这是同一动作的ROC曲线的主干 在此输入图像描述

我错了,但我不知道在哪里.也许我错误地计算了FP,FN,TP,TN,特别是当分类器的结果小于阈值时,所以我丢弃了.当丢弃时我必须增加什么?

matlab classification false-positive threshold roc

8
推荐指数
2
解决办法
2万
查看次数

在MATLAB中可视化高斯混合模型聚类

我必须编写一个分类器(高斯混合模型)来用于人类动作识别.我有4个视频数据集,每个数据包含12个我想要识别的动作.我选择其中3个作为训练集,其中1个作为测试集.对于每个帧,我提取了907个我观察到的特征.在我在训练集上应用GM模型之前,我在其上运行PCA.所以我只考虑50个组件.

我构建了GM模型,每个动作都有一个集群.

gm = gmdistribution.fit(data, cluster_num, 'Options', options, 'CovType','diagonal','Regularize', 1e-10, 'SharedCov', true);
Run Code Online (Sandbox Code Playgroud)

现在我希望有一个视觉反馈,以了解群集是否运行良好或数据是否被错误分类.

有可能有这样的事吗? 在此输入图像描述

matlab plot classification cluster-analysis visualize

6
推荐指数
1
解决办法
5704
查看次数

主成分分析

我必须编写一个分类器(高斯混合模型),用于人类动作识别.我有4个视频数据集.我选择其中3个作为训练集,其中1个作为测试集.在我在训练集上应用gm模型之前,我在其上运行pca.

pca_coeff=princomp(trainig_data);
score = training_data * pca_coeff;
training_data = score(:,1:min(size(score,2),numDimension));
Run Code Online (Sandbox Code Playgroud)

在测试步骤中,我该怎么办?我应该在测试数据上执行新的princomp

new_pca_coeff=princomp(testing_data);
score = testing_data * new_pca_coeff;
testing_data = score(:,1:min(size(score,2),numDimension));
Run Code Online (Sandbox Code Playgroud)

或者我应该使用我为训练数据计算的pca_coeff?

score = testing_data * pca_coeff;
testing_data = score(:,1:min(size(score,2),numDimension));
Run Code Online (Sandbox Code Playgroud)

matlab pca princomp

5
推荐指数
1
解决办法
9287
查看次数

在gwt中使用html模板

我想使用这个外部HTML模板实现MVP gwt应用程序.

是否有可能创建HTML页面并在gwt项目中使用它们而不是在"view"类中编写java代码来生成HTML?

html mvp gwt gwt-mvp

3
推荐指数
1
解决办法
2593
查看次数

具有相同地址的i2c从设备

我正在开发一个STM32 F107上的嵌入式系统,它通过i2c与2个从属设备进行通信:一个rfid阅读器rfid手册和一个eeprom模块eeprom手册.这两个器件具有相同的从地址A0(用于写操作)和A1(用于读操作).如果只使用一个设备,它可以正常工作.但如果我同时使用它们,我就会遇到问题.首先我从rfid阅读器读取卡片ID,然后我在eeprom中写入它(直到这里一切都好),当我尝试从rfid阅读器再次读取时,我得到错误的输入数据,即使是我换了卡.发生了什么以及我可以做些什么来解决这个问题?

embedded rfid stm32 i2c eeprom

2
推荐指数
1
解决办法
2077
查看次数