Natural Language Processing
The Natural Language Processing (NLP) track is intended for students who wish to gain expertise in NLP technologies and applications. NLP technologies are of central importance in automating the analysis of text and speech databases and in enabling man-machine interactions through natural language. This track will help you develop leading-edge knowledge of these technologies.
SUMMARY OF REQUIREMENTS
- Complete a total of 30 points (Courses must be at the 4000 level or above)
- Maintain at least a 2.7 overall GPA. (No more than 1 D is permitted).
- Complete the Columbia Engineering Professional Development & Leadership (PDL) requirement
- Satisfy breadth requirements
- Take at least 6 points of technical courses at the 6000 level
- At most, up to 3 points of your degree can be Non-CS/Non-track If they are deemed relevant to your track and sufficiently technical in nature. Please submit the course syllabus to your CS Faculty Advisor for review, and then forward the approval confirmation email to ms-advising@cs.columbia.edu
1. Breadth Courses
Visit the breadth requirement page for more information.
2. Required Track Courses
Students are required to complete the following 3 courses. Students who have taken equivalent courses in the past and received grades of at least a B may apply for waivers and take other CS courses instead.
Course ID |
Title |
COMS W4705 | Natural Language Processing |
COMS 4706/ E6998 | Spoken Language Processing (COMS 4706), or Advanced Spoken Language Processing (COMS 6998) or Fundamentals of Speech Recognition; (Spring 2017 approved substitute: COMS E6998.004 Computational Models of Speech and Language) |
COMS E6998 | One additional topics course that focuses on NLP |
3. Elective Track Courses
Students are required to complete 2 courses out of the following list; at least 1 course must be a 6000-level CS course. Since other departments vary their offerings considerably from year to year, it is possible to count such courses toward the MS degree; please propose courses you think might be suitable to your track advisor.
Course ID |
Title |
COMS W4170 | User Interface Design |
COMS W4172 | 3D User Interfaces |
COMS W4252 | Introduction to Computational Learning Theory |
COMS W4701 | Artificial Intelligence |
COMS W4771 or W4721* | Machine Learning or Machine Learning for Data Science |
COMS W4772 | Advanced Machine Learning |
COMS 4995 | Visit the topics courses page to see which COMS 4995 courses apply as electives for this track. |
COMS E6901 | Projects in Computer Science (Advisor approval required) |
COMS E6998 | Visit the topics courses page to see which COMS 6998 courses apply as electives for this track. |
SIEO W4150** | Probability and Statistics |
ECBM E6040 | Neural Networks and Deep Learning |
EECS E6894 | Deep Learning for Computer Vision and Natural Language Processing |
ELEN E4810 | Digital Signal Processing |
ELEN E6829 | Speech/Audio Processing-Recognition |
PSYC G4232 | Production and Perception of Language |
PSYC G4275 | Contemporary Topics in Language and Communication |
PSYC G4205 | Models of Cognition |
PSYC 4236 | Machine Intelligence |
PSYC G4470 | Psychology and Neuropsychology of Language |
PSYC G6006 | Introduction to Statistical Modeling in Psychology |
* Due to significant overlap, students can receive credits for only one of these courses (either COMS W4771 Machine Learning or COMS W4721 Machine Learning for Data Science).
** STAT 4001 taken Spring 2018 or prior may count as a substitute for Probability and Statistics/Advanced Data Analysis
4. General Electives
Students must complete the remaining credits with General Elective Courses at the 4000 level or above. At least three of these points must be chosen from either the Track Electives listed above or from the CS department at the 4000 level or higher. Students may also request to use at most 3 points of Non-CS/Non-Track coursework if approved by the process listed below.
- At most, up to 3 points of your degree can be Non-CS/Non-track If they are deemed relevant to your track and sufficiently technical in nature. Please submit the course syllabus to your CS Faculty Advisor for review, and then forward the approval confirmation email to ms-advising@cs.columbia.edu
-
**Known non-track CS course** CSOR E4995 Topics in Computer Science and IEOR – Financial Software Systems
*Due to a significant overlap in course material, MS students not in the Machine Learning track can only take 1 of the following courses – COMS 4771, COMS 4721, ELEN 4903, IEOR 4525, STAT 4240, STAT 4400/4241/5241 – as part of their degree requirements.
Please note:
-
Students who waive track requirements by using previous courses must still complete 30 graduate credits. This can be done by expanding their elective selection to include courses listed as required track courses and elective track courses; or by taking other graduate courses
-
The Degree Progress Checklist should be used to keep track of your requirements. If you have questions for your Track Advisor or CS Advising, you should have an updated Checklist prepared
TRACK PLANNING
Please visit the Directory of Classes to get the updated course listings. Please also note that not all courses are offered every semester or even every year. A few courses are offered only once every two or three years or even less frequently.