Computing and Linguistics
The Computing and Linguistics major provides multidisciplinary training in the computational study of human language, the development of systems for natural language processing, and the automated analysis of textual data in applications in the humanities, social sciences, and sciences. Students learn the foundational tools and methods that underlie this work, including areas of computer science, statistics and data science, and linguistics, and apply them to some empirical domain, through coursework and an independent research project in the senior year.
The B.A. in Computing and Linguistics exposes students to the fundamental ideas and foundational techniques of the field, while the B.S. provides more extensive training and engagement in research, preparing students for graduate work in the area.
The prerequisites to this major fall in three areas: (1) statistics, satisfied through S&DS 100, 101–106, 123, or 220, or comparable background in statistics (e.g., through a score of 5 on the AP Statistics exam) as approved by the director of undergraduate studies (DUS); (2) programming, satisfied through CPSC 100 or 112 or comparable programming experience as approved by the DUS; and (3) linguistics, satisfied through one 100 level Linguistics course. It is also advisable that students have some background in single-variable calculus, prior to beginning this major.
Requirements of the Major
B.A. degree program The B.A. degree program requires 11 term credits beyond the prerequisites and not including the senior requirement. Core courses, as listed below, are required from the following categories: 2 math core courses; 1 statistics core course (S&DS 238); 2 linguistics core courses; 2 computation core courses; 3 advanced courses; 1 elective, and 1 senior requirement course.
B.S. degree program The B.S. degree program requires 14 term credits beyond the prerequisites and not including the senior requirement. Core courses, as listed below, are required from the following categories: 2 math core courses; 2 statistics core courses; 3 linguistics core courses; 2 computation core courses; 3 advanced courses; 2 electives, and 2 senior requirement courses.
Math core courses Both B.A. and B.S. degree students must take one course in proof-based discrete mathematics (one of MATH 244, LING 224, or CPSC 202) and one course in linear algebra (either MATH 222 or MATH 225).
Statistics core courses These provide foundations in probability and statistical theory. B.A. degree students satisfy this requirement by taking S&DS 238; B.S. degree students choose between two options (1) one of S&DS 240 or S&DS 241, together with S&DS 242; (2) S&DS 238 and either S&DS 230 or any S&DS course numbered 242 or above.
Linguistics core courses These courses, LING 232, 253, and 263, expose students to the nature of linguistic structure and its variability across languages, at the level of sound (phonology), form (syntax) and meaning (semantics). B.A. degree students must take 2 out of these 3 courses, while B.S. degree students must take all 3.
Computation core courses Computational studies of language rest crucially on the foundations of computer science and programming. To this end, both B.A. and B.S. degree students must take CPSC 201 and 223.
Advanced courses Both B.A. and B.S. degree students must take 1 advanced course in linguistic structure, either LING 235, 254, or 264; 1 course in natural language processing, either CPSC 477 or LING 227; and 1 course in machine learning, either S&DS 265, 365, or CPSC 481.
Electives Elective courses may be used to explore the application of the techniques of computational linguistics across a range of disciplines or to deepen expertise in these techniques. Courses that are pre-approved to satisfy the elective requirement are listed on the Computing and Linguistics major website, but other relevant courses may satisfy this requirement with DUS approval. B.A. degree students take 1 elective course; B.S. degree students take 2 electives.
Credit/D/Fail Courses taken Credit/D/Fail may not be counted toward the major (other than as prerequisites).
All Computing and Linguistics majors enroll in the capstone seminar in the fall of the senior year. This seminar includes discussion of student research, as well as presentations by researchers in the field from both inside and outside of Yale. B.A. degree students complete a senior project as part of this course, working either on an independent project supervised by a Yale faculty member with relevant expertise or as part of a group effort of capstone seminar participants. B.S. degree students enroll in the capstone seminar in the fall and continue work on their senior project in the spring. The senior project of B.S. degree students must involve independent research.
Students interested in the Computing and Linguistics major are encouraged to consult with the DUS. Further information about the major and answers to FAQs are available on the Computing and Linguistics website. The entire selection of courses by students in the major must be approved by the DUS.
Requirements of the Major
Prerequisites Statistics: one of S&DS 100, 101-106, 123, or 220 or comparable experience; Programming: CPSC 100 or 112 or comparable experience; Linguistics: one 100-level LING course
Number of courses B.A.—11 term credits beyond prereqs and not incl senior req; B.S.—14 term credits beyond prereqs and not including senior req
Distribution of courses Both degrees—2 math core courses, 1 adv linguistics structure course, 1 adv natural language processing course, 1 adv course in machine learning; B.A.—S&DS 238, 2 linguistics core courses, 1 elective; B.S.—2 statistics core courses, 3 linguistics core courses, two electives
Substitution permitted Elective courses in computational linguistics, machine-learning and applications of computational linguistics, as approved by DUS
Senior requirement Both degrees—Capstone seminar; B.S.—one additional semester of senior project