刚看完前两章,没有仔细研读,一些深入的不太常用的概念都跳过了,只把以前接触过的点系统过了一遍。
先说感受:整体读来确实比国内常见教材要通俗易懂一点,不是冷冰冰地讲结论和知识点,而是会举例解释,知识点与知识点之间有过渡和联系。
笔记
绪论
从一个人尽皆知的挑西瓜的例子开始,引入了机器学习。通过这个例子,读者可以明白机器学习是做什么的:就像人通过已有的经验对新事物的现象做出判断一样,机器学习就是一种从大量数据中获取知识的一种学习方式。
现在我们的知识海洋中多了机器学习这一个节点,为了将它与已有的知识联系起来,接下来介绍了机器学习的父节点——人工智能。人工智能的发展历史,机器学习当中的全连接算法早已被提出,但当时落后的计算能力限制了算法的进一步发展。在今天机器学习崛起更像是一种必然,因为处于大数据时代,数据量浩如烟海,计算能力更是突飞猛进。
数据集:样本的集合。
样本:一些属性的集合。
学习器:算法模型。
学习器对新样本进行预测,当预测值为离散值时,可以看做分类任务(离散值为两个时,二分类任务;多个时,多分类任务)。当预测值为连续值时,可以看做回归任务。
假设空间:输入空间到输出空间的映射的集合。(一些函数的集合)
这里推荐一篇别人的笔记,很有帮助。
假设空间和版本空间的辨析
第二章 模型评估与选择
关于机器学习,或许可以提出几大要素:数据集、算法模型、模型评估。
1.关于数据集。
书的一开始关于数据集只有训练集和测试集,这里的测试集是一种在训练范围内的对模型进行测试、看看模型的效果、效果不好就调整参数或者结构的验证集。也就是验证集啦。记住一点:机器学习模型的选择和调参都是基于验证集的性能。测试集只对模型的最后性能做出评估,并不会反馈到具体的参数调整上。
2.关于模型评估。
首先要明确评估什么东西:评估的是算法模型在面对新数据上能否正确做出预测的能力,也即评估模型的泛化能力。
其次是如何评估的问题,也就是模型的性能度量。通过什么指标来评估呢?这种指标可靠不可靠呢?
如何评估模型的泛化能力呢,实际中是没法对所有的新数据都拿来测试一下,看看模型效果咋样的。那就只能从所有的新数据中取一部分作为代表,来进行近似。(统计学的概念),因此评估模型的泛化能力≈评估模型在测试集上的表现。
怎么评估模型在测试集上的表现呢:错误率(error)、精度(accuracy)、查准率(precision)、查全率(recall)。
关于这四个的区别,对二分类任务列个混淆矩阵就知道了。
其中P和R一般是互斥的,查的越全,一般就越不准。