We meet on Wednesday 10.15-12.00 in AND-2-46. Office hours are Wednesday 13.00-15.00 or by appointment. You can get in touch with the instructor via steenbergen@ipz.uzh.ch or via the OLAT forum. Description
Deep learning is all around us, for instance, in image recognition and natural language processing. Deep means that data are represented through multiple layers in a neural network. This introduces a great deal of flexibility in the model, making deep learning the perfect tool for analyzing text and vision.
Since text and vision play an important role in the social sciences, it is no surprise that we are beginning to observe the use of deep learning there as well. Without proper skills in image and text classification, it is only a matter of time before one has fallen behind the methodological state-of-the-art.
This course provides an introduction to deep learning methods for social scientists with a focus on image and text classification. It does so using Python, arguably the most important programming language for deep learning. After familiarizing you with Python and the basics of deep learning, we embark on a journey of the most important algorithms currently used to classify texts and images. Aside from exposure to theoretical aspects of deep learning, you will obtain hands-on experience programming and using image and text classifiers.
Upon completing the course you should
- Possess essential programming skills in Python.
- Understand different network architectures and their uses.
- Know how to prepare text and image data for analysis.
- Be able to implement algorithms that help to classify texts and images.
- Be proficient in using the classifications to answer substantive research questions.
Prior knowledge of Python is not a course requirement. However, it helps when you possess good R programming skills. Since this is an advanced course in machine learning, we do not have time to dwell on basic topics such as machine learning workflows, re-sampling techniques, and various performance metrics. Ideally, participants should have successfully completed “Introduction to Data Science” or a similar introductory machine learning course. Otherwise, they should be prepared to catch up on machine learning basics prior to the course start. For suggested readings and course materials, please contact Prof. Steenbergen.
- 28.02: Introduction to Python
- 06.03: Classes and Pytorch Linear Models
- 20.03: Multilayer Perceptrons Pytorch
- (HW: 27.03: code notebook on data analysis and simple NN)
- 03.04: CNN (Images) with Pytorch and Hugging Face
- (HW: 21.04: code notebook on images)
- 15.05: Transformers with Pytorch and embeddings with R
- (HW: 21.04: code notebook on text)