目录
什么是机器学习
- 致力于:研究如何通过计算的手段,利用经验来改善系统自身的性能
- 在计算机系统中,"经验"通常以"数据"形式存在
- 研究的主要内容:在计算机上从数据中产生"模型" 的算法,即"学习算法"
- "模型"泛指从数据中学得的结果
有了学习算法,我们把数据提供给它,它就能基于这些数据产生模型,模型在面对新的情况时会给我们提供相应的判断
基本术语
| 学习//训练 | 通过执行某个学习算法,从数据中获得模型的过程 |
| 训练数据 | 训练过程中使用的数据 |
| 训练样本 | 训练数据的每一个样本 |
| 训练集 | 训练样本的集合 |
| 学习器 | 模型的别称 |
通过对训练数据D进行适当的处理,从中产生出训练集S和测试集T.
回归和分类
包含了预测结果的信息称为:标记
样例=样本+标记
如果预测的标记是离散值------“分类”
如果预测的标记是连续值------“回归”
根据训练数据是否拥有标记信息,学习任务可大致划分为两大类:
"有监督学习"和"无监督学习"
- 有监督学习:回归,分类
- 无监督学习:聚类
机器学习的目标
机器学习的目标是:
使学得的模型能很好地适用于"新样本",而不是仅仅在训练样本上工作得很好
学得模型适用于新样本的能力,称为"泛化" (generalization) 能力
尽管训练集通常只是样本需间的一个很小的采样,我们仍希望它能很好地反映出样本空间的特性,否则就很难期望在训练集上学得的模型能在整个样本空间上都工作得很好.
通常假设样本空间中全体样本服从某个未知"分布"D:
我们获得的每个样本都是独立地从这个分布上采样获得的,即"独立同分布"
学习过程可以看作一个在所有假设(hypothesis)组成的空间中进行搜索的过程,搜索目标是找到与训练集"匹配"的假设-----将训练集中数据预测正确的假设.
没有免费午餐定理
这里黑点是训练集,白点是用于验证的测试集
脱离具体问题,空泛地谈论"什么学习算法更好"毫无意义,要谈论算法的相对优劣,必须要针对具体的学习问题。
过拟合和欠拟合
- 把训练样本自身的一些特点当作了所有潜在样本都会具有的一般性质,这样就会导致泛化性能下降这种现象在机器学习中称为"过拟合" (overfitting).
- 与"过拟合"相对的是"欠拟合" (underfitting) ,这是指对训练样本的一般性质尚未学好.
- 由于学习能力低下而造成的欠拟合比较容易克服,例如在决策树学习中扩展分支、在神经网络学习中增加训练轮数等
- 过拟合是机器学习面临的关键障碍,各类学习算法都必然带有一些针对过拟合的措施;然而必须认识到,过拟合是无法彻底避免的,我们所能做的只是"缓解'或者说减小其风险.
模型选择问题
现实生活中我们往往有多种学习算法可供选择,甚至对同一个学习算法,当使用不同的参数配置时也会产生不同的模型.
学习算法的选择+参数配置(训练集和验证集)=模型
需使用一个"测试集" 来测试学习器对新样本的判别能力,然后以测试集上的 "测试误差" (testing error)作为泛化误差的近似
假设测试样本也是从样本真实分布中独立同分布采样而得,但需注意的是,测试集应该尽可能与训练集互斥-------测试样本尽量不在训练集中出现、未在训练过程中使用过.
测试集=训练集+验证集
调参与最终模型
- 大多数学习算法都有些参数需要设定:参数配置不同,学得模型的性能往往有显著差别.
- 进行模型评估与选择时,除了要对适用学习算法进行选择,还需对算法参数进行设定
- 调参和算法选择没什么本质区别: 对每种参数配置都训练出模型,然后把对应最好模型的参数作为结果.
学习算法的很多参数是在实数范围内取值,因此,对每种参数配置都训练出模型来是不可行的.