《分布式机器学习》笔记1-机器学习基础


今天开始更新《分布式机器学习》的系列笔记,保证每周2-3更,大家一起学习啊~~


第一次笔记是机器学习基础,就简单的整理一下知识点。


机器学习的基本概念

机器学习关注的核心问题是如何用计算的方式模拟人类的学习行为:从历史经验中获取规律或者模型,并将其应用到新的类似场景中。

多维度梳理机器学习问题:

  • 从学习目标的角度,可以大体分为回归、分类、排序、有结构预测等。
  • 从训练数据特性的角度,可以大体分为有监督学习、半监督学习、无监督学习、弱监督学习等。
    1. 有监督学习:每个训练数据都拥有标签;
    2. 半监督学习:训练集里同时存在有标签数据和无标签数据,通常需要对无标签数据进行预处理;
    3. 无监督学习:数据都是无标签的,学习的目的是从数据中发掘关联规则,或者利用数据在输入空间中的相互关系对数据进行聚类和影响力排序;
    4. 弱监督学习:存在某种形式的奖励信号,该信号可以用于模型训练,但没有样本标签那么直接、准确,比如强化学习。
  • 从模型复杂的程度,可以大体分为线性模型和非线性模型。
  • 从模型的功能角度,可以分为生成模型和判别模型。

机器学习的基本流程

机器学习的流程可以用下图表示:


常用的损失函数

  • Hinge损失函数
    l(w;x,y) = max\{0, 1-yg(x;w)\}
  • 指数损失函数
    l(w;x,y)=exp(-yg(x;w))
  • 交叉熵损失函数
    假设标签的概率分布:
    P(Y=1|x;w)=\frac{exp(g(x;w))}{exp(g(x;w))+exp(-g(x;w))}
    P(Y=-1|x;w)=\frac{exp(-g(x;w))}{exp(g(x;w))+exp(-g(x;w))}
    则交叉熵损失函数定义为:
    l(w;x,y)=-\sum_{z\in{-1,1}}I_{y=z}logP(Y=z|x;w)

常用的机器学习模型

(感兴趣的可以自己找资料看,在这里只进行简单梳理,不做详细笔记)

  • 线性模型
  • 核方法与支持向量机
  • 决策树与Boosting
  • 神经网络
    1. 全连接神经网络
    2. 卷积神经网络
    3. 循环神经网络

常用的优化方法

典型的优化方法:

一阶算法 二阶算法
确定性算法 梯度下降法
投影次梯度下降
近端梯度下降
Frank-Wolfe算法
Nesterov加速算法
坐标下降法
对偶坐标上升法
牛顿法
拟牛顿法
随机算法 随机梯度下降法
随机坐标下降法
随机对偶坐标上升法
随机方差减小梯度法
随机拟牛顿法

还有一些针对神经网络优化的算法,例如,带冲量的随机梯度下降法、Nesterov加速方法、AdaGrad、RMSProp、AdaDelta、Adam、AMSGrad、等级优化算法以及基于熵的随机梯度下降法等。

机器学习理论

  • 机器学习的泛化误差
    机器学习算法的最终目标是最小化期望损失风险,但由于数据的真实分布通常未知,因此学习目标转化为最小化经验风险。
    min_{g\in G}\hat{l_n}(g)=\frac{1}{n}l(g;x_i,y_y)
  • 泛化误差的分解
    希望算法输出的模型\hat{g_T}与最优模型g^{ \ast}的期望风险之差L(\hat{g_T})-L(g^{\ast})尽可能小,这个差距成为泛化误差。对其进行如下分解:
    L(\hat{g_T})-L(g^{\ast})=L(\hat{g_T})-L(\hat{g_n})+L(\hat{g_n})-L(g^{\ast}_ G)+L(g^{\ast}_ G)-L(g^{\ast})
  1. L(\hat{g_T})-L(\hat{g_n}):优化误差。衡量的是优化算法迭代T轮后输出的模型与精确最小化经验风险的差别。是由于优化算法的局限性带来的,与选用的优化算法、数据量大小、迭代轮数以及函数空间有关。
  2. L(\hat{g_n})-L(g^{\ast}_ G):估计误差。衡量的是最小化经验风险误差的模型和最小化期望风险的模型所对应的的期望风险的差别。是由训练集的局限性带来的,与数据量的大小和函数空间的复杂程度有关。
  3. L(g^{\ast}_ G)-L(g^{\ast}):近似误差。衡量的是函数集合G的最优期望风险与全局最优期望风险的差别。与函数空间的表达力有关。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 机器学习术语表 本术语表中列出了一般的机器学习术语和 TensorFlow 专用术语的定义。 A A/B 测试 (...
    yalesaleng阅读 6,028评论 0 11
  • 谷歌开发者机器学习词汇表:纵览机器学习基本词汇与概念 姓名:钟航 转载自:http://mp.weixin.qq....
    XavierZHH阅读 5,940评论 0 7
  • A 准确率(accuracy) 分类模型预测准确的比例。在多类别分类中,准确率定义如下: 在二分类中,准确率定义为...
    630d0109dd74阅读 5,237评论 0 3
  • 本文编译自谷歌开发者机器学习术语表项目,介绍了该项目所有的术语与基本解释。 A 准确率(accuracy) 分类模...
    630d0109dd74阅读 6,156评论 0 1
  • 下班后,我急匆匆地赶到公交站台,在吹了二十多分钟的冷风后,我打着寒颤挤进了公交车。 今天运气不好,公交车上很多人,...
    一只黄胖阅读 4,066评论 8 6