deeplearning.ai 人工智能行业大师访谈 Andrej Karpathy 听课笔记

1. 本科的时候在多伦多大学上Geoffrey Hinton的课,在MNIST数字数据集上训练受限玻尔兹曼机,觉得很有趣。后来在UBC读硕士,上了另一门机器学习的课,那是他第一次深入了解神经网络的相关知识。他对人工智能很感兴趣,上了很多相关的课,但是对那些知识听不太懂,不是非常满意。他觉得神经网络才是AI,才是真正有趣的东西。于是他走上了这条路。

2. Karpathy认为神经网络是一种新的编程方式,我们定义好输入和输出,喂给程序很多例子,然后它会自动写程序。

3. NG觉得Karpathy对于深度学习很重要的两项工作:1)建立ImageNet;2)上cs231n的课。

4. 关于这些年深度学习的发展,Karpathy说自己最开始接触受限玻尔兹曼机时也没想到它会这么大规模应用,现在大家可以把某些数据集上训练的结果迁移到其他应用上,发展非常快。ImageNet比赛的网络已经成了很好的特征提取器。

5. 目前监督学习表现的非常好,而无监督学习还是原始状态。

6. Karpathy说自己花了一年半在OpenAI思考深度学习未来的发展,在他看来,这个领域会分成两条路,一边是应用AI,或者说搭建网络并训练,主要是监督学习,也有可能未来无监督学习,慢慢提高性能。另一个方向,是更一般的人工智能方向,就是如何让神经网络编程一个完全动态的系统,可以思考,可以做人类能做的所有的事情。Karpathy认为人类以前处理计算机视觉的方式是错误的,把计算机视觉分割成一个个子任务(比如识别物体、识别人脸等等),我们研究人类一项项的能力,一旦做出来了,就分成了各种不同的子领域;有了一个个子系统之后,我们在把它们组合起来。Karpathy更感兴趣的领域,不是这种分解式的,而是希望构建一个单一的网络,可以动态处理各种问题。问题在于如何构造目标函数去优化权重,才能得到真正的智力。

7. Karpathy给初学者的建议:必须接触到底层,知道一切程序背后的原理,必须充分了解整个流程。从零开始去实现,这很重要,这样学习的性价比最高。不要一开始就用现成的框架,比如TensorFlow,可以自己写最底层的代码。

上一篇:compact 创建一个包含变量名为数组的键和它们的值为数组的值的数组


下一篇:Linux--缺页中断和交换技术