机器学习笔记-14

机器学习系统设计

1.导入

以垃圾邮件分类器为例子,当我们想要做一个能够区分邮件是否为垃圾邮件的项目的时候,首先在大量垃圾邮件中选出出现频次较高的10000-50000词作为词汇表,并为其设置特征,在对邮件分析的时候输出该邮件的特征判断是否为垃圾邮件。

假设词汇表为(word1,word2,word3),其中word1和word3是垃圾邮件中出现频次很高的,word2是非垃圾邮件中常出现的。比如一个邮件的输出为(1,0,1),意思就是邮件中含有word1、word3,没有word2,那么可以判定为垃圾邮件。

注意词汇表中不止包含垃圾邮件中的词还包括非垃圾邮件出现的词,上述例子中word2就是从非垃圾邮件中选取的。

上面的例子中的word1、word2、word3都是随便起的名字不具有任何含义!!

如果还没有理解的可以看看这个视频

2.误差分析(Error Analysis)

依旧以垃圾邮件分类器为例子,当我们算法将一些垃圾邮件、非垃圾邮件错误分类时,我们可以把这些被误分的邮件统计起来看看有什么共同的特征和规律,以此来设计新特征、改进算法。

为了方便统计引入数值评价指标"误差率",这个大家应该都懂。

在验证集上做误差分析,不要在测试集上做误差分析。

在我们新开始一个机器学习问题时,可以先快速设计一个简单粗暴的算法,随后通过误差分析找到算法的缺陷以及优化的方向。

不用学习曲线是因为最开始的时候样本少画不出来。

3.不对称性分类的误差评估

偏斜类(skewed classes):正负样本比例非常大。

当遇到偏斜类问题时,比如说一个二元分类问题的训练集中一共有10个样本,其中9个y=1,只有1个y=0,这时就会产生只要我们的算法一直输出y=1误差率就会很小,但是这并不能泛化,所以要用其他的数值评价指标来评判算法是否足够优秀。

继续以垃圾邮件分类器为例子。

查准率(Precision) :对于所有我们预测是垃圾邮件的邮件中有多大比例是真的是垃圾邮件, 查准率 = 预测结果为垃圾邮件的邮件中真的是垃圾邮件的邮件数量 预测出的垃圾邮件数量 查准率=\frac{预测结果为垃圾邮件的邮件中真的是垃圾邮件的邮件数量}{预测出的垃圾邮件数量} 查准率=预测出的垃圾邮件数量预测结果为垃圾邮件的邮件中真的是垃圾邮件的邮件数量。查准率越高越好。

召回率(Recall) :对于所有的垃圾邮件我们有多大比例能发现他是垃圾邮件, 召回率 = 预测值和真实值都是垃圾邮件的邮件数量 真正的垃圾邮件数量 召回率=\frac{预测值和真实值都是垃圾邮件的邮件数量}{真正的垃圾邮件数量} 召回率=真正的垃圾邮件数量预测值和真实值都是垃圾邮件的邮件数量。同样召回率也是越高越好。

拥有高查准率和高召回率的模型是一个好的模型,但是根据查准率和召回率的定义我们可以看出二者是此消彼长的关系,所以选择一个好的模型需要另一个数值评价指标对查准率和召回率进行平衡取舍。以P代表查准率、R代表召回率,故而定义F值 或 F 1 F_1 F1值:
F = 2 P R P + R F=2\frac{PR}{P+R} F=2P+RPR

F值越高的越好。

除此之外,在我们定义机器学习问题的特征时,可以将心比心,自己尝试一下假如自己是专业人士,用自己所给定的特征能否推出结果。比如假设你是一个卖房子的,只设计了一个房子面积的特征,并没有给其他的特征比如地段、是否精装、房型等等,要输出价格,显然是不能推出的,所以同样的机器学习算法也不能输出对应的假设。

相关推荐
资讯分享周43 分钟前
BOE(京东方)“向新2025”年终媒体智享会落地成都 持续创新引领产业步入高价值增长新纪元
人工智能·媒体
IT古董1 小时前
【漫话机器学习系列】014.贝叶斯法则(Bayes Theorem)
人工智能·机器学习
Crossoads2 小时前
【汇编语言】端口 —— 「从端口到时间:一文了解CMOS RAM与汇编指令的交汇」
android·java·汇编·深度学习·网络协议·机器学习·汇编语言
拓端研究室2 小时前
【专题】2024年悦己生活消费洞察报告汇总PDF洞察(附原数据表)
人工智能
月眠老师2 小时前
拓展AI超级智能后的人类生活场景
人工智能·生活
是十一月末3 小时前
Opencv实现图片的边界填充和阈值处理
人工智能·python·opencv·计算机视觉
机智的叉烧3 小时前
前沿重器[57] | sigir24:大模型推荐系统的文本ID对齐学习
人工智能·学习·机器学习
凳子花❀3 小时前
强化学习与深度学习以及相关芯片之间的区别
人工智能·深度学习·神经网络·ai·强化学习
吉大一菜鸡4 小时前
FPGA学习(基于小梅哥Xilinx FPGA)学习笔记
笔记·学习·fpga开发
泰迪智能科技015 小时前
高校深度学习视觉应用平台产品介绍
人工智能·深度学习