This course concentrates on computational properties of natural languages. Coreference, question answering, and machine translation. Processing linguistic information. Syntactic and semantic processing. Modern quantitative techniques in NLP. Neural network models for language understanding tasks. The course uses active learning techniques to guarantee better engagement from the students. Also, experts from the industry are invited to talk about the practical applications in this domain. This course includes assignments and a practical term project.