精华内容
下载资源
问答
  • 李宏毅机器学习

    2019-01-18 15:01:29
    李宏毅机器学习,包含笔记,课件,作业。内容全面,仅供学习。
  • 李宏毅 机器学习 课程作业代码李宏毅 机器学习 课程作业代码李宏毅 机器学习 课程作业代码李宏毅 机器学习 课程作业代码李宏毅 机器学习 课程作业代码李宏毅 机器学习 课程作业代码李宏毅 机器学习 课程作业代码...
  • 李宏毅 机器学习 PPT

    2017-11-12 15:37:22
    李宏毅 机器学习 PPT 李宏毅 机器学习 PPT
  • 李宏毅机器学习作业

    2019-01-18 15:05:06
    李宏毅机器学习作业,文档文件,笔记全面,总结充分,仅供学习
  • 李宏毅机器学习笔记

    2019-01-18 15:02:53
    李宏毅机器学习笔记,文档文件,笔记全面,总结充分,仅供学习
  • 李宏毅机器学习笔记】1、回归问题(Regression) 【李宏毅机器学习笔记】2、error产生自哪里? 【李宏毅机器学习笔记】3、gradient descent 【李宏毅机器学习笔记】4、Classification 【李宏毅机器学习笔记】5、...
  • 李宏毅机器学习笔记】1、回归问题(Regression) 【李宏毅机器学习笔记】2、error产生自哪里? 【李宏毅机器学习笔记】3、gradient descent 【李宏毅机器学习笔记】4、Classification 【李宏毅机器学习笔记】5、...
  • 李宏毅机器学习笔记】1、回归问题(Regression) 【李宏毅机器学习笔记】2、error产生自哪里? 【李宏毅机器学习笔记】3、gradient descent 【李宏毅机器学习笔记】4、Classification 【李宏毅机器学习笔记】5、...
  • 李宏毅机器学习pdf.zip

    2019-09-07 17:19:22
    李宏毅机器学习课程使用的ppt,很适合机器学习爱好者下载使用
  • 李宏毅机器学习笔记github链接:https://github.com/datawhalechina/leeml-notes 李宏毅机器学习笔记在线阅读链接:https://datawhalechina.github.io/leeml-notes 机器学习介绍 这门课,我们预期可以学到什么呢?...

    李宏毅机器学习笔记github链接:https://github.com/datawhalechina/leeml-notes

    李宏毅机器学习笔记在线阅读链接:https://datawhalechina.github.io/leeml-notes

    机器学习介绍

    在这里插入图片描述
    这门课,我们预期可以学到什么呢?我想多数同学的心理预期就是你可以学到一个很潮的人工智慧。我们知道,从今年开始,人工智慧这个词突然变得非常非常非常的热门,讲大家、政府通都在讲人工智慧这个词。

    但人工智慧是什么呢?人工智慧其实一点都不是新的词汇,人工智慧(AI)、Artificial Intelligence这个词汇,在1950年代就有了。那这个词意味着什么呢?这个词意味着一个人类长远以来的目标,希望机器可以跟人一样的聪明。在科幻小说里面,我们看要很多这样的幻想和期待。但很长段时间里面,人们并不知道怎么做到人工智慧这件事情,直到后来,大概1980年代以后,有了机器学习的方法。那么机器学习顾名思义,从名字就可以被猜出,就是让机器具有学习的能力。所以机器学习跟人工智慧之间什么关系呢?

    人工智慧是我们想要达成的目标,而机器学习是想要达成目标的手段,希望机器通过学习方式,他跟人一样聪明。而深度学习和机器学习有什么关系呢?深度学习就是机器学习的其中一种方法。

    在有深度学习、机器学习之前,人们用什么样的方式来做到人工智慧这件事呢?我记得高中生物学告诉我们说:生物的行为取决于两件事,一个是后天学习的结果,不是后天学习的结果就是先天的本能。对于机器来说也是一样,他怎么样表现的很有智慧,要么就是通过后天学习的手段表现的很有智慧,要么就是它的先天的本能。机器为什么会有先天的本能,那可能就是他的创造者,其实都是人类,帮它事先设立好的。

    在这里插入图片描述
    现在先来看一下生物的本能,讲一个跟机器学习一点都没有关系的内容:生物的本能。如图这个是河狸,那河狸的特色呢就是它会筑水坝把水挡起来。但是河狸怎么知道要筑水坝呢?河狸筑水坝能力是天生的。也就是说,假设河狸他在实验室出生,它没有父母叫他怎么筑水坝。但是他一生下来,它心里就有个冲动,就是它想要筑水坝。那如果我们要程序语言来描述他的话,他那的程序语言就是这样的:
    在这里插入图片描述
    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”,这段声音就是“How are you”,这段声音是“Good bye”。希望接下来它就学会了,你给它一个新的声音,它就可以帮你产生语音辨识的结果。

    在这里插入图片描述
    如果你希望他学会怎么做影像辨识,你可能不太需要改太多的程序。因为他本身就有这种学习的能力,你只是需要交换下告诉它:看到这张图片,你要说这是猴子;看到这张图片,然后说是猫;看到这张图片,可以说是狗。它具有影像辨识的能力,接下来看到它之前没有看过的猫,希望它可以认识。

    在这里插入图片描述
    如果讲的更务实一点的话,machine learning所做的事情,你可以想成就是在寻找一个function,要让机器具有一个能力,这种能力是根据你提供给他的资料,它去寻找出我们要寻找的function。还有很多关键问题都可以想成是我们就是需要一个function。

    在这里插入图片描述
    在语音辨识这个问题里面,我们要找一个function,它的输入是声音讯号,他的输出是语音辨识的文字。这个function非常非常的复杂,有人会想说我来用一些写规则的方式,读很多语言学文献,然后写一堆规则,然后做语音辨识。这件事情,60年代就有人做,但到现在都还没有做出来。语音辨识太过复杂,这个function太过的复杂,不是人类所可以写出来,这是可以想象的。所以我们需要凭借的机器的力量,帮我们把这个function找出来。

    假设你要做影像辨识,那就是找一个function,输入一张图片,然后输出图片里面有什么样的东西。 或者是大家都一直在说的Alpha GO,如果你要做一个可以下围棋machine时,其实你需要的也就是找一个function。这个function的输入是围棋上19* 19的棋盘。告诉机器在19* 19的棋盘上,哪些位置有黑子,哪些位置有白子。然后机器就会告诉你,接下来下一步应该落子在哪。或者是你要做一个聊天机器人,那你需要的是一个function,这个function的输入就是使用者的input,它的输出就是机器的回应。

    在这里插入图片描述
    以下我先很简短的跟大家说明怎么样找出这个function,找出function的framework是什么呢?我们以影像辨识为例,我们找个function输入一张图片,它告诉我们这个图片里面有什么样的东西。

    在这里插入图片描述
    在做这件事时,你的起手事是你要先准备一个function set(集合),这个function里面有成千上万的function。举例来说,这个function在里面,有一个f1,你给它看一只猫,它就告诉你输出猫,看一只狗就输出狗。有一个function f2它很怪,你给它看猫,它说是猴子;你给他看狗,它说是蛇。你要准备一个function set,这个function set里面有成千上万的function。这件事情讲起来可能有点抽象,你可能会怀疑说怎么会有成千上万的function,我怎么把成千上万的function收集起来,这个内容我们之后会再讲。

    在这里插入图片描述
    总之,我们先假设你手上有一个function set,这个function set就叫做model(模型)。

    在这里插入图片描述
    有了这个function set,接下来机器要做的事情是:它有一些训练的资料,这些训练资料告诉机器说一个好的function,它的输入输出应该长什么样子,有什么样关系。你告诉机器说呢,现在在这个影像辨识的问题里面,如果看到这个猴子,看到这个猴子图也要输出猴子,看到这个猫的图也要输出猴子猫,看到这个狗的图,就要输出猴子猫狗,这样才是对的。只有这些训练资料,你拿出一个function,机器就可以判断说,这个function是好的还是不好的。

    在这里插入图片描述
    机器可以根据训练资料判断一个function是好的,还是不好的。举例来说:在这个例子里面显然f1,他比较符合training data的叙述,比较符合我们的知识。所以f1看起来是比较好的。f2看起来是一个荒谬的function。我们今天讲的这个task叫做supervised learning。

    在这里插入图片描述
    如果你告诉机器input和output这就叫做supervised learning,之后我们也会讲到其他不同的学习场景。现在机器有办法决定一个function的好坏。但光能够决定一个function的好坏是不够的,因为在你的function set里面,他有成千上万的function,它有会无穷无尽的function,所以我们需要一个有效率的演算法,有效率的演算法可以从function的set里面挑出最好的function。一个一个衡量function的好坏太花时间,实际上做不到。所以我们需要有一个好的演算法,从function set里面挑出一个最好的的function,这个最好的function将它记为 [公式]

    在这里插入图片描述
    找到 ff^* 之后,我们希望用它应用到一些场景中,比如:影像辨识,输入一张在机器没有看过的猫,然后希望输出也是猫。你可能会说:机器在学习时没有看到这只猫,那咋样知道在测试时找到的最好function ff^ *可以正确辨识这只猫呢?这就是machine learning里面非常重要的问题:机器有举一反三的能力,这个内容后面再讲。

    在这里插入图片描述
    左边这个部分叫training,就是学习的过程;右边这个部分叫做testing,学好以后你就可以拿它做应用。所以在整个machine learning framework整个过程分成了三个步骤。第一个步骤就是找一个function,第二个步骤让machine可以衡量一个function是好还是不好,第三个步骤是让machine有一个自动的方法,有一个好演算法可以挑出最好的function。

    在这里插入图片描述
    机器学习其实只有三个步骤,这三个步骤简化了整个process。可以类比为:把大象放进冰箱。我们把大象塞进冰箱,其实也是三个步骤:把门打开;象塞进去;后把门关起来,然后就结束了。所以说,机器学习三个步骤,就好像是说把大象放进冰箱,也只需要三个步骤。

    机器学习相关的技术

    在这里插入图片描述
    如图为这学期的Learning Map,看起来是有点复杂的,我们一块一块来解释,接下里我们将从图的左上角来进行学习。

    在这里插入图片描述
    Regression是一种machine learning的task,当我们说:我们要做regression时的意思是,machine找到的function,它的输出是一个scalar,这个叫做regression。举例来说,在作业一里面,我们会要你做PM2.5的预测(比如说预测明天上午的PM2.5) ,也就是说你要找一个function,这个function的输出是未来某一个时间PM2.5的一个数值,这个是一个regression的问题。

    机器要判断function明天上午的PM2.5输出,你要提供给它一些资讯,它才能够猜出明天上午的PM2.5。你给他资讯可能是今天上的PM2.5、昨天上午的PM2.5等等。这是一个function,它吃我们给它过去PM2.5的资料,它输出的是预测未来的PM2.5。

    在这里插入图片描述
    若你要训练这种machine,如同我们在Framework中讲的,你要准备一些训练资料,什么样的训练资料?你就告诉它是今天我们根据过去从政府的open data上搜集下来的资料。九月一号上午的PM2.5是63,九月二号上午的PM2.5是65,九月三号上午的PM2.5是100。所以一个好的function输入九月一号、九月二号的PM2.5,它应该输出九月三号的PM2.5;若给function九月十二号的PM2.5、九月十三号的PM2.5,它应该输出九月十四号的PM2.5。若收集更多的data,那你就可以做一个气象预报的系统。

    在这里插入图片描述
    接下来讲的是Classification(分类)的问题。Regression和Classification的差别就是我们要机器输出的东西的类型是不一样。在Regression中机器输出的是一个数值,在Classification里面机器输出的是类别。假设Classification问题分成两种,一种叫做二分类输出的是是或否(Yes or No);另一类叫做多分类(Multi-class),在Multi-class中是让机器做一个选择题,等于是给他数个选项,每个选项都是一个类别,让他从数个类别里选择正确的类别。

    在这里插入图片描述
    举例来说,二分类可以鉴别垃圾邮件,将其放到垃圾箱。那怎么做到这件事呢?其实就是需要一个function,它的输入是一个邮件,输出为邮件是否为垃圾邮件。

    在这里插入图片描述
    你要训练这样的function很简单,给他一大堆的Data并告诉它,现在输入这封邮件,你应该说是垃圾邮件,输入这封邮件,应该说它不是垃圾邮件。你给他够多的这种资料去学,它就可以自动找出一个可以侦测垃圾邮件的function。

    在这里插入图片描述
    多分类的举一个文章分类的例子,现在网络上有非常非非常多的新闻,也许没有人会把所有的新闻看完,但希望机器自动帮一把新闻做分类。怎么做呢?你需要的是一个function,它的输入是一则新闻,输出是新闻属于哪个类别,你要做的事情就是解这个选择题。

    若要训练这种机器就要准备很多训练资料(Training Data),然后给它新的文章,新闻它能给你正确的结果。

    在这里插入图片描述
    刚才讲的都是让machine去解的任务,接下来要讲的是在解任务的过程中第一步就是要选择function set,选不同的function set就是选不同的model。Model有很多种,最简单的就是线性模型,但我们会花很多时间在非线性的模型上。在非线性的模型中最耳熟能详的就是Deep learning。

    在这里插入图片描述
    在做Deep learning时,它的function是特别复杂的,所以它可以做特别复杂的事情。比如它可以做影像辨识,这个复杂的function可以描述pixel和class之间的关系。

    在这里插入图片描述
    用Deep learning的技术也可以让机器下围棋, 下围棋这个task 其实就是一个分类的问题。对分类问题我们需要一个很复杂的function,输入是一个棋盘的格子,输出就是下一步应该落子的位置。我们知道一个棋盘上有十九乘十九的位置可以落子,所以今天下围棋这件事情,你就可以把它想成是一个十九乘十九个类别的分类问题,或者是你可以把它想成是一个有十九乘十九个选项的选择题。

    在这里插入图片描述
    你要怎么训练机器让他学会下围棋呢?你要搜集训练资料,告诉机器现在这个function输入输出分别应该是什么。就看到某样的盘式,我们应该输出什么样结果。

    怎么收集资料呢?你可以从人类过去下的棋库里面搜集。举例来说,你收集了进藤光和社新春下的那一盘棋的棋谱。社新春出手先下五之5,进藤光次手下天元,社新春第三手下五之5。

    在这里插入图片描述
    所以若你有了这样的棋谱之后,可以告诉machine如果现在有人落子下5之五,下一步就落子在天元;若五之五和天元都有落子,那就要落子在另外一个五之5上。然后你给它足够多的棋谱,他就学会下围棋了。

    在这里插入图片描述
    除了deep learning 以外还有很多machine learning的model也是非线性的模型,这学期会请吴佩云老师来帮我们讲SVM。

    半监督学习

    在这里插入图片描述
    刚才我们讲的都是supervised learning(监督学习),监督学习的问题是我们需要大量的training data。training data告诉我们要找的function的input和output之间的关系。如果我们在监督学习下进行学习,我们需要告诉机器function的input和output是什么。这个output往往没有办法用很自然的方式取得,需要人工的力量把它标注出来,这些function的output叫做label。

    那有没有办法减少label需要的量呢?就是半监督学习。

    在这里插入图片描述
    假设你先想让机器鉴别猫狗的不同。你想做一个分类器让它告诉你,图片上是猫还是狗。你有少量的猫和狗的labelled data,但是同时你又有大量的Unlabeled data,但是你没有力气去告诉机器说哪些是猫哪些是狗。在半监督学习的技术中,这些没有label的data,他可能也是对学习有帮助。这个我们之后会讲为什么这些没有label的data对学习会有帮助。

    迁移学习

    在这里插入图片描述
    另外一个减少data用量的方向是迁移学习。

    在这里插入图片描述
    迁移学习的意思是:假设我们要做猫和狗的分类问题,我们也一样,只有少量的有label的data。但是我们现在有大量的data,这些大量的data中可能有label也可能没有label。但是他跟我们现在要考虑的问题是没有什么特别的关系的,我们要分辨的是猫和狗的不同,但是这边有一大堆其他动物的图片还是动画图片(凉宫春日,御坂美琴)你有这一大堆不相干的图片,它到底可以带来什么帮助。这个就是迁移学习要讲的问题。

    无监督学习

    在这里插入图片描述
    更加进阶的就是无监督学习,我们希望机器可以学到无师自通。

    在这里插入图片描述
    如果在完全没有任何label的情况下,到底机器可以学到什么样的事情。举例来说,如果我们给机器看大量的文章(在去网络上收集站文章很容易,网络上随便爬就可以)让机器看过大量的文章以后,它到底可以学到什么事情。

    在这里插入图片描述
    它能不能够学会每一个词汇的意思,要让机器学会每一个词汇的意思,你可以想成是我们找一个function,然后你把一个词汇丢进去。比如说你把“apple”丢进这个function里面,机器要输出告诉你说这个词会是什么意思。也许他用一个向量来表示这个词汇的各种不同的特性。但现在讲是无监督学习的问题,你现在只有一大堆的文章,也就是说你只有词汇,你只有function的输入,没有任何的输出。那你到底要怎么解决这个问题。

    在这里插入图片描述
    我们举另外一个无监督学习的例子:假设我们今天带机器去动物园让它看一大堆的动物,它能不能够在看了一大堆动物以后,它就学会自己创造一些动物。那这个都是真实例子。仔细看了大量的动物以后,它就可以自己的画一些狗出来。有眼睛长在身上的狗、还有乳牛狗等等。

    在这里插入图片描述
    这个Task也是一个无监督学习的问题,这个function的输入不知道是什么,可能是某一个code代表要输出图片的特性,输出是一张图片。你给机器看到的只有非常大量的图片,只有function的input,没有output。机器要咋样生成新的图片,这是我们后面要解决的问题。

    监督学习中的结构化学习

    在这里插入图片描述
    在machine要解的任务上我们讲了Regression、classification,还有一类的问题是structured learning。

    在这里插入图片描述
    structured learning 中让机器输出的是要有结构性的,举例来说:在语音辨识里面,机器输入是声音讯号,输出是一个句子。句子是要很多词汇拼凑完成。它是一个有结构性的object。或者是说在机器翻译里面你说一句话,你输入中文希望机器翻成英文,它的输出也是有结构性的。或者你今天要做的是人脸辨识,来给机器看张图片,它会知道说最左边是长门,中间是凉宫春日,右边是宝玖瑠。然后机器要把这些东西标出来,这也是一个structure learning问题。

    在这里插入图片描述
    其实多数人可能都听过regression,也听过classification,你可能不见得听过structure learning。很多教科书都直接说,machine learning是两大类的问题,regression,和classification。machine learning只有regression和classification两类问题,就好像告诉你:我们所熟知的世界只有五大洲,但是这只是真实世界的一小部分,真正的世界是如图所示。

    真正世界还应该包括structure learning,这里面还有很多问题是没有探究的。

    在这里插入图片描述
    最后一部分就是reinforcement learning的问题。

    在这里插入图片描述
    reinforcement learning其实是一个已经发展了很久的技术,但近期受到大家的关注是因为data mining将reinforcement learning技术用来玩一些小游戏。另外一个就是Alpha Go。

    强化学习

    在这里插入图片描述
    我们若将强化学习和监督学习进行比较时,在监督学习中我们会告诉机器正确答案是什么。若现在我们要用监督学习的方法来训练一个聊天机器人,你的训练方式会是:你就告诉机器,现在使用者说了hello,你就说hi,现在使用者说了byebye ,你就说good bye。所以机器有一个人当他家教在他旁边手把手的教他每件事情,这就是监督学习。

    reinforcement learning是什么呢?在reinforcement learning里面,我们没有告诉机器正确的答案是什么,机器所拥有的只有一个分数,就是他做的好还是不好。若我们现在要用reinforcement learning方法来训练一个聊天机器人的话,他训练的方法会是这样:你就把机器发到线下,让他的和面进来的客人对话,然后想了半天以后呢,最后仍旧勃然大怒把电话挂掉了。那机器就学到一件事情就是刚才做错了。但是他不知道哪边错了,它就要回去自己想道理,是一开始就不应该打招呼吗?还是中间不应该在骂脏话了之类。它不知道,也没有人告诉它哪里做的不好,它要回去反省检讨哪一步做的不好。机器要在reinforcement learning的情况下学习,机器是非常intelligence的。 reinforcement learning也是比较符合我们人类真正的学习的情景,这是你在学校里面的学习老师会告诉你答案,但在真实社会中没人回告诉你正确答案。你只知道你做得好还是做得不好,如果机器可以做到reinforcement learning,那确实是比较intelligence。

    在这里插入图片描述
    若我们用Alpha Go当做例子时,supervised learning就是告诉机器:看到这个盘式你就下“5-5”,看到这个盘式你就下“3-3”

    reinforcement learning的意思是:机器跟对手互下,机器会不断的下棋,最后赢了,机器就会知道下的不错,但是究竟是哪里可以使它赢,它其实是不知道的。我们知道Alpha Go其实是用监督学习加上reinforcement learning去学习的。先用棋谱做监督学习,然后在做reinforcement learning,但是reinforcement learning需要一个对手,如果使用人当对手就会很让费时间,所以机器的对手是另外一个机器。

    小贴士

    在这里插入图片描述
    大家注意一下这个不同的方块,我是用不同的颜色来表示。同样的颜色不同的方块是同一个类型的,这边的蓝色的方块,指的是学习的情景,通常学习的情景是你没有办法控制的。比如,因为我们没有data做监督学习,所以我们才做reinforcement learning。现在因为Alpha Go比较火,所以Alpha Go中用到的reinforcement learning会被认为比较潮。所以说有学生去面试,说明自己是做监督学习的,就会被质疑为什么不做reinforcement learning。那这个时候你就应该和他说,如果我今天可以监督学习,其实就不应该做reinforcement learning。reinforcement learning就是我们没有办法做监督学习的时候,我们才做reinforcement learning。红色的是指你的task,你要解的问题,你要解的这个问题随着你用的方程的不同,有regression、有classification、有structured。所以在不同的情境下,都有可能要解这个task。最后,在这些不同task里面有不同的model,用绿色的方块表示。

    发布于 2019-09-16

    展开全文
  • 李宏毅机器学习·笔记自己整理成了PDF,现在分享给大家。
  • 李宏毅机器学习 第一份作业pm2.5预测 训练集下载 train.csv
  • 李宏毅机器学习是所有机器学习初学者的必经之路,案例风趣,解释详尽,让人觉得机器学习复杂的公式是如何的自然。
  • 台湾大学李宏毅机器学习课后习题代码,每一个作业题的答案
  • 李宏毅机器学习笔记】1、回归问题(Regression) 【李宏毅机器学习笔记】2、error产生自哪里? 【李宏毅机器学习笔记】3、gradient descent 【李宏毅机器学习笔记】4、Classification 【李宏毅机器学习笔记】5、...
  • VIDEO 【1】Learning Map(学习导图) blog pdf video 【2】Regression:Case Study ;回归:案例研究 blog pdf video 【3】Gradient Descent ;梯度下降 blog pdf video 【4

    今天收到了第一笔赞赏,非常感谢,也很惊喜,o( ̄▽ ̄)ブ

    时间 赞赏者 赞赏留言 赞赏数额
    2019.7.18 奔跑 感谢你整理Hong-yi Lee老师讲解的机器学习的资料~ 5元
    2019.7.27 Eivind 谢谢 1元
    2019.11.22 * 加油 10元
    2019.11.03 比球还圆 谢谢你的工作对我很有帮助 20元
    TOPIC CONTENTS BLOG PDF VIDEO
    【1】Learning Map(学习导图) blog pdf video
    【2】Regression:Case Study ;回归:案例研究 blog pdf video
    【3】Gradient Descent ;梯度下降 blog pdf video
    【4】Where does the error come from? ;误差分析 blog pdf video
    【5】Classification: Probabilistic Generative Model;分类:概率生成模型 blog pdf video
    【6】Classification: Logistic Regression;Logistic回归 blog pdf video
    【7】Brief Introduction of Deep Learning;深度学习简介 blog pdf video
    【8】Backpropagation;反向传播算法 blog pdf video
    【9】“Hello world” of deep learning;初探深度学习 blog pdf video
    【10】Tips for Deep Learning;深度学习小贴士 blog pdf video
    【11】Convolutional Neural Network;卷积神经网络 blog pdf video
    【12】Why Deep Learning? ; 为什么是深度学习? blog pdf video
    【13】Semi-supervised Learning ;半监督学习 blog pdf video
    【14】Unsupervised Learning: Linear Dimension Reduction;线性降维 blog pdf video
    【15】Unsupervised Learning: Word Embedding;无监督学习:词嵌入 blog pdf video
    【16】Unsupervised Learning: Neighbor Embedding;无监督学习:邻域嵌套 这里写图片描述 blog pdf video
    【17】Unsupervised Learning: Deep Auto-encoder;无监督学习:深度自动编码器 这里写图片描述 blog pdf video
    【18】Deep Generative Model-part 1:深度生成模型-part 1 这里写图片描述 blog pdf video
    【19】Deep Generative Model-part 2:深度生成模型-part 2 这里写图片描述 blog pdf video
    【20】Deep Generative Model-part 3:深度生成模型-part 3 这里写图片描述 blog pdf video
    【21】Transfer Learning part 1 ; 迁移学习 part 1 这里写图片描述 blog pdf video
    【22】Transfer Learning part 2;迁移学习 part 2 这里写图片描述 blog pdf video
    【23】Support Vector Machine;支持向量机 这里写图片描述 blog pdf video
    【24】introduction of Structured Learning;结构化学习介绍 这里写图片描述 blog pdf video
    【25】Structured Linear Model;结构化预测-线性模型 这里写图片描述 blog pdf video
    【26】Structured Support Vector Machine part 1;结构化支持向量机part 1 这里写图片描述 blog pdf video
    【27】Structured SVM part 2;结构化支持向量机 part 2 这里写图片描述 blog pdf video
    【28】Structured SVM part 3 ;结构化支持向量机 part 3 这里写图片描述 blog pdf video
    【29】Sequence Labeling Problem part 1;结构化预测-序列标记 part 1 这里写图片描述 blog pdf video
    【30】Sequence Labeling Problem part 2 ;结构化预测-序列标记 part 2 这里写图片描述 blog pdf video
    【31】Sequence Labeling Problem part 3 ;结构化预测-序列标记 part 3 这里写图片描述 blog pdf video
    【32】Recurrent Neural Network part 1;循环神经网络 part 1 这里写图片描述 blog pdf video
    【33】Recurrent Neural Network part 2;循环神经网络 part 2 这里写图片描述 blog pdf video
    【34】Recurrent Neural Network part 3;循环神经网络 part 3 这里写图片描述 blog pdf video
    【35】Ensemble;集成方法 这里写图片描述 blog pdf video
    【36】Ensemble part 2;集成方法 part 2 这里写图片描述 blog pdf video
    【37】Deep Reinforcement Learning;深度增强学习入门 这里写图片描述 blog pdf video
    【38】李宏毅机器学习课程回顾 + 接下来的学习声明 这里写图片描述 blog
    【39】李宏毅机器学习课程从这里开始 本文 blog

    相关链接:
    课程主页:http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML16.html
    PPT打包下载:http://speech.ee.ntu.edu.tw/~tlkagk/courses/ML_2016/all.rar

    在这里插入图片描述

    展开全文
  • 李宏毅机器学习系列-机器学习介绍机器学习介绍生物的本能人类设定好的天生本能机器学习是什么机器学习框架机器学习Learning Map监督学习半监督学习和迁移学习无监督学习结构化学习强化学习为什么要学习机器学习总结 ...

    机器学习介绍

    人工智能其实早在1950年左右就被提出了,那个时候人们希望机器能跟人一样拥有智慧能做事,最开始就出现了人类设定好规则,机器执行,但是这样的机器永远只是执行人设定的,如果遇到人没设定的情况,就处理不了,于是人们又想,人之所以变得聪明,是因为能不断的学习,那能不能让机器也有学习能力呢?所以提出了机器学习,给机器某种学习方法,让他自己去学习,而深度学习则是属于机器学习的一种,基于神经网络,能够学习更加深层次的东西。
    在这里插入图片描述

    生物的本能

    科学家发现河狸筑水坝的情况,发现河狸的这种能力是天生的,只要听到水声,他就想筑坝直到听不到水声,于是科学家就用扬声器去模仿水声,河狸果然做出了相应的行动去防止听到水声。
    在这里插入图片描述

    人类设定好的天生本能

    机器的本能是人类给设定好的,比如下面一个例子,要创造一个聊天机器人,如果听到“关闭”,就会把音乐关闭,看似好像没啥问题,但是如果你说不要关闭,他也会去关闭,因为他不是去了解你这句话的意思,而是去判断是否有某个词,所以这样的机器永远只是做一些特定的事,而且没办法处理人类没设定的问题,因此也无法去超越人类了,或许人类可以堆叠起很多的规则给机器来处理,但是毕竟无法穷举,而且有些问题又很复杂,所以这并不是真正的智能。
    在这里插入图片描述
    AI在今天非常火,但是很多的貌似都是假的,其实是用一堆“if else”堆出来的,并不是真正的智能,比如Yann LeCun的FB上发的一个漫画,描述的就是一个销售员说自家的AI机器人有多智能,然后有人就不相信,想看看里面到底是什么,于是把他劈开了,发现里面是一堆“if else”,我们今天所说的当然不是这种智能啦。
    在这里插入图片描述

    机器学习是什么

    简单来说就是让机器具有学习能力,举个语音识别机器人的例子,你写程序让机器拥有学习能力,让他去听各种声音来辨别说的是什么,或许他是学习音频的图像特征,或许是音频的时序特征,然后你给他一段没有听到过的“Hello”的声音,希望他能识别出这个就是“Hello”,其实就是一种学习举一反三的泛化能力。
    在这里插入图片描述
    再举一个图像识别的例子,你给机器看了很多动物的照片,比如猴子,猫,狗,然后你给他一只他没看到的猫,希望他可以识别出来这个就是猫。
    在这里插入图片描述
    更加直观的理解就是可以把机器学习看成在寻找一个方法ff,你给他一个输入,他给你一个输出,你希望他给你的输出是你要的,无论是语音识别,图像识别,走围棋,还是对话系统,都是这个原理。
    在这里插入图片描述

    机器学习框架

    那我们要怎么找到那个方法ff呢?拿图像识别的例子说明下,就是找ff的过程,我们做做点什么事。
    我们希望得到一个方法ff,输入一个图像,他给我预测一个类别,比如输入是一张猫图片,输出是猫,输入一张狗图片,输出是狗。首先我们先要准备一个方法集合,也就是模型,里面有一堆方法f1,f2...f_1,f_2...。比如下图的f1,f2f_1,f_2,明显f1f_1f2f_2要好很多。
    在这里插入图片描述
    那我们要怎么去衡量哪些方法是好的呢?就需要训练集啦,这些训练集告诉说输入什么样的图像,应该输出什么样的类别。
    在这里插入图片描述
    这下知道了,输入和输出是怎么对应的才算是好的,但是问题又来了,我有那么多方法f1,f2...f_1,f_2...,怎么去找出最好的呢,难不成一个个去是过来,穷举下,貌似这个是无穷的,没办法做,所以需要一个算法,把最好的方法叫作ff^*给选出来,比如我们经常听到的梯度下降法。所以总结起来机器学习的步骤就是,应该说是监督学习的步骤:
    1.准备一堆方法集合f1,f2...f_1,f_2...,也就是一堆模型。
    2.给定训练集,训练集会告诉方法说,哪些输入输出是好的。
    3.用一个算法去找出最好的方法ff^*

    这3步也叫做训练,把图像输入到ff^*,得到一个类别的过程叫做测试。
    在这里插入图片描述
    其实机器学习概括起来很简单,就像是把大象放进冰箱的步骤,首先把冰箱门打开,然后把大象塞进去,然后关冰箱门,对应的就是定义模型,给定数据集,用算法找出最好的模型:
    在这里插入图片描述

    机器学习Learning Map

    主要分为回归问题和分类问题,其实这只是很小一部分,还有很大一部分是其他问题。
    在这里插入图片描述
    回归问题是什么呢,简单来说,就是你给一个输入,我希望得到一个输出是个数值,而且连续的。
    比如举PM2.5预测的例子,我有今天,昨天等等的PM2.5的数据,我希望预测明天的PM2.5值,于是我拿以前的数据来学习,得到一个ff,然后把前两天的数据输入进去,希望他能输出明天的PM2.5值。
    在这里插入图片描述
    而分类问题也差不多,只是输出的离散的,一般分为二分类和多分类的问题,二分类就是输出是两个类别,比如"Yes"或者"No"两个,比如我要预测明天下不下雨,输出就是下雨或者不下雨。对于多分类,就是输出多个类别,比如我希望知道某一张图片里有哪些动物类别,输出就是狗,猫,牛等等。
    在这里插入图片描述
    举个二分类引用的例子,比如谷歌的垃圾邮件分类,先将很多的邮件分成垃圾邮件,和非垃圾邮件,给模型进行训练并获得一个好的模型,之后给模型一个邮件,让他判别是是否是垃圾邮件:
    在这里插入图片描述
    另一方面,从模型上分,我们可以分为线性模型和非线性模型,我们熟悉的Deep Learning就是非线性模型:
    在这里插入图片描述

    监督学习

    在有训练集和对应标签的情况下进行训练。
    比如图像识别问题,给定了图像和对应的类别:
    在这里插入图片描述
    比如下围棋,其实也就是在那么多的棋盘上,选定一个位置下期,输入是一张棋谱,输出是放在哪个位置上,也可以看成是个分类问题:
    在这里插入图片描述

    半监督学习和迁移学习

    当然我们还有半监督学习和迁移学习,有时候只有一部分有标签的数据,另一部分没有,或者只有少量的训练集:
    在这里插入图片描述
    在这里插入图片描述

    无监督学习

    再说无监督学习,在没有数据标签的情况下进行学习,比如要给一堆新闻分类,哪些是体育的类别,哪些是文学,哪些是军事等等。
    在这里插入图片描述
    当然还有画图,给了一堆学习图片,然后让机器自己学着画个图,不过效果貌似很奇怪:
    在这里插入图片描述

    结构化学习

    还有一种结构化学习,比如把声音转文字,翻译,人脸识别,并不是简单的分类问题:
    在这里插入图片描述

    强化学习

    最后还有很厉害的强化学习,用来打电话,然后训练AlphaGo下围棋,简单来说就是一种不断试错,通过结果的反馈来进行学习:
    在这里插入图片描述
    比如电话接听,监督学习是告诉你,听到别人说什么,你说要说上面,而强化学习是不告诉你任何要说的,你自己来尝试,只告诉你结果好不好,具体怎么做,你自己学着看,这个也比较符合人类的学习过程,没有人告诉你怎么样学习是正确的,只有你自己去尝试,得到了相应的反馈,你才知道好不好,才会做的更好。
    在这里插入图片描述
    AlphaGo下围棋是监督学习和强化学习的结合,通过观察棋谱判断下一步怎么下是监督学习,进行下棋训练时是强化学习:
    在这里插入图片描述
    所以整一个架构应该是这样的,按任何分为回归,分类,结构化学习,按场景分为监督学习,半监督学习,迁移学习,无监督学习,强化学习:
    在这里插入图片描述

    为什么要学习机器学习

    虽然大部分工作可能被AI代替,当然也会有新的工作岗位产生,毕竟AI现在还是小,还需要人类培养训练,就想宠物小精灵的里的宠物训练师,宠物很强大,但是也会出现不听话,对付不同的战斗对象也需要不同的系的宠物,所以需要有经验的训练师,AI也是一样,除非有一天AI自己会进化,自己会训练,或许人类存在的意义就小了很多了,不过暂时应该还不会。
    在这里插入图片描述

    总结

    本篇只是一个开篇介绍,简单的介绍了下机器学习的一些知识,先了解入个门,能产生兴趣学下去是主要目的。附上简单的思维导图:
    在这里插入图片描述

    好了,今天就到这里了,希望对学习理解有帮助,大神看见勿喷,仅为自己的学习理解,能力有限,请多包涵,图片来自李宏毅课件,侵删。

    展开全文
  • 李宏毅机器学习课程

    千次阅读 2017-11-01 12:10:09
    转载学习资料:经典台大李宏毅机器学习全套课程

    希望自己每天进步一点点
    转载学习资料:经典台大李宏毅机器学习全套课程
    课程主页
    PPT打包下载

    展开全文
  • 李宏毅机器学习笔记】1、回归问题(Regression) 【李宏毅机器学习笔记】2、error产生自哪里? 【李宏毅机器学习笔记】3、gradient descent 【李宏毅机器学习笔记】4、Classification 【李宏毅机器学习笔记】5...
  • 李宏毅机器学习笔记github 李宏毅机器学习笔记在线阅读链接:github 为什么我们需要学习机器学习? 各位同学,大家好,今天我要来讲,为什么我们需要学习机器学习。听说AI要来取代人类的工作了,大家都很担心。 但...
  • 李宏毅机器学习作业3CNN数据training set。因为文件太大了一个放不下,所以分开放了。testing set 和validation set可以去我的资源里找找。
  • 李宏毅机器学习完整笔记

    千次阅读 2019-08-08 14:15:13
    李宏毅机器学习完整笔记》发布,笔记+视频+代码一应俱全!
  • 李宏毅机器学习笔记】1、回归问题(Regression) 【李宏毅机器学习笔记】2、error产生自哪里? 【李宏毅机器学习笔记】3、gradient descent 【李宏毅机器学习笔记】4、Classification 【李宏毅机器学习笔记】5...
  • 李宏毅机器学习笔记】1、回归问题(Regression) 【李宏毅机器学习笔记】2、error产生自哪里? 【李宏毅机器学习笔记】3、gradient descent 【李宏毅机器学习笔记】4、Classification 【李宏毅机器学习笔记】5...
  • 【知识索引】【李宏毅机器学习

    千次阅读 多人点赞 2021-02-13 18:45:25
    李宏毅机器学习知识索引 本文为【李宏毅机器学习】知识索引: 1.机器学习介绍 Introduction 2.回归Regression 3.误差Error 4.梯度下降Gradient Descent 5.概率生成模型Probabilistic Generative Model

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,701
精华内容 1,080
关键字:

李宏毅机器学习