机器学习入门(西瓜书笔记)

机器学习入门

基础概念

1.机器学习是干什么的?
研究从数据中产生“模型”的算法,也就是“学习算法”。有了学习算法之后,我们将经验数据提供给它,他就能基于数据产生模型;在面对新的情况时,模型就会为我们提供相应的判断。
2.基本术语

  • 属性(attribute)/特征(feature):反应事件或对象在某方面的表现或性质的事物,例如“色泽”“敲声”
  • 属性值(attribute value):属性上的取值,例如“青绿”“乌黑”
  • 属性空间(attribute space)/样本空间(sample space):属性张成的空间,例如我们把“色泽”“根蒂”“敲声”作为三个坐标中,则他们张成一个用于描述西瓜的三维空间,每个西瓜都可以在这个空间中找到自己的坐标位置,我们把这个坐标向量称为“特征向量”(feature vector)
  • 示例/样本:关于一个事件或对象的描述,例如(色泽=乌黑,根蒂=蜷缩,敲声=浊响)
  • 数据集(data set):多条事例或样本的集合,一般用D={x_1,x_2…x_m}表示包含m个示例的数据集,每个事例有d个属性描述,则每个示例x_i=(x_i1;x_i2;…x_id)是d维样本空间中的一个向量x_ij是x_i在第j个属性上的取值,d称为样本的维数(dimensionality)。
  • 学习(learning)/训练(training):从数据中学得模型的过程,这个过程通过执行某个学习算法来完成
  • 训练数据(training data)、训练样本(training sample)、训练集(training set):训练过程中使用的数据为“训练数据”,其中每个样本称为一个“训练样本”,训练样本组成的集合称为“训练集”,一般地,预测任务是希望通过对训练集进行学习,建立一个从输入空间到输出空间的映射f;
  • 假设(hypothesis):学得模型对应了关于数据的某种潜在的规律
  • 真相/真实(ground-truth):这种潜在规律自身,学习过程就是为了逼近真相。
    -样例(example):有结果的示例信息,例如((色泽=青绿;根蒂=蜷缩;敲声=浊响),好瓜),这里的“好瓜”就是示例结果,称为“标记(label)”,一般用(x_i,y_i)来表示第i个样例,其中y_i是示例x_i的标记
  • 标记空间(label space)/输出空间:所有标记的集合
  • 分类(classification):如果我们预测是离散值,例如“好瓜”“坏瓜”
  • 回归(regression):若预测的是连续值,例如西瓜的成熟度是0.95、0.34
  • 二分类(binary classification)与多分类(multi-class classification):对只涉及两个类别的二分类任务,通常称其其中一个为正类(positive class),另一个类为反类(negative class),涉及多个类别时,称为多分类。对二分类任务,输出空间通常为{-1,+1}或者{0,1};对多分类|y|>2;对回归任务,y=R,R为实数集。
  • 测试(testing):学得模型后,使用其进行预测的过程称为“测试”
  • 测试样本(testing sample):被预测的样本,例如在学得f后,对测试例x,可得到其预测标记y=f(x)
  • 聚类(clustering):将训练中的西瓜分为若干组,每组称为一个“簇”(cluster);这些自动形成的簇可能对应一些潜在的概念划分,这样的学习过程有助于我们了解数据内在的规律,能更为深入的分析数据建立基础,但是在聚类学习中,这些能够划分组的概念我们事先是不知道的,而且学习的过程中使用的训练样本通常不拥有标记信息
  • 监督学习(supervised learning)和无监督学习(unsupervised learning):训练数据有标记则为监督学习,无标记则为无监督学习;分类和回归是前者的代表,而聚类是后者的代表
  • 泛化(generalization):学得模型适用于新样本的能力。具有强泛化能力的模型能够很好的适用于整个样本空间。
  • 独立同分布(independent and identically distributed)-i.i.d:通常我们假设样本空间中全体样本服从一个未知“分布”(distribution)D,我们获得的每个样本都是独立地从这个分布上采样获得的。
  • 归纳偏好(inductive bias):机器学习算法在学习过程中对某种类型假设的偏好。他对应了学习算法本身所做出的关于“什么样的模型更好”的假设。在具体的现实问题中,算法的性能是不是很好就取决于算法的归纳偏好是否与问题本身相配。

模型评估与选择

经验误差与过拟合

  • 错误率(error rate):如果在m个样本中有a个样本分类错误,则错误率E=a/m;
  • 精度(accuracy):1-a/m,即精度=1-错误率
  • 训练误差(training error)/经验误差(empirical error):学习器在训练集上的误差
  • 泛化误差(generalization error):学习器在新样本上的误差
    在训练器上表现很好的学习器,并不一定在新样本上会表现很好,也就是说泛化误差和训练误差不一定成正相关
  • 过拟合(overfitting):学习器把训练样本学得太好了,很可能把训练样本自身的一些特点当成了所有潜在样本都会具有的性质,这就会导致泛化性能下降。过拟合是无法避免的,我们能做的只是缓解,或者说减小其风险。
  • 欠拟合(underfitting):是指对训练样本的一般性质尚未学好。可以通过在决策树中扩展分支、在神经网络学习中增加训练轮数等。

评估方法

我们使用测试集(testing set)来测试学习器对新样本的判别能力,然后以测试误差(testing error)作为泛化误差的近似。通常我们假设测试样本也是从样本真实分布中独立同分布采样而得。而且需要注意的是测试集应该尽可能与训练集互斥。
当我们只有一个包含m个样例的数据集D={(x_1,y_1),(x_2,y_2),…(x_m,y_m)},既要用来训练又要用来测试,一般我们通过对D进行适当的处理从总产生训练集S和训练集T。
- 留出法(hold-out):直接将数据集D划分为两个互斥的集合,其中一个集合作为训练集S,另一个作为测试集T。

你可能感兴趣的:(学习笔记)