Welcome to Natural Language Processing (NLP) Course
As practitioners of AI and NLP, we are in the best of times! Whether you are playing with Siri or running a business intelligence application, Natural Language Processing is everywhere. The recent advances in deep learning techniques significantly improve the quality of traditional applications and more importantly open up new classes of applications. This is our website for the NLP course offered at PES University, Bangalore. Here we share the presentations and relevant code.
Our Approach
NLP techniques have been evolving over several decades and so what is new? The core NLP problems, such as Part Of Speech tagging, information retrieval techniques, search engine algorithms, parsing etc. have been solved to a good extent (for instance, POS taggers usually have accuracy over 98%) using traditional approaches. However, such approaches that work well for syntax driven use cases, don't work well for applications that involve deep semantics. Deep Learning methods hold lot of promise in breaking the barrier between pure syntax and deep semantic driven use cases. A pragmatic approach for a practitioner might be to use conventional, well proven techniques for those problems where one can get high accuracy and use the modern approaches where conventional methods yield sub optimal results.
Our course covers both the traditional approaches to solving NLP challenges as well as the modern and emerging approaches. For instance we discuss classical parsing techniques based on CKY algorithm, while at the same time, we cover in depth recursive neural network based approaches to the parsing problem.
Key Highlights of the course
A key aspect of this course is to cover the most appropriate topics of both traditional as well as deep learning based modern NLP. We address in depth several emerging approaches with the syllabus covering the most recent work in this subject. To build usable systems in the real world, we believe, we need the right mix of traditional and deep learning approaches. Recurrent Neural Network (RNN) techniques e.g. Encoder-Decoder Pattern, have been shown to do a reasonable job at generating natural language that is a vital task for applications like dialogue systems. The key question is: is this mature enough to be considered "industry ready" where we may have only a limited amount of labelled data? Do we still need to rely upon conventional natural language generation (NLG) models or can we use RNN based approaches with confidence? Our course is intended to enable the student understand both approaches and reason out for himself the required approach to build a given application.
Our course evaluation involves 5 hands-on half a day sessions and a 3 full days of hackathon. We also have 2 theory papers to balance the emphasis on theory and practice.
Where are the slides?
You can access the slides from https://github.com/ananthpn/nlp/. The slides are in the folder named slides.
Contact
I am Anantharaman Palacode Narayana Iyer (Ananth to be short!) and am in the process of creating my start up. I teach as a guest faculty at PES University. You can contact me at: narayana dot anantharaman at gmail dot com