一. 机器学习的定义
Arthur Sameul 1959年给出了机器学习一个非正式定义:
Field of study that gives computers the ability to learn without being explicitely programmed.
Arthur Sameul在机器学习的历史上做了一些很酷的事情,他写了一个跳棋程序,程序可以自己和自己下棋,计算机可以相当快的和自己下棋,经过成千上万盘棋,逐渐的,这个程序可以识别哪些局面赢的概率大,哪些局面输的概率大,最终在1959年的时候,跳棋程序的棋艺远远超过了Arthur Sameul自己。有些人认为计算机除了能做程序明确让它做的事情之外不能做任何事,也许Arthur Sameul的跳棋程序是第一个对这种观点的有力反驳,Arthur Sameul希望让他的跳棋程序比他自己更会下棋,但他并没有教程序应该具体怎样下棋,而是让它自己学习。
Tom Mitchell 1998年提出一种更现代,更正式的机器学习定义:
A computer program is said to learn from experience E with respect to some task T and some performance measure P, if its performance on T, as measured by P, improves with experience E"
对应上面的跳棋程序,经验E = 不断下棋的经历,任务T = 下棋,性能指标P = 下一盘棋赢的概率。
二. 监督学习简介(supervised learning)
2.1 监督学习
数据集中每个样本都有相应的“正确答案”,我们希望通过学习这些样本和相应的“正确答案”,从而能够对其他样本预测出相应的“正确答案”举两个例子:
a. 回归问题(regression problem)
例如预测房屋售价,横坐标是房屋面积(),纵坐标是房屋售价($),假设根据样本集拟合出一条直线,当房屋的面积是750时,预测房屋的售价是150,1000$,如图所示:
当输出的“正确答案”为连续值时,称为回归问题,例如房屋售价。
b.分类问题(classification problem)
例如:根据肿瘤大小(tumor size)来判断“良性(benign)”还是“恶性(malignant)”,如图所示:
当输出的“正确答案”为少数几个离散值时,称为分类问题,例如“良性(benign)”还是“恶性(malignant)”两个值。
2.2 如何预测?
假设有2.1中回归问题,已知一个数据集,我们怎样预测其他房屋的售价,如果已知其他房屋的面积?
为了今后更好的描述问题,我们先来说明一些符号,表示“输入”变量,即房屋面积,也称为特征,表示“输出”或目标变量,即我们正尝试预测的房屋售价,被称为一组训练样本,我们将用于学习的数据集-m个训练样本的列表{}称为训练集。注意,符号中的上标""只是训练集的索引,与幂运算无关。我们还将使用表示输入值空间,使用表示输出值空间。在这个例子中,。
监督学习的目标是,在给定训练集的情况下,学习得到函数,使得能较好地预测。由于历史原因,该函数被称为假设(hypothesis)。这个过程可描述如下:
三. 无监督学习简介(unsupervised learning)
回顾监督学习中判断肿瘤是“恶性”还是“良性”的例子,每一组输入样本都对应一个“正确答案”,即“恶性”还是“良性”的标签,如图所示:
而在无监督学习(unsupervised learning)中的数据集,没有“恶性”还是“良性”的标签,如图所示:
我们希望机器能自己发现数据中一些有趣的结构,比如从输入数据中发现恶性肿瘤和良性肿瘤两个类别,即聚类,如图所示:
聚类是无监督学习的典型例子,聚类还能应用于图像处理,对图片中的像素进行聚类,以及很多其他问题,比如社交网络分析,市场按照消费人群进行划分,将混杂在一起的音频流分离等等。
参考资料:
http://cs229.stanford.edu/notes/cs229-notes1.pdf
https://www.coursera.org/learn/machine-learning/lecture/1VkCb/supervised-learning