网易云课堂-吴恩达机器学习-学习归纳-1-初识机器学习

课程链接:https://study.163.com/course/courseMain.htm?courseId=1004570029&trace_c_p_k2=af72cced763c478695d563977eb54ce6

一、机器学习算法就在我们身边

机器学习算法的应用在我们身边随处可见,我们每天都在享受着机器学习算法带给我们的便捷,比如,打开Google或百度,搜索你感兴趣的内容,搜索引擎会使用机器学习算法对网页进行排序,让我们很快就可以获得我们想要的信息;再比如,Facebook或者苹果的图片分类程序会使用机器学习算法识别你朋友的照片,从而将这些照片放进不同的相册中,让我们在翻看照片时特别地方便;再比如,邮件的过滤器会使用机器学习算法帮我们自动地将邮件进行归类并过滤掉大量的垃圾邮件,不仅大大节省了我们的时间,还对邮件系统进行了防护。。。

二、为什么机器学习如此受欢迎呢?

原因是,机器学习应用太广泛了,机器学习不只适用于人工智能领域,各行各业都尝试使用机器学习算法来解决本行业中的问题,下面举一些机器学习应用的案例。

1、数据挖掘

数据挖掘主要是应用于大数据领域,利用机器学习的模型来挖掘数据中的潜在价值。发现数据之间的关系。比如,大量的硅谷公司正在收集web上的单击数据,也称为点击流数据,并尝试使用机器学习算法来分析数据,为了更好地了解用户,并为用户提供更好的服务;再比如,随着自动化的出现,我们现在有了电子医疗记录。如果我们可以把医疗记录变成医学知识,就可以更好地理解疾病。

2、计算机视觉

让机器像人一样看世界,看到图像,视频等媒体。会把图像进行识别,分类。图中的是动物,还是人,还是其他的物体。

3、自然语言处理

让机器理解人类的语言,实现人机间的信息交流。自然语言处理的具体表现形式包括机器翻译、文本摘要、文本分类、文本校对、信息抽取、语音合成、语音识

4、机器人决策

让机器像人一样拥有决策的能力,比如自动驾驶,机器人的控制等。

三、什么是机器学习呢?

What is machine learning? 不同人对机器学习有不同的定义。下面是 亚瑟·塞穆尔 (Arthur Samuel) 给出的机器学习的定义:

Arthur Samuel (1959).
Machine Learning: Field of study that gives computers the ability to learn without being explicitly programmed.
亚瑟·塞穆尔将机器学习定义为:在没有明确为计算机编写(完成某项具体任务的)程序的情况下,让计算机拥有 “学习” 能力的一个研究领域。

Samuel 编程实现了一个玩跳棋的程序。这个跳棋程序的神奇之处在于,他让程序跟程序自身下了成千上万盘棋,跳棋程序通过观察分析什么样的棋局更容易致胜,什么样的棋局更容易输,逐渐学会了什么是好的棋局,什么样的棋局会输。最终,跳棋程序的下棋水平超过了 Samuel 。

Tom Mitchell给出一个更加正式的定义:一个程序被认为能从经验E中学习,解决任务T,达到性能度量值P,当且仅当,有了经验E后,经过P评判, 程序在处理T时的性能有所提升。举个例子:

假设你的电子邮件程序会观察收到的邮件是否被你标记为垃圾邮件。在这种Email客户端中,你点击“垃圾邮件”按钮,报告某些email为垃圾邮件,不会影响别的邮件。基于被标记为垃圾的邮件, 您的电子邮件程序能更好地学习如何过滤垃圾邮件。
在这个案例中:
T:标记邮件是否为垃圾邮件
E:观察你标记邮件是否为垃圾邮件
P:区分垃圾邮件成功的正确率

从实践的意义上来说,机器学习是一种通过利用数据,训练出模型,然后使用模型预测的一种方法。

四、机器学习算法分类

将机器学习算法按照学习方式分类可分为
监督学习 Supervised Learning
无监督学习 Unsupervised Leanring
半监督学习 Semi-supervised Leanring
增强学习 Reinforcement Leanring
这里先介绍前面两种:监督学习和无监督学习。

Supervised Learning 就是我们要明确告诉计算机如何做某件事情,而Unsupervised Learning 则意味着我们要让程序自己进行学习。

1、监督学习

假设你现在想要预测房价,并且拥有一些关于房价的数据,如下:
网易云课堂-吴恩达机器学习-学习归纳-1-初识机器学习_第1张图片
其中横轴表示房子的面积(单位是平方英尺),纵轴表示房价(单位是千美元),假如你有一套750平方英尺大小的房子想要卖掉,那么基于以上数据,你如何推测房子大概值多少钱。

对于这个问题,我们可以应用机器学习算法,在这组数据中画一条直线或者说是拟合一条直线,根据这条线我们可以推测出这套房子可能卖$150, 000,见图中粉色的直线。当然这不是唯一的算法,比如一个二次函数可能更适合已有的数据,我们使用这个二次函数的曲线来进行预测可能效果会更好,见图中蓝色的曲线。

以上就是一个 Supervised Learning 的例子,可以看出 Supervised Learning 指的就是我们给学习算法一个数据集,这个数据集由“正确答案”组成。在房价的例子中,我们给了一系列房子的数据,我们给定数据集中每个样本的正确价格,即它们实际的售价,然后运用学习算法,计算出更多的正确答案,这类问题有个术语,叫做回归问题。我们试着推测出一个连续值的结果,即房子的价格。

