知识趣记-机器学习基础
期望
在概率论和统计学中,数学期望(或均值,亦简称期望)是试验中每次可能结果的概率乘以其结果的总和。它反映随机变量平均取值的大小。
- 线性运算: E ( a x + b y + c ) = a E ( x ) + b E ( y ) + c E(ax+by+c) = aE(x)+bE(y)+c E(ax+by+c)=aE(x)+bE(y)+c
- 推广形式: E ( ∑ k = 1 n a i x i + c ) = ∑ k = 1 n a i E ( x i ) + c E(\sum_{k=1}^{n}{a_ix_i+c}) = \sum_{k=1}^{n}{a_iE(x_i)+c} E(∑k=1naixi+c)=∑k=1naiE(xi)+c
- 函数期望:设 f ( x ) f(x) f(x)为 x x x的函数,则 f ( x ) f(x) f(x)的期望为
- 离散函数: E ( f ( x ) ) = ∑ k = 1 n f ( x k ) P ( x k ) E(f(x))=\sum_{k=1}^{n}{f(x_k)P(x_k)} E(f(x))=∑k=1nf(xk)P(xk)
- 连续函数: E ( f ( x ) ) = ∫ − ∞ + ∞ f ( x ) p ( x ) d x E(f(x))=\int_{-\infty}^{+\infty}{f(x)p(x)dx} E(f(x))=∫−∞+∞f(x)p(x)dx
方差
概率论中方差用来度量随机变量和其数学期望(即均值)之间的偏离程度。方差是一种特殊的期望。定义为:
V a r ( x ) = E ( ( x − E ( x ) ) 2 ) Var(x) = E((x-E(x))^2) Var(x)=E((x−E(x))2)
方差性质:1) V a r ( x ) = E ( x 2 ) − E ( x ) 2 Var(x) = E(x^2) -E(x)^2 Var(x)=E(x2)−E(x)2
2)常数的方差为0;
协方差
协方差是衡量两个变量线性相关性强度及变量尺度。 两个随机变量的协方差定义为:
C o v ( x , y ) = E ( ( x − E ( x ) ) ( y − E ( y ) ) ) Cov(x,y)=E((x-E(x))(y-E(y))) Cov(x,y)=E((x−E(x))(y−E(y)))
方差是一种特殊的协方差。当 X = Y X=Y X=Y时, C o v ( x , y ) = V a r ( x ) = V a r ( y ) Cov(x,y)=Var(x)=Var(y) Cov(x,y)=Var(x)=Var(y)。
相关系数
相关系数是研究变量之间线性相关程度的量。两个随机变量的相关系数定义为:
C o r r ( x , y ) = C o v ( x , y ) V a r ( x ) V a r ( y ) Corr(x,y) = \frac{Cov(x,y)}{\sqrt{Var(x)Var(y)}} Corr(x,y)=Var(x)Var(y)Cov(x,y)
相关系数的性质:
1)有界性。相关系数的取值范围是 [-1,1],可以看成无量纲的协方差。
2)值越接近1,说明两个变量正相关性(线性)越强。越接近-1,说明负相关性越强,当为0时,表示两个变量没有相关性。
梯度下降的伪代码如下:
重复已下过程,直到收敛为止{
}
说明:(1) ωj 是模型参数, F()是成本函数, ∂F(ωj) / ∂ωj 是ωj 的一阶导数,λ 是学习率
神经网络
神经网络就是按照一定规则将多个神经元连接起来的网络。不同的神经网络,具有不同的连接规则。例如全连接(Full Connected, FC)神经网络,它的规则包括:
(1)有三种层:输入层,输出层,隐藏层。
(2)同一层的神经元之间没有连接。
(3)fully connected的含义:第 N 层的每个神经元和第 N-1 层的所有神经元相连,第 N-1 层神经元的输出就是第 N 层神经元的输入。
(4)每个连接都有一个权值。
计算图的导数计算
计算图导数计算是反向传播,利用链式法则和隐式函数求导。
假设 z = f ( u , v ) z = f(u,v) z=f(u,v) 在点 ( u , v ) (u,v) (u,v) 处偏导连续, ( u , v ) (u,v) (u,v)是关于 t t t 的函数,在 t t t 点可导,求 z z z 在 t t t 点的导数。
根据链式法则有
d z d t = ∂ z ∂ u . d u d t + ∂ z ∂ v . d v d t \frac{dz}{dt}=\frac{\partial z}{\partial u}.\frac{du}{dt}+\frac{\partial z}{\partial v} .\frac{dv}{dt} dtdz=∂u∂z.dtdu+∂v∂z.dtdv
链式法则用文字描述:“由两个函数凑起来的复合函数,其导数等于里边函数代入外边函数的值之导数,乘以里边函数的导数。
为了便于理解,下面举例说明:
f ( x ) = x 2 , g ( x ) = 2 x + 1 f(x)=x^2,g(x)=2x+1 f(x)=x2,g(x)=2x+1
则:
f [ g ( x ) ] ′ = 2 [ g ( x ) ] × g ′ ( x ) = 2 [ 2 x + 1 ] × 2 = 8 x + 4 {f[g(x)]}'=2[g(x)] \times g'(x)=2[2x+1] \times 2=8x+4 f[g(x)]′=2[g(x)]×g′(x)=2[2x+1]×2=8x+4
分类算法的评估方法
分类评估方法主要功能是用来评估分类算法的好坏,而评估一个分类器算法的好坏又包括许多项指标。了解各种评估方法,在实际应用中选择正确的评估方法是十分重要的。
几个常用术语
这里首先介绍几个常见的模型评价术语,现在假设我们的分类目标只有两类,计为正例(positive)和负例(negative)分别是:
- True positives(TP): 被正确地划分为正例的个数,即实际为正例且被分类器划分为正例的实例数;
- False positives(FP): 被错误地划分为正例的个数,即实际为负例但被分类器划分为正例的实例数;
- False negatives(FN):被错误地划分为负例的个数,即实际为正例但被分类器划分为负例的实例数;
- True negatives(TN): 被正确地划分为负例的个数,即实际为负例且被分类器划分为负例的实例数。
1)P=TP+FN表示实际为正例的样本个数。
2)True、False描述的是分类器是否判断正确。
3)Positive、Negative是分类器的分类结果,如果正例计为1、负例计为-1,即positive=1、negative=-1。用1表示True,-1表示False,那么实际的类标=TF\*PN,TF为true或false,PN为positive或negative。
4)例如True positives(TP)的实际类标=1\*1=1为正例,False positives(FP)的实际类标=(-1)\*1=-1为负例,False negatives(FN)的实际类标=(-1)\*(-1)=1为正例,True negatives(TN)的实际类标=1\*(-1)=-1为负例。
评价指标
- 正确率(accuracy)
正确率是我们最常见的评价指标,accuracy = (TP+TN)/(P+N),正确率是被分对的样本数在所有样本数中的占比,通常来说,正确率越高,分类器越好。- 错误率(error rate)
错误率则与正确率相反,描述被分类器错分的比例,error rate = (FP+FN)/(P+N),对某一个实例来说,分对与分错是互斥事件,所以accuracy =1 - error rate。- 灵敏度(sensitivity)
sensitivity = TP/P,表示的是所有正例中被分对的比例,衡量了分类器对正例的识别能力。- 特异性(specificity)
specificity = TN/N,表示的是所有负例中被分对的比例,衡量了分类器对负例的识别能力。- 精度(precision)
precision=TP/(TP+FP),精度是精确性的度量,表示被分为正例的示例中实际为正例的比例。- 召回率(recall)
召回率是覆盖面的度量,度量有多个正例被分为正例,recall=TP/(TP+FN)=TP/P=sensitivity,可以看到召回率与灵敏度是一样的。- 其他评价指标
计算速度:分类器训练和预测需要的时间;
鲁棒性:处理缺失值和异常值的能力;
可扩展性:处理大数据集的能力;
可解释性:分类器的预测标准的可理解性,像决策树产生的规则就是很容易理解的,而神经网络的一堆参数就不好理解,我们只好把它看成一个黑盒子。- 精度和召回率反映了分类器分类性能的两个方面。如果综合考虑查准率与查全率,可以得到新的评价指标F1-score,也称为综合分类率: F 1 = 2 × p r e c i s i o n × r e c a l l p r e c i s i o n + r e c a l l F1=\frac{2 \times precision \times recall}{precision + recall} F1=precision+recall2×precision×recall。
ROC曲线和PR曲线
ROC曲线是(Receiver Operating Characteristic Curve,受试者工作特征曲线)的简称,是以灵敏度(真阳性率)为纵坐标,以1减去特异性(假阳性率)为横坐标绘制的性能评价曲线。可以将不同模型对同一数据集的ROC曲线绘制在同一笛卡尔坐标系中,ROC曲线越靠近左上角,说明其对应模型越可靠。也可以通过ROC曲线下面的面积(Area Under Curve, AUC)来评价模型,AUC越大,模型越可靠。