Skip to main content
If you continue browsing this website, you agree to our policies:
  • Condizioni di utilizzo e trattamento dei dati
Continue
x
e-Learning - UNIMIB
  • Home
  • My Media
  • More
Listen to this page using ReadSpeaker
English ‎(en)‎
English ‎(en)‎ Italiano ‎(it)‎
 Log in
e-Learning - UNIMIB
Home My Media
Percorso della pagina
  1. Economics
  2. Master Degree
  3. Economia e Finanza [F1602M - F1601M]
  4. Courses
  5. A.A. 2026-2027
  6. 1st year
  1. Machine Learning for Finance
  2. Summary
Insegnamento Course full name
Machine Learning for Finance
Course ID number
2627-1-F1602M003
Course summary SYLLABUS

Course Syllabus

  • Italiano ‎(it)‎
  • English ‎(en)‎
Export

Obiettivi formativi

⚬ Conoscenza e capacità di comprensione: Il corso si propone di fornire allo studente le competenze per un uso di Python e di fornire i concetti e gli strumenti fondamentali, basati su metodi computazionali, per rappresentare l'apprendimento, la conoscenza e il ragionamento in condizioni di incertezza.
⚬ Conoscenza e capacità di comprensione applicate: Al termine del corso, lo studente sarà in grado di progettare e sviluppare strumenti software basati su tecniche di apprendimento automatico (machine learning) per risolvere semplici problemi di analisi di dati e supporto alle decisioni in presenza di informazione incerta o incompleta nel suo ambito di specializzazione.
⚬ Autonomia di giudizio: Lo studente imparerà a scegliere in modo autonomo gli strumenti e le tecniche più adatte tra quelle apprese per risolvere problemi pratici di moderata complessità legati alla manipolazione e all'analisi di dati in ambito finanziario.
⚬ Abilità comunicative: Lo studente svilupperà efficaci abilità comunicative nel contesto della programmazione e machine learning. Sarà in grado di esprimere concetti tecnici relativi a codice, algoritmi e reti neurali artificiali in modo chiaro e comprensibile, sia oralmente che per iscritto.
⚬ Capacità di apprendere: Lo studente svilupperà le competenze fondamentali per un apprendimento autonomo e continuo nel campo dell'analisi dei dati con tecniche di machine learning. Sarà capace di acquisire rapidamente nuove conoscenze e abilità, di utilizzare risorse esterne per approfondire temi specifici di machine learning, e di risolvere in modo indipendente problemi complessi attraverso l'applicazione dei principi appresi.

Contenuti sintetici

Il corso fornirà una approfondita competenza della programmazione in Python e una presentazione delle reti neurali come strumento di supporto alla analisi di dati finanziari.

Programma esteso

