第12章 机器学习系统设计

课时93 确定执行的优先级 prioritizing what to work on: Spam classification example
在接下来的视频中,我们主要学习机器学习系统的设计。他在构建大型机器学习系统时非常有用。
首先,我们需要决定的是如何选择并表达特征向量x。如选择一个由100个可能出现在垃圾邮件或非垃圾邮件的关键词构成的列表。
在这里插入图片描述
为了构建这个分类器算法,我们可以做更多事,例如:1、收集更多数据拥有更多样本2、基于邮件的路由信息开发出一系列更sophisticated的特征3、基于邮件的正文信息开发出更sophisticated的特征4、为探测刻意的拼写错误开发复杂的算法
之后要学的误差分析就是告诉你怎么用一个更加系统性的方法,从一堆不同的方法中,选取哪一个比较合适。

课时94 误差分析error analysis
研究一个机器学习问题,最明智的做法是先用短时间做一个quick and dirty的系统,即使学习效果不一定好,但是是一个有力的工具来决定我们接下来的时间要怎么改进。
1.从一个简单的快速实现的算法开始,实现该算法并用交叉验证集数据测试这个算法
2.绘制学习曲线,决定是增加更多数据,或者添加更多特征,还是其他选择
3.进行误差分析:人工检查交叉检验集中我们算法中产生预测误差的实例,看看这些实例是否有某种系统化的趋势
如检查交叉验证集中算法预测错误的邮件,看是否能将这些邮件按照类分组,如卖药的垃圾邮件,假货垃圾邮件或盗取密码邮件等,看分类器对哪一组邮件的预测误差最大,并着手优化;思考怎么能改进分类器,例如发现是否缺少某些特征,记下这些特征出现的次数;例如记录下错误拼写出现了多少次,异常的邮件路由情况出现了多少次等,然后从出现次数最多的情况着手优化。
另外,误差分析并不能总能帮助我们判断怎么改进,有时我们需要尝试不同的模型进行比较,在模型比较时用数值判断哪一个模型更好更有效,通常我们是看交叉验证集的误差,而不是测试集。

课时95 不对称性分类的误差评估 error metrics for skewed classes
skewed classes: 一个类的数据与另一个类的数据相比多很多,总是预测y为0或1算法的准确性可能更高。
这时用分类精确度并不能很好地衡量算法。合理的评估度量值是查准率和召回率precision recall。
在这里插入图片描述

课时96 精确度和召回率的权衡
当判断是否有癌症的阈值设为大于0.5,也就是当我们更加确信的时候才判断y=1,精确度会升高,召回率降低。
当判断是否有癌症的阈值设为小于0.5,也就是我们不愿遗漏所有可能患癌症的人,精确度降低,召回率升高。可以画图,根据具体情况决定决定临界值。
在这里插入图片描述
自动选取临界值的方法:不同临界值的模型选择在交叉验证集中F1值比较高的临界值。在这里插入图片描述

课时98 机器学习数据
两位老师用不同的算法不同数据量研究了一个问题,并画出不同算法下不同的数据数量对准确率的影响的函数。说明获得足够多的数据量很重要。
在这里插入图片描述
特征x是否有足够的信息来预测y, 并且使用一种需要大量参数的学习算法(这些参数可以拟合复杂的函数,也就是低偏差学习算法)也是使训练误差接近测试误差有效的方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值