首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >机器学习,去除噪声类(而不是单个实例)

机器学习,去除噪声类(而不是单个实例)
EN

Stack Overflow用户
提问于 2013-06-19 05:22:42
回答 2查看 199关注 0票数 1

我的问题是关于一个数据集,它经过交叉验证(CV)后,可以帮助我识别导致最大误差量的类。例如,考虑以下CV数据:

代码语言:javascript
运行
复制
               TP Rate   FP Rate   Precision   Recall  F-Measure   ROC Area  Class
                 0.194     0.015      0.315     0.194     0.24       0.786    A
                 0.369     0.024      0.571     0.369     0.449      0.844    B
                 0.096     0.015      0.167     0.096     0.122      0.688    C
                 0.478     0.015      0.558     0.478     0.515      0.858    D
                 0.648     0.01       0.768     0.648     0.703      0.904    E
                 0.481     0.019      0.82      0.481     0.606      0.928    F
                 0.358     0.012      0.646     0.358     0.461      0.862    G
                 1         0.001      0.973     1         0.986      1        H
                 0.635     0.005      0.825     0.635     0.717      0.959    I
                 0.176     0.003      0.667     0.176     0.278      0.923    J
                 0.999     0.346      0.717     0.999     0.835      0.984    K
Weighted Avg.    0.704     0.169      0.692     0.704     0.671      0.931

从这个例子中,很明显,K类降低了组合精度(请注意FP率,这在我的上下文中很重要)。现在我的问题是,完全忽略训练集中的K类是明智的吗?或者,只考虑对更准确的类进行测试实例分类会更好(例如,在本例中,除了K之外的任何类)。

我反对忽略整个类,比如K,那就是一个人可能会强迫一个实际属于K类的测试实例去适应其他的类,这似乎是不合逻辑的。

有什么建议吗?

谢谢

EN

回答 2

Stack Overflow用户

发布于 2013-06-19 19:35:05

这真的取决于你解决的实际问题,例如:类是否反映了客观的基本事实(例如,试图将文本分类给作者),或者类是任意的(例如,对“圆形”对象与“非圆形”对象进行分类)?第一类错误与第二类错误的相对权重是多少,召回(覆盖率)有多重要?

然而,我可以建议的一个实用方法是分层分类。

具体地说:使用CV混淆矩阵,找到未整齐分隔的类对(或组);将它们组合在一起作为单个类;然后训练二级分类器,以仅分离属于该组的类。这可能会导致更准确的分类,特别是如果您发现为了对特定组进行分类,另一组特征/分类算法会更好。

例如,假设您的混淆矩阵是:

代码语言:javascript
运行
复制
       class/classified as
               |A |B |C |D 
              A|10|2 |1 |3
              B|0 |15|0 |1
              C|0 |0 |21|16
              D|0 |0 |9 |11

显然,C和D之间存在着大量的混淆。你可以只用A,B和E (C和D的组合)这3个类别来重新训练同一个分类器,然后在找到E的时候尝试只用一个新的分类器来分离C和D。

票数 2
EN

Stack Overflow用户

发布于 2013-06-19 06:02:07

我的第一个想法是尝试找到一种方法,将成本分配给误报,从而降低K类的风险。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17179201

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档