吴恩达机器学习教程学习笔记 (1/16)

吴恩达教授(Andrew Ng)的机器学习可以说是一门非常重视ML理论基础的课程,做做一些简单的笔记加上个人的理解。本笔记根据吴恩达的课程顺序,以每章内容作为节点进行记录。(共16章,其中第三章“线性代数回顾”与第5章“Octava教程”的笔记就不总结了)

第一章 引言(Introduction)

以三个问题的形式展开:

1、机器学习是什么?

第一个机器学习的定义来自于Arthur Samuel。定义可以回溯到50年代,他编写了一个西洋棋程序。通过编程,让西洋棋程序自己跟自己下了上万盘棋。通过观察哪种布局(棋盘位置)会赢,哪种布局会输,久而久之,这西洋棋程序明白了什么是好的布局,什么样是坏的布局。所以他将机器学习做了定义:在进行特定编程的情况下,给予计算机学习能力的领域。
然而,上述是个有点不正式的定义,年代也比较久远。另一个年代近一点的定义,由卡内基梅隆大学Tom Mitchell提出,他对机器学习的定义,,一个程序被认为能从经验E(Experience)中学习,解决任务T(Tasks),达到性能度量值P(performance),当且仅当,有了经验E后,经过P评判,程序在处理T时的性能有所提升。

2、监督学习是什么?

监督学习指的就是我们给学习算法一个数据集,这个数据集由“正确答案”组成,学习这个数据集过后,试着推测出一个连续值的结果。

例子1:

现有波特兰俄勒冈州的研究所收集了一些房价的数据,如图,横轴表示房子的面积,单位是平方英尺,纵轴表示房价,单位是千美元。那基于这组数据,假如你有一个朋友,他有一套750平方英尺房子,现在他希望把房子卖掉,他想知道这房子能卖多少钱。

吴恩达机器学习课程对应代码 吴恩达机器学课程讲义_吴恩达机器学习课程对应代码


我们应用学习算法,可以在这组数据中画一条直线,或者换句话说,拟合一条直线,根据这条线我们可以推测出,这套房子可能卖$150,000,当然这不是唯一的算法。可能还有更好的,比如我们不用直线拟合这些数据,用二次方程去拟合可能效果会更好。根据二次方程的曲线,我们可以从这个点推测出,这套房子能卖接近$200,000。稍后我们将讨论如何选择学习算法,如何决定用直线还是二次方程来拟合。两个方案中有一个能让你朋友的房子出售得更合理。这叫做回归问题

例子2

假设说你想通过查看病历来推测乳腺癌良性与否(malignant为恶性,benign为良性)。

吴恩达机器学习课程对应代码 吴恩达机器学课程讲义_人工智能_02


这个数据集中,横轴表示肿瘤的大小,纵轴上,我标出1和0表示是或者不是恶性肿瘤。我们之前见过的肿瘤,如果是恶性则记为1,不是恶性,或者说良性记为0。

有5个良性肿瘤样本,在1的位置有5个恶性肿瘤样本。现在我们有一个朋友很不幸检查出乳腺肿瘤。假设说她的肿瘤大概这么大,那么机器学习的问题就在于,你能否估算出肿瘤是恶性的或是良性的概率。

当然,分类问题不只输出0或1,还有更多种的分类情况比如分0、1、2、3。0代表良性,1代表A型的恶性肿瘤,2代表B型的恶性肿瘤,3代表C型的恶性肿瘤。这称为分类问题

3、无监督学习是什么?

上面谈到监督学习是:我们给学习算法一个数据集,这个数据集由“正确答案”组成,学习这个数据集过后,试着推测出一个连续值的结果。回想乳腺肿瘤的数据集,每个数据都已经标明是阴性或阳性,即是良性或恶性肿瘤。所以,对于监督学习里的每条数据,我们已经清楚地知道,训练集对应的是良性或恶性了。

吴恩达机器学习课程对应代码 吴恩达机器学课程讲义_吴恩达机器学习课程对应代码_03


而无监督学习中没有任何的标签或者是有相同的标签或者就是没标签。所以我们拿到的就是一个数据集,别的都没有。针对数据集,无监督学习就能判断出数据有两个不同的聚集簇。这是一个,那是另一个,二者不同。是的,无监督学习算法可能会把这些数据分成两个不同的簇。所以叫做聚类算法

吴恩达机器学习课程对应代码 吴恩达机器学课程讲义_人工智能_04


其实稍微做一个比喻就可以清楚的了解,就好比我们要把两个不同的工件分别放到不同的工具箱里,但是我们不需要知道两种工件具体的品名是什么,我们只需要把相同的形状的工件放在一起就可以了,这就是聚类了。

感谢黄海广博士团队的翻译和笔记
END