Educational Tools & Resources

Current Position

Past Courses

  • 600.465: Natural Language Processing
    Fall 2012 (class page)
    Professor Jason Eisner
    Course Description

    This course is an in-depth overview of techniques for processing human language. How should linguistic structure and meaning be represented? What algorithms can recover them from text? And crucially, how can we build statistical models to choose among the many legal answers?

    The course covers methods for trees (parsing and semantic interpretation), sequences (finite-state transduction such as tagging and morphology), and words (sense and phrase induction), with applications to practical engineering tasks such as information retrieval and extraction, text classification, part-of-speech tagging, speech recognition, and machine translation. There are a number of structured but challenging programming assignments. Prerequisite: 600.226 or equivalent. [Eisner, Applications, Fall] 3 credits

  • 600.471: Theory of Computation
    Fall 2011 (my page)
    Professor Vinod Variyam
    Course Description

    This is a graduate-level course studying the theoretical foundations of computer science. Topics covered will be models of computation from automata to Turing machines, computability, complexity theory, randomized algorithms, inapproximability, interactive proof systems and probabilistically checkable proofs. Students may not take both 600.271 and 600.471, unless one is for an undergrad degree and the other for grad.

  • CSC 280: Computer Models and Limitations
    Spring 2011
    Professor Joel Seiferas
    Course Description

  • CSC 247/447: Natural Language Understanding
    Fall 2010
    Professor Lenhart K. Schubert
    Course Description

    An introduction to natural language processing: constructing computer programs that understand natural language. Topics include parsing, semantic analysis, and knowledge representation.
  • CSC 173: Computation and Formal Systems
    Fall 2010, 2009, 2008
    Professor Christopher M. Brown
    Course Description

    We investigate several formal systems influential in computer science, and also some of their applications (e.g. inspiring and providing the foundation for a computer programming style, or providing the basis for solving important practical problems like communications protocols, compiling, systems analysis, graphics ...) In more detail, we study: propositional and predicate logic and applications like the Prolog language and circuit design; formal languages and automata theory (FLAT) and applications like scanners and parsers, using the C Language; lambda calculus and the Scheme language with an AI application; matrices and the Matlab language, with applications in robotics or graphics.
  • CSC 242: Artificial Intelligence
    Spring 2010, 2009
    Professor Christopher M. Brown
    Course Description

    Introduces fundamental principles and key applications of artificial intelligence, including heuristic search, automated reasoning, machine learning, neural networks and machine perception. Programming project include building autonomous software agenst in a virtual world. This course is a prerequisite for advanced AI courses.

Last change: October 22nd, 2017 09:02

Valid XHTML 1.1 Valid CSS!

Are you having some trouble viewing/working the site? Check out some known bugs.