Skip to main content
Master of Science in Computational Linguistics

Preparing for the Program

Are you interested in applying to the UW Master of Science in Computational Linguistics? Learn how you can best prepare for the program, whether you’re now an undergraduate or have already graduated.

For Current Undergraduate Students

You might be wondering, "What courses and actions should I take as an undergrad to prepare for the Master of Science in Computational Linguistics?" Read on for advice. 

All Majors

  • Get involved! Find out which departments, labs or interest groups on campus are likely to host talks on linguistics, computational linguistics, artificial intelligence or machine learning. Make sure you are on the mailing lists for those talks.
  • Consider summer school.
    • The Linguistic Society of America hosts a summer Linguistic Institute in odd-numbered years. The institute is a great opportunity to get involved with the field of linguistics. There are typically offerings in computational linguistics at each institute.
    • The annual European Summer School in Logic, Language and Information occurs every summer and features a broad range of courses and workshops on areas related to computational linguistics. The North American Summer School of Logic, Language, and Information is a similar North American event held in even-numbered years.
    • The Johns Hopkins Center for Language and Speech Processing's summer workshops bring together scholars from around the country and the world for intensive research on speech and language engineering. The workshops are usually preceded by a two-week summer school, which is also open to those who are not participating in the six-week workshop.

Computer Science or Electrical Engineering Majors

  • Take an introduction to linguistics course.
  • Take other linguistics courses, especially morphology, typology or semantics (lexical semantics, formal semantics); consider a minor or double major in linguistics. Please note that we are looking for linguistics classes and not natural language processing classes for this preparation.
  • Take a course in probability and statistics in engineering and science.
  • Take a course in formal logic (typically offered through a school's department of philosophy).
  • Take electives in the field of artificial intelligence and/or machine learning.
  • Consider studying a foreign language, if you haven't already, or another one, if you have.

Linguistics Majors

  • Take an introductory computer science/programming sequence; this sequence is usually at least two courses. If you're unable to enroll in these courses at your current college or university, consider taking the equivalent courses at a local community college.
  • Take a course in data structures and algorithms (similar to CSE 373 at the UW).
  • Take a course in probability and statistics, ideally probability and statistics for computer science (similar to MATH/STAT 394 at the UW), as well as math classes through some multivariable calculus (partial derivatives/gradients) and some linear algebra. If you don't have time to get all of the math prerequisites done, start on them.
  • Take additional courses in computer science; consider minoring or double majoring in the field.
  • Take a formal logic course (usually offered by a school's department of philosophy).

Other Majors

If you're majoring in an unrelated field and can't change at this point, don't worry. There are a lot of applications of natural language processing that connect to other fields. Your expertise in your major can be very relevant. For example, a pre-med undergraduate degree plus a master's in computational linguistics will position you well for a career in biomedical informatics. Similarly, legal studies are good background for natural language processing applications in the legal domain. And a degree in economics, business or marketing is good training for sentiment analysis, text analytics and other business-to-business natural language processing applications.

Here are a few ideas for actions you can take to help you decide if computational linguistics is right for you:

  • Take an introductory computer science/programming sequence (usually at least two courses). If you're unable to enroll in these courses at your current college or university, consider taking the equivalent courses at a local community college.
  • Take a course in data structures and algorithms (similar to CSE 373 at the UW).
  • Take an introduction to linguistics course.
  • Take a course in probability and statistics, ideally probability and statistics for computer science (similar to MATH/STAT 394 at the UW), as well as math classes through some multivariable calculus (partial derivatives/gradients) and some linear algebra. If you don't have time to get all of the math prerequisites done, start on them.

For Student Who've Already Graduated

What if you've already finished your undergraduate degree and didn't complete the prerequisites for the master's program? Here's what we recommend you do. 

  • Consider taking a college-level introductory linguistics course.
  • Take an online probability and statistics course (such as MIT’s Probability – The Science of Uncertainty or Computational Probability and Inference on edX, or Stanford Online's Probability and Statistics) or a course at a local community college similar to Probability and Statistical Models at Bellevue College, as well as math classes through some multivariable calculus (partial derivatives/gradients) and some linear algebra, such as on Khan Academy. If you need additional math courses prior to taking these, we encourage you to enroll at your local community college.
  • Keep in mind that prerequisites need to be fulfilled before taking our core sequence in computational linguistics, but you can start our program before completing them. Either CSE 373 or MATH/STAT 394 taken at the UW can count as your elective in a related field. In the admissions process, we look for evidence of strong performance in classes similar to these or their prerequisites.
  • Your expertise from your previous studies and your career can be very helpful and relevant to the program and the field. A medical background plus a master's in computational linguistics can be great preparation for a career in biomedical informatics. Legal studies or work experience in the legal field are good background for natural language processing applications in the legal domain. And possessing a degree in economics, business or marketing is helpful for work with sentiment analysis, text analytics and other business-to-business natural language processing applications.