- Docente: Giovanni Colavizza
- Credits: 6
- SSD: INFO-01/A
- Language: English
- Teaching Mode: In-person learning (entirely or partially)
- Campus: Bologna
- Corso: Second cycle degree programme (LM) in Digital Humanities and Digital Knowledge (cod. 6736)
-
from Sep 14, 2026 to Oct 20, 2026
Learning outcomes
At the end of the course, the student is familiar with the theoretical principles underpinning modern machine learning. The student is further able to understand, apply and evaluate the main machine learning techniques and implementations relevant to addressing practical problems and tasks in the domains of Cultural Heritage and GLAM. Lastly, the student is able to critically reflect on the preconditions and implications of using machine learning in these domains.
Course contents
This course offers an introduction to Machine Learning (ML), with a focus on applications in the Arts and Humanities. The course will introduce foundational ML concepts and methods, and will be complemented by laboratory activities where methods will be implemented.
After completing this course, the student can:
-
Understand basic and advanced Machine Learning concepts and methods.
-
Find software libraries that can be used to develop ML applications.
-
Implement ML applications using Python.
-
Evaluate whether ML could be used in an Arts and Humanities task.
Machine Learning (ML) is increasingly used in the context of Arts & Humanities research and GLAM applications (Galleries, Libraries, Archives, Museums). Examples range from text recognition and information extraction from historical sources to image search and analysis on artwork collections, from automatic 3D reconstructions of built heritage to the automatic detection of archeological sites from satellite or drone images. This course will lay the foundations for the students to explore and implement similar applications and more.
The breakdown of the topics is as follows (per week):
-
Week 1: Introduction to Machine Learning, part 1. We discuss the course setup, the fundamentals of machine learning, the types of ML tasks, the key components of an ML workflow, and start with some foundational mathematical concepts. We introduce coding with agents (e.g., Claude Code, Codex).
-
Week 2: Introduction to Machine Learning, part 2. We discuss and implement linear regression, linear classification, and the Multi-Layer Perceptron (MLP).
-
Week 3: PyTorch. We introduce PyTorch, implement linear models and more advanced machine vision architectures (e.g., convolutional and residual networks).
-
Week 4: Introduction to Machine Learning, part 3. We discuss advanced topics including model training, loss functions, optimisation and stochastic gradient descent (SGD).
-
Week 5: Transformers. We introduce tasks in natural language processing and machine vision using the Transformer, the main architecture underpinning large language models (LLMs).
-
Week 6: LLMs and Generative AI. We expand on using Large Language Models (LLMs). We see how to use frontier and open LLMs in practice and discuss one advanced application called Retrieval Augmented Generation (RAG).
Note that this list of topics might still change slightly.
Students with specific learning disorders (SLD) or temporary/permanent disabilities should contact the appropriate University office (https://site.unibo.it/studenti-con-disabilita-e-dsa/en ) immediately and agree with the teacher the most effective strategies for attending the lectures and preparing for the exam.
Readings/Bibliography
The materials will be provided via GitHub. The students are expected to take their own notes.
Readings
BOOK: Zhang et al., Dive Into Deep Learning, MIT Press, 2023. https://d2l.ai/index.html .
Readings:
-
Allamar, Jay, The Illustrated Transformer, 2018. https://jalammar.github.io/illustrated-transformer .
-
Riedl, Mark. A Very Gentle Introduction to LLMs, 2023. https://mark-riedl.medium.com/a-very-gentle-introduction-to-large-language-models-without-the-hype-5f67941fa59e .
-
Open AI. GPT-4, 2023. https://openai.com/index/gpt-4-research .
-
At least one among:
-
Colavizza, Giovanni, Tobias Blanke, Charles Jeurgens, and Julia Noordegraaf. “Archives and AI: An Overview of Current Debates and Future Perspectives.” Journal on Computing and Cultural Heritage 15, no. 1 (February 28, 2022): 1–15. https://doi.org/10.1145/3479010 .
-
Fiorucci, Marco, Marina Khoroshiltseva, Massimiliano Pontil, Arianna Traviglia, Alessio Del Bue, and Stuart James. “Machine Learning for Cultural Heritage: A Survey.” Pattern Recognition Letters 133 (May 2020): 102–8. https://doi.org/10.1016/j.patrec.2020.02.017 .
-
Lombardi, Francesco, and Simone Marinai. “Deep Learning for Historical Document Analysis and Recognition—A Survey.” Journal of Imaging 6, no. 10 (October 16, 2020): 110. https://doi.org/10.3390/jimaging6100110 .
-
Santos, Iria, Luz Castro, Nereida Rodriguez-Fernandez, Álvaro Torrente-Patiño, and Adrián Carballal. “Artificial Neural Networks and Deep Learning in the Visual Arts: A Review.” Neural Computing and Applications 33, no. 1 (January 2021): 121–57. https://doi.org/10.1007/s00521-020-05565-4 .
-
Sommerschield, Thea, Yannis Assael, John Pavlopoulos, Vanessa Stefanak, Andrew Senior, Chris Dyer, John Bodel, Jonathan Prag, Ion Androutsopoulos, and Nando De Freitas. “Machine Learning for Ancient Languages: A Survey.” Computational Linguistics 49, no. 3 (September 1, 2023): 703–47. https://doi.org/10.1162/coli_a_00481 .
-
Wevers, Melvin, and Thomas Smits. “The Visual Digital Turn: Using Neural Networks to Study Historical Images.” Digital Scholarship in the Humanities, January 18, 2019. https://doi.org/10.1093/llc/fqy085 .
-
Visual Neural Networks course by 3blue1brown: https://www.youtube.com/playlist?list=PLZHQObOWTQDNU6R1_67000Dx_ZCJB-3pi .
Further resources: Awesome AI 4 LAM. https://ai4lam.github.io/awesome-ai4lam .
Teaching methods
Lectures and live coding sessions. Attending students are expected to come prepared to class.
It is recommended for all students to attend in person.
Assessment methods
Oral exam on all course contents (50%, duration approx 30m) and an individual project on a topic of choice (50%). The student may select a topic for the project in agreement with the lecturer. The project must be applied, i.e., entailing a substantial component of writing of code and the development of an ML application of choice. The project has to be sent to the lecturer at least 5 days in advance of the oral exam date. The project must be submitted before taking the exam. Project guidelines will be provided at the beginning of the course.
The program for non-attending students is the same.
Recommended prior knowledge
You need to know how to code in Python. High-school algebra and calculus are also expected (you can refresh them using the first reading above). The students will also benefit from having attended 1st-year courses such as ‘Computational Thinking’.
Students with specific learning disorders (SLD) or temporary/permanent disabilities should contact the appropriate University office (https://site.unibo.it/studenti-con-disabilita-e-dsa/en ) in advance. The office will be responsible for proposing adaptations to interested students. Such adaptations must be submitted to the teacher for approval at least 15 days before the exam session. The teacher will also evaluate the adaptations regarding the training objectives of teaching.
Teaching tools
Slides, live coding, demonstrations, readings, and seminar discussions.
Classes are held in a classroom equipped with personal computers connected to the Internet.
Links to further information
https://github.com/Giovanni1085/UNIBO_MachineLearning
Office hours
See the website of Giovanni Colavizza