Advertisement

机器学习课堂笔记7

阅读量:

1,机器什么时候可以学习

2,为什么机器可以学习

3,机器怎么学习

4,机器怎么样才能学得更好

总结学习过的线性模型

在机器学习课堂笔记中涵盖的线性模型类型有三类:分别是线性分类技术、经典的线性回归方法以及逻辑回归算法。

它们的本质特征是对输入X进行线性变换的过程,并与向量内积机制相似

s=W*X 其中s可以看做是由输入X与系数W内积产生的分数

他们的不同点在于:

假设在不同的空间中进行分析与建模,则将采用以下三种形式进行处理:针对线性分类问题建立其对应的线性分类模型h₁(x),即h₁(x) = sign(s);针对线性回归问题构建其对应的线性回归模型h₂(x),即h₂(x) = s;对于逻辑回归问题则建立其对应的逻辑回归模型h₃(x),即h₃(x) = θ(s) = exp(s)/(1 + exp(s))

其次,在针对非线性分类问题时(即类别标签y取值于{-1,+1}),我们对三种线性模型的误差函数进行适当的代数变形。

Ein1=if(sign(ys)<>1,1,0), 是不连续的,NP Hard问题,难以优化;

Ein2=(ys-1)^2是二次凸函数,有明确的方程式可解;

Ein3=ln(1+exp(-ys))(cross entropy),是平滑凸函数,可用梯度下降法求解;

画出三种error function的图如下:

(scaled ce=log2(1+exp(-ys))),这样变换是为了保证ce始终大于等于0/1错误

因为0/1损失(即线性二元分类所对应的损失函数)始终不超过平方损失或sce(Squared Cross Entropy),所以在线性回归模型以及逻辑回归模型中都可以实现对分类问题的学习目标(只要模型的经验风险足够小,则能确保相应的分类任务中的误差也能足够低)

随机梯度下降法

其局限性在于,在第t步确定更新方向时必须遍历全部样本数据以计算其梯度。这导致了较高的计算复杂度O(N)。为了提高效率并减少计算开销(computational cost),通常采用随机梯度下降方法(stochastic gradient descent)。这种方法的核心思想是在每次迭代中仅使用单个数据点(x_n,y_n)来估计整体梯度(gradient)。其优势在于通过这种方式显著降低了每一步的计算量,并且仍然能够保证算法的整体收敛性(convergence)性质得到保留。

当随机梯度经过N步更新后(即经历了N次迭代),我们可以推断出:真实梯度大致相等与随机梯度,并且噪声项趋于零。

随机梯度下降法主要应用于处理大规模数据集或采用逐个样本输入的方式(如在线学习场景),因其特别适合无法一次性加载全部数据进行批量处理的情况。然而该方法由于采用了随机采样的特性,在实现过程中可能会带来一定的不稳定性和不确定性。
此外该算法与传统批量梯度下降法在终止条件上有显著差异因为其不会等到所有样本都被处理以确定优化完成(这样就需要在每一步迭代中处理全部N个样本这与随机采样策略存在直接冲突因此通常需要设定足够大的迭代次数T让算法在其循环T次后自动终止

多分类问题的解决方法

方法1,将多分类问题拆分为多个2分类问题:

例如一共有K=4类别,并采用标签1到4进行标注。可以通过将每一对标为一个类别与其他三个类别配对的方式进行四次二分类问题设定,并以此方式展开数据训练工作。在训练过程中可以采用软性分类方法(例如逻辑回归模型)来计算各类别的概率值,在测试阶段通过计算各类别的概率值后根据最大概率确定最终归类结果。

缺点在于类别分布失衡的情况下。当类别数量较多时(例如K=100),各类别样本数量较为平均分布也会导致分类器偏向判定所有类别为非1类。举例来说,在一个数据集中有1个样本属于某特定类(标记为1),而其余99个样本不属于该类(标记为非1),即使该分类器将所有类别都判定为非1类,在这种情况下其准确率达到99%。

方法2,将多分类问题拆分为多个2分类问题,并均衡样本:

与类似方法一的情形相仿,在本研究中共设置了K=100个不同的类标问题。每一次二分类操作中,在传统方法的基础上进行了改进:不采用将类标为1与其他所有类标不为1的样本一起训练的方式;而是从不同类别的样本中选择两组具有代表性的数据进行训练。这种改进方式从而生成C(100,2)个不同的二分类器集合(即从这K=100个类别中选取两个不同的类标的组合形成的集合)。对于待预测的新样本,则将各个二分类器的结果综合考虑后投票决定最终结果

非线性模型

线性模型的所有输入均为一次多项式,在面对非线性可分的数据时,在使用该模型时无法显著降低Ein值。这一现象表明假设集H中的成员数量不足以满足需求。通过增加H中假设的数量,则可以通过引入高阶多项式来实现对原始输入空间的非线性映射。

从理论上讲,在任意维度的空间中进行转换是可行的;但这种转换会带来巨大的计算开销;相应的dvc值会显著升高;这样就容易导致模型出现过拟合问题。

全部评论 (0)

还没有任何评论哟~