Skip to Main Content
Python 机器学习实践:测试驱动的开发方法
book

Python 机器学习实践:测试驱动的开发方法

by Matthew Kirk
January 2018
Intermediate to advanced content levelIntermediate to advanced
211 pages
8h 31m
Chinese
China Machine Press
Content preview from Python 机器学习实践:测试驱动的开发方法
64
4
通过交叉验证最小化误差
在这个时候,我们需要衡量模型的工作情况。为此,我们需要采用之前下载的数据进
行一个交叉验证测试。在这个测试中,我们只需要测量误报率,然后根据它来决定我
们是否需要调整模型。
减少误报
到目前为止,我们建立模型的目标是最小化错误率。这个错误率可以简单表示为错误
分类的数量除以总分类数量。在大多数情况下,我们要的正是这个,但是在垃圾邮件
过滤器中它不是我们所要优化的。我们只是希望尽量减少误报率。误报,也被称为
I
类型误差,它是指模型错误地预测了一个正面的结果,但其实它应该是负面的。
在我们的案例中,如果模型判断一个邮件是垃圾邮件,但是事实上它不是,那么用户
将会丢失邮件。我们希望垃圾邮件过滤器尽量能减少误报。另外,如果我们的模型错
误地把垃圾邮件预测为正常邮件,我们不会太在意。
我们想要最小化的只是垃圾邮件误报数除以总分类。我们也会测量漏报,但是这个数
据没那么重要,因为我们是尽量减少垃圾邮件进入收件箱而不是要消除它。
为了实现这一点,我们首先需要从数据集中获取一些信息。接下来我们会进行详细介
绍。
构建两个折叠
在垃圾邮件训练数据中有一个叫作
keyfile.label
的文件。它包含了该文件是垃圾邮件
还是正常邮件的信息。使用它,我们可以构建交叉验证脚本。首先,我们从设置开始,
包括导入我们使用的包以及一些
IO
和正则表达式库。
classifications. In most cases, this is exactly what we want, but in a spam filter ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Mastering Python for Bioinformatics

Mastering Python for Bioinformatics

Ken Youens-Clark

Publisher Resources

ISBN: 9787111581666