fullscreen background
Skip to main content

Fall Quarter

Fall Quarter Underway
Late-Start Classes
Still Available
shopping cart icon0


« Back to Professional & Personal Development

CS 67 W — An Introduction to Natural Language Processing (NLP) with Python

Quarter: Fall
Course Format: Flex Online (About Formats)
Duration: 8 weeks
Date(s): Sep 27—Nov 19
Refund Deadline: Sep 30
Unit: 1
Tuition: $545
Instructor(s): Oleg Melnikov
Limit: 35
Class Recording Available: Yes
Status: Open
DOWNLOAD THE SYLLABUS » (subject to change)
Flex Online(About Formats)
Sep 27—Nov 19
8 weeks
Refund Date
Sep 30
1 Unit
Oleg Melnikov
DOWNLOAD THE SYLLABUS » (subject to change)
Most technology companies that track some level of human interaction collect and process vast amounts of textual data. How do such enterprises organize and make sense of these enormous troves of words and expressions? The term for this emerging field of machine learning is natural language processing (NLP). NLP professionals are eagerly sought after in today’s tech job market, helping companies to process large textual data sets quickly and to summarize, visualize, and digitize these data so as to reduce noise, highlight signals, and reveal insights. This course offers a comprehensive introduction to NLP terminology as well as an introduction to Python and other necessary tools of the NLP professional. Along the way, we will cover problems of text pre-processing, feature extraction, text classification, summarization, document clustering, sentiment analysis, and word vector representation. Students will develop intuition and skills for determining the correct NLP tool for the problem at hand and corresponding evaluation metrics to gauge and communicate their results to technical and nontechnical audiences. In weekly assignments, students will learn to apply NLP concepts in hands-on activities using Python, relevant libraries, and the Jupyter Notebook. Finally, each student will prepare and deliver a short presentation meant to prepare them for real-world job interviews, which will be evaluated and critiqued by the instructor and the class.

Students are expected to have some Python programming skills and a basic understanding of college-level math and matrix algebra. Those with stronger preparation and some familiarity with natural language processing will be able to sharpen and deepen their expertise in this course. Before enrolling, students are encouraged to complete a self-evaluation of preparedness, reached through the Preliminary Syllabus link for this course at continuingstudies.stanford.edu. A lower preparedness score suggests a greater study time or a selected grading option of Credit/No Credit or No Grade Requested.

Lecturer, UC Berkeley, Cornell, and University of Chicago; Senior Director of Data Science, ShareThis

Oleg Melnikov has developed and taught courses in statistics, machine learning, natural language processing, deep learning, Python, R, web development with SQL/PHP, and quantitative finance. He received a PhD in statistics from Rice University.

Textbooks for this course:

(Recommended) Dipanjan Sarkar, Text Analytics with Python: A Practitioner's Guide to Natural Language Processing, 2nd Edition (ISBN 1484243536)