Program Specification



|Name of University/Institute King Mongkut's University of Technology Thonburi |

|Faculty/College/Department Computer Science Program, The School of Information Technology |

Section 1 General Information

|Code and Name of Course |

|CSC 494 Special Topic IV – Natural Language Processing |

|Credits |

|3 Credits (3-0-6) |

|Academic Program, Type of Course |

|Bachelor of Science in Computer Science (English Program) |

|Elective Course for Junior and Senior students |

|Responsible faculty and lecturers |

|Assoc. Prof. Jonathan H. Chan, Ph.D., Responsible Lecturer |

|Assoc. Prof. Richard Watson Todd, Ph.D. |

|Stuart G. Towns, Ph.D. (pending) |

|Semester/ year of the program |

|Major elective of CS Juniors and Seniors |

|Pre-requisite (if any) |

|CSC105 Computer Programming II and CSC261 Statistics for Computer Scientists |

|Co-requisite (if any) |

|CSC532 Machine Learning (optional) |

|Place of study |

|School of Information Technology |

|9. Deadline for conducting or improving course specification |

|November 5, 2018 |

Section 2: Aim and Objectives

|1. Course purposes |

|Natural Language Processing (NLP), also commonly referred to as Computational Linguistics, is fast becoming a prominent field in today’s digital |

|society, especially with the advances in artificial intelligence (AI). Students will learn the fundamentals of NLP and understand the kinds of |

|problem that are suitable for NLP. In addition, students will be presented with different techniques in traditional NLP as well as leveraging |

|machine learning and AI techniques such as deep learning concepts. A number of experiments and projects are assigned to provide students with |

|better appreciation of the learnt concepts. |

|2. Course Objectives / Action Objectives |

|Students learn basic concepts in NLP and various data analysis techniques. |

|Students learn how to use software modules and/or software library so that she or he could later use them to solve data analysis problems. |

|3. Objectives of course development and improvement |

|The concept of NLP is relevant to many fields of science, business, and technology. With the widespread availability and thus heavy usage of the |

|world wide web, communication via natural language is essential. Also, the study and understanding of NLP would enhance the students’ knowledge in |

|theoretical computer science, which is useful for learning other related computer science courses and for solving other computer science problems |

|later in his or her studies. |

Section 3: Operation

|Course description |

|This course introduces the fundamental concepts and ideas in NLP and may cover the following topics: introduction to NLP; regular expressions, text|

|normalization, edit distance; N-gram language models; Naïve Bayes and sentiment classification; logistic regression; vector semantics; neural |

|networks and neural language models; part-of-speech tagging; sequence processing with recurrent networks; parsing; representation of sentence |

|meaning; computational semantics; information extraction; lexicons for sentiment; discourse coherence; machine translation; question answering, and|

|dialog systems and chatbots. The course project will cover recent and practical case studies on application of machine learning. |

|Number of hours per semester |

|Lecture |Extra Teaching |Field Experience |Self-Study |

|45 hours per semester |- |- |Self study 6 hours per week |

|3. Number of hours per week of lecturer-provided individual counseling and academic advice. |

|By appointment via email |

Section 4 Learning Outcome Developments

|Morals and Ethics |

|1.1 Morals and Ethics to Be Developed |

|Students should be responsible to society when applying algorithm to solve real-world problems. (1.1.1) |

|Use it with the code of conduct of their profession. Morals and Ethics according to Computer Science program are |

|Discipline, punctuality, responsibility to self and society. (1.1.2) |

|1.2 Teaching Methods |

|Lecture by giving examples and case studies related to morals and ethics |

|Group Discussion |

|Give assignments and projects |

|1.3 Evaluation Methods |

|On-time and completed assignment submission. |

|Evaluate the case studies, assignments and projects based on Morals and Ethics |

|Knowledge |

|2.1 Knowledge to Gain |

|Understand the concept and theories of Natural Language Processing (NLP) (2.1.1) |

|Be able to understand, and analyze the problems and apply appropriate NLP methods to solve such problems. (2.1.2) |

