WEB开发网
开发学院软件开发Java 用 WEKA 进行数据挖掘,第 2 部分: 分类和群集 阅读

用 WEKA 进行数据挖掘,第 2 部分: 分类和群集

 2010-06-23 00:00:00 来源:WEB开发网   
核心提示: 那么这个额外的步骤为什么在此模型中如此重要呢?这个问题就是所谓的过拟合:如果我们提供过多 数据用于模型创建,我们的模型虽然会被完美创建,用 WEKA 进行数据挖掘,第 2 部分: 分类和群集(4),但只针对的是该数据,请记住:我们想使用此模型来预测未来的未知数;我们不是想使用此模型来准确地预测我

那么这个额外的步骤为什么在此模型中如此重要呢?这个问题就是所谓的过拟合:如果我们提供过多 数据用于模型创建,我们的模型虽然会被完美创建,但只针对的是该数据。请记住:我们想使用此模型来预测未来的未知数;我们不是想使用此模型来准确地预测我们已经知道的值。这就是为什么我们要创建一个测试集。在创建了模型后,我们要进行检查以确保我们所创建模型的准确性不会在测试集降低。这就保证了我们的模型会准确地预测出未来的未知值。使用 WEKA 会看到它的实际效果。

这还引出了分类树的另一个重要概念:修剪。修剪 正如其名字所指,意思是删减分类树的枝条。那么为什么有人会想要将信息从分类树中删除呢?还是因为过拟合的缘故。随着数据集的增大以及属性数量的增长,我们所创建的树就会越来越复杂。理论上讲,一个树可以具有 leaves = (rows * attributes)。但那又有何益处呢?就预测未来的未知数而言,它根本帮不到我们,因它只适于我们现有的训练数据。因此我们需要的是一种平衡。我们想要我们的树尽量简单,节点和枝叶尽量少。同时我们还想要它尽量地准确。这就需要进行权衡,我们不久就会看到。

在使用 WEKA 前,有关分类我还想指出最后一点,那就是假正和假负。假正指的是这样的一个数据实例:我们创建的这个模型预测它应该是正的,但事实相反,实际值却是负的。同样地,假负指的是这样一个数据实例:我们创建的这个模型预测它应该是负的,但事实相反,实际值却是正的。

这些错误表明在我们的模型中出了问题,我们的模型正在错误地分类某些数据。虽然可能会出现不正确的分类,但可接受的错误百分比由模型创建者决定。比如,如果是在医院里测试心脏监视器,很显然,将需要极低的错误百分比。而如果您只是在有关数据挖掘的文章中挖掘一些虚构的数据,那么错误率可以更高一些。为了使之更进一步,还需要决定可以接受的假负与假正的百分比率是多少。我立即想到的一个例子就是垃圾邮件模型:一个假正(一个真邮件被标记为了垃圾邮件)要比假负(一个垃圾消息未被标记为垃圾邮件)更具破坏性。在像这样的例子中,就可以判断假负:假正的比率最低为 100:1 才是可以接受的。

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:WEKA 进行 数据挖掘

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接