Machine Learning(机器学习)是研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,从新组织已有的知识结构使之不断改善自身的性能。程序员
它是人工智能的核心,是使计算机具备智能的根本途径,其应用遍布人工智能的各个领域,它主要使用概括、综合而不是演译。web
在过去的十年中,机器学习帮助咱们自动驾驶汽车,有效的语音识别,有效的网络搜索,并极大地提升了人类基因组的认识。算法
机器学习是当今很是广泛,你可能会使用这一天几十倍而不自知。不少研究者也认为这是最好的人工智能的取得方式。chrome
在本课中,您将学习最有效的机器学习技术,并得到实践,让它们为本身的工做。更重要的是,你会不只获得理论基础的学习,并且得到那些须要快速和强大的应用技术解决问题的实用技术。最后,你会学到一些硅谷利用机器学习和人工智能的最佳实践创新。数据库
本课程提供了一个普遍的介绍机器学习、数据挖掘、统计模式识别的课程。主题包括:编程
(一)监督学习(参数/非参数算法,支持向量机,核函数,神经网络)网络
(二)无监督学习(聚类,降维,推荐系统,深刻学习推荐)app
(三)在机器学习的最佳实践(误差/方差理 论;在机器学习和人工智能创新过程)框架
本课程还将使用大量的案例研究,您还将学习如何 运用学习算法构建智能机器人(感知,控制),文本的理解(Web搜索,反垃圾邮件),机器学习
计算机视觉,医疗信息,音频,数据挖掘,和其余领域。
本课程须要 10 周共 18 节课,相对之前的机器学习视频,这个视频更加清晰,并且每课 都有 ppt 课件,推荐学习。
第一课、 引言(Introduction)
1.1 欢迎
1.2 机器学习是什么?
1.3 监督学习
1.4 无监督学习
1.1 欢迎
第一个视频主要讲了什么是机器学习,机器学习能作些什么事情。 机器学习是目前信息技术中最激动人心的方向之一。在这门课中,你将学习到这门技术的前沿,并能够本身实现学习机器学习的算法。 你或许天天都在不知不觉中使用了机器学习的算法每次,你打开谷歌、必应搜索到你须要的内容,正是由于他们有良好的学习算法。谷歌和微软实现了学习算法来排行网页每次, 你用 Facebook 或苹果的图片分类程序他能认出你朋友的照片,这也是机器学习。每次您阅读您的电子邮件垃圾邮件筛选器,能够帮你过滤大量的垃圾邮,这也是一种学习算法。对我来讲,我感到激动的缘由之一是有一天作出一个和人类同样聪明的机器。实现这个想法任重而道远,许多 AI 研究者认为,实现这个目标最好的方法是经过让机器试着模仿人的大脑学 习我会在这门课中介绍一点这方面的内容。
在这门课中,你还讲学习到关于机器学习的前沿情况。但事实上只了解算法、数学并不能解决你关心的实际的问题。因此,咱们将花大量的时间作练习,从而你本身能实现每一个这些算法,从而了解内部机理。那么,为何机器学习如此受欢迎呢?缘由是,机器学习不仅是用于人工智能领域。 咱们创造智能的机器,有不少基础的知识。好比,咱们可让机器找到 A 与 B 之间的最短 路径,但咱们仍然不知道怎么让机器作更有趣的事情,如 web搜索、照片标记、反垃圾邮件。咱们发现,惟一方法是让机器本身学习怎么来解决问题。因此,机器学习已经成为计算 机的一个能力。如今它涉及到各个行业和基础科学中。我从事于机器学习,但我每一个星期都跟直升机飞行员、生物学家、不少计算机系统程序员交流(我在斯坦福大学的同事同时也是这样)和 平均每一个星期会从硅谷收到两、三个电子邮件,这些联系个人人都对将学习算法应用于他们本身的问题感兴趣。这代表机器学习涉及的问题很是普遍。有机器人、计算生物学、硅谷中 大量的问题都收到机器学习的影响。
这里有一些机器学习的案例。好比说,数据库挖掘。机器学习被用于数据挖掘的缘由之一是网络和自动化技术的增加,这意味着,咱们有史上最大的数据集好比说,大量的硅谷公 司正在收集 web 上的单击数据,也称为点击流数据,并尝试使用机器学习算法来分析数据, 更好的了解用户,并为用户提供更好的服务。这在硅谷有巨大的市场。再好比,医疗记录。随着自动化的出现,咱们如今有了电子医疗记录。若是咱们能够把医疗记录变成医学知识, 咱们就能够更好地理解疾病。再如,计算生物学。仍是由于自动化技术,生物学家们收集的大量基因数据序列、DNA序列和等等,机器运行算法让咱们更好地了解人类基因组,你们都 知道这对人类意味着什么。再好比,工程方面,在工程的全部领域, 咱们有愈来愈大、愈来愈大的数据集,咱们试图使用学习算法,来理解这些数据。另外,在机械应用中,有些人 不能直接操做。例如,我已经在无人直升机领域工做了许多年。咱们不知道如何写一段程序 让直升机本身飞。咱们惟一能作的就是让计算机本身学习如何驾驶直升机。
手写识别:如今咱们可以很是便宜地把信寄到这个美国甚至全世界的缘由之一就是当你 写一个像这样的信封,一种学习算法已经学会如何读你信封,它能够自动选择路径,因此我 们只须要花几个美分把这封信寄到数千英里外。事实上,若是你看过天然语言处理或计算机视觉,这些语言理解或图像理解都是属于 AI 领域。大部分的天然语言处理和大部分的计算机视觉,都应用了机器学习。学习算法还普遍 用于自定制程序。每次你去亚马逊或 Netflix 或 iTunes Genius,它都会给出其余电影或产品或音乐的建议,这是一种学习算法。仔细想想,他们有百万的用户;但他们没有办法为百万 用户,编写百万个不一样程序。软件能给这些自定制的建议的惟一方法是经过学习你的行为, 来为你定制服务。
最后学习算法被用来理解人类的学习和了解大脑。
咱们将谈论如何用这些推动咱们的 AI 梦想。几个月前,一名学生给我一篇文章关于最 顶尖的 12 个 IT 技能。拥有了这些技能 HR 绝对不会拒绝你。这是稍显陈旧的文章,但在这个列表最顶部就是机器学习的技能。在斯坦福大学,招聘人员联系我,让我推荐机器学习学生毕业的人远远多于机器学习的毕业生。因此我认为需求远远没有被知足如今学习“机器学习”很是好,在这门课中,我希 望能告诉大家不少机器学习的知识。
在接下来的视频中,咱们将开始给更正式的定义,什么是机器学习。而后咱们会开始学习机器学习的主要问题和算法你会了解一些主要的机器学习的术语,并开始了解不一样的算 法,用哪一种算法更合适。
1.2 机器学习是什么?
机器学习是什么?在本视频中,咱们会尝试着进行定义,同时让你懂得什么时候会使用机 器学习。实际上,即便是在机器学习的专业人士中,也不存在一个被普遍承认的定义来准确 定义机器学习是什么或不是什么,如今我将告诉你一些人们尝试定义的示例。第一个机器学习的定义来自于 Arthur Samuel。他定义机器学习为,在进行特定编程的状况下,给予计算机学习能力的领域。Samuel 的定义能够回溯到 50 年代,他编写了一个西洋棋程序。这程序神奇之处在于,编程者本身并非个下棋高手。但由于他太菜了,因而就经过编程,让西洋棋 程序本身跟本身下了上万盘棋。经过观察哪一种布局(棋盘位置)会赢,哪一种布局会输,长此以往,这西洋棋程序明白了什么是好的布局,什么样是坏的布局。而后就牛逼大发了,程序经过学习后,玩西洋棋的水平超过了 Samuel。这绝对是使人注目的成果。 尽管编写者本身是个菜鸟,但由于计算机有着足够的耐心,去下上万盘的棋,没有人有这耐心去下这么多盘棋。经过这些练习,计算机得到无比丰富的经验,因而渐渐成为了比 Samuel 更厉害的西洋棋手。上述是个有点不正式的定义,也比较古老。另外一个年代近一点 的定义,由 Tom Mitchell 提出,来自卡内基梅隆大学,Tom 定义的机器学习是,一个好的学习问题定义以下,他说,一个程序被认为能从经验 E 中学习,解决任务 T,达到性能度量值 P,当且仅当,有了经验 E 后,通过 P 评判,程序在处理 T 时的性能有所提高。我认为经验 e 就是程序上万次的自我练习的经验而任务 t 就是下棋。性能度量值 p 呢,就是它在与一 些新的对手比赛时,赢得比赛的几率。
在这些视频中,除了我教你的内容之外,我偶尔会问你一个问题,确保你对内容有所理 解。说曹操,曹操到,顶部是 Tom Mitchell 的机器学习的定义,咱们假设您的电子邮件程序会观察收到的邮件是否被你标记为垃圾邮件。在这种 Email 客户端中,你点击“垃圾邮件”按钮,报告某些 email 为垃圾邮件,不会影响别的邮件。基于被标记为垃圾的邮件,您的电 子邮件程序能更好地学习如何过滤垃圾邮件。请问,在这个设定中,任务 T 是什么?几秒钟 后,该视频将暂停。当它暂停时,您可使用鼠标,选择这四个单选按钮中的一个,让我知道这四个,你所认为正确的选项。它多是性能度量值 P。因此,以性能度量值 P 为标准, 这个任务的性能,也就是这个任务 T 的系统性能,将在学习经验 E 后获得提升。
本课中,我但愿教你有关各类不一样类型的学习算法。目前存在几种不一样类型的学习算法。 主要的两种类型被咱们称之为监督学习和无监督学习。在接下来的几个视频中,我会给出这些术语的定义。这里简单说两句,监督学习这个想法是指,咱们将教计算机如何去完成任务, 而在无监督学习中,咱们打算让它本身进行学习。若是对这两个术语仍一头雾水,请不要担忧,在后面的两个视频中,我会具体介绍这两种学习算法。此外你将听到诸如,强化学习和 推荐系统等各类术语。这些都是机器学习算法的一员,之后咱们都将介绍到,但学习算法最经常使用两个类型就是监督学习、无监督学习。我会在接下来的两个视频中给出它们的定义。本课中,咱们将花费最多的精力来讨论这两种学习算法。而另外一个会花费大量时间的任务是了解应用学习算法的实用建议。
我很是注重这部份内容,实际上,就这些内容而言我不知道还有哪所大学会介绍到。给你讲授学习算法就好像给你一套工具,相比于提供工具,可能更重要的,是教你如何使用这些工具。我喜欢把这比喻成学习当木匠。想象一下,某人教你如何成为一名木匠,说这是锤子,这是螺丝刀,锯子,祝你好运,再见。这种教法很差,不是吗?你拥有这些工具,但更重要的是,你要学会如何恰当地使用这些工具。会用与不会用的人之间,存在着鸿沟。尤为是知道如何使用这些机器学习算法的,与那些不知道如何使用的人。在硅谷我住的地方,当我走访不一样的公司,即便是最顶尖的公司,不少时候我都看到人们试图将机器学习算法应用 于某些问题。有时他们甚至已经为此花了六个月之久。但当我看着他们所忙碌的事情时,我想说,哎呀,我原本能够在六个月前就告诉他们,他们应该采起一种学习算法,稍加修改进行使用,而后成功的机会绝对会高得多因此在本课中,咱们要花不少时间来探讨,若是你真 的试图开发机器学习系统,探讨如何作出最好的实践类型决策,才能决定你的方式来构建你 的系统,这样作的话,当你运用学习算法时,就不太容易变成那些为寻找一个解决方案花费6个月之久的人们的中一员。他们可能已经有了大致的框架,只是无法正确的工做因而这就浪费了六个月的时间。因此我会花不少时间来教你这些机器学习、人工智能的最佳实践以及 如何让它们工做,咱们该如何去作,硅谷和世界各地最优秀的人是怎样作的。我但愿能帮你 成为最优秀的人才,经过了解如何设计和构建机器学习和人工智能系统。这就是机器学习,这些都是我但愿讲授的主题。在下一个视频里,我会定义什么是监督学习,什么是无监督学习。此外,探讨什么时候使用两者。
1.3 监督学习
在这段视频中,我要定义多是最多见一种机器学习问题:那就是监督学习。我将在后面正式定义监督学习。
咱们用一个例子介绍什么是监督学习把正式的定义放在后面介绍。假如说你想预测房价。 前阵子,一个学生从波特兰俄勒冈州的研究所收集了一些房价的数据。你把这些数据画
出来,看起来是这个样子:横轴表示房子的面积,单位是平方英尺,纵轴表示房价,单位是千美圆。那基于这组数据,假如你有一个朋友,他有一套 750 平方英尺房子,如今他但愿把房子卖掉,他想知道这房子能卖多少钱。那么关于这个问题,机器学习算法将会怎么帮助你呢?
咱们应用学习算法,能够在这组数据中画一条直线,或者换句话说,拟合一条直线,根据这条线咱们能够推测出,这套房子可能卖$150, 000,固然这不是惟一的算法。可能还有更好的,好比咱们不用直线拟合这些数据,用二次方程去拟合可能效果会更好。根据二次方程的曲线,咱们能够从这个点推测出,这套房子能卖接近$200, 000。稍后咱们将讨论如何选择学习算法,如何决定用直线仍是二次方程来拟合。两个方案中有一个能让你朋友的房子出售得更合理。这些都是学习算法里面很好的例子。以上就是监督学习的例子。
能够看出,监督学习指的就是咱们给学习算法一个数据集。这个数据集由“正确答案” 组成。在房价的例子中,咱们给了一系列房子的数据,咱们给定数据集中每一个样本的正确价 格,即它们实际的售价而后运用学习算法,算出更多的正确答案。好比你朋友那个新房子的 价格。用术语来说,这叫作回归问题。咱们试着推测出一个连续值的结果,即房子的价格。 通常房子的价格会记到美分,因此房价其实是一系列离散的值 可是咱们一般又把房价当作实数,当作是标量,因此又把它当作一个连续的数值。
回归这个词的意思是,咱们在试着推测出这一系列连续值属性。 我再举另一个监督学习的例子。我和一些朋友以前研究过这个。假设说你想经过查看病从来推测乳腺癌良性与否,假若有人检测出乳腺肿瘤,恶性肿瘤有害而且十分危险,而良性的肿瘤危害就没那么大,因此人们显然会很在乎这个问题。
让咱们来看一组数据:这个数据集中,横轴表示肿瘤的大小,纵轴上,我标出1和0表示是或者不是恶性肿瘤。咱们以前见过的肿瘤,若是是恶性则记为 1,不是恶性,或者说良 性记为 0。我有 5 个良性肿瘤样本,在 1 的位置有 5 个恶性肿瘤样本。如今咱们有一个朋友很不幸 检查出乳腺肿瘤。假设说她的肿瘤大概这么大,那么机器学习的问题就在于,你可否估算出 肿瘤是恶性的或是良性的几率。用术语来说,这是一个分类问题。
分类指的是,咱们试着推测出离散的输出值:0 或 1 良性或恶性,而事实上在分类问题 中,输出可能不止两个值。好比说可能有三种乳腺癌,因此你但愿预测离散输出 0 1 2 3 0 表明良性,1 表示第一类乳腺癌,2 表示第二类癌症,3 表示第三类,但这也是分类问 题。由于这几个离散的输出分别对应良性,第一类第二类或者第三类癌症,在分类问题中我们能够用另外一种方式绘制这些数据点。 如今我用不一样的符号来表示这些数据。既然咱们把肿瘤的尺寸看作区分恶性或良性的特征,那么我能够这么画,我用不一样的符号来表示良性和恶性肿瘤。或者说是负样本和正样本 如今咱们不所有画 X,良性的肿瘤改为用 O 表示,恶性的继续用 X 表示。来预测肿瘤的恶性与否。
在其它一些机器学习问题中,可能会遇到不止一种特征。举个例子,咱们不只知道肿瘤的尺寸,还知道对应患者的年龄。在其余机器学习问题中,咱们一般有更多的特征,我朋友 研究这个问题时,一般采用这些特征,好比肿块密度,肿瘤细胞尺寸的一致性和形状的一致性等等,还有一些其余的特征。这就是咱们即将学到最有趣的学习算法之一。那种算法不只能处理 2 种 3 种或 5 种特征,即便有无限多种特征均可以处理。
上图中,我列举了总共 5 种不一样的特征,坐标轴上的两种和右边的 3 种,可是在一些学习问题中,你但愿不仅用 3 种或 5 种特征。相反,你想用无限多种特征,好让你的算法能够 利用大量的特征,或者说线索来作推测。那你怎么处理无限多个特征,甚至怎么存储这些特 征都存在问题,你电脑的内存确定不够用。咱们之后会讲一个算法,叫支持向量机,里面有一个巧妙的数学技巧,能让计算机处理无限多个特征。想象一下,我没有写下这两种和右边的三种特征,而是在一个无限长的列表里面,一直写一直写不停的写,写下无限多个特征, 事实上,咱们能用算法来处理它们。
如今来回顾一下,这节课咱们介绍了监督学习。其基本思想是,咱们数据集中的每一个样本都有相应的“正确答案”。再根据这些样本做出预测,就像房子和肿瘤的例子中作的那样。 咱们还介绍了回归问题,即经过回归来推出一个连续的输出,以后咱们介绍了分类问题,其 目标是推出一组离散的结果。
如今来个小测验:假设你经营着一家公司,你想开发学习算法来处理这两个问题:
1. 你有一大批一样的货物,想象一下,你有上千件如出一辙的货物等待出售,这时你想预测接下来的三个月能卖多少件?
2. 你有许多客户,这时你想写一个软件来检验每个用户的帐户。对于每个帐户,你要判断它们是否曾经被盗过?
那这两个问题,它们属于分类问题、仍是回归问题? 问题一是一个回归问题,由于你知道,若是我有数千件货物,我会把它当作一个实数,一个连续的值。所以卖出的物品数,也是一个连续的值。 问题二是一个分类问题,由于我会把预测的值,用 0 来表示帐户未被盗,用 1 表示帐户曾经被盗过。因此咱们根据帐号是否被盗过,把它们定为 0 或 1,而后用算法推测一个帐号是 0 仍是 1,由于只有少数的离散值,因此我把它归为分类问题。 以上就是监督学习的内容。
1.4 无监督学习
本次视频中,咱们将介绍第二种主要的机器学习问题。叫作无监督学习。
上个视频中,已经介绍了监督学习。回想当时的数据集,如图表所示,这个数据集中每 条数据都已经标明是阴性或阳性,便是良性或恶性肿瘤。因此,对于监督学习里的每条数据,咱们已经清楚地知道,训练集对应的正确答案,是良性或恶性了。
在无监督学习中,咱们已知的数据。看上去有点不同,不一样于监督学习的数据的样子, 即无监督学习中没有任何的标签或者是有相同的标签或者就是没标签。因此咱们已知数据集,殊不知如何处理,也未告知每一个数据点是什么。别的都不知道,就是一个数据集。你能 从数据中找到某种结构吗?针对数据集,无监督学习就能判断出数据有两个不一样的汇集簇。 这是一个,那是另外一个,两者不一样。是的,无监督学习算法可能会把这些数据分红两个不一样的簇。因此叫作聚类算法。事实证实,它能被用在不少地方。
聚类应用的一个例子就是在谷歌新闻中。若是你之前历来没见过它,你能够到这个 URL 网址 news.google.com 去看看。谷歌新闻天天都在,收集很是多,很是多的网络的新闻内容。 它再将这些新闻分组,组成有关联的新闻。因此谷歌新闻作的就是搜索很是多的新闻事件,自动地把它们聚类到一块儿。因此,这些新闻事件全是同一主题的,因此显示到一块儿。 事实证实,聚类算法和无监督学习算法一样还用在不少其它的问题上。
其中就有基因学的理解应用。一个 DNA 微观数据的例子。基本思想是输入一组不一样个 体,对其中的每一个个体,你要分析出它们是否有一个特定的基因。技术上,你要分析多少特定基因已经表达。因此这些颜色,红,绿,灰等等颜色,这些颜色展现了相应的程度,即不 同的个体是否有着一个特定的基因。你能作的就是运行一个聚类算法,把个体聚类到不一样的类或不一样类型的组(人)…… 因此这个就是无监督学习,由于咱们没有提早告知算法一些信息,好比,这是第一类的人,那些是第二类的人,还有第三类,等等。咱们只是说,是的,这是有一堆数据。我不知 道数据里面有什么。我不知道谁是什么类型。我甚至不知道人们有哪些不一样的类型,这些类 型又是什么。但你能自动地找到数据中的结构吗?就是说你要自动地聚类那些个体到各个 类,我无法提早知道哪些是哪些。由于咱们没有给算法正确答案来回应数据集中的数据,因此这就是无监督学习。
无监督学习或汇集有着大量的应用。它用于组织大型计算机集群。我有些朋友在大数据中心工做,那里有大型的计算机集群,他们想解决什么样的机器易于协同地工做,若是你可以让那些机器协同工做,你就能让你的数据中心工做得更高效。第二种应用就是社交网络的分析。因此已知你朋友的信息,好比你常常发 email 的,或是你 Facebook 的朋友、谷歌+圈子的朋友,咱们可否自动地给出朋友的分组呢?即每组里的人们彼此都熟识,认识组里的所 有人?还有市场分割。许多公司有大型的数据库,存储消费者信息。因此,你能检索这些顾客数据集,自动地发现市场分类,并自动地把顾客划分到不一样的细分市场中,你才能自动并更有效地销售或不一样的细分市场一块儿进行销售。这也是无监督学习,由于咱们拥有全部的顾客数据,但咱们没有提早知道是什么的细分市场,以及分别有哪些咱们数据集中的顾客。 咱们不知道谁是在一号细分市场,谁在二号市场,等等。那咱们就必须让算法从数据中发现这一切。最后,无监督学习也可用于天文数据分析,这些聚类算法给出了使人惊讶、有趣、 有用的理论,解释了星系是如何诞生的。这些都是聚类的例子,聚类只是无监督学习中的一 种。
我如今告诉大家另外一种。我先来介绍鸡尾酒宴问题。嗯,你参加过鸡尾酒宴吧?你能够想像下,有个宴会房间里尽是人,所有坐着,都在聊天,这么多人同时在聊天,声音彼此重 叠,由于每一个人都在说话,同一时间都在说话,你几乎听不到你面前那人的声音。因此,可 能在一个这样的鸡尾酒宴中的两我的,他俩同时都在说话,假设如今是在个有些小的鸡尾酒 宴中。咱们放两个麦克风在房间中,由于这些麦克风在两个地方,离说话人的距离不一样每一个麦克风记录下不一样的声音,虽然是一样的两个说话人。听起来像是两份录音被叠加到一块儿, 或是被归结到一块儿,产生了咱们如今的这些录音。另外,这个算法还会区分出两个音频资源, 这两个能够合成或合并成以前的录音,实际上,鸡尾酒算法的第一个输出结果是: 1,2,3,4,5,6,7,8,9,10,因此,已经把英语的声音从录音中分离出来了。第二个输出是这样:1,2,3,4,5,6,7,8,9,10。
看看这个无监督学习算法,实现这个得要多么的复杂,是吧?它彷佛是这样,为了构建这个应用,完成这个音频处理彷佛须要你去写大量的代码或连接到一堆的合成器 JAVA 库,处理音频的库,看上去绝对是个复杂的程序,去完成这个从音频中分离出音频。事实上,这 个算法对应你刚才知道的那个问题的算法能够就用一行代码来完成。
就是这里展现的代码:[W,s,v] = svd((repmat(sum(x.*x,1),size(x,1),1).*x)*x');
研究人员花费了大量时间才最终实现这行代码。我不是说这个是简单的问题,但它证实 了,当你使用正确的编程环境,许多学习算法是至关短的程序。因此,这也是为何在本课 中,咱们打算使用 Octave 编程环境。Octave,是免费的开源软件,使用一个像 Octave 或 Matlab 的工具,许多学习算法变得只有几行代码就可实现。
后面,我会教大家一点关于如何使用 Octave 的知识,你就能够用 Octave 来实现一些算 法了。或者,若是你有 Matlab(盗版?),你也能够用 Matlab。事实上,在硅谷里,对大量 机器学习算法,咱们第一步就是建原型,在 Octave 建软件原型,由于软件在 Octave 中能够 使人难以置信地、快速地实现这些学习算法。这里的这些函数好比 SVM(支持向量机)函数, 奇异值分解,Octave 里已经建好了。若是你试图完成这个工做,但借助 C++或 JAVA 的话, 你会须要不少不少行的代码,并连接复杂的 C++或 Java 库。因此,你能够实现这些算法, 借助 C++或 Java 或 Python,它只是用这些语言来实现会更加复杂。
我已经见到,在我教机器学习将近十年后的如今,发现学习能够更加高速,若是使用 Octave 做为编程环境,若是使用 Octave 做为学习工具,以及做为原型工具,它会让你对学习算法的学习和建原型快上许多。
事实上,许多人在大硅谷的公司里作的其实就是,使用一种工具像 Octave 来作第一步的学习算法的原型搭建,只有在你已经让它工做后,你才移植它到 C++或 Java 或别的语言。 事实证实,这样作一般可让你的算法运行得比直接用 C++实现更快,因此,我知道,做为 一名指导者,我必须说“相信我”,但对大家中从未使用过 Octave 这种编程环境的人,我仍是要告诉大家这一点必定要相信我,我想,对大家而言,我认为大家的时间,大家的开发时间是最有价值的资源。我已经见过不少人这样作了,我把你看做是机器学习研究员,或机器学习开发人员,想更加高产的话,你要学会使用这个原型工具,开始使用 Octave。
最后,总结下本视频内容,我有个简短的复习题给大家。
咱们介绍了无监督学习,它是学习策略,交给算法大量的数据,并让算法为咱们从数据中找出某种结构。
好的,但愿大家还记得垃圾邮件问题。若是你有标记好的数据,区别好是垃圾仍是非垃圾邮件,咱们把这个看成监督学习问题。
新闻事件分类的例子,就是那个谷歌新闻的例子,咱们在本视频中有见到了,咱们看到,能够用一个聚类算法来聚类这些文章到一块儿,因此是无监督学习。 细分市场的例子,我在更早一点的时间讲过,你能够看成无监督学习问题,由于我只是拿到算法数据,再让算法去自动地发现细分市场。 最后一个例子,糖尿病,这个其实就像是咱们的乳腺癌,上个视频里的。只是替换了好、坏肿瘤,良性、恶性肿瘤,咱们改用糖尿病或没病。因此咱们把这个看成监督学习,咱们可以解决它,做为一个监督学习问题,就像咱们在乳腺癌数据中作的同样。 好了,以上就是无监督学习的视频内容,在下一个视频中,咱们将深刻探究特定的学习算法,开始介绍这些算法是如何工做的,和咱们还有你如何来实现它们