机器学习,机器是修饰词,学习是核心。
学什么?根据样本数据有没有标签,有多少标签分为有监督学习、无监督学习和半监督学习。
一、有监督学习
所有样本都有标签,即为有监督学习。标签(Y)是什么?个人理解标签有三个基本特点,一是比较重要,有业务意义(比如预测客户是不是要流失?申请贷款的这个人会不会违约?等等);二是能从其他已知的信息(X)推测出来;三是比较难直接获取。
也就是说有监督学习的目标是学习一个函数Y = f(X)+(回归问题,由于信息缺失或者噪音的影响,误差
是难免的),或者条件概率P(Y|X)(对回归问题是概率分布,对分类问题是点估计)。
1、判别式模型
要想学习条件概率P(Y|X),可以直接学,这叫判别式模型。
1.1逻辑回归模型
以逻辑回归模型为例,要学习的是
然后用极大似然法,确定学习的原则和目标。似然函数是一个关于模型参数w的函数,当选择不同的参数w时,似然函数的值是不同的,它描述了在当前参数w下,使用模型分布P(Y|X,w)产生数据集中所有样本的概率。一个朴素的想法是:在最好的模型参数w下,产生数据集中的所有样本的概率是最大的。
令p(xi) = P(Y=1|X=xi),逻辑回归模型中,在X和一组参数w给定的情况下,生成一次数据(假设每次生成过程独立)的结果与数据集相同的概率(似然函数)是:
目标是找到一组w,使数据集在这组w的情况下,出现的概率(上面这个似然函数值)最大。
在机器学习中我们还有损失函数的概念,其衡量的是模型预测错误的程度。如果取整个数据集上的平均对数似然损失,我们可以得到损失函数是:
在逻辑回归模型中,我们最大化似然函数和最小化损失函数实际上是等价的。
最后,利用梯度下降等算法去求参数w的最优解,就得到了期望的P(Y|X,w)。对于新样本,就可以利用P(Y|X,w)来预测Y=1的概率了。
1.2 训练集和验证集,过拟合和欠拟合,以及正则化
用训练集的数据去计算最优参数w,使得模型在训练集上有最小的损失函数,也就是说在训练集上的模型预测误差最小,但在验证集上不一定。如果在验证集上的预测误差比训练集上大很多,则很有可能出现了过拟合。为了限制训练过度针对训练集,增加泛化性,一般模型会使用正则化,包括L1正则和L2正则。如果训练集和验证集的误差都不太好,则应加大迭代训练次数,或减小正则,或使用更复杂的模型,以防止出现欠拟合。
1.3样本均衡问题
逻辑回归的目标是要损失函数最小。损失函数是由所有样本点的预测误差加和组成的,而且越靠近分界线(P=0.5)的样本对损失函数的影响越大。所以,如果正负样本出现了极端不均衡(特别是在分界线处),那么样本多的一方(比如正样本)对损失函数的影响就大,分界线就会向正样本召回率高的方向移动(有更多的正样本被正确分类,以减小损失函数),代价是向负样本召回率低的方向移动(更多负样本被错误分类,但对损失函数来讲,由于正样本多,划算)。所以一般会采用过采样、欠采样的方式训练,让正负训练样本尽量均衡。或者在模型训练完成后,改变判断阈值来调整正负样本的召回率。