Vai al contenuto principale
Oggetto:

CHEMIOMETRIA CON PYTHON

Oggetto:

CHEMOMETRICS WITH PYTHON

Oggetto:

Anno accademico 2023/2024

Codice attività didattica
CHI0192
Docente
Eugenio Alladio (Titolare)
Corso di studio
Corso di laurea magistrale in Chimica Clinica Forense e dello Sport D.M. 270
Anno
1° anno, 2° anno
Periodo
Secondo semestre
Tipologia
A scelta dello studente
Crediti/Valenza
4
SSD attività didattica
CHIM/01 - chimica analitica
Erogazione
Tradizionale
Lingua
Italiano
Frequenza
Facoltativa
Tipologia esame
Scritto ed orale
Prerequisiti

- Conoscenza di base della chimica analitica, in particolare della chimica analitica strumentale.
- Conoscenza di base della matematica, in particolare dell'algebra, del calcolo e della statistica.
- Familiarità con i concetti base dell'informatica e di Microsoft Excel.
- Conoscenza base dell'inglese scientifico.

- A fundamental understanding of analytical chemistry, specifically in the area of instrumental analytical chemistry.
- Basic knowledge of mathematics, especially algebra, calculus, and statistics.
- Basic familiarity with computer science concepts and the ability to use Microsoft Excel.
- A basic grasp of scientific English.
Oggetto:

Sommario insegnamento

Oggetto:

Obiettivi formativi

L'insegnamento si propone di insegnare i concetti base della programmazione Python e le sue applicazioni e strumenti nel campo della chemiometria e del machine learning. In particolare, si apprenderanno i principali metodi e algoritmi di import e gestione dei dati, costruzione di grafici, test di ipotesi, disegno sperimentale, analisi esplorativa dei dati, apprendimento non supervisionato, apprendimento supervisionato (classificazione, regressione) e data fusion. Parallelamente alle lezioni teoriche, verranno svolte esercitazioni pratiche con Python di programmazione e chemiometria su esempi e casi studio reali.

The course aims to teach students concepts of Python programming and its applications and tools in the field of chemometrics and machine learning. In particular, students will learn the main methods and algorithms of data management, hypothesis testing, experimental design, exploratory data analysis, unsupervised modelling, supervised modelling (classification, regression), and data fusion. In parallel with the theoretical lectures, students will receive guidance on programming chemometrics for real case studies using Python-based tools in practical exercises.

Oggetto:

Risultati dell'apprendimento attesi

Conoscenza e capacità di comprensione:

Gli studenti/studentesse dovranno:

  • acquisire familiarità con la terminologia e il gergo di Python e della chemiometria;
  • apprendere i concetti base di statistica (univariata, bivariata e multivariata);
  • acquisire conoscenza degli strumenti di base per grafici e grafici;
  • acquisire conoscenza delle strategie di pre-processamento dei dati;
  • acquisire conoscenza di vari approcci chemiometrici per l'apprendimento non supervisionato (principal component analysis, clustering, self-organizing maps, t-SNE, UMAP, MCR-ALS);
  • acquisire conoscenza di vari approcci chemiometrici per l'apprendimento supervisionato (multiple linear regression, principal component regression, partial least squares, distance-based models, logistic regression, Naïve Bayes, discriminant analysis, decision trees, random forest, XGBoost, neural networks, support vector machines);
  • apprendere le tecniche e le strategie del disegno sperimentale e per la validazione dei metodi analitici;
  • progettare esperimenti e analizzare dati relativi ad applicazioni e problemi in chimica clinica, forense e dello sport (analisi della struttura dei dati, selezione delle variabili, selezione degli algoritmi da utilizzare, validazione dei modelli costruiti);
  • acquisire competenze sui principali strumenti chemiometrici disponibili in Python.

Capacità di applicare conoscenza e comprensione:

Oltre alla conoscenza dei singoli argomenti, è richiesta la capacità di collegare aspetti apparentemente differenti per identificare somiglianze/differenze nei dati oggetto di studio. L'acquisizione delle suddette competenze potenzierà la capacità di interagire con la figura professionale del data analyst.

Abilità comunicative:

Le studentesse e gli studenti dovranno dimostrare di possedere una terminologia appropriata e una comprensione e conoscenza di base della programmazione Python per la chemiometria.

Knowledge and understanding:

  • Familiarity with the main terms and jargon of Python and chemometrics;
  • Basic concepts of statistics (univariate, bivariate, and multivariate);
  • Knowledge of essential tools for graphs and plots;
  • Knowledge of data preprocessing strategies;
  • Knowledge of various chemometric approaches for unsupervised learning (principal component analysis, clustering, self-organizing maps, t-SNE, UMAP, MCR-ALS);
  • Knowledge of various chemometric approaches for supervised learning (multiple linear regression, principal component regression, partial least squares, distance-based models, logistic regression, Naïve Bayes, discriminant analysis, decision trees, random forest, XGBoost, neural networks, support vector machines);
  • Learn experimental design techniques and strategies for validation of analytical methods;
  • Design chemometric experiments for specific applications in clinical, forensic and sports chemistry (data structure, feature selection, algorithm selection, model validation);
  • Knowledge of the main available chemometric tools in Python.

Ability to apply knowledge and understanding

In addition to knowledge of the individual topics, connecting seemingly disparate aspects is required to identify similarities/differences in the studied data. Acquiring the above skills will enhance the ability to interact with the professional figure of the data analyst.

Communication skills 

Students must demonstrate that they have appropriate terminology and a basic understanding and knowledge of Python programming for chemometrics.

Oggetto:

