如果您具有数学和计算机科学方面的工程背景或相关知识的编码经验,只需两个月即可熟练掌握深度学习。 难以置信? 四步使它成为可能。
欲了解更多,请往下看
Step 1: 学习机器学习基础
(可选,但强烈推荐)
- 开始于Andrew Ng的机器学习 机器学习 - 斯坦福大学。他的课程介绍了目前各种机器学习算法,更重要的是机器学习的一般程序和方法,包括数据预处理,超参数调优等。
- 同时推荐阅读由Geoff Hinton,Yoshua Bengio和Yann LeCun提供的NIPS 2015深度学习教程,其中介绍略少一些。
Step 2: 深入学习
个人的学习偏好是观看演讲视频,并有几个优秀的课程在线。 这里有几个特别喜欢的课程,可以推荐:
-
Deep learning at Oxford 2015 由Nando de Freitas教授解释基础知识,不会过于简单。
如果您已经熟悉神经网络并希望深入,请从第9讲开始。 他在他的例子中使用Torch framework。 (Videos on Youtube) - Neural Networks for Machine Learning Geoffrey Hinton在Coursera上的课程。Hinton是一位优秀的研究人员,他们展示了广义反向传播算法的使用,对深度学习的发展至关重要。
- Neural Networks Class by Hugo Larochelle: 另一个优秀的课程
- Yaser Abu-Mostafa’s machine learning course: 如果你对更多的理论感兴趣
如果你更喜欢的是书籍,这里有一些优秀的资源。 去查看一下,我不做判断。
- Neural Networks and Deep Learning Book by Michael Nielsen’s:在线学习书,并有几个交互式JavaScript元素可以玩。
- Deep Learning Book by Ian Goodfellow, Yoshua Bengio和Aaron Courville:比较密集,但莫非不是一个很好的资源
Step 3: 选择一个区域并进一步深入
确定自己继续深入学习的热情。 这个领域是巨大的,所以这个列表绝对不是一个全面的列表。
- 计算机视觉 : 深入学习已经改变了这一领域。 斯坦福大学的CS231N课程由Andrej Karpathy的课程是我遇到的最好的课程; CS231n卷积神经网络视觉识别。 它向您介绍了基础知识以及covnets,以及帮助您在AWS中设置GPU实例。 另请参阅Mostafa S. Ibrahim的“计算机视觉入门”
- 自然语言处理 (NLP):用于机器翻译,问答,情绪分析。 要掌握这一领域,需要深入了解这两种算法和自然语言的基础计算属性。CS 224N / Ling 284 by Christopher Manning 是一个很棒的课程。CS224d:自然语言处理的深度学习,另一个斯坦福大学的学者David Socher(MetaMind的创始人)也是一个很好的课程,可以解决与NLP相关的所有最新的深入学习研究。 有关详细信息,请参阅如何学习自然语言处理?
- 记忆网络 (RNN-LSTM) : 在LSTM中将注意力机制结合在一起的循环神经网络与外部可写内存意味着一些有趣的工作,可以构建能够以问题和回答方式理解,存储和检索信息的系统。 这个研究领域从纽约大学Yann Lecun博士的Facebook AI实验室开始。 原始文章是在arxiv:记忆网络。 有许多研究变体,数据集,基准等来源于这项工作,例如,Metamind的自然语言处理动态内存网络
- 深度加强学习 : 由AlphaGo着名,Go-playing系统击败了历史上最强的Go玩家。 David Silver's(Google Deepmind)的RL视频讲座和Rich Stutton教授的书是一个很好的开始。 对于LSTM的温柔介绍,请参阅Christopher关于了解LSTM网络和Andrej Karpathy的“经典神经网络的不合理有效性”
- 生成模型: 虽然歧视性模型试图检测,识别和分离事物,但是他们最终会寻找在基础层面上区分和不理解数据的功能。 除了短期应用之外,生成模型还提供了自动学习自然特征的潜力; 类别或尺寸或其他完全。 在三种常用的生成模型中,生成对抗网络(GANs),变体自动编码器(VAEs)和自回归模型(如PixelRNN),GAN最受欢迎。深入阅读:
- Original GAN paper by Ian Goodfellow 等等.
- The Laplacian Adversarial Networks (LAPGAN) Paper (LAPGAN) 这固定了稳定性问题
- The Deep Convolutional Generative Adversarial Networks (DCGAN) paper 和 DCGAN Code 它可以用于在没有任何监督的情况下学习功能的层次结构。 另外,查看 DCGAN used for Image Superresolution
Step 4: 建立项目
做是成为专家的关键。 尝试建立一些你感兴趣的、并符合你的技能水平的东西。 以下是一些建议,让您思考:
- 按照传统,首先对MNIST数据集进行分类
- 在ImageNet上尝试面部检测和分类。 如果你这样做,做ImageNet挑战2017。
- 使用RNN或CNN进行Twitter情感分析
- 教授神经网络来重现着名画家的艺术风格(艺术风格的神经算法)
- 用循环神经网络构成音乐
- 使用深加强学习玩乒乓球
- 神经网络评估自拍
- 彩色黑白图片使用深度学习
欲了解更多,请查看CS231n Winter 2017、 Winter 2016&Winter 2015项目。 还要关注Kaggle和HackerRank的比赛,以获得有趣的东西以及竞争和学习的机会。
其他资源
以下是一些指导,帮助你持续学习
- 阅读一些优秀的博客。 克里斯托弗·奥拉(Christopher Olah)的博客和安德鲁·卡皮斯(Andrew Karpathy)的博客都很好地解释了基本概念和最近的突破
- 在Twitter上关注影响力。 以下是几个开始@drfeifei,@ylecun,@karpathy,@AndrewYNg,@Kdnuggets,@OpenAI,@googleresearch。 (见:谁在Twitter上关注机器学习信息?)
- Google+深度学习社区,Yann Lecunn,是与深度学习创新保持联系以及与其他深入学习专业人士和爱好者沟通的好方法。
请参阅ChristosChristofidis / awesome-deep-learning,这是一个精心设计的Deep Learning教程,项目和社区,让学习更轻松。
clipboard.png翻译很辛苦,还有一些没有写出来,放在专栏里。深度学习入门资源
只是介绍一种学习方法,里面的内容你不可能全看
在每一步下,选择一个或两个就足够了
方向很重要
网友评论