Introduzione all'ambiente PyCharm e Programmazione in Python:
⚬ variabili e tipi di dati: bool, int, float, str, tuple, list, dict.
⚬ espressioni aritmetiche, relazionali, e logiche.
⚬ funzioni predefinite di base.
⚬ istruzioni elementari: assegnamento, return, break, continue, import.
⚬ istruzioni composte: if, for, while, with
⚬ istruzioni di lettura e scrittura: input, print, file di testo
⚬ funzioni e passaggio di parametri.
Libreria NumPy:
⚬ Gestione di vettori e matrici con la libreria NumPy
Moduli Python (Pandas):
⚬ DataFrame (lettura dati): read_excel(...) e read_csv(...)
⚬ DataFrame (righe e colonne): .shape, .index, .columns; .isin(...) e .intersection(...)
⚬ DataFrame (operazioni scalari aritmetiche): .add(...) (+), .sub(...) (-), .mul(...) (), .div(...) (/), .floordiv(...) (//), .mod(...) (%), .pow(...) ( *)
⚬ DataFrame (operazioni scalari relazionali): .lt(...) (=), .eq(...) (==), .ne(...) (!=)
⚬ DataFrame (valori di sintesi): .sum(...), .min(...), .max(...), .mean(...), .count(...)
⚬ DataFrame (aggregazione di righe con .groupby): argomenti by e as_index; singoli e multipli valori di sintesi (.agg)
⚬ DataFrame (trasposizione): .transpose(...) oppure .T
⚬ Serie: .name, .index, operazioni scalari e valori di sintesi (come i DataFrame)
Reti Neurali (PyTorch e Teoria):
⚬ Componenti PyTorch: torch.tensor, torch.tensor.backward, torch.optim.Optimizer.step, torch.optim.Optimizer.zero_grad, torch.nn.Linear, torch.nn.ReLU, torch.nn.Dropout, torch.nn.BatchNorm1d
⚬ Il percettrone e algoritmo di apprendimento del percettrone
⚬ Concetto di discesa del gradiente
⚬ Il percettrone multistrato e algoritmo di retropropagazione dell'errore
⚬ Reti neurali profonde (Deep Learning): Introduzione

Prerequisiti

Le conoscenze di tipo matematico e logico acquisite nella scuola superiore, Algebra lineare, e concetti base sugli algoritmi.

Metodi didattici

Lezioni frontali. Le lezioni si svolgono nei laboratori didattici per consentire agli studenti di applicare immediatamente i concetti spiegati.

Modalità di verifica dell'apprendimento

La verifica dell'apprendimento comprende una prova scritta. La prova si svolgerà nei laboratori didattici per valutare le abilità dello studente nell'utilizzo di Python e le sue competenze nella risoluzione di semplici problemi.

Testi di riferimento

Paul J. Deitel, Harvey M. Deitel, Introduzione a Python. Per l'informatica e la data science. Pearson, 2021 ISBN: 978-8891915924

Periodo di erogazione dell'insegnamento

Primo semestre

Lingua di insegnamento

Italiano

Sustainable Development Goals

ISTRUZIONE DI QUALITÁ
Export

Learning objectives

⚬ Knowledge and understanding: The course aims to provide students with the skills to use Python and the fundamental concepts and tools, based on computational methods, to represent learning, knowledge, and reasoning under conditions of uncertainty.
⚬ Applied knowledge and understanding: At the end of the course, students will be able to design and develop software tools based on machine learning techniques to solve simple data analysis and decision-making problems in the presence of uncertain or incomplete information within their area of specialization.
⚬ Making judgments: Students will learn to independently choose the most suitable tools and techniques among those learned to solve practical problems of moderate complexity related to data manipulation and analysis in the financial field.
⚬ Communication skills: Students will develop effective communication skills in the context of programming and machine learning. They will be able to express technical concepts related to code, algorithms, and artificial neural networks clearly and comprehensibly, both orally and in writing.
⚬ Learning skills: Students will develop the fundamental skills for independent and continuous learning in the field of data analysis with machine learning techniques. They will be able to quickly acquire new knowledge and skills, use external resources to deepen specific machine learning topics, and independently solve complex problems by applying the learned principles.

Contents

The course will provide an in-depth proficiency in Python programming and an introduction to neural networks as a tool to support the analysis of financial data.

Detailed program

Introduction to the PyCharm environment and Python Programming:
⚬ variables and data types: bool, int, float, str, tuple, list, dict.
⚬ arithmetic, relational, and logical expressions.
⚬ basic built-in functions.
⚬ elementary statements: assignment, return, break, continue, import.
⚬ compound statements: if, for, while, with
⚬ read and write statements: input, print, text files
⚬ functions and parameter passing.
NumPy Library:
⚬ Vector and matrix management with the NumPy library
Python Modules (Pandas):
⚬ DataFrame (reading data): read_excel(...) and read_csv(...)
⚬ DataFrame (rows and columns): .shape, .index, .columns; .isin(...) and .intersection(...)
⚬ DataFrame (scalar arithmetic operations): .add(...) (+), .sub(...) (-), .mul(...) (), .div(...) (/), .floordiv(...) (//), .mod(...) (%), .pow(...) ( *)
⚬ DataFrame (scalar relational operations): .lt(...) (=), .eq(...) (==), .ne(...) (!=)
⚬ DataFrame (summary values): .sum(...), .min(...), .max(...), .mean(...), .count(...)
⚬ DataFrame (row aggregation with .groupby): arguments by and as_index; single and multiple summary values (.agg)
⚬ DataFrame (transposition): .transpose(...) or .T
⚬ Series: .name, .index, scalar operations and summary values (same as DataFrame)
Neural Networks (PyTorch and Theory):
⚬ PyTorch Components: torch.tensor, torch.tensor.backward, torch.optim.Optimizer.step, torch.optim.Optimizer.zero_grad, torch.nn.Linear, torch.nn.ReLU, torch.nn.Dropout, torch.nn.BatchNorm1d
⚬ The perceptron and perceptron learning algorithm
⚬ Concept of gradient descent
⚬ The multilayer perceptron and backpropagation algorithm
⚬ Deep Neural Networks (Deep Learning): Introduction

Prerequisites

Mathematical and logical knowledge acquired in high school, linear algebra, and basic concepts of algorithms.

Teaching methods

Lectures. Classes are held in the teaching laboratories to allow students to immediately apply the explained concepts.

Assessment methods

The learning assessment includes a written exam. The exam will take place in the teaching laboratories to evaluate the student's ability to use Python and their skills in solving simple problems.

Textbooks and Reading Materials

Paul J. Deitel, Harvey M. Deitel, Intro to Python for Computer Science and Data Science. Pearson, 2020

Semester

First semester

Teaching language

Italian

Sustainable Development Goals

QUALITY EDUCATION
Enter

Key information

Field of research
INFO-01/A
ECTS
8
Term
First semester
Activity type
Mandatory
Course Length (Hours)
56
Degree Course Type
2-year Master Degree
Language
Italian

Staff

    Teacher

  • AA
    Alessandro Avellone

Students' opinion

View previous A.Y. opinion

Bibliography

Find the books for this course in the Library

Enrolment methods

Manual enrolments
Self enrolment (Student)

Sustainable Development Goals

QUALITY EDUCATION - Ensure inclusive and equitable quality education and promote lifelong learning opportunities for all
QUALITY EDUCATION

You are not logged in. (Log in)
Policies
Get the mobile app
Powered by Moodle
© 2026 Università degli Studi di Milano-Bicocca
  • Privacy policy
  • Accessibility
  • Statistics