INDUSTRIAL APLICATIONS OF ARTIFICIAL INTELIGENCE
cod. 1010245

Academic year 2024/25
2° year of course - First semester
Professor
Giovacchino TESI
Academic discipline
Informatica (INF/01)
Field
Attività formative affini o integrative
Type of training activity
Related/supplementary
48 hours
of face-to-face activities
6 credits
hub:
course unit
in ITALIAN

Learning objectives

The course aims to provide the methodological tools for designing, implementing, and managing artificial intelligence systems based on machine learning. It also intends to offer an overview of the most commonly used architectures and models in the business world, enabling students to independently keep up with industry developments.
In reference to the Dublin Descriptors:

Knowledge and Understanding
The course introduces concepts for managing artificial intelligence systems, from their conception, to the lab, from the test environment to production. It covers concepts such as monitoring, ethical indicators, and more.

Applying Knowledge and Understanding
Theoretical knowledge is applied both through in-class exercises and the final project.

Independent Judgement
Independent judgement is encouraged throughout the course by continuous interaction with the instructor and through the final project, where all decisions are delegated to the student.

Communication Skills
Ongoing interaction with the instructor and the final project report are designed to encourage students to use appropriate professional language.

Learning Skills
The continuous interaction with the instructor, along with the final project developed in small groups (three students), enables learners to address knowledge gaps through collaboration and the practical application of acquired concepts.

Prerequisites

Good knowledge of Python programming and Machine Learning concepts.
Basic understanding of information systems management.

Course unit content

Introduction to AI in Business
In-depth Study of MLOps
Architectures for Serving
Data Management
Advanced Deep Learning
Object Classification, Detection, and Segmentation
Deployment of Systems in High-Risk Environments
Architectures Using Transformer Models
Advanced Use of Foundation Models
Utilizing Intelligent Agents with LLMs
Using Multi-Agent Architectures to Solve Complex Tasks

Full programme

1) Introduction: Use of AI in Business

The company as a set of processes (Porter)
Business sectors
Where to apply artificial intelligence to automate processes
Intelligent systems to support decision-making
Typical problems addressed by AI in business (chatbots, forecasting, markdown optimization, customer churn, etc.)
Data science for building the 'intelligent part'
DEVOps, MLOps, LLMOps (reproducibility, reliability, scalability, maintainability, adaptability)
CRISP process for developing AI systems based on data science
Development and monitoring
Typical data collected by companies (both manufacturing and services)

2) In-depth Study of MLOps

AI system lifecycle based on ML
Software engineering for ML
Product tracking (MLFlow)
Experiment versioning
In-class exercises

3) Architectures for Serving

Batch serving
Online serving
Using containers (Docker)
Libraries for serving via HTTP (FastAPI and Flask)
Security and access control
Production deployment with MLFlow
In-class exercises

4) Data Management

Structured and unstructured data sources
Ingestion: ETL versus ELT
Big data: pandas is not always enough
Data versioning (DVC)
Data lineage
Masking, security, and sensitivity
Synthetic data for semi-supervised training
In-class exercises

5) Advanced Deep Learning 1

Transfer learning
Networks with various topologies
Mixture of Experts (MOE)
Contrastive learning
In-class exercises

6) Advanced Deep Learning 2

Embeddings and positional embeddings
Attention mechanisms
Generative networks (GAN)
Physics-Informed Neural Networks
In-class exercises

7) Object Classification, Detection, and Segmentation

Principles and metrics of detection
Principles and metrics of segmentation
Use cases for detection and segmentation
YOLO
In-class exercises

8) Deployment of Systems in High-Risk Environments

Rare event detection
Importance of explainability
XAI methods (SHAP, GradCam, LIME)
Identifying reliable results
Ethical considerations (AI Act basics)
In-class exercises: data extraction from images (Donut)

9) Architectures Using Transformer Models

BERT and models for language analysis
Visual Transformer
Foundation Models and LLM
Multimodal Foundation Models
In-class exercises: data extraction from images (Donut)

10) Advanced Use of Foundation Models

RAG: principles and types
Using LLM in IT systems:
Semantic search in archives
Intelligent chatbot
SQL query generation (modern UX example)
In-class exercises: LangChain library

11) Using Agents with LLMs
Definitions and operating principles
Prompt engineering techniques
Context-based learning
In-class exercises with GPT API (or other LLMs), DSpy

12) Use cases: multi-agent systems for task-solving
Communication between agents
Building agent communities to solve tasks
Human-In-The-Loop (HITL)
Reinforcement Learning Human Feedback (RLHF)
In-class exercises

Bibliography

Instructor slides and online material, especially for the tools and frameworks used. Industry articles.

For further readings:
Machine Learning Design Pattern (Lakshmanan e altri O'Reilly)
Design Machine Learning Systems (Huygen O'Reilly)
Implementing MLOps in the Enterprise (Yaron Haviv & Noah Gift O'Reilly)
Prompt Engineering for Generative AI (James Phoenix & Mike Taylor O'Reilly)

Teaching methods

Lectures and in-class exercises on the topics covered in each session.

Assessment methods and criteria

Oral and project.
Final assessment through a project focused on the design and implementation of an AI system, along with an oral exam on the theoretical aspects covered in the course.

Other information

- - -

2030 agenda goals for sustainable development

The course mainly aligns with the following indicators from the 2030 Sustainability Agenda:
Quality Education.
Gender Equality.
Decent Work and Economic Growth.