一.机器学习的概念
生活中我们可以利用过去的经验来分析并解决当前遇到的新问题,计算机也可以做同样的事情——即机器学习(Machine Learning)。
机器学习致力于研究通过计算手段,利用经验来改善系统自身的性能。这里所谓的经验指的是就是数据。通过学习算法对输入的数据进行学习,得出的模型,即从数据中学习到的结果。
二.基本术语
例如:(年龄=小明;性别=男性;身高=175),(年龄=小红;性别=女性;身高=165) 这样一组数据
- 这样的集合称为一个数据集(data set)
- 其中每条记录都是关于某个个体的描述,称为一个示例(instance)
- 描述事物某方面特征的值称为 属性(attribute)或 特征(feature)
- 属性的取值称为属性值(attribute value)
- 属性的张成空间称为属性空间(attribute space)、样本空间(sample space)或者输入空间。可以将一个示例中的三个属性作为坐标系的三个方向,这样就构成了一个三维空间,其中每个点都对应一个坐标向量,所以也可以把一个示例称为“特征向量(feature vector)”
- 通过数据学习得到模型的过程称为 训练(training)或 学习(learning)
- 训练使用的数据称为 训练数据(training data)
- 其中每个样本称为一个训练样本(training sample)
- 训练样本组成的集合称为训练集(training set)
- 模型中得到的某种规律称为假设(hypothesis),而潜在的规律自身则称为真相(ground-truth)。整个机器学习的过程就是找出或者让假设逼近真相的一个过程
- 模型有时候也被称为 学习器(learner)
- 训练样本的结果称为标记(label)
- 拥有标记信息的事例称为样例(example)
- 所有的标记集合称为标记空间(label space)或 输出空间
- 使用模型进行预测的过程称为测试(testing)
- 模型适用于新样本的能力称为泛化(generalization)
- 机械的记忆训练样本称为机械学习
学习任务的分类
- 监督学习(supervised learning),即训练数据具有标记信息,且有反馈(feedback)
- 预测的结果若为连续值,如
0.37
、0.92
,则此类学习任务称为回归(regression) - 预测的结果若为离散值,如
0
或1
,“好”或“坏”,则此类学习任务称为分类(classification),其中包括- 二分类(binary classification):即只涉及到两个类别
- 多分类(multi-class classification):即涉及到多个类别
- 无监督学习(unsupervised learning),即训练数据没有标记信息,且没有反馈(feedback)
- 聚类(clustering):在使用聚类的过程当中,训练数据没有标记信息。并且,例如身高、体重、性别这样的概念事先是未知的。使用聚类可以了解数据的内在规律,为进一步的分析数据建立基础。
- 关联(Associative)
三. 假设空间与归纳偏好
学习的过程就是在所有假设(hypothesis)组成的空间中进行搜索的过程,目标是找到与训练集匹配(fit)的假设。假设的表示一旦确定,假设空间的规模和大小就得到了确定(即假设的数量)。
但是,现实中的实际问题会面临很大的假设空间,但学习过程是基于有限样本训练集进行的。因此,可能会存在多个假设与训练集一致的情况,我们称之为版本空间(version space)
由于版本空间的存在,可能导致面临新样本的时候,会产生截然不同的结果。这时候,需要一定的策略对学习结果作出选择,这种策略就是归纳偏好,相当于模型的一种“价值取向”。如若不然,就会被训练集上的等效假设所迷惑,从而无法产生学习结果。
实际上,算法在不同的问题和情况下好坏程度是不一样的。换句话说,模型的总误差与学习算法性能并没有实际关系!(数学证明略 P8)。因为不同的算符针对具体的问题会有相对的优劣,一旦脱离了具体问题,空泛地谈论哪个算法更加优秀是没有意义的。
总之,就是具体问题要具体分析。
四.发展历程与应用现状
- 搜索引擎
- 生物工程
- 广告推荐
- 自动驾驶
- 总统竞选(=。=)
网友评论