Programma

  • Introduzione (l’ambiente di programmazione ed il linguaggio Python, analisi di dati e big data nel contesto della chemiometria; concetti generali: apprendimento non supervisionato, apprendimento supervisionato (classificazione, regressione) e il reinforcement learning, disegno sperimentale);
  • Fondamenti di grafica per l’analisi dati;
  • Elementi di statistica univariata, bivariata e multivariata (funzioni di distribuzione di probabilità, stima della verosimiglianza, modelli parametrici e non parametrici; test di ipotesi);
  • Caratteristiche principali dei modelli chemiometrici (selezione delle variabili; pre-processamento dei dati; selezione del modello; validazione e cross-validation; bias e varianza; overfitting e underfitting);
  • Apprendimento non supervisionato (principal component analysis, clustering, self-organizing maps, t-SNE, UMAP, MCR-ALS);
  • Apprendimento supervisionato (multiple linear regression, principal component regression, partial least squares, distance-based models, logistic regression, Naïve Bayes, discriminant analysis, decision trees, random forest, XGBoost, neural networks, support vector machines);
  • Applicazione Python di algoritmi chemiometrici selezionati a casi di studio in chimica clinica, forense e sportiva.

  • Introduction (Python environment, data and Big Data analysis in the context of chemometrics; general concepts: unsupervised learning, supervised learning (classification, regression) and reinforcement learning, experimental design);
  • Fundamentals of graphics and plotting;
    Elements of univariate, bivariate, and multivariate statistics (probability distribution functions, maximum likelihood estimation, parametric vs. nonparametric models; hypothesis testing);
  • Characteristics of chemometric models (variable selection; preprocessing of data; model selection; validation and cross-validation; bias and variance; overfitting and underfitting);
  • Unsupervised learning (principal component analysis, clustering, self-organizing maps, t-SNE, UMAP, MCR-ALS);
  • Supervised learning (multiple linear regression, principal component regression, partial least squares, distance-based models, logistic regression, Naïve Bayes, discriminant analysis, decision trees, random forest, XGBoost, neural networks, support vector machines);
  • Python application of selected chemometric algorithms to case studies in clinical, forensic, and sports chemistry.
Oggetto:

Modalità di insegnamento

L'insegnamento prevede 32 ore di lezioni frontali e teorico-pratiche: simultaneamente alle lezioni teoriche, verranno svolte esercitazioni pratiche con Python di programmazione e chemiometria su esempi e casi studio reali. 

Le lezioni saranno svolte in presenza.

L'insegnamento ha una forte natura pratica, quindi tutte le studentesse e tutti gli studenti dovranno utilizzare il proprio computer durante il corso al fine di apprendere al meglio gli strumenti del linguaggio di programmazione Python.

Verranno fornite comunicazioni relative all'insegnamento e ai programmi da installare sul proprio computer.

Il materiale didattico sarà fornito e gestito tramite la piattaforma Moodle.

The course comprises 32 hours of frontal teaching systematically complemented by practical exercises. All concepts are applied using the available Python-based tools after they have been formally presented and discussed.

The course has a robust hands-on nature, so all participants will need to use their laptops for face-to-face participation, in presence.

All course participants will receive relevant communications about the course and the programs to be installed on their computers.

The educational material will be provided and managed through the Moodle platform.

Oggetto:

Modalità di verifica dell'apprendimento

L’esame consiste in:

  1. Preparazione di una relazione tecnica (utilizzando gli strumenti Python per la chemiometria discussi nel corso) su un dataset specifico, assegnato individualmente a ciascuno studente/studentessa dal docente. La relazione deve essere compilata e inviata al docente entro 2 giorni prima della data effettiva dell'esame;
  2. Esame orale in cui verrà discussa la relazione tecnica e altri argomenti generali dell'insegnamento.

The test consists of:

  1. Preparation of a technical report (using the Python tools for chemometrics discussed in the course) on a specific task assigned individually to each student by the lecturer. The report must be completed and sent to the lecturer 2 days before the actual exam date;
  2. Oral exam in which the technical report and other general topics of the course will be discussed.
Oggetto:

Attività di supporto

Gli studenti e le studentesse verranno suddivisi in gruppi da due-tre persone. Di tanto in tanto, il flusso delle lezioni viene interrotto per consentire un ripasso all'interno dei gruppi sul materiale didattico svolto, mentre il Docente passa di gruppo in gruppo per fornire chiarimenti. Idealmente, ciascun gruppo prepara e sostiene congiuntamente l'esame di profitto finale.

The students are organized into groups of two to three. From time to time, the flow of lectures is interrupted to allow for a review of the material covered within the groups, while the instructor moves from group to group to provide clarification. Ideally, each group prepares and jointly takes the final exam.

 

 

Testi consigliati e bibliografia



Oggetto:
Libro
Titolo:  
Grokking Algorithms – An illustrated guide for programmers and other curious people
Anno pubblicazione:  
2016
Editore:  
Manning Publications
Autore:  
Aditya Y. Bhargava
ISBN  
Obbligatorio:  
No


Oggetto:
Libro
Titolo:  
Hands-On Machine Learning with Scikit-Learn, Keras, and Tensorflow: Concepts, Tools, and Techniques to Build Intelligent Systems
Anno pubblicazione:  
2019
Editore:  
O'Reilly & Associates Inc.
Autore:  
Aurelien Geron
ISBN  
Obbligatorio:  
No


Registrazione
  • Chiusa
    Apertura registrazione
    13/11/2023 alle ore 00:00
    Chiusura registrazione
    11/03/2024 alle ore 00:00
    N° massimo di studenti
    25 (Raggiunto questo numero di studenti registrati non sarà più possibile registrarsi a questo insegnamento!)
    Oggetto:
    Ultimo aggiornamento: 11/01/2024 12:54
    Location: https://ccfs.campusnet.unito.it/robots.html
    Non cliccare qui!