概述
李宏毅机器学习系列-机器学习介绍
- 机器学习介绍
- 生物的本能
- 人类设定好的天生本能
- 机器学习是什么
- 机器学习框架
- 机器学习Learning Map
- 监督学习
- 半监督学习和迁移学习
- 无监督学习
- 结构化学习
- 强化学习
- 为什么要学习机器学习
- 总结
机器学习介绍
人工智能其实早在1950年左右就被提出了,那个时候人们希望机器能跟人一样拥有智慧能做事,最开始就出现了人类设定好规则,机器执行,但是这样的机器永远只是执行人设定的,如果遇到人没设定的情况,就处理不了,于是人们又想,人之所以变得聪明,是因为能不断的学习,那能不能让机器也有学习能力呢?所以提出了机器学习,给机器某种学习方法,让他自己去学习,而深度学习则是属于机器学习的一种,基于神经网络,能够学习更加深层次的东西。
生物的本能
科学家发现河狸筑水坝的情况,发现河狸的这种能力是天生的,只要听到水声,他就想筑坝直到听不到水声,于是科学家就用扬声器去模仿水声,河狸果然做出了相应的行动去防止听到水声。
人类设定好的天生本能
机器的本能是人类给设定好的,比如下面一个例子,要创造一个聊天机器人,如果听到“关闭”,就会把音乐关闭,看似好像没啥问题,但是如果你说不要关闭,他也会去关闭,因为他不是去了解你这句话的意思,而是去判断是否有某个词,所以这样的机器永远只是做一些特定的事,而且没办法处理人类没设定的问题,因此也无法去超越人类了,或许人类可以堆叠起很多的规则给机器来处理,但是毕竟无法穷举,而且有些问题又很复杂,所以这并不是真正的智能。
AI在今天非常火,但是很多的貌似都是假的,其实是用一堆“if else”堆出来的,并不是真正的智能,比如Yann LeCun的FB上发的一个漫画,描述的就是一个销售员说自家的AI机器人有多智能,然后有人就不相信,想看看里面到底是什么,于是把他劈开了,发现里面是一堆“if else”,我们今天所说的当然不是这种智能啦。
机器学习是什么
简单来说就是让机器具有学习能力,举个语音识别机器人的例子,你写程序让机器拥有学习能力,让他去听各种声音来辨别说的是什么,或许他是学习音频的图像特征,或许是音频的时序特征,然后你给他一段没有听到过的“Hello”的声音,希望他能识别出这个就是“Hello”,其实就是一种学习举一反三的泛化能力。
再举一个图像识别的例子,你给机器看了很多动物的照片,比如猴子,猫,狗,然后你给他一只他没看到的猫,希望他可以识别出来这个就是猫。
更加直观的理解就是可以把机器学习看成在寻找一个方法
f
f
f,你给他一个输入,他给你一个输出,你希望他给你的输出是你要的,无论是语音识别,图像识别,走围棋,还是对话系统,都是这个原理。
机器学习框架
那我们要怎么找到那个方法
f
f
f呢?拿图像识别的例子说明下,就是找
f
f
f的过程,我们做做点什么事。
我们希望得到一个方法
f
f
f,输入一个图像,他给我预测一个类别,比如输入是一张猫图片,输出是猫,输入一张狗图片,输出是狗。首先我们先要准备一个方法集合,也就是模型,里面有一堆方法
f
1
,
f
2
.
.
.
f_1,f_2...
f1,f2...。比如下图的
f
1
,
f
2
f_1,f_2
f1,f2,明显
f
1
f_1
f1比
f
2
f_2
f2要好很多。
那我们要怎么去衡量哪些方法是好的呢?就需要训练集啦,这些训练集告诉说输入什么样的图像,应该输出什么样的类别。
这下知道了,输入和输出是怎么对应的才算是好的,但是问题又来了,我有那么多方法
f
1
,
f
2
.
.
.
f_1,f_2...
f1,f2...,怎么去找出最好的呢,难不成一个个去是过来,穷举下,貌似这个是无穷的,没办法做,所以需要一个算法,把最好的方法叫作
f
∗
f^*
f∗给选出来,比如我们经常听到的梯度下降法。所以总结起来机器学习的步骤就是,应该说是监督学习的步骤:
1.准备一堆方法集合
f
1
,
f
2
.
.
.
f_1,f_2...
f1,f2...,也就是一堆模型。
2.给定训练集,训练集会告诉方法说,哪些输入输出是好的。
3.用一个算法去找出最好的方法
f
∗
f^*
f∗。
这3步也叫做训练,把图像输入到
f
∗
f^*
f∗,得到一个类别的过程叫做测试。
其实机器学习概括起来很简单,就像是把大象放进冰箱的步骤,首先把冰箱门打开,然后把大象塞进去,然后关冰箱门,对应的就是定义模型,给定数据集,用算法找出最好的模型:
机器学习Learning Map
主要分为回归问题和分类问题,其实这只是很小一部分,还有很大一部分是其他问题。
回归问题是什么呢,简单来说,就是你给一个输入,我希望得到一个输出是个数值,而且连续的。
比如举PM2.5预测的例子,我有今天,昨天等等的PM2.5的数据,我希望预测明天的PM2.5值,于是我拿以前的数据来学习,得到一个
f
f
f,然后把前两天的数据输入进去,希望他能输出明天的PM2.5值。
而分类问题也差不多,只是输出的离散的,一般分为二分类和多分类的问题,二分类就是输出是两个类别,比如"Yes"或者"No"两个,比如我要预测明天下不下雨,输出就是下雨或者不下雨。对于多分类,就是输出多个类别,比如我希望知道某一张图片里有哪些动物类别,输出就是狗,猫,牛等等。
举个二分类引用的例子,比如谷歌的垃圾邮件分类,先将很多的邮件分成垃圾邮件,和非垃圾邮件,给模型进行训练并获得一个好的模型,之后给模型一个邮件,让他判别是是否是垃圾邮件:
另一方面,从模型上分,我们可以分为线性模型和非线性模型,我们熟悉的Deep Learning就是非线性模型:
监督学习
在有训练集和对应标签的情况下进行训练。
比如图像识别问题,给定了图像和对应的类别:
比如下围棋,其实也就是在那么多的棋盘上,选定一个位置下期,输入是一张棋谱,输出是放在哪个位置上,也可以看成是个分类问题:
半监督学习和迁移学习
当然我们还有半监督学习和迁移学习,有时候只有一部分有标签的数据,另一部分没有,或者只有少量的训练集:
无监督学习
再说无监督学习,在没有数据标签的情况下进行学习,比如要给一堆新闻分类,哪些是体育的类别,哪些是文学,哪些是军事等等。
当然还有画图,给了一堆学习图片,然后让机器自己学着画个图,不过效果貌似很奇怪:
结构化学习
还有一种结构化学习,比如把声音转文字,翻译,人脸识别,并不是简单的分类问题:
强化学习
最后还有很厉害的强化学习,用来打电话,然后训练AlphaGo下围棋,简单来说就是一种不断试错,通过结果的反馈来进行学习:
比如电话接听,监督学习是告诉你,听到别人说什么,你说要说上面,而强化学习是不告诉你任何要说的,你自己来尝试,只告诉你结果好不好,具体怎么做,你自己学着看,这个也比较符合人类的学习过程,没有人告诉你怎么样学习是正确的,只有你自己去尝试,得到了相应的反馈,你才知道好不好,才会做的更好。
AlphaGo下围棋是监督学习和强化学习的结合,通过观察棋谱判断下一步怎么下是监督学习,进行下棋训练时是强化学习:
所以整一个架构应该是这样的,按任何分为回归,分类,结构化学习,按场景分为监督学习,半监督学习,迁移学习,无监督学习,强化学习:
为什么要学习机器学习
虽然大部分工作可能被AI代替,当然也会有新的工作岗位产生,毕竟AI现在还是小,还需要人类培养训练,就想宠物小精灵的里的宠物训练师,宠物很强大,但是也会出现不听话,对付不同的战斗对象也需要不同的系的宠物,所以需要有经验的训练师,AI也是一样,除非有一天AI自己会进化,自己会训练,或许人类存在的意义就小了很多了,不过暂时应该还不会。
总结
本篇只是一个开篇介绍,简单的介绍了下机器学习的一些知识,先了解入个门,能产生兴趣学下去是主要目的。附上简单的思维导图:
好了,今天就到这里了,希望对学习理解有帮助,大神看见勿喷,仅为自己的学习理解,能力有限,请多包涵,图片来自李宏毅课件,侵删。
最后
以上就是纯情书包为你收集整理的李宏毅机器学习系列-机器学习介绍机器学习介绍的全部内容,希望文章能够帮你解决李宏毅机器学习系列-机器学习介绍机器学习介绍所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复