西瓜书_3、线性模型之回归、分类、类别不平衡

线性模型

一、基本形式

  1. 线性模型功能:预测。不论是什么样的机器学习,我们最后都需要计算机给出我们一条指令进行预测。
  2. 如何预测?
    1. 简单来说,路人甲从家去学校,5分钟后离家1km,10分钟后离家2km,那么我们可以预测15分钟后大约离家3km。
    2. 接下来,考虑红绿灯的影响,那么红绿灯的数量也就成为了除时间之外影响离家距离的一个自变量。
    3. 这样的自变量(输入)有很多。我们把它们放入一个列变量,称为X。而因变量(输出)暂且只有一个,称为F(X)。
    4. 因为不同自变量对于因变量的影响不同,所以X列变量同样对应一个权值列向量w,即F(X) = w^{T}X+b
    5. 之后我们通过样点求得权值,就可以进行预测了。
  3. 进阶非线性:当引入层级结构(神经网络)或高维映射时,就可以进一步组建非线性模型。

接下来是几种经典的线性模型

二、线性回归

  1. 线性回归,回归的是什么
    1. 回归:来源于身高公式:  子女平均身高= 3.78+(0.516 *父母平均身高),也就是说有种衰退效应使身高回归正常值。
    2. 机器学习里的回归与分类相对应,回归指的是输出连续数据,而分类输出的数据是离散的。
    3. 我们通过回归求得W和b值。
  2. 最重要的是求取W和b值
    1. 前面西瓜书_2里说道,均方误差是回归任务里最好的性能度量。
    2. 我们设均方误差为E,E=f(W,b),通过求\frac{\partial E}{\partial W},\frac{\partial E}{\partial b}为0时,就可以得到最小的均方误差,也就是所以样本到线性回归直线上的欧式距离最小。
  3. 当W是一个含多个属性的列向量时:我们可能会有多个最优解,这时需要我们通过正则化等手段选择W和b。
  4. 当我们观察到数据并不符合直线时:我们针对Y求取衍生函数e^{Y},lnY等看是否可以实现线性。进而得到广义的线性模型,y=g^{-1}(w^{T}x+b)

 

三、对数几率回归(分类),用线性模型解决分类问题。

  1. 我们通过前面的学习可以预测Y值了,下面我们要利用Y值进行分类。
  2. 通过Y值分类。
    1. 阶跃函数(不可导)
    2. 对数几率函数(适用于实战,得到成为不同类别的概率),在实际的情况里,我们往往给出结论是:在一个概率下,我们的分类结果是正确的。
  3. 接下来我们得到在X的条件下,Y=某值的概率,进而求取最大似然估计B,利用梯度下降得到最优解。

 

四、线性判别分析LDA(分类)

  1. 思想:设法将样例投影到一条直线上,使同类样例的投影点尽可能的近,异类样例的投影点尽可能的远。
  2. 实现方式:
    1. 同类尽可能的近:利用同类数据协方差C尽可能小。
    2. 异类尽可能的远:利用不同的类中心在直线上的投影点间距S尽可能大。
    3. 同时考虑两者:使\frac{S}{C}最大即可。
  3. 可以实现监督降维处理。

五、多分类学习

利用拆分法,由多个二分类得到多分类。

  1. OvO(一对一):
    1. 设训练集数量为N,两两配对,分别进行二分类,得到\frac{N(N-1)}{2}个学习器
    2. 输入测试集,进行投票,得到票数最多Y值的就是我们预测的值。
  2. OvR(一对(N-1)):
    1. 只需要N个学习器,存储和时间开销较少。和OvO对比性能差不多。
    2. 若仅有一个分类器预测为正类时,对应类比为最终分类结果。若有多个则选择置信度最高的。
  3. ECOC纠错输出码(M对M)

 

六、类别不平衡

当正例和反例的数据比重差异大

  1. 阈值移动,再缩放。
    1. 若是类别平衡,设y为实际表达正例的可能性,当\frac{y}{y-1}>1时,预测为正。
    2. 若是类别不平衡,我们设正例和反例数目m^{+},m^{-},则观测几率是\frac{m^{+}}{m^{+}}。当\frac{y}{y-1}>\frac{m^{+}}{m^{+}}时,预测为正。
  2. 欠采样
  3. 过采样,利用集成学习克服过拟合

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(机器学习,---------)