|Gain software development experiences by applying various NLP algorithms into software (2.1.3) |

|Be able to apply NLP algorithms to solve problems in other related fields. (2.1.4) |

|2.2 Teaching Methods |

|Lecture, discussion on case studies, extra reading on recent algorithms, assignments, and projects. The students are also given an opportunity to |

|pass an online MOOC course on Natural Language Processing. |

|2.3 Evaluation Methods |

|Quizzes, midterm and final examinations based on discussed concepts and theories |

|Programming assignments and projects |

|MOOC course completion |

|Cognitive Skills (Wisdom) |

|3.1 Cognitive Skill to Be Developed |

|Be able to thinking systematically (3.1.1) |

|Be able to search, analyze, and evaluate information in order to solve problems. (3.1.2) |

|Be able to gather, study, and summarize the problems and requirements (3.1.3) |

|Be able to apply algorithms and problem solving skills to solve computing problems (3.1.4) |

|3.2 Teaching Methods |

|Group Discussion |

|Assignments |

|Projects |

|3.3 Evaluation Methods |

|Quizzes, midterm and final examinations based on applying NLP techniques to problem solving |

|Assignments. |

|Projects |

|Interpersonal Relationship Skills and Responsibility |

|4.1 Interpersonal Relationship Skills and Responsibility to Be Developed |

|Communicate in English fluently (4.1) |

|4.2 Teaching Methods |

|Class discussion |

|4.3 Evaluation Methods |

|Idea expression and class discussion evaluation |

|Numerical analysis skills, communication skills and using IT |

|5.1 Numerical analysis skills, communication skills and using IT to Be Developed |

|Skill to use NLP algorithms on the assignments (5.1.1) |

|Be able to recommend appropriate solutions using NLP (5.1.2) |

|Write clear, concise, and accurate technical documents following well-defined standards for format and for including appropriate tables, figures, |

|and references. (5.1.3) |

|5.2 Teaching Methods |

|Self study using information from E-Learning and Web. Submit it with actual statistics and reliable references. |

|Homework with proper techniques and technologies |

|5.3 Evaluation Methods |

|Homework evaluation based on techniques and technologies used. |

Section 5 Lesson and Evaluation Plan

| |

|1. Lesson Plan |

|Week |Topics/Details |Hours |learning and teaching |Lecturer |

| | | |activities, teaching media (if| |

| | | |any) | |

|1 |Introduction/regular expression/text normalization/ edit distance |3 |Lecture |JHC/RWT/SGT |

| | | |Class Discussion | |

|2 |N-gram language models |3 |Lecture |SGT |

| |N-grams | |Class Discussion Hand-on | |

| |Evaluating language models | |practice | |

| |Generalization and zeros | | | |

| |Smoothing | | | |

|3 |Naïve Bayes and sentiment classification |3 |Lecture |JHC |

| |Naïve Bayes (NB) classifiers and training | |Class Discussion | |

| |Optimizing for sentiment analysis | | | |

| |NB as a language model | | | |

|4 |Logistic regression (LR) |3 |Lecture |JHC |

| |Learning in LR and loss function | |Class Discussion Hand-on | |

| |Gradient descent and regularization | |practice | |

| |Multinomial logistic regression | | | |

| |Assignment | | | |

|5 |Vector semantics |3 |Lecture |JHC |

| |Lexical and vector semantics | |Class Discussion Hand-on | |

| |Words and vectors/Word2vec | |practice | |

| |TF-IDF | | | |

| |Assignment | | | |

|6 |Neural networks and neural language models |3 |Lecture |JHC |

| |The XOR problem | |Class Discussion | |

| |Feed forward neural networks | | | |

| |Deep neural networks | | | |

| |Neural language models | | | |

|7 |Part-of-speech tagging |3 |Lecture |SGT |

| |English word classes | |Class Discussion | |

| |Part-of-speech tagging | |Hand-on practice | |

| |Maximum entropy markov models | | | |

| |Assignment | | | |

