本期博客介绍如何学习人工智能,当然不是由我本人来阐述,而是根据吴恩达老师的Quora回答进行总结和归纳。
Andrew Ng是大名鼎鼎的人工智能大师、是Stanford大学人工智能实验室主任、是百度首席科学家、Coursera的创始人、Google眼镜和无人车的初创成员。其权威和知名度不言而喻,本文就是基于他的Quora回答给大家讲解下如何入门机器学习。
Andrew在Quora上的问答
Andrew在Quora上回答了一共9个问题,基本上都是和人工智能有关的,每个回答都超过万人点赞,其影响力可想而知。下面按照点赞由高到低介绍下Andrew的回答。
1. 作为一个教育家,你有什么好的建议给学生们吗?
当决定如何花费你的时间时,我建议应该从两个方面进行考虑:
- 你在做的事情能改变世界吗?
- 你将花多少来学习?
直到今天,我也是这样来决定如何花费我时间的。
我们如今的社会给每个人最好的机会来改变世界。随着信息技术和现代通讯的发展,好的点子和产品将以超乎以往任何时候的速度来传播。只要有好的点子和强大的执行力,任何人都能很快地帮助到这个星球上的其他人。
因此,问问你自己:如果你所从事的工作成功超越你广阔的梦想,那么它是否对其他人有重要影响。如果不是,那么继续寻找些其它的事情来做。否则, 你就没有发挥出你全部潜力。
第二,特别是当你年轻时,不要去评估投资未来教育的价值。我所说的年轻是指小于100岁。
任何你所学到的东西都会在接下来的工作中遇到。但是这并不容易,一旦你离开了学校,花时间来学习都是相对的短期回报。也没有老师在你旁边给你打分并激励你不断学习。但是,你可以自驱动使得阅读变得有趣,不断创新你的点子,不断与你值得学习的人交流,那么经过一段时间以后,你在你的领域将会变成顶尖人才。
对我来说,我十分热爱阅读。在我kindle中有超过1000本书,我会花费晚上和周末大量的时间来阅读。我的阅读套餐包括学术研究论文、商业策略书籍、创新方法、产品、我崇拜的人物传记等等。我有时候也看看网络课程(MOOCs)。我也很爱和能教我新知识的人交流,不管他是老朋友还是新伙伴。
这个学习的过程将帮助自己决定到底想做什么。当你看了足够多关于其他人改变世界的例子时,你将得到越来越多的好点子来改变这个世界。
总之,你不断投资自己去学习,即便这个过程非常困难。并且不断的去寻找一个帮助人类发展的道路。
2. 在机器学习领域,你应该如何开始你的职业生涯?
这要取决于你如何定义“机器学习职业生涯”。如果你说的是一个应用现成工具的工作,比如R的工具库,Python的scikit-learn库。那么你在本科时上了2-3年的机器学习相关课程即可了,或者一些在线学习课程(如https://www.coursera.org/learn/machine-learning 和 https://www.coursera.org/specializations/jhu-data-science)。
你也应该进行一些实践的项目,比如参加kaggle竞赛,或者开放你的源码在github上。(我强烈推荐使用python)如果你的工作是希望开发新的基础机器学习算法,你应该考取一个计算机或者数据统计领域的PhD(还有一些博士后研究者从其他领域如物理学转到机器学习领域)
更多帮助可以参考:https://www.quora.com/How-do-I-learn-machine-learning-1
3. 在10-20年后,工作将会如何变化?
如果你是一个50年驾龄的卡车司机,由于无人车的发展导致你的工作没有了,你将怎么做?
我们这个社会对有技能的人是有很大机会的。但问题是一些30年的工作经验将会大幅贬值。我们应当有更多的道德义务来帮助人们获得新的技能和追逐新的机会。
幸运的是,随着在线课程的发展和其它相当规模的教育(比如Coursera、可汗学院、Lynda等),我们这样做起来就相当容易了。我不担心未来20年里缺少重要工作机会——现在以及可见的未来里还有很多东西只有人能做而机器不能的。但是我关心有需要培训每个人的需求。
我也花费了一些基本的收入,这些收入用来提供给每个人一个合适的地方学习新的技能。我们现在的社会和政治现实来看,还没有做好无理由的为每个人买单的准备。我建议通过提高财政支出来提供他们更多学习技能的机会。因此,他们并不游手好闲,我们激励这些没有工作的人们并帮助他们重返岗位。
我非常喜欢Erik Brynjolfsson和Andrew McAfee关于这个话题的言论:第二次机器时代。
4. AI是不是一个对人类有威胁的存在?
今天担心AI可能是邪恶的超智能体就像担心火星上人口也会超载一样,而我们至今还不能到火星。
AI已经获得里极大地进步,我对机器智能能够创建一个更美好的社会抱有极其乐观的态度。但是AI现在还非常有限,几乎所有深度学习的经济和社会价值问题都是要通过监督学习,它受限于大量的格式化后的数据(比如进行了标签后的数据)。尽管AI已经帮助了成千上万的人们,并且还会帮助更多人,但我看不到任何威胁到人类的可能。
往远点看,还有很多其他不需要监督学习的AI形式,比如无监督学习(我们需要更多的数据,因为数据不需要被标记)。在我的团队或其它团队中还有更多令人兴奋的学习形式。我们所有人都希望有技术的突破,但是我们都不能预测什么时候会实现。
我认为对邪恶AI的恐惧已经使政策制定和领导者在这个假象上错误地进行了布局。还有其它AI可能导致的问题,尤其是对工作的变化。毫无疑问,AI在接下来十年会创造更好的社会,我们作为AI创造者也应该解决我们导致的这一问题。我期望在线网络课程能成为这解决方法的一部分,但我们还需要除了教育的更多东西。
5. 是什么原因使Andrew Ng来学习人工智能?
我想让我们用AI来创造一个更好的世界。
正如工业革命解放了人类许许多多的体力劳动(你能想象如果你还需要自己洗衣服的生活嘛?),在未来AI将解放人类繁重的智力劳动。比如,拥有无人车的话将不会浪费人们一生中3年的时间来开车。这将给我们更多时间陪爱人以及追求更有价值的目标。
当我16岁的时候我开始学习神经网络(现在称为深度学习),当时我还是新加坡国立大学的学生。我们当时做的东西用现在的标准来看是微不足道的,但是在那时我觉得用几行代码让计算机来学习是十分兴奋的。
说一个好笑的事儿:我们当时用的电脑跑emacs十分卡,所以我学习了vi,至今仍然用vi。
在那时,我还担当了一个办公室助理的兼职工作,我做了许多复印件工作(事实上,我是办公室助理的助理)。那时候我意识到了更智能的机器能帮我们做许多工作,这样人类才可以做更多有挑战性的工作。
在未来十年内,AI将改变这个社会。我们将从我们做什么变到我们让计算机做什么。可能就在不久的未来,Quora上就有人问:“能自己开车的生活是什么样的?”
6. Andrew Ng是怎样看待深度学习的?
深度学习是一个令人振奋的工具来帮助许多人创造出现成的AI应用。可以帮助实现无人驾驶汽车,精准的语音识别,图像理解程序等等。
虽然现在深度学习进展喜人,但是我认为人有很多机会,特别是在精准农业、消费金融、医疗领域等。在那里我看到一个清晰的机会,深刻的学习可以有很大的影响,但我们没有精力没有时间来关注这一切。所以我相信深度学习不会很快就达到瓶颈期,而且它还会继续快速增长。
深度学习也有些言过其实了。由于神经网络是非常高深且难以解释的,我们许多人用人脑来解释它。但是我们几乎不知道生物大脑是如何工作的。UC Berkeley大学的Michael Jordan称深度学习为“卡通”版的生物大脑——这是一个对我们都不懂的超简化版东西的描述,我也很同意这一观点。尽管媒体大肆炒作,我们几乎无法建立达到人类水平的智能。因为我们根本不知道大脑是如何工作的,试图盲目地复制我们在计算机中所知的东西并没有导致特别有效的人工智能系统。相反,最有效的深学习工作,也是至今已经取得进展的是从CS和工程原理来进行,最多是借鉴生物学灵感,而不是试图盲目复制生物学知识。
具体来说,如果你听到有人说:“大脑做到某个事情,而我的智能系统也会做想同事。所以我们是在建立一个模拟的大脑。”,我觉得他肯定是在扯淡!
许多用于深度学习的想法已经存在了几十年。为什么现在才流行起来?其进度的两个主要原因是:(i)数据规模(ii)计算规模。随着我们在网站和移动设备上花费更多的时间,在过去的二十年中,我们一直在迅速积累数据。直到最近,我们想出了如何利用大规模计算从而建立深度学习算法,从而可以利用这个庞大的数据量。
现在我们正处于两个正反馈过程中,这加速了深度学习的发展:
首先,现在我们有庞大的机器来吸收大量的数据,大数据的价值就更清晰了。这使得我们有了一个更大的动机来获得更多的数据,这反过来又激励我们来建立更大且更快的神经网络。
第二,我们迅速地实现了深度学习也加快了创新,加速了深度学习的研究进展。许多人低估了对计算机系统投资对深度学习的影响。当进行深度学习研究时,我们开始并不知道什么样的算法会正常工作,我们的工作就是运行大量的实验来找出它。如果我们有一个高效的计算平台让你一天跑一个实验而不是一周跑一个的话,那么你的研究进展几乎可以增加7倍速度!
这就是为什么我们组在2008年斯坦福大学里就开始倡导使用GPU来进行深度学习(但是是有争议的,但现在几乎每个人都这样做了);现在我又推荐使用HPC(高性能计算/超级计算机)扩大深度学习的规模。机器学习应该拥抱HPC。这些方法将使研究人员更有效率,促进我们整个领域的进步。
总之:深度学习已经帮助AI取得了巨大的进步,但将来会有更好的AI!
7. 在工业界和在Stanford学术界工作有什么区别?
当有人问我是否应该在工业界还是学术界工作时,我通常建议他们先弄清楚他们想做什么。也就是说,你的使命是什么?你想让世界发生什么样的变化?当你有了答案,你就可以知道在公司还是大学哪一个是更好的地方来完成你的使命。
以下是一些我认为在商界工作更合适的理由:
- 获取重大资源,做大项目。人工智能研究日益资本集中,需要庞大的数据和计算资源。这些在公司更容易得到。
- 强烈的团队合作意识。当你不需要太担心作者排序问题或这项工作是否对你的博士论文有用,你可以更好地执行团队合作意识,追求团队整体的目标并庆祝团队的成功。
- 快速决策(取决于公司)。我喜欢工作在一个灵活的环境中,我们可以快速的在需要的地方获取资源,从快速建立一个新的计算集群到购买大量的数据,等等。
- 通过产品创新和服务能够直接帮助到大量的人们。
以下是一些我认为在学术界工作比较好的方面:
- 可以公开地探索任何话题。例如,在Stanford,我开始录制教育视频。最初没有人认为这是“真正的”Stanford工作;但这最后变成Coursera(同时Stanford也因此受益)。在Stanford,当我和我的学生觉得要建立一个开源机器人平台,我们不需要跟其他任何人评估就开始执行。这使得ROS得以创建,它是一个非常成功的开源平台。
- 可以将100%的时间来学习,甚至几年没有直接产出。像百度这样的公司非常支持员工的成长,通常让员工花几个月的时间来学习,但是让员工这样做几年还是很难。
- 获得学位的能力。即使在今天,有一个高等学位是有帮助的。大学和公司都能很好地培养人才,而社会正变得非常善于鉴别能力,无论你从哪里获得这种能力。
对于我自己,一个让我一直很感兴趣的使命是让大众获得世界上最好的教育。我认为我的公司(Coursera)会很好地执行这一任务。最近,我想通过开发人工智能技术来让我们帮助数以百万计的人,我认为我的公司(百度)将是很好地执行这一使命。但是还有很多其他有价值的任务,比如教育学生,研究某些领域,在大学里会执行地更好。
8. 什么时候无人车能真正到消费者手中?
我希望在3年内,我们会在道路上拥有大量无人车辆,并在5年内大规模生产。(随意在你的日历上做笔记,在3年或5年后检查一下,看我的预测是否正确!)
我们最近通过Stanford10周年庆赢得了DARPA无人驾驶挑战赛。为什么无人驾驶还要这么久?
首先,我认为制造一辆能到处行驶汽车的过程是非常具有挑战性的,这是最错误的目标。无人驾驶最大的问题是解决所有角落的情况——所有奇怪的问题每10000或100000英里驾驶发生一次。机器学习很好地让你的性能从90%的准确率到99.9%,但它没有让我们从99.9%到99.9999%。我认为从不同的目标出发会更有希望:巴士或通勤车只开一条固定的公交路线或只是在一个小区域行驶。如果我们能确保路线的路面和车道标记,以及是否有新的修缮等等,那么我们能实现真正的安全。然后,让我们再慢慢添加路线,并逐步扩大地区,这样我们可以实现安全行驶。这是我们在百度采取的方法,我希望其他团体也采用这种方法。
第二,汽车本质上是不同于人类看世界。例如,今天的计算机视觉无法可靠区分建筑工人挥手是指“你来吧”还是“快停止”。另一方面,我们的自动驾驶汽车是没有盲点的,可以无时无刻看到周围360度;我们的HPC(高性能计算机)系统也有比人类更快的反应速度。我认为我们不应该指望自主汽车的驾驶方式和人类的驾驶方式完全一样。我们可以使他们安全,可预测且可靠,但他们将不同于人类驾驶的汽车。我们作为技术人员,既要搞清楚基本规定也要对这些汽车有新期待,必须与政府和社会一起在这方面发挥重要的推动作用。
我对未来无人驾驶充满乐观态度。它将帮助人类节省大量时间,并大幅消除交通事故。我期待全球科技人员与政府、社会一起推动这一技术发展。
机器学习入门方法
通过Andrew给大家的回答,其实也基本能知道机器学习目前对于这个世界的发展是有很大作用。
- 入门机器学习首先就是推荐Andrew在Coursera上的课程“Machine Learning”,可以说是这个是入门的精品课程。
- Kevin Murphy的Machine Learning Textbook也是进阶教学课程之一,非常有用。
- github上有个awesome系列,其中ML系列里面推荐了无数本十分有意义的材料:github地址,有一本使用R语言的统计学书是十分有意义的。