线性模型就是学习器试图学到一个经过属性的线性组合来预测的函数,数学表达以下
以向量表示能够写成
这里,w为列向量。web
线性回归即回归类任务学习线性模型的过程,其核心方法即均方偏差最小化。均方根偏差最小化求解线性方程参数的过程即为最小二乘法。推导过程这里不赘述。值得注意的是们对于多元线性回归,求解的矩阵每每不是满秩矩阵,折就意味着能够有多组解均可以使得均方根偏差最小,选择哪个与算法的概括偏好相关,须要用到正则化(regularization)项(后面章节内容)。
线性模型在实际应用中还能够进行衍生,如对数线性回归。
更通常地,对于单调可微函数g(*),可推广至广义线性模型。
算法
前面讨论的是线性模型的回归学习方法,对于分类任务(先讨论二分类任务),采用的是广义线性模型的一种形式。对于二分类任务,理想的模型函数是“单位阶跃函数”,以下:
可是单位阶跃函数不连续,我么须要知道一个单调可微的函数拟合它,这就是对数概率函数。
用对数概率函数衍生的广义线性模型完整的表达式为
能够将y视为类后验几率估计p(y=1|x),则表达式可重写为:
利用极大似然法便可估计参量,推导过程略。svg
LDA的核心思想:给定训练样例集,设法将样例投影到一条直线上,使得同类样例的投影点尽量接近、异类样例的投影点尽量远离;在对新样本进行分类时,将其投影到一样的这条直线上,再根据投影点的位置来肯定新样本的类别。它是一种经典的监督降维技术。函数
多分类学习的基本思路是拆解为若干个二分类任务求解。,经典的拆分策略有:一对一(OvO)、一对其他(OvR)以及多对多(MvM)。
一对一和一对其他的思路比较简单,能够用下面的图例来理解:
多对可能是每次将若干个类做为正类,若干个类做为反类。能够视为一对一和一对其他的衍生推广。MvM的正反类构造必须有特殊设计。最经常使用的MvM技术是“纠错码技术(ECOC)”。
ECOC工做重要分为编码和解码两步:编码即对N个类进行M次划分,产生M和训练集,训练出M个类;解码即为M 个分类器分别对测试样本进行预测,这些预测标记组成一个编码,将这个预测编码与每一个类别各自的编码进行比较,返回其中距离最小的类别做为最终预测结果。
基本图示以下
学习
当不一样类别的样本数量差异比较大时,采用前面常规的方式获得的学习器每每没有价值。例若有998 个反例,但正例只有2 个,那么学习方法只需返回一个永远将新样本预测为反例的学习器,就能达到99.8% 的精度,然而这样的学习器每每没有价值,由于它不能预测出任何正例。
解决办法是“再缩放”。前面咱们是将判别的阈值设为0.5,即
结合具体的样本数目(设正例数为m+,反例数为m-),将其修正为
也即引入y’,有
再缩放思想是为了解决这样的问题:实际中训练集每每不是真实样本的无偏采样。这种问题解决办法有三种(假设反例远多于正例):(1)对训练集的反例进行欠采样,去除一些反例,使得正反例数目接近;(2)对正例进行过采样;(3)阈值移动,就是前面的再缩放思想。测试