机器学习整理

本文深入探讨了机器学习的本质,介绍了通过研究数据间关联关系来预测和解决问题的方法。重点阐述了得分函数、损失函数和优化算法在参数化机器学习算法中的核心作用,并以具体例子说明了不同算法在分类问题中的应用。此外,文章还概述了优化过程中的信息流及其迭代优化策略,强调了损失函数选择的重要性,尤其是对于0-1损失的替代方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 机器学习无非就是研究数据之间关联关系的学科。比如人脸图像与其身份之间的关系,语音数据与文字之间的对应关系,胆固醇指数与心脏病之间的关联关系,股票的历史数据与其未来走势的关联关系等等。

    简单的机器学习算法只能挖掘简单的关联关系(如线性关系),而复杂的模型(如深度学习)可以对更加复杂的非线性数据关联关系建模。

  2. 任何一种参数化的(parameterized)机器学习算法都可分解为如下三个部分(3 core components)

    1. 得分函数(score function)
    2. 损失函数(loss function)
    3. 优化算法(Optimization)

    以分类问题为例,得分函数用于将输入数据映射到类别得分,损失函数用于度量模型的估计结果与真实结果之间的一致性,优化算法则基于损失函数寻找最佳的模型参数。

    例如:

    1. SVM 的得分函数是线性函数 f(xi,W,b)=Wxi+b,损失函数是 hinge loss + 正则项,优化算法是 SMO 等;
    2. Softmax 分类器的得分函数是线性函数 f(xi,W,b)=Wxi+b,损失函数是 cross-entropy loss,优化算法是梯度下降;
    3. MLP (Multilayer Perception) 的得分函数是 Artificial Neural Network,损失函数是 cross-entropy loss,而优化算法是 BP (backpropagation)算法。

    因此,在设计算法或者编写机器学习代码的时候,重要的是把握以上三个部分的实现,剩下的都是细节。

  3. 任何算法无论复杂或简单,都遵循一个“结果估计→计算误差→修正系统”的迭代过程,直到得到最优解或可接受的误差为止。在此优化过程中,得分函数损失函数优化算法之间的信息交互过程(information flow)如下:

    1. 前向过程(forward pass):根据给定参数W,基于得分函数,计算训练数据的类别得分;
    2. 数据损失(data loss):基于损失函数,计算类别得分与真实标记之间的一致性(compatability);
    3. 反向过程(backward pass):根据数据损失,计算其相对于参数 W 的变化程度(梯度),并基于它更新 W,以使得下一轮迭代中有更小的数据损失。
  4. 分类问题中,最理想的损失函数是 0-1 损失,即统计数据中错误分类的个数:

    0,1=i=0|D|If(xi)yi

    其中 D 是训练集,I 是符号函数(indicator function)。

    然而,0-1 损失不可微,其优化过程的代价会非常大。因此,才出现了很多对 0-1 损失的近似,如 NLL(Negative Log-Likelihood Loss)等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值