对于正在考虑加入我们深度学习认证课程的您,我相信您很想了解我们将涵盖哪些内容。这第一期课程是为期两部分系列课程的第一部分,其主要目标如下:
- 第一部分:让您能够成功实现和调试当前最广泛应用的领域(如计算机视觉和自然语言)中的最佳实践深度学习技术
- 第二部分:将您带到当前研究的前沿甚至更远,包括机器人和自动驾驶汽车中的应用、时间序列分析(例如金融、市场营销和生产应用)以及大规模成像(包括医学中的3D成像和卫星图像分析)。
以下是我们计划在课程第一部分中涵盖的内容:
- 将深度学习应用于解决各种问题的机会和限制,包括当前深度学习的应用方式
- 如何快速上手并使用流行的深度学习库,如 Keras
- 如何测试模型是否正常工作
- 恰到好处的线性代数、概率论和微积分知识,足以理解深度学习的工作原理
- 深度学习的每个关键组成部分的作用:输入、架构、输出、损失函数、优化、正则化和测试
- 针对每个组件使用的关键技术、使用原因以及如何使用流行的深度学习库应用这些技术
- 如何应用这些技术在计算机视觉和自然语言处理领域取得最先进的成果
- 深度学习领域旨在改善模型训练结果的最新进展
- 即使使用较小数据集也能获得良好结果的技术
我们将以一种与您过去在大学数学或计算机科学课程中习惯的方式截然不同的方式来涵盖这些主题。我们将在下一篇文章中详细介绍我们的教学理念。我们的方法将侧重于代码,而数学理论相对较轻,因此我们要求参与者至少拥有一到两年的扎实编码经验。我们将使用 Python(通过出色的 Jupyter Notebook)来展示示例,如果您还不熟悉 Python,我们强烈建议您快速了解Python 入门和Jupyter(原名 IPython)。
更多详情
以下是我们将涵盖的一些主题的更多详细信息。对于主要用于图像分类的卷积神经网络(CNN),我们将教授:
- 图像卷积基础
- CNN 架构介绍
- 超越基础 SGD
- 使用 Dropout 和权重衰减进行正则化
- 使用 Theano 进行图像分类
要了解更多信息,您可能有兴趣阅读这篇关于图像核的优秀可视化解释
对于用于自然语言处理(NLP)和时间序列数据的递归神经网络(RNN),我们将涵盖:
- NLP 基础
- RNN 介绍
- LSTM 架构介绍
- 使用 Theano 实现 Char-rnn
要立即了解更多信息,您可以阅读Andrej Karpathy 的这篇精彩文章。
本课程的主要目标之一是教授您训练更好模型的实用技术,例如:
- 批量归一化
- 残差网络 (Resnets)
- 测试和可视化
请查看这篇关于“照看”您的学习过程的有用建议以及 Chris Olah 关于语言表示的可视化的启发性文章
存在一个危险的误解,认为有效使用深度学习需要庞大的数据集。这是错误的,我们将教您如何处理数据不足的问题,例如通过以下方法:
- 数据增强
- 无监督学习和自编码器
- 半监督学习
- 迁移学习
背景与准备
要参与课程,您应该对矩阵乘法、基本微分和链式法则有所了解,或者愿意在课程开始前学习它们。如果您需要复习这些概念,我们推荐汗学院(Khan Academy)关于矩阵乘法和链式法则的视频。
我们将大量使用 Python 中的列表推导(list comprehensions)——这里有一篇有用的介绍。熟悉基本的 Python 数据科学工具也会非常有帮助:numpy、scipy、scikit-learn、pandas、jupyter notebook 和 matplotlib。据我所知,关于这些工具的最佳指南是《利用 Python 进行数据分析》。对于没有 Python 经验的人,您可以通过阅读《笨办法学 Python》来准备。
阅读旧金山大学数据学院关于我们即将在周一晚上开设的深度学习课程的官方描述,并在10月12日前将您的简历发送至 [email protected] 进行申请。