文章目录

Task01:概览西瓜书+南瓜书第1、2章

由 天空David 发布

吃瓜笔记:
3.13 15:00

1.2 基本术语:
“模型”:西瓜书中泛指从数据中学得的结果。有文献用模型指全局性结果(例如一颗决策树),而用“模式”指局部性结果(例如一条规则)
数据集(data set):记录的集合
示例(instance)、 样本(sample):关于一个事件或对象的描述
属性(attribute)、特征(feature):反映事件或对象在某方面的表现或性质的事项
属性空间(attribute space)、样本空间(sample space)、输入空间:属性张成的空间
由于空间中的每个点对应一个坐标向量,因此我们也把一个示例称为一个“特征向量”(feature vector)

IMO:一个示例可以被理解为sql中的一条记录,每个属性都是一个特征向量

假设(hypothesis):学得模型对应了关于数据的某种潜在规律
真相、事实(ground-truth):潜在规律
西瓜书中有时将模型称为“学习器”(learner),可看作学习算法在给定数据和参数空间上的实例化

若预测离散值,如“好瓜”,“坏瓜”,此类学习任务称为“分类”(classification)。多个类别称为多分类(multi-class classification);若只有两个类别,则称为“二分类”(binary classification),其中一个称为“正类”(positive class),另一个为“反类”或“负类”(negative class)
若预测连续值,例如西瓜成熟度0.95、0.37,此类学习任务称为“回归”(regression)

对西瓜做“聚类”(clustering):将训练集中的西瓜分成若干组,每组称为一个“簇”(cluster);这些自动形成的簇可能对应一些潜在的概念划分,例如“浅色瓜”、“深色瓜”,“本地瓜”、“外地瓜”(事先不知道,而且学习过程中使用的训练样本通常不拥有标记信息)

监督学习(supervised learning):代表有“分类”,“回归”
无监督学习(unsupervised learning):代表有“聚类”
泛化(generalization):模型适用于新样本的能力
通常假设样本空间中全体样本服从一个未知“分布”(distribution),我们获得的每个样本都是独立地从这个分布上采样获得的,即“独立同分布”(independent and identically distributed,缩写i.i.d.)

1.3 假设空间
归纳与演绎是科学推理的两大基本手段。
归纳(induction):从特殊到一般的"泛化"(generalization)过程,即从具体的事实归接触一般性规律
演绎(deduction):从一般到特殊的"特化"(specialization)过程,即从基础原理推演出具体状况

归纳学习(inductive learning)
广义:从样例中学习
狭义:从训练数据学得概念(concept),又称"概念学习"(其中最基本的是布尔概念学习,即"是好瓜"或"不是好瓜"可表示为0/1布尔值)或"概念形成"
痛点:学得泛化性能好且语义明确的概念十分困难,现实常用的技术大多是产生"黑箱"模型

我们可以把学习过程看作一个在所有假设(hypothesis)组成的空间中进行搜索的过程,搜索目标是找到与训练集“匹配”(fit)的假设,即能够将训练集中的瓜判断正确的假设。

对假设空间进行搜索的策略:自顶向下、从一般到特殊,或自底向上、从特殊到一般,搜索过程中可以不断删除与正例不一致的假设或和反例一致的假设,最终将会获得与训练集一致(即对所有训练样本能够进行正确判断的假设),这就为学得的结果。
IMO:对假设空间的搜索策略和剪枝策略暂不深究

“版本空间”(version space):一个与训练集一致的“假设集合”
“假设空间”:属性所有可能取值组成的可能的样本

1.4 归纳偏好

NFL定理有点意思(没有免费的午餐)


1.5发展历程
二十世纪五十年代到七十年代初,人工智能研究处于“推理期”,“逻辑理论家”(Logic Theorist)程序,以及“通用问题求解”(General Problem Solving)程序。想要更智能就必须设法使机器拥有“知识”
二十世纪七十年代中期,人工智能研究进入“知识期”,大量专家系统问世。机器仍不能自己学习知识
五十年代中后期,基于神经网络的“连接主义”(connectionism)学习开始出现
六七十年代,基于逻辑表示的“符号主义”(symbolism)学习技术蓬勃发展
八十年代,“从样例中学习”的一大主流使符号主义学习,代表:决策树(decision tree)和基于逻辑的学习。典型的决策树以信息论为基础,以信息熵最小化为目标,直接模拟了人类对概念进行判定的树形流程。基于逻辑学习的著名代表是归纳逻辑程序设计(Inductive Logic Programming,简称ILP)
连接主义最大的局限是其“试错性”,参数调节上失之毫厘,学习结果可能谬以千里
1.6应用现状 略过
1.7阅读材料 略过

第二章 模型的评估与选择
2.1经验误差与过拟合
错误率(error rate):分类错误的样本数占样本总数的比例
如果在m个样本中有a个样本分类错误,则错误率E = a/m
精度(accuracy):1-错误率
学习器在训练集上的误差称为“训练误差”(traning error)或“经验误差”(empirical error)
在新样本上的误差称为“泛化误差”(generalization error)
欠拟合如何解决:如在决策树学习中扩展分支、在神经网络学习中增加训练轮数
过拟合如何解决:无法彻底避免,只能“缓解”

