这学期,将学习周志华老师的《机器学习》这本书,一周两章,每章我都会做上一点笔记,笔记或多或少,或工整或潦草,一切根据我当时的时间和心情而定,简单的定义或者易理解的知识我可能附上定义甚至不写,不懂的地方会特别强调指出。所以这个学习系列我称为《机器学习》随心记。
整个随心记的每章由两部分组成,一个是我阅读时产生的问题,我会在解决后在博客的评论或者再编辑解答相应问题;另一个就是基础知识定义以及我对个别定义公式的理解。如果有错误,欢迎指正!如果有需要交流的同志,可以联系Q122643224~附上CSDN学习交流。
第一部分
问题:
P24 第一段话是什么意思?P=NP是什么意思?
首先介绍多项式时间这个概念,在计算复杂度理论中,指的一个问题的计算时间不大于问题的多项式倍数。
那么P就是指的是求解决一个问题的时间的问题。
NP就是求对于一个问题验证一个答案是否正确的时间的问题。
P38 第二段话中全都分类正确的概率是(m m’)是什么意思?
是组合的另一种写法,上下颠倒就行。
P38 左边注释的a是什么?
a是自己给定的判定错误的上限,意思就是自己认为在什么概率内允许这个预测是错误的。
P38 对最后一段及39页第一段理解不了?后面的t分布也有点理解不了?
到现在也还是有点理解不了
P45 E是什么意思?
期望的意思
P45 算法的期望泛化误差怎么会要平方,式(2.41)的第一行。
为了求出的结果为恒正。
P45 式(2.41)第四行的内容怎么到下一步消去了?
主要是要令第一个括号里面的式子为零。
证法如下:
由(2.37)
式第二项可以转化为前一项的期望,由于这个是一个常数,所以常数的期望为本身,可以约去。
第二部分
第二章 模型评估与选择
本章讲述的主要是对于模型的选择的问题,对检测指标,以及一些模型比较方法进行了比较详细的介绍。
P23
错误率:如果m个样本有a个分类错误,则错误率E=a/m
精度:1-E
训练误差:模型(学习器)在训练集上的误差称为训练误差。
过拟合:把训练样本自身的一些特点当作了所有潜在样本都会具有的一般性质,导致泛化性能下降。
(注:过拟合无法彻底避免,能做的只是减小其风险)
P24-P28
评估方法
留出法:直接将数据集D分为两个互斥的集合。其中一个作为训练集S,另一个作为测试集T。常见的方法是将3/2~4/5的样本用于训练。
交叉验证法:将数据集划分为k个大小相似的互斥子集,每个子集通过分层采样得到,每次用k-1个子集的并集作为训练集,余下的那个子集作为测试集。。从而可以进行k次训练和测试,返回k个测试结果的平均值。常用的k值为10
(注:两种方法都要多次实验取平均值)
交叉验证法的特例,留一法:每个子集就是一个样本。只能针对数据集较小的用。
自助法(以自助采样法为基础):给定m个样本的数据集,对它进行采样产生数据集D’,每次随机从D中挑选一个样本,拷贝放入D’,重复m次,就可以得到包含m个样本的数据集D’。其中样本不被采集到的概率为0.368。我们将D’作为训练集,将D\D’作为测试集。(\为集合减法)
P28-P36
性能度量
错误率:
精度:
查准率(Precision):真正例/(真正例+假正例)
查全率(Recall):真正例/(真正例+假反例)
F1度量:F1=2*P*R/(P+R) 基于查准率与查全率的调和平均。更一般的形式为F
TPR = TP/(TP+FN) 真正利率
FPR = TP/(TN+FP) 假正利率
AUC:ROC曲线下的面积
代价敏感错误率:
代价曲线:
P37
比较检验
假设检验:二项分布,t分布
在38页里提到了二项分布,送上360百科解释:
t分布:
P40
交叉验证t检验:两个学习器在第i折训练/测试集上的结果,如果求差分别为,delta1,delta2,…,deltak,求出变量Tt小于临界值的,假设就不能被拒绝,即两个学习器没有显著差别。
5*2交叉验证:做5次2折交叉验证
P41
McNemar检验
P42
Friedman检验
Nemenyi后续检验
先用前一个检验是否相同,后面一个检验性能谁更好。
P44
偏差-方差分解
式2.42证明泛化误差是偏差、方差和噪声之和。
偏差:度量了学习算法的期望预测与真实结果的偏离程度,表示拟合能力
方差:度量了训练集的变动所导致的的学习性能的变化,表示数据扰动的影响
噪声:表达了期望泛化误差的下界,表示学习问题的难度。