This course introduces the basic and advanced concepts and ideas in text mining and natural language processing. In this course, students will learn how to apply text mining methods on text data and analyse them in a pipeline with machine learning and deep learning algorithms. The course has a strongly practical hands-on focus, and students will gain experience in using text mining on real data from social sciences, humanities, and healthcare, and interpreting the results.
Given the rapid rate at which text data are being digitally gathered in many domains of science, there is a growing need for automated tools that can analyze, classify, and interpret these kinds of data. Text mining techniques can be applied to create a structured representation of text, making its content more accessible for researchers. Applications of text mining are everywhere: social media, web search, advertising, emails, customer service, healthcare, marketing, etc. This course offers an extensive exploration into text mining with Python. The course has a strongly practical hands-on focus, and students will gain experience in using text mining on real data from for example social sciences and healthcare and interpreting the results. Through lectures and practicals, the students will learn the necessary skills to design, implement, and understand their own text mining pipeline. The topics in this course include preprocessing text, text classification, topic modeling, word embedding, deep learning models, and responsible text mining.
The course deals with:
Reviewing the fundamental approaches to text mining; Understanding and applying current methods for analyzing texts; Defining a text mining pipeline given a practical data science problem; Implementing all steps in a text mining pipeline: feature extraction, feature selection, model learning, model evaluation; Understanding and applying state-of-the-art methods in text mining; Implementing word embedding and advanced deep learning techniques. The course starts with reviewing basic concepts of text mining and implementing advanced concepts in natural language processing. At the end of the week, participants will master advanced skills of text mining with Python.
Participants should have a basic knowledge and a motivation of scripting and programming in Python. A good preparation for this course is our summer course Data Science: Text Mining with R and the course Data Science: Programming with Python
Participants are requested to bring their own laptop computer. Software will be available online.
This course can be taken separately, but is also part of a series of 8 courses in the Summer School Data Science specialisation taught by UU’s department of Methodology & Statistics:
Data Science: Programming with Python (Course code S17, 8-12 July 2024) Data Science: Statistical Programming with R (Course code S24, 8-12 July 2024)
Data Science: Multiple Imputation in Practice (Course code S28, 8-11 July 2024)
Data Science: Data Analysis (Course code S31, 15-19 July 2024)
Data Science: Network Science (Course code S37, 15-19 July 2024)
Data Science: Applied Text Mining (this course)
Data Science: Machine Learning with Python (Course code S70, 22-26 July 2024)
Data Science: Text Mining with R (Course code S41, 19-22 August 2024)
Upon completing, within 5 years, 3 out of 8 courses in the Summer School Data Science specialisation (no more than one text mining course), students can obtain a certificate.
This course works best for learners who are comfortable programming in Python, who want to acquire skills in text mining approaches, and who have a basic knowledge of machine learning.
Participants should also have a basic knowledge and a motivation of scripting and programming in Python. Participants from a variety of fields, including sociology, psychology, education, human development, marketing, business, biology, medicine, political science, and communication sciences, will benefit from the course. A maximum of 80 participants will be admitted to this course. Please note that the selection for this course will be done on a first-come-first-served basis.
Aim of the course
The course teaches students the basic and advanced text mining techniques using Python on a variety of applications in many domains of science. The skills addressed in this course are:
Python environment; Preprocessing text and feature extraction
NLTK, Gensim, spaCy
CBOW vs Skip-gram
Convolutional neural networks
Recurrent neural networks
Responsible text mining
Transformers and large language models.