2.2评估方法
2.2.1 “留出法”(hold-out)训练测试73开
注意:训练/测试集的划分要尽可能保持数据分布的一致性,如“分层采样”(stratifiled sampling)
痛点:因需要划分训练/测试集,会降低评估结果的保真性(fidelity),没有完美的解决方案,常见做法是将大约2/3~4/5的样本用于训练,剩余样本用于测试
2.2.2 “交叉验证法”(cross validation)
先将数据集D划分为k个大小相似的互斥子集,每个子集都尽可能保持数据分布的一致性(分层采样)然后每次用k-1个子集的并集作为训练集,余下的那个子集作为测试集;这样就可获得k组训练/测试集,从而可进行k次训练和测试,最终返回的是这k个测试结果的均值(也被称为k折交叉验证)(k-fold cross validation),k的常用取值为10
若数据集D中包含m个样本,若令k=m,则得到了交叉验证法的一个特例:留一法(Leave-One-Out,简称LOO),k-1作为训练集,最后一个作为测试集,这种方法得出的结果与训练整个测试集的期望值最为接近,但开销巨大。
2.2.3 自助法(bootstrapping)
它直接以自助采样法(bootstrap sampling)给定包含m个样本的数据集D,每次随机从D中挑选一个样本,将其拷贝放入D',然后将该样本放回初始数据集D中,使得该样本在下次采样时仍有可能被采到;重复执行m次后,就得到了包含m个样本的数据集D'。
显然一部分多次出现,另一部分不出现,概率约等于0.368,(西瓜书上有简单推导)

优势:在数据集较小、难以有效划分训练/测试集时很有用。能从初始数据集中产生多个不同的训练集,对集成学习等方法有很大的好处

2.2.4 调参与最终模型
参数值往往不是“最佳”值,是在计算开销和性能估计之间进行折中的结果
测试数据:学得模型在世纪使用中遇到的数据
“验证集”:模型评估与选择中用于评估测试的数据

2.3性能度量(performance measure)
回归任务常用的性能度量:“均方误差”(Mean Squared Error)


2.3.1错误率与精度
错误率:分类错误的样本数占样本总数的比例
精度:分类正确的样本数占样本总数的比例
2.3.2查准率(precision)、查全率(recall)与F1
查准率P=TP/(TP+FP)
查全率R=TP/(TP+FN)
一般来说,查准率高时,查全率往往偏低;而查全率高时,查准率往往偏低
“P-R曲线”:查准率-查全率曲线
当一个学习器的曲线完全在另一个学习器曲线的外侧时,则可断定这个学习器性能好
或使用“平衡点”(Break-Event Point,BEP)比较,为“查准率”=“查全率”时的取值
但BEP过于简化,F1是基于查准率和查全率的调和平均(harmonic mean)

加入有多个二分类混淆矩阵,如多次进行训练/测试等
则可先在各个混淆矩阵上分别计算出查准率和查全率,再取平均值,则可得到“宏查准率”(macro-P)、“宏查全率”(macro-R)以及相应的“宏F1”(macro-F1)

还可以先将各混淆矩阵的对应元素进行平均,得到TP、FP、TN、FN的平均值,再计算出“微查准率”(micro-P)、"微查全率"(micro-R)和“微F1”(micro-F1)
2.3.3ROC与AUC
ROC全称“受试者工作特征”(Receiver Operating Characteristic)曲线:根据学习器的预测结果对样例进行排序,按此排序诸葛把样本作为正例进行预测,ROC曲线的纵轴是“真正例率”(True Positive Rate,TPR),横轴是“假正例率”(False Positive Rate,FPR)
TPR=TP/(TP+FN)
FPR=FP/(TN+FP)

现实任务中仅能获得有限个(真正例率、假正例率)坐标时,无法产生光滑的ROC曲线,可近似
**暂时略过

2.3.4代价敏感错误率与代价曲线
如错误地将患者诊断为健康人与错误地将健康人诊断为患者,都是犯了“一次错误”,后者带来进一步检查的麻烦,前者则可能丧失最佳治疗时机
由此,可为错误赋予“非均等代价”(unequal cost)

以二分类任务为例,可以设计一个“代价矩阵”(cost matrix)
**暂时略过

2.4比较检验
性能因素:
①泛化性能和测试集上的性能对比结果未必相同
②测试集上的性能与测试集本身的选择有很大的关系
③很多机器学习算法本身有一定的随机性,即使用相同的参数在同一个测试集上多次运行,其结果也会有不同

统计假设检验(hypothesis test)为我们进行学习器性能比较提供了重要依据

2.4.1假设检验 **学力有限,公式后期再研究
2.4.2交叉验证t检验
2.4.3McNemar检验
2.4.4Friedman检验与Nemeyi后续检验
2.5偏差与方差
“偏差-方差分解”(bias-variance decomposition)是解释学习算法泛化性能的一种重要工具

泛化误差可分解为偏差、方差与噪声之和

一般来说,偏差与方差是有冲突的,称为偏差-方差窘境(bias-variance dilemma)
2.6阅读材料


暂无评论

发表评论