|8 |Midterm Examination |3 | |JHC |

|9 |Sequence processing with recurrent networks |3 |Lecture |JHC/guest lecturer |

| |Simple recurrent neural network (RNN) | |Class Discussion | |

| |Applications of RNN | | | |

| |Deep networks | | | |

| |LSTM and GRU | | | |

|10 |The representation of sentence meaning |3 |Lecture |JHC/RWT |

| |Event and state representation | |Class Discussion Hand-on | |

| |Computational semantics | |practice | |

| |Assignment | | | |

|11 |Parsing |3 |Lecture |SGT |

| |Syntactic | |Class Discussion | |

| |Statistical | | | |

| |Dependency | | | |

| |Semantic | | | |

|12 |Information extraction |3 |Lecture |JHC/guest lecturer |

| |Name entity recognition | |Class Discussion Hand-on | |

| |Relation extraction | |practice | |

| |Extracting times and events | | | |

| |Assignment | | | |

|13 |Lexicons for sentiment |3 |Lecture |JHC/guest lecturer |

| |Defining emotion | |Class Discussion | |

| |Available sentiment and affect lexicons | | | |

| |Creating affect lexicons by human labeling | | | |

| |Semi-supervised vs supervised | | | |

| |Affect recognition | | | |

|14 |Discourse coherence |3 |Lecture |RWT |

| | | |Class Discussion Hand-on | |

| | | |practice | |

|15 |Machine translation/Q&A/Chatbots |3 |Lecture |JHC/SGT |

| |Model Evaluation | |Class Discussion Hand-on | |

| |Developing models | |practice | |

|16 |Project |3 |Class Discussion |JHC |

| |Presentation and Demonstration | | | |

|17 |Final Examination |3 | |JHC |

|2. Learning Outcome Evaluation Plan |

|No. |Learning Outcomes |Evaluation Activity |Week |Weight |

|1 |2.1.1, 2.1.2, |Midterm examination |8 |30% |

| |2.1.4, 3.1.1, | | | |

| |3.1.3, 3.1.4 | | | |

|2 |2.1.1, 2.1.2, |Final examination |17 |40% |

| |2.1.4, 3.1.1, | | | |

| |3.1.3, 3.1.4 | | | |

|3 |1.1.2, 2.1.3, |Assignments, Project |Throughout semester |30% |

| |3.1.2, 3.1.4, | | | |

| |5.1.1, 5.1.2, | | | |

| |5.1.3 | | | |

| | | | | |

| |4.1.1 | | | |

| | | | | |

| |2.1.1, 2.1.2, | | | |

| |2.1.4, 3.1.1, |Class participation | | |

| |3.1.3, 3.1.4 | | | |

| | | | | |

| | |Quizzes | | |

Section 6 Teaching/learning resources

|1. Textbook |

|Speech and Language Processing, 3rd ed draft, Daniel Jurafsky and James H. Martin, Sept 2018 – available online |

|2. Documents and important information |

|Enrollment in Natural Language Processing MOOC course. |

|3. Suggested readings and other resources |

|Analysing Discourse Topics and Topic Keywords,Watson Todd, R., Semiotica vol. 184 no. 1-4 |

|pp. 251-270. (2011) |

|Discourse Topics, John Benjamins Publishing Co., Nov 2016 - |

|Online resources; R, Python, Java, and/or Octave/Matlab |

Section 7 Course Evaluation and Improvement

|Course evaluation strategy by students |

|Discussion among students and lecturer |

|Investigate from students’ behaviors |

|Teaching and lecturer evaluation form |

|Teaching evaluation strategies |

|Result of examinations |

|Teaching improvement methods |

|Brainstorm will be used during seminar on teaching improvement |

|Verification of student learning outcomes |

|Reevaluate grading process of random students by other lecturers |

|Verify the examination by program committees |

|Course review and improvement plans |

|This course will be reviewed and made adjustment every three years according to evaluation and Learning Development Outcome in Section 4 |

|Reviews from and discussion with professionals in IT industry will improve the quality of course. |

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download