机器学习介绍
这门课,我们预期可以学到什么呢?我想多数同学的心理预期就是你可以学到一个很潮的人工智慧。我们知道,从今年开始,人工智慧这个词突然变得非常非常非常的热门,讲大家、政府通都在讲人工智慧这个词。
但人工智慧是什么呢?人工智慧其实一点都不是新的词汇,人工智慧(AI)、Artificial Intelligence这个词汇,在1950年代就有了。那这个词意味着什么呢?这个词意味着一个人类长远以来的目标,希望机器可以跟人一样的聪明。在科幻小说里面,我们看要很多这样的幻想和期待。但很长段时间里面,人们并不知道怎么做到人工智慧这件事情,直到后来,大概1980年代以后,有了机器学习的方法。那么机器学习顾名思义,从名字就可以被猜出,就是让机器具有学习的能力。所以机器学习跟人工智慧之间什么关系呢?
人工智慧是我们想要达成的目标,而机器学习是想要达成目标的手段,希望机器通过学习方式,他跟人一样聪明。而深度学习和机器学习有什么关系呢?深度学习就是机器学习的其中一种方法。
在有深度学习、机器学习之前,人们用什么样的方式来做到人工智慧这件事呢?我记得高中生物学告诉我们说:生物的行为取决于两件事,一个是后天学习的结果,不是后天学习的结果就是先天的本能。对于机器来说也是一样,他怎么样表现的很有智慧,要么就是通过后天学习的手段表现的很有智慧,要么就是它的先天的本能。机器为什么会有先天的本能,那可能就是他的创造者,其实都是人类,帮它事先设立好的。
现在先来看一下生物的本能,讲一个跟机器学习一点都没有关系的内容:生物的本能。如图这个是河狸,那河狸的特色呢就是它会筑水坝把水挡起来。但是河狸怎么知道要筑水坝呢?河狸筑水坝能力是天生的。也就是说,假设河狸他在实验室出生,它没有父母叫他怎么筑水坝。但是他一生下来,它心里就有个冲动,就是它想要筑水坝。那如果我们要程序语言来描述他的话,他那的程序语言就是这样的:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-T5lO0Dbo-1636982963071)(https://datawhalechina.github.io/leeml-notes/chapter1/res/chapter1-3.png)]
If 它听到流水声
Then 它就筑水坝直到他听不到流水声。
所以,生物学家就可以欺负河狸,他用一个扬声器来播放流水声,如果他把扬声器流放在水泥墙里面,然后河狸就会在水泥墙上面的放很多的树枝,在水泥墙上面筑堤,想把扬声器的声音盖住。如果你把扬声器放在地上,河狸就会用树枝把他盖住直到你听不见扬声器的声音为止。这就是生物的本能,那机器的本能跟生物的本能其实也很像。
假设有一天你想要做一个chat-bot,如果你不是用机器学习的方式,而是给他天生的本能的话,那像是什么样子呢?你可能就会在这个chat-bot里面,在这个聊天机器人里面的设定一些规则,这些规则我们通常称hand-crafted rules,叫做人设定的规则。那假设你今天要设计一个机器人,他可以帮你打开或关掉音乐,那你的做法可能是这样:设立一条规则,就是写程序。如果输入的句子里面看到“turn off”这个词汇,那chat-bot要做的事情就是把音乐关掉。这个时候,你之后对chat-bot说,Please turn off the music 或can you turn off the music, Smart? 它就会帮你把音乐关掉。看起来好像很聪明。别人就会觉得果然这就是人工智慧。但是如果你今天想要欺负chat-bot的话,你就可以说please don‘t turn off the music,但是他还是会把音乐关掉。这是个真实的例子,你可以看看你身边有没有这种类似的chat-bot,然后你去真的对他说这种故意欺负它的话,它其实是会答错的。这是真实的例子,但是不告诉他是哪家公司产品,这家公司也是号称他们做很多AI的东西的。
使用hand-crafted rules有什么样的坏处呢,它的坏处就是:使用hand-crafted rules你没办法考虑到所有的可能性,它非常的僵化,而用hand-crafted rules创造出来的machine,它永远没有办法超过它的创造者人类。人类想不到东西,就没办法写规则,没有写规则,机器就不知道要怎么办。所以如果一个机器,它只能够按照人类所设定好的hand-crafted rules,它整个行为都是被规定好的,没有办法freestyle。如果是这样的话,它就没有办法超越创造他的人类。
你可能会说,但是你好像看到很多chat-bot看起来非常的聪明。如果你是有一个是一个非常大的企业,他给以派给成千上万的工程师,用血汗的方式来建出数以万计的规则,然后让他的机器看起来好像很聪明。但是对于中小企业来说,这样建规则的方式反而是不利的。所以我认为机器学习发展,对比较小规模企业反而是更有利的。因为接下来,不需要非常大量的人来帮你想各式各样的规则,只要手上有data,你可以让机器来帮你做这件事情。当然怎么收集data又是另外一个问题,这不是我们今天要讨论的主题
AI这个词现在非常非常非常非常的热门,所以会有各式各样、奇奇怪怪的东西,我觉得现在非常经常碰到的一个问题,也许可用以下这个漫画来说明,这是四格漫画,而这个漫画并不是随随便便的一个四格漫画,这个漫画是facebook上的漫画。
这个漫画想要说的是:现在你一定常常新闻或者是商场上看到这个讯息,有一个seller说看看我们最新的人工智慧机器人,它就是非常的人工智慧。这个系统搭配一个能言善道seller,加上一个非常非常潮的前端和外壳,里面是什么没有人知道。
外面的观众就问说:他是用什么neural方法做的,反正就是最潮的AI的技术。但是你把他剖来看一看,里面通通都是if掉出来。
现在政府、企业都说想要推广的AI,可是他们想要推广AI其实是这种AI。那这个其实都不是我们现在应该做的事,如果你要推动,如果你要推广的是这种hand-crafted AI的话,你怎么五十年前不推广,一直到今天才出来做呢?今天我们要走的不是这个路线,如果是这个路线是要被diss的,
我们要做的其实是让机器他有自己学习的能力,也就我们要做的应该machine learning的方向。讲的比较拟人化一点,所谓machine learning的方向,就是你就写段程序,然后让机器人变得了很聪明,他就能够有学习的能力。接下来,你就像教一个婴儿、教一个小孩一样的教他,你并不是写程序让他做到这件事,你是写程序让它具有学习的能力。然后接下来,你就可以用像教小孩的方式告诉它。假设你要叫他学会做语音辨识,你就告诉它这段声音是“Hi”,这段声音就是