我们再来讨论另外一个监督学习的例子,假使你希望通过查看病例来预测一个乳腺癌是否是良性的,这个数据集中,横轴表示肿瘤的大小,纵轴上,标出 1 和 0 来分别表示是恶性肿瘤或者不是恶性肿瘤。我们之前见过的肿瘤,如果是恶性记为1,不是恶性(或者说是良性)则记为0。
网易云课堂-吴恩达机器学习-学习归纳-1-初识机器学习_第2张图片
现在我们有一个朋友很不幸检查出乳腺肿瘤。假设已经知道肿瘤的尺寸,那么机器学习的问题就在于,你能否估算出肿瘤是恶性的或是良性的概率。用术语来讲,这是一个分类问题。

分类指的是我们试着推测出离散的输出值: 0 或 1 、良性或恶性。而事实上在分类问题中,输出可能不止两个值。比如说可能有三种乳腺癌,所以你希望预测离散输出0、1、2、3。其中 0 代表良性,1 表示第一类乳腺癌,2 表示第二类癌症,3 表示第三类。但是,实际上这也是分类问题,因为这几个离散的输出分别对应良性、第一类、第二类或者第三类癌症。

在分类问题中我们可以用另一种方式来绘制这些数据点。我们可以用不同的符号来表示这些数据,既然我们把肿瘤的尺寸看做区分恶性或良性的特征,那么我们可以这么画,用不同的符号来表示良性和恶性肿瘤,或者说是负样本和正样本。现在我们不全部画X,而是改成良性的肿瘤用O表示,恶性的继续用X表示。我们所做的只是把上面的数据一一映射下来,映射到一根直线上,并且用不同的符号 O 和 X 来表示良性和恶性样本。

注意,在这个例子中,我们只用了肿瘤的尺寸这一种特征来预测肿瘤的恶性与否,在其它一些机器学习问题中可能会遇到不止一种特征。举个例子,我们不仅知道肿瘤的尺寸,还知道对应患者的年龄,那现在数据集看起来可能是如下这个样子:
网易云课堂-吴恩达机器学习-学习归纳-1-初识机器学习_第3张图片
也就是说,你现有的数据集是不同病人的年龄和她们身上肿瘤的尺寸大小以及这些肿瘤的良性与否。我们以横坐标为肿瘤的尺寸,以纵坐标为病人的年龄,以 O 代表良性肿瘤,以 X 代表恶性肿瘤。我们的学习算法要做的就是确定出这样一条直线,把恶性肿瘤和良性肿瘤分开。如果根据你学习算法得出的结论是你朋友的肿瘤落在良性这一边,那么现实中就更可能是良性的而不是恶性。

在这个例子中,我们有两种特征,患者年龄和肿瘤大小,而在在其他机器学习问题中,我们通常有更多的特征。就以之前的乳腺癌为例来说,还可以采用这些特征:肿块密度、肿瘤细胞尺寸的一致性和形状的一致性等等。

总结:
Supervised Learning的基本思想是,我们给学习算法一个数据集,数据集中的每个样本都有相应的“正确答案”,再根据这些样本作出预测,就像房子和肿瘤的例子中做的那样。在房子的例子中,我们给了一系列房子的数据,我们给定数据集中每个样本的正确价格,即它们实际的售价,然后运用机器学习算法来预测数据集之外的房子的价格,这个问题也叫做回归问题,即通过学习来推测出一个连续的输出。在肿瘤的例子中,我们给出了一系列肿瘤的数据,我们把给定数据集中不同尺寸的每个肿瘤样本都打上了良性或者恶性的标签,分成了不同的类别,然后运用学习算法来预测一个肿瘤的良性与否,这个问题也叫做分类问题,即通过学习来推测出一组离散的结果。

2、无监督学习

在 Unsupervised Learning 中,我们所用的数据会和 Supervised Learning 里的看起来有些不一样。在 Unsupervised Learning 中,没有属性或标签这一概念,也就是说所有的数据都是一样的,没有区别。所以在 Unsupervised Learning 中,我们只有一个数据集,没人告诉我们该怎么做,我们也不知道每个数据点究竟是什么意思。相反,它只告诉我们,现在有一个数据集,你能在其中找到某种结构吗?

对于给定的数据集,无监督学习算法会把这些数据分成若干个堆儿,这就是所谓的聚类算法。如下图所示。

网易云课堂-吴恩达机器学习-学习归纳-1-初识机器学习_第4张图片
举个聚类算法的例子:
网易云课堂-吴恩达机器学习-学习归纳-1-初识机器学习_第5张图片
谷歌新闻每天都在干什么呢?他们每天会去收集成千上万的网络上的新闻,然后将他们分组,组成一个个新闻专题。谷歌新闻所做的就是去搜索成千上万条新闻,然后自动的将他们聚合在一起,有关同一主题的新闻被显示在一起。

总结:
拿上面的肿瘤例子来说,在监督学习当中,所有的不同尺寸的肿瘤样本都被打上了良性或恶性的标签。而在无监督学习中,给定的样本没有被打上标签,所有的数据都是一样的。无监督学习的任务就是从给定的数据集中,找出数据可能具有的某种结构,比如把数据分成不同的堆儿,这类算法也被称为聚类算法。

你可能感兴趣的:(吴恩达机器学习课程)