K-INFO
HU
EN
Login

Introduction to Python and Natural Language Technologies

Bevezetés a Python és nyelvtechnológia világába
A tantárgyleírás hatályossága
Hatályosság kezdete:
Hatályosság vége:
Subject name (Hungarian, English)
Bevezetés a Python és nyelvtechnológia világába
Introduction to Python and Natural Language Technologies
Subject code BMEVIAUAV35
Subject type
Training Level
Course types and hours (weekly/semester)
Course type lecture tutorial laboratory
hours (weekly) 2 0 2
type (linked/independent) derived course
Assessment type vizsga
Credits 4
Subject coordinator
Dr. Gulyás Gábor György
Responsible department
Faculty
Subject website
Primary curriculum type
Direct prerequisites – Strong prerequisite none
Direct prerequisites – Weak prerequisite none
Direct prerequisites – Parallel prerequisite none
Direct prerequisites – Milestone prerequisite none
Direct prerequisites – Exclusion none

Objectives

Programme

 

Lecture Topic

Lab Topic

1

Introduction: what is natural language processing, typical applications, history, major areas of NLP/CL, relationship to computer science and linguistics

Setting up - using the provided VMs, git repository, basic NLP tools

2

Introduction to Python, basic syntax, built-in types, operators, functions, file manipulation

Using Jupyter. Writing simple functions. Handling text files.

3

Built-in types in detail (list, set, dict), immutability. Advanced string manipulation, encodings, Regular expressions.

Typical string manipulation exercises. Writing a simple parser with regular expressions.

4

Object-oriented Python, properties, static methods, class methods, magic methods, operator overloading. Iterators, generators. Context managers.

Complex OOP exercise. Writing our own iterator and context manager.

5

Decorators. Functional programming in Python. Writing command line applications in Python. Using Linux command line applications for text processing. IO redirection, pipelines.

Writing a simple command line application. Using it in the terminal, interacting with built-in Linux commands via pipes.

6

Scientific Python. Numpy, scipy. Basic matrix operations. Sparse matrices.

Matrix manipulation. Working with large sparce matrices.

7

Data science. Handling text data. Basic shell commands. Pandas.

Handling text data exercises. Data cleaning. Pandas exercises.

8

Deep learning for NLP. Feed forward neural networks, recurrent neural networks. LSTM, GRU.

PyTorch basics. Defining neural networks, training and evaluation loops

9

Textual sequence modeling: sequence labeling and classification, sequence-to-sequence models. Attention.

Sequence modeling in PyTorch.

10

Language modeling. Word vectors. Contextualized language models. Transformers. BERT.

Exploring pretrained models: word2vec, GloVe, fastText, BERT, ELMo

11

Dependency parsing. Universal dependencies.

Working with Universal Dependencies. Multilingual models and problems.

12

NLP applications I.: neural machine translation, sentiment analysis, question answering, summarization, dialogue.

NLP in practice. Using pretrained models for machine translation, question answering etc.

13

NLP applications II.: knowledge bases.

NLP in practice II. Homework consultation.

14

Practical session

Practical session

The aim of this course is to provide students with an overview of the theory and practice of current natural language processing (NLP) technologies, while also allowing them to gain hands-on experience in a popular, high-level programming language. Students shall not only get acquainted with all major fields of NLP, they will also be expected to implement simple solutions for each level of language processing.

Learning outcomes

Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:

Knowledge

No learning outcomes recorded.

Skills

No learning outcomes recorded.

Attitudes

No learning outcomes recorded.

Autonomy and responsibility

No learning outcomes recorded.

Oktatási módszertan

Lecture (2x45 min. / week) and Laboratory (2x45 min. / week)

Tanulástámogató anyagok

Online források
 ; -         ; Jurafsky, D., &; Martin, J. H. (2014). Speech and language processing. Pearson.; Manning, C. D.,; & Schütze, H. (1999). Foundations of statistical natural language; processing. Cambridge: MIT press.

Recommended preliminary knowledge for completing the subject

Knowledge type competencies
(azon előzetes ismeretek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
Basics of Object-Oriented Programming, basics of software development
Skill type competencies
(azon előzetes képességek és készségek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
nincs
Recommended (non-compulsory) preliminary competencies
(azon ajánlott (nem kötelező) előzetesen megszerzendő kompetenciák összessége, amelyek jelentősen hozzájárulnak a tantárgy eredményes teljesítéséhez)
Basics of Object-Oriented Programming, basics of software development
General rules
Requirements:   A. 3 homework assignments during the term B. Oral exam  To pass, students must receive a passing grade (>=2) for each of the three homework assignments and at the oral exam. The exam grade and the average of the three homework grades both count toward 50% of the final grade.   Additional possibilities: Late submissions of homework assignments can be submitted late until the repeat period in accordance with the Code of Studies and Exams.
Assessment methods
In-term assessments

No detailed assessments provided.

Weight of in-term assessments

No weights provided.

Exam-period assessments

No detailed assessments provided.

Weight of exam elements

No weights provided.

Grade calculation

No grade thresholds provided.

Attendance requirements

No attendance requirements provided.

Rules for retake and resubmission

Not provided.

Short description

Not provided.

Detailed description

Not provided.

Recommended courses
None
Workload to complete the subject

No workload breakdown provided.

Validity of subject requirements
Requirements valid from:
Requirements valid until:
Curriculum placement

No curriculum placements recorded for this subject version.