要想快速的了解机器学习或者深度学习的内容,以下一些名词都是必须了解的;要想快速的上手机器学习或深度学习的项目,以下内容都必须熟练的运用:
- 训练集、验证集、测试集
查准率(准确率)、查全率(召回率):**混淆矩阵**confusion matrix。
TP+FP+TN+FN=数据总量 precision recall
查准率与查全率是一对鱼和熊掌,一般来说,查准率高时,查全率往往很低;查全率高时,查准率往往偏低。
TP是真正例,也就是原来是正例,预测对了。FN是假反例,也就是预测是反例,但真实是正例。半监督学习:既有标记数据,也有大量的未标记数据,将这两类数据都利用起来就是半监督学习。
- 强化学习:数据需要从环境(env)中获取,数据对应的标记也要从环境中获取,我们并不提供标记数据,我们只提供某种评价机制(奖励或惩罚),这种学习方式叫做强化学习。
代价函数,损失函数。
均方误差MSE:原来可以使用预测值与真实值的误差的绝对值,但是因为绝对值不连续也不处处可导,所以我们加上平方,变成了大名鼎鼎的均方误差。
极大似然估计:似然用现代中文来说就是表示“可能性”。极大似然也就是表示最大的可能性。极大似然是说假设数据服从数据独立同分布。
极大似然公式:
J(w)=lnL(w)=−1m∑i=1m(y(i)lnf(x(i);w)+(1−y(i))ln(1−f(x(i));w))) J ( w ) = l n L ( w ) = − 1 m ∑ i = 1 m ( y ( i ) l n f ( x ( i ) ; w ) + ( 1 − y ( i ) ) l n ( 1 − f ( x ( i ) ) ; w ) ) )
当真实值为1时,把右边式子的第二项去掉;当真实值为0时,将右边式子的第一项去掉。所以这个形式也就很像是交叉熵。
这两种函数都是凸函数,所以可以很方便的求最小值。梯度下降法:方向和步长(学习率)
wi=wi−α∂J(w)∂w2 w i = w i − α ∂ J ( w ) ∂ w 2
步长越大,代价函数会在最低值附近震荡;当步长小了的话,到达震荡区间的时间也会变长,这也是一个鱼和熊掌的问题。
批量梯度下降BGD:环顾四周,累加之后再取平均值,优点是很准确,但是会计算量超大。
随机梯度下降SGD:不用考虑数据的尺寸,看到一条数据就可以修改一次参数。可用到在线学习。等于在梯度中增加了噪声,训练出来的数据具有更强的抗噪能力。
取BGD和SGD的一个折中,我们成为最小批量梯度下降(Mini-Batch Gradinet Descent)。如何选择最小批量的大小,根据实际问题进行选择。过拟合,欠拟合:机器学习控制模型能力的一种方式就是选择他的假设空间。模型能力与错误率满足一种U型曲线,并不是模型越复杂越好,反而要取一个适中的值。模型越复杂,训练误差肯定会越来越小,但是泛化误差是先减小后增大。
奥卡姆的剃刀:如果两个假设空间都能很好的拟合数据,那就选择“最简单”的那一个。- 正则化:修改机器学习的算法只是为了增加或减小模型的能力。这种调整,就是通过增加或移除算法可选择的假设空间来实现的。正则化就是一种想要降低泛化误差错误率但是不降低训练错误率而修改机器学习算法的一系列方法。
- 超参数:对参数的调整叫做学习,对超参数的调整叫做选择。超参数选择的是同一算法的不同性能,或者是对同一算法簇的选择。验证数据是帮助选择超参数的。
通常80%的数据作为训练集,20%的数据作为验证集。为了减少偶然性,采用K折交叉验证,选择5-10之间。
K取值越大,划分的数据集越多,最终的泛化错误率的可靠性就越高,相应的时间话费就越大,所以K的取值也要做一个取舍,在训练时间和可靠性之间做一个取舍,也是一对鱼和熊掌。 - Softmax:得到总和为1的多分类函数,这一步也叫做归一化概率。