CS224n: Natural Language Processing with Deep Learning¶
Logistics¶
- Stanford / Winter 2019
- Public lecture videos: are now publicly available on YouTube.
- 国内视频资源
- 课程学习资料打包 包括课件、讲义、作业以及推荐的论文等
Content¶
What is this course about?¶
自然语言处理(NLP)是信息时代最重要的技术之一,也是人工智能的关键部分。 NLP的应用无处不在,因为人们几乎用语言交流一切:网络搜索,广告,电子邮件,客户服务,语言翻译,医疗报告等。近年来,深度学习方法在许多不同的NLP任务中获得了非常高的性能,使用一个端到端神经模型,不需要传统的、任务特定的特征工程。在本课程中,学生将深入了解NLP深度学习的前沿研究。通过讲座,作业和最终项目,学生将学习设计,实现和理解他们自己的神经网络模型所需的技能。今年,CS224n将首次使用 PyTorch。
Previous offerings¶
融合了earlier CS224n (Natural Language Processing) 和 CS224d (Natural Language Processing with Deep Learning)
Prerequisites¶
- 精通Python
- 大学微积分,线性代数
- 你应该熟悉(多变量)求导,理解矩阵/向量符号和操作。
- 概率和统计学基础
- 机器学习基础 A Course in Machine Learning
- Reading the first 5 chapters of that book would be good background. Knowing the first 7 chapters would be even better!
Reference Texts¶
以下文本是有用的,但不是必需的。所有这些都可以在网上免费阅读。
- Dan Jurafsky and James H. Martin. Speech and Language Processing (3rd ed. draft)
- Jacob Eisenstein. Natural Language Processing
- Yoav Goldberg. A Primer on Neural Network Models for Natural Language Processing
- Ian Goodfellow, Yoshua Bengio, and Aaron Courville. Deep Learning
如果你没有神经网络方面的背景知识,但无论如何还是想上这门课,你很可能会发现这些书中有一本对你提供更多背景知识很有帮助
- Michael A. Nielsen. Neural Networks and Deep Learning
- Eugene Charniak. Introduction to Deep Learning
Assignments¶
每周有五个作业,这将提高你的理论理解和实践技能。所有作业都包括书面问题和编程部分。
- Credit
- Assignment 1 (6%): Introduction to word vectors [code] [preview]
- Assignment 2 (12%): Derivatives and implementation of word2vec algorithm [code] [handout]
- Assignment 3 (12%): Dependency parsing and neural network foundations [code] [handout]
- Assignment 4 (12%): Neural Machine Translation with sequence-to-sequence and attention [code] [handout] [Azure Guide] [Practical Guide to VMs]
- Assignment 5 (12%): Neural Machine Translation with ConvNets and subword modeling [original code (requires Stanford login) / public version] [handout]
Final Project¶
期末项目让你有机会将新获得的技能应用到深入的应用中。学生有两种选择:默认期末项目(学生处理预定义的任务,即文本问题回答)或自定义期末项目(学生选择自己的项目)。两者的例子都可以在去年的网站上看到。
- Credit:For both default and custom projects, credit for the final project is broken down as follows:
- Project proposal (5%) [instructions]
- Project milestone (5%) [instructions]
- Project poster/video (3%) [instructions]
- Project report (30%) [instructions]
- Default Final Project [handout] [code] [lecture slides]: In this project, students explore deep learning solutions to the SQuAD (Stanford Question Asking Dataset) challenge. This year's project is similar to last year's, with some changes (e.g. SQuAD 2.0 rather than SQuAD 1.1, baseline code is in PyTorch rather than TensorFlow).
- Project advice [lecture slides] [lecture notes]: The Practical Tips for Final Projects lecture provides guidance for choosing and planning your project. To get project advice from staff members, first look at each staff member's areas of expertise on the office hours page. This should help you find a staff member who is knowledgable about your project area.