首页 > 代码库 > 《机器学习那些事》摘要

《机器学习那些事》摘要


《机器学习那些事》介绍了一些机器学习应用中需要了解的“民间知识”。 

原文为: A Few Useful Things to Know about Machine Learning


摘录若干要点:


1. 学习 = 表示 + 评价 + 优化

    表示(Representation) : 学习器的假设空间(hypothesis space)

    评价(Evaluation) : 评价函数用于判断分类器的优劣

    优化(Optimization) : 在假设空间中寻找最优的学习器的算法


2. 泛化能力 (Generalization)

    机器学习问题,与一般的优化问题不一样的地方在于,机器学习其实无法获得希望优化的那个函数!不能不使用训练误差等作为真实目标的替身。

    2.a 坏消息,"没有免费的午餐": 学习器必须包含一些数据之外的知识或者假设,才能将数据泛化。没有学习器能够比在所有可能的布尔函数中随机猜测的结果更优

    2.b 好消息,我们要学习的函数并非均匀地来自于所有可能的函数!有些宽泛的假设就能起到很大作用:平滑,相似样例相似类别,有限依赖,有限复杂度等

    泛化误差,可以分解为偏置(Bias)和方差(Variance)。偏置度量了学习器倾向于一直学习相同错误的程度。方差则度量了学习器倾向于忽略真实信号、学习随机事物的程度

   避免过拟合的一些方式: 交叉验证, 正则项,增加新结构时采取统计显著性检验


3. 维度灾难

    3.a 坏消息,维度灾难(Curse of dimensionality): 许多在低维空间表现很好的算法,对于高维输入变得计算不可行

    3.b 好消息,非均匀性的祝福(Blessing of nonuniformity):大多数应用中,样例在空间中并非均匀分布,而是集中在一个低维流形上或者附近


4. 数据 + 特征 + 算法

    收集更多的数据 - 大量数据的笨算法,要胜过数据量较少的聪明算法

    构建最好的特征集合 - 特征工程(Feature Engineering)是关键

    设计更好的学习算法 - 采用更聪明算法的回报比期望要低。本质上所有的学习器都是将临近的样例归类到同一个类别中。


5. 集成学习 - 要学习多个模型,而不仅仅是一个

    不同应用的最佳学习器并不相同。 将多个学习器结合,结果会更好。

    5.a Bagging - 轻度增加偏置的同时, 极大地降低反差

    5.b Boosting - 每次训练都倾向于分错的样例


6. 简单并不意味着准确

    模型参数的数量和过拟合之间并无直接联系, 如集成学习

    一个更成熟的认识是将复杂度等同于假设空间的大小。更小的假设空间允许用更短的代码来表示假设。更短的假设可以泛化得更好。

    一个在较大的假设空间搜索较少假设的学习器,比一个在较小空间中搜索较多假设的学习器更不容易过拟合。


7. 可表示并不意味着可学习


8. 相关并不意味着因果