Data mining 2 (2020)

data-mining2

In questo secondo progetto di data mining si è lavorato su un dataset con attributi relativi a delle condizioni come umidità, temperatura, luce all’interno di una stanza con l’obiettivo di predire se la stanza sia occupato o meno.

Classificatori e dataset sbilanciato

Si sono applicati algoritmi di classificazione già visti a Data mining 1, come KNN, Decision Tree, ma anche di nuovi come Logistic Regression e Naive Bayes.

Questi algoritmi sono stati applicati a un dataset bilanciato ma anche a un dataset sbilanciato nelle classi da predire, per verificare la differenza nei risultati ottenuti. Sono state applicate poi tecniche di resampling del dataset, per poterlo rendere di nuovo bilanciato.

Si è applicato la PCA, una tecnica di riduzione della dimensionalità del dataset, applicando successivamente sempre gli algoritmi sopra citati, confrontando i risultati con il caso base.

Classificatori avanzati

In questa seconda fase si sono applicati classificatori più avanzati come SVM (Support Vector Machine), Multilayer Perceptron, ma anche Deep Neural Network (feedforward, CNN, recurrent).

Si è utilizzato ensemble classifier, come Random Forest, AdaBoost, BAGGING valutando il miglioramento di performance rispetto a classificatori più semplici.

Time series analysis, forecasting e classificazione

In questa terza fase, sono estratte dal dataset delle time series (gli attributi citati all’inizio sono stati misurati nel tempo). Si è quindi eseguito algoritmi per le Motif discovery (pattern ripetuti all’interno di una time series) e Shapelet discovery (sottosequenze che sono le più rappresentative della classe a cui appartiene la time series).

Si è applicato algoritmi di clustering per time series, algoritmi di classificazione per time series univariate e multivariate (ad ogni istante si prende in considerazione più attributi, quindi ogni valore è n-dimensionale).

Sequential Pattern Mining

A partire dalle time series sopra estratte, si è applicato algoritmi di discretizzazione come SAX, per poter trattare le time series come sequenze e eseguire algoritmi di scoperta di pattern significativi ripetuti.

Outlier detection

In questa quinta parte si è applicato algoritmi di outlier detection, come LOF (Local Outlier Factor), ABOD (Angle Based Outlier Detection).

Explainability dei modelli

In questa ultima task si è utilizzato algoritmi che aiutano a risolvere il cosiddetto problema della black box, ovvero quei modelli efficaci ma difficilmente interpretabili: l’esempio per eccellenza sono le reti neurali, ma anche un random forest rispetto a un decision tree, o SVM.

Si è deciso dunque di applicare un Inspection Model Explainer a modelli precedentemente utilizzati come SVM e Multilayer Perceptron.

Download del documento

Per una maggiore comprensione degli algoritmi utilizzati, delle prove fatte, potete scaricare il documento relativo qui sotto.

Follow me!

Lascia un commento