本人根据个人偏好选择一些阅读重点进行笔记
当下的机器学习是建立在概率论与数理统计基础之上,所谓机器学习,其实也不过是一种非常特殊且抽象的,计算机找规律。
本人个人理解糅合西瓜书原文,欢迎看西瓜书本身的案例,更好理解
Tips:分类和回归可以相互转换: 分类->回归:预测 文本A属于不同类别的概率; 回归->分类:预测房价所属区间
这是一个我在看书前不曾了解过的名词,以下所有内容均出自自我理解,极有可能存在谬误。
每个样本拥有一定量的特征(或者属性),每个特征都有一定可能的取值(或者说取值范围),在这样的情况下,如果计算机可以记住每一个特征取值组合下的结果,那么当计算机再次看到相似的值,他就可以直接推断出对应的结果。
但是很明显,现实世界中的特征多种多样、取值范围更是多种多样,属性空间就变成了无穷大(这里的属性空间指的是能完美的表述一个样本的空间,而非上面根据样本进行解释的属性空间),计算机既不可能记住全部的值,也不可能拥有全部的样本。
所以我们对实际情况做出约束(也就是假设),当假设的属性确定、取值范围确定,那么我们就人为的规定出了一个空间,可以被称之为假设空间。
这个假设空间是属性空间的子集,模型根据已有的数据学习并总结规律,当新数据出现时,根据学到的已有知识在假设空间中搜索,并找到与之相近的点,最后得到结果。
对机器学习的泛化性能进行评估,衡量模型泛化能力的评价标准,被称之为性能度量(performance measure)。
根据任务不同,使用的性能度量也就不同,评价结果也就不同。这里选择查准、查全进行讨论。
真实情况 | 预测结果 | |
---|---|---|
|
|
|
|
|
|
|
|
|
查准率意为:查找尽可能正确,即在全部被判定为正确的样本中,真的正确所占的比重,则查准率 P P P表示为:
P = T P T P + F P P = \frac{TP}{TP+FP} P=TP+FPTP
查全率意为:查找尽可能全面,即在全部判定正确的样本中,正确的样本所占的比重,则查准率 R R R表示为:
R = T P T P + F N R = \frac{TP}{TP + FN} R=TP+FNTP
根据两个公式以及表格可知,查全率和查准率是矛盾的度量,因为分子均为 T P TP TP,而分母中存在矛盾变量 F P FP FP 与 F N FN FN。
进一步分析,查全率意在找出尽可能多的好结果,此时统计模型真实情况为正例中预测正确的比重,
我们可以通过降低对正确样本的要求来使得预测结果更偏向于正例,但是这样难免会出现更多的预测错误。
而查准率相反,意在找出预测为正例中真实情况为正例所占的比重,这个比重越大,则这预测为反例中真实情况为反例的比重也越大,即模型的准确率更高,那么查全率就难以得到保障。
所以在样本数一定的情况下, F P FP FP 高则 F N FN FN j极有可能对应下降,反之依然,只有在相对简单的情况下,才可能保证查全与查准均高。
性能度量通常隐式的假设了代价均等,这个与实际情况并不相符,所以产生了代价敏感率。
对于不同的错误,承受的代价并不相同,以医疗举例(西瓜书中自带的例子)来讲,错误的将患者诊断为健康的人带来的影响远远的大于将健康的人诊断为患病的人带来的影响要大。
以虚假信息检测为例(我个人的研究方向):将虚假信息鉴定为真实信息,带来的后果是谣言扩散、恐慌、乃至其他。而将真实信息鉴定为虚假信息,则会有信息的复核等情况。
那么二分类情况下代价敏感错误率的计算为:
E ( f ; D ; c o s t ) = 1 m ( ∑ x i ∈ D + I ( f ( x i ) ≠ y i ) ∗ c o s t 01 + ∑ x i ∈ D − I ( f ( x i ) ≠ y i ) ∗ c o s t 10 ) E(f; D; cost) = \frac{1}{m}(\sum_{x_i \in D^+}\mathbb{I}(f(x_i) \neq y_i) * cost_{01} + \sum_{x_i \in D^-}\mathbb{I}(f(x_i) \neq y_i) * cost_{10}) E(f;D;cost)=m1(xi∈D+∑I(f(xi)=yi)∗cost01+xi∈D−∑I(f(xi)=yi)∗cost10)
latex公式代码为:E(f; D; cost) = \frac{1}{m}(\sum_{x_i \in D^+}\mathbb{I}(f(x_i) \neq y_i) * cost_{01} + \sum_{x_i \in D^-}\mathbb{I}(f(x_i) \neq y_i) * cost_{10})
其中 c o s t i j cost_{ij} costij 表示将第 i i i 类样本预测为第 j j j 类样本的代价。 如果 c o s t i j cost_{ij} costij越大,则其错误的代价越大, c o s t i j cost_{ij} costij 和 c o s t j i cost_{ji} costji 之间的比值越大。
在一般情况下,比值大小比绝对值大小更重要,50:10 == 5:1
.。