mail unicampaniaunicampania webcerca

    Rosanna CAMPAGNA

    Insegnamento di NUMERICAL METHODS FOR DATA ANALYSIS

    Corso di laurea in DATA ANALYTICS

    SSD: MAT/08

    CFU: 6,00

    ORE PER UNITÀ DIDATTICA: 56,00

    Periodo di Erogazione: Secondo Semestre

    Italiano

    Lingua di insegnamento

    Inglese

    Contenuti

    Progettazione ed implementazione di metodi numerici di base per il data mining:
    - Analisi delle componenti principali (PCA);
    - Algoritmi di clustering (k-means e k-medoids);
    - Analisi discriminante lineare;
    - Fattorizzazione a matrice non negativa.

    Algoritmi di classificazione
    - Classificatori di distanza; classificatore k-nearest neighbor; Classificatore PCA.
    - Classificatore LDA.
    - Classificatore di Learning vector quantization (LVQ).

    Applicazione dei metodi precedenti a problemi di estrazione del testo, estrazione di immagini e page ranking.

    Testi di riferimento

    "Data Mining: An Algorithmic Approach to Clustering and Classification", D. Calvetti and E. Somersalo (draft version);

    Trevor Hastie, Robert Tibshirani, Jerome Friedman, “The Elements of Statistical Learning, Data Mining, Inference, and Prediction”, Springer, II ed. (2008)

    Xin-She Yang, “Introduction to Algorithms for Data Mining and Machine Learning”, Elsevier (2019)

    Obiettivi formativi

    Conoscenze: gli studenti devono acquisire conoscenze di base su metodi numerici e algoritmi per l'analisi dei dati.

    Applicazioni delle conoscenze e competenze: gli studenti dovrebbero essere in grado di selezionare e applicare correttamente i metodi numerici di base e gli strumenti software per l'analisi dei dati.

    Abilità comunicative: gli studenti dovrebbero essere in grado di illustrare i metodi e gli strumenti appresi durante il corso e di comunicare i risultati ottenuti, utilizzando un linguaggio tecnico e scientifico adeguato.

    Prerequisiti

    Non sono previste propedeuticità, gli studenti non sono obbligati a superare gli esami di altri corsi prima di frequentare questo, ma si consiglia la conoscenza dei contenuti del corso di Algebra lineare e di Analisi.

    Metodologie didattiche

    Il corso prevede lezioni frontali (32 ore, 4 CFU - crediti ECTS) e sessioni di laboratorio (24 ore, 2 CFU - crediti ECTS).

    La frequenza ai corsi non è obbligatoria, ma è fortemente consigliata.

    Metodi di valutazione

    Gli studenti vengono valutati attraverso una prova orale, volta a verificare il raggiungimento degli obiettivi del corso. Durante l'esame gli studenti devono presentare lo sviluppo di codici che implementino i metodi studiati.

    Per ciascuno degli algoritmi implementati, è necessaria l'esecuzione su una serie di problemi test, che evidenzino gli aspetti implementativi, le prestazioni dei codici implementati e l'analisi dei risultati ottenuti.

    A tale scopo, gli studenti possono utilizzare i programmi sviluppati da loro stessi o resi disponibili dal docente durante il corso.
    L'uso di altro materiale didattico non è consentito.

    I voti sono espressi in trentesimi. Il punteggio minimo richiesto è 18/30. Il voto massimo è 30/30 con lode.

    Per essere ammessi alla valutazione, gli studenti devono presentare un documento d'identità valido.

    Altre informazioni

    Le attività di laboratorio sono parte integrante del programma.

    Programma del corso

    1. Argomenti trattati

    1.1 Preliminari

    Data Mining e approccio algoritmico.

    Elementi di base di algebra lineare: vettori, matrici, norme, sottospazi, rango e spazio degli annullatori.

    Proiezione su un vettore; proiezione su base ortonormale; proiezione su base generica; matrici ortogonali; decomposizione ai valori singolari.

    1.2 Algoritmi di Clustering

    • Principal components analysis (PCA); PCA e visualizzazione dei dati.

    • Algoritmo di k-means. Esempi e punti di debolezza.

    • Algoritmo di k-medoids.

    • Confronti tra k-means e k-medoids; esempi e applicazioni.

    • Linear Discriminant Analysis (LDA): matrici di sparsità e diffusione; definizione del problema; ottimizzare la diffusione tra i cluster; regolarizzazione numerica; stabilità numerica; esempi.

    • Fattorizzazione a matrice non negativa (NMF): metodo numerico e algoritmo di minimi quadrati alternati (ALS).

    1.3 Algoritmi di Classificazione

    • Distance classifiers; k-nearest neighbor classifier; PCA classifier.

    • LDA classifier.

    • Learning Vector Quantization classifier (LVQ).

    1.4 Estrazione di testo (Text mining)

    Nozioni di base su dati di tipo testuale. Stop word pruning and stemming. Query matching. Latent semantic indexing. Non-negative matrix factorization per il Text mining.

    2. Attività di laboratorio

    Tutte le attività verranno eseguite utilizzando l'ambiente software MATLAB.

    - Introduzione a Matlab, comandi di modifica, operazioni su vettori e matrici, definizione di funzioni implicite, uso di help, save, load, script e funzioni, costrutti, operatori logici, risoluzione di sistemi lineari.

    - Sviluppo del codice Matlab dei seguenti algoritmi:

    • Analisi delle componenti principali.

    • algoritmo k-means.

    • algoritmo k-medoids.

    • Algoritmo Least Square alternato.

    • Analisi discriminante lineare.

    English

    Teaching language

    English

    Contents

    Design and implementation of basic numerical methods for Data mining:
    - Principal Component Analysis;
    - Clustering algorithms (k-means and k-medoids); 

    - Linear Discriminant Analysis;
    - Non-negative Matrix Factorization.

    Classification algorithms
    - Distance classifiers; k-nearest neighbor classifier; PCA classifier.
    - LDA classifier.
    - Learning Vector Quantization classifier (LVQ).

    Application of the previous methods to text mining, image mining, and page ranking problems.

    Textbook and course materials

    "Data Mining: An Algorithmic Approach to Clustering and Classification", by D. Calvetti and E. Somersalo (draft version);

    Trevor Hastie, Robert Tibshirani, Jerome Friedman, “The Elements of Statistical Learning, Data Mining, Inference, and Prediction”, Springer, II ed. (2008)

    Xin-She Yang, “Introduction to Algorithms for Data Mining and Machine Learning”, Elsevier (2019)

    Course objectives

    Knowledge and understanding: students are expected to acquire basic knowledge of numerical methods and algorithms for data analysis.

    Applying knowledge and understanding: students should be able to select and properly apply basic numerical methods and software tools for data analysis.

    Communication skills: students should be able to illustrate the methods and tools learned during the course and to communicate the results obtained with them, using a suitable technical and scientific language.

    Prerequisites

    Students are not required to pass the exams of other courses before taking this one, but the knowledge of the contents of the Linear Algebra course and of the basics of the Analysis course is recommended.

    Teaching methods

    The course consists of lectures (32 hours, 4 CFU - ECTS credits) and laboratory sessions (24 hours, 2 CFU - ECTS credits).

    Course attendance is not mandatory, but it is strongly recommended.

    Evaluation methods

    Students are evaluated through an oral assessment, aimed at verifying if they matched the objectives of the course. During the assessment, students are also asked to provide a computer-based illustration of methods and tools studied in the course, through the execution is required on a set of test problems, which highlight the implementation aspects and the performance of the implemented codes, and the analysis of the results obtained.

    To this aim, students can use computer programs developed by themselves or made available by the teacher during the course.
    The use of other course material is not allowed.

    Marks are expressed in the thirtieths. The minimum passing mark is 18/30. Outstanding performance is marked 30/30 cum laude.

    In order to be admitted to the evaluation, students must show a valid id card.

    Other information

    The laboratory activities are an integral part of the program.

    Course Syllabus

    1. Topics

    1.1 Preliminaries

    Data Mining and the Algorithmic approach.

    Preliminaries of linear algebra: vectors, matrices and norms, subspaces, range and null space.

    Projection onto a vector; projection onto orthonormal basis; projection onto a generic basis; orthogonal matrices; singular values decomposition.

    1.2 Clustering algorithms

    • Principal components analysis (PCA); PCA and Data Visualization.

    • k-means algorithm. Examples and points of weakness.

    • K-medoids algorithm.

    • Comparisons between k-means and k-medoids; examples and applications.

    • Linear Discriminant Analysis (LDA): scatter matrices and spread; problem definition; optimizing the spread between clusters; numerical regularization; numerical stability; examples.

    • Non-negative matrix factorization (NMF): numerical method and Alternating Least Square algorithm.

    1.3 Classification algorithms

    • Distance classifiers; k-nearest neighbor classifier; PCA classifier.

    • LDA classifier.

    • Learning Vector Quantization classifier (LVQ).

    1.4 Text mining

    Basics of text data. Stop- word pruning and stemming. Query matching. Latent semantic indexing. Non-negative matrix factorization for Text mining.

    2. Laboratory activities

    All the activities will be performed using the MATLAB software environment.

    - Introduction to Matlab, editing commands, vector and matrix operations, the definition of implicit functions, use of help, save, load, scripts and functions, constructs, logical operators, resolution of linear systems.

    - Matlab code development of the following algorithms:

    • Principal component analysis.

    • k-means algorithm.

    • k-medoids algorithm.

    • Alternating Least Square algorithm.

    • Linear Discriminant analysis.

    facebook logoinstagram buttonyoutube logotype