Statistics and Machine Learning Toolbox

Analisi e modellazione di dati utilizzando la statistica e le tecniche di machine learning

 

Statistics and Machine Learning Toolbox™ offre funzioni e applicazioni per descrivere, analizzare e modellare i dati. È possibile utilizzare la statistica descrittiva, le visualizzazioni e il clustering per l’analisi esplorativa dei dati, eseguire il fitting delle distribuzioni di probabilità ai dati, generare numeri casuali per le simulazioni Monte Carlo ed eseguire test di ipotesi. Gli algoritmi di classificazione e regressione consentono di effettuare deduzioni a partire dai dati e di costruire modelli predittivi sia in modo interattivo, utilizzando le applicazioni Regression Learner e Classification Learner, sia in modo programmatico, utilizzando AutoML.

Per l’estrazione delle feature e l’analisi dei dati multidimensionali, il toolbox offre tecniche quali l’analisi dei componenti principali (PCA), la regolarizzazione, la riduzione della dimensionalità e altri metodi di selezione delle feature che consentono di identificare le variabili con il miglior potere predittivo.

Il toolbox fornisce algoritmi di machine learning con supervisione, semi-supervisione e senza supervisione, tra cui support vector machine (SVM), alberi decisionali con boosting, k-means e altri metodi di clustering. È possibile applicare tecniche di interpretabilità come i grafici di dipendenza parziale e le spiegazioni LIME e generare automaticamente codice C/C++ per la distribuzione embedded. Molti algoritmi del toolbox sono utilizzabili su set di dati troppo grandi per essere archiviati in memoria.

Inizia ora:

Analisi esplorativa dei dati

Esplora i dati tramite rappresentazione statistica con grafici interattivi e statistiche descrittive. Individua i pattern e le feature con il clustering.

Visualizzazioni

Esplora visivamente i dati con grafici di probabilità, grafici a scatola, istogrammi, grafici quantile-quantile e grafici avanzati per l’analisi multivariata, come i dendrogrammi, i biplot e i grafici di Andrews.

Utilizzo di un grafico a dispersione multidimensionale per esplorare le relazioni tra le variabili.

Statistica descrittiva

Comprendi e descrivi quantità di dati potenzialmente grandi in modo rapido attraverso alcuni numeri altamente significativi.

Esplorazione dei dati tramite le varianze e le medie raccolte.

Applicazione di DBSCAN a due gruppi concentrici.

Estrazione di feature e riduzione della dimensionalità

Trasforma i dati non elaborati in feature più adatte al machine learning. Esplora e crea nuove feature in modo iterativo, poi seleziona quelle che ottimizzano le prestazioni.

Estrazione di feature

Estrai le feature dai dati usando tecniche di apprendimento senza supervisione come il filtraggio sparso e l’ICA di ricostruzione. Inoltre, è possibile utilizzare tecniche specializzate per estrarre feature da immagini, segnali, testo e dati numerici.

Estrazione delle feature dai segnali trasmessi da dispositivi mobili. 

Selezione delle feature

Individua automaticamente il sottogruppo di feature con il miglior potere predittivo nella modellazione dei dati. I metodi di selezione delle feature comprendono la regressione graduale, la selezione sequenziale delle feature, la regolarizzazione e i metodi di ensemble.

La NCA aiuta a selezionare le feature che conservano gran parte della precisione del modello.

Trasformazione di feature e riduzione della dimensionalità

Riduci la dimensionalità trasformando le feature esistenti (non categoriche) in nuove variabili predittive in cui è possibile eliminare le feature meno descrittive. I metodi di trasformazione delle feature comprendono la PCA, l’analisi fattoriale e la fattorizzazione di matrice non negativa.

La PCA è in grado di progettare vettori di grandi dimensioni su un sistema di coordinate ortogonali di dimensioni inferiori, preservando la maggior parte delle informazioni.

Machine learning

Costruisci modelli di regressione e classificazione predittiva con le app interattive o con il machine learning automatizzato (AutoML). Seleziona automaticamente le feature, identifica il modello migliore e regola gli iperparametri.

Addestramento, convalida e affinamento dei modelli predittivi

Confronta i vari algoritmi di machine learning, seleziona le feature, regola gli iperparametri e valuta le prestazioni degli algoritmi di regressione e classificazione più diffusi. Costruisci e ottimizza automaticamente modelli predittivi con app interattive e migliora in modo incrementale i modelli con i dati in streaming.

Interpretabilità dei modelli

Migliora l’interpretabilità dei modelli di machine learning a “scatola nera” applicando metodi di interpretabilità prestabiliti, tra cui grafici di dipendenza parziale, ICE (Individual Conditional Expectation) e LIME (Local Interpretable Model-Agnostic Explanation).

LIME costruisce approssimazioni semplici di modelli complessi in un’area locale.

Machine learning automatizzato (AutoML)

Migliora le prestazioni dei modelli regolando automaticamente gli iperparametri, selezionando le feature e i modelli e risolvendo gli squilibri di set di dati con le matrici di costo.

Ottimizzazione efficace dei parametri con l’ottimizzazione bayesiana.

Regressione e ANOVA

Modella una variabile di risposta continua in funzione di uno o più predittori utilizzando la regressione lineare e non lineare, i modelli a effetti misti, i modelli lineari generalizzati e la regressione non parametrica. Assegna la varianza a fonti diverse con ANOVA.

Regressione lineare e non lineare

Modella il comportamento di sistemi complessi con più predittori o variabili di risposta scegliendo tra vari algoritmi di regressione lineare e non lineare. Esegui il fitting di modelli multilivello o gerarchici, lineari, non lineari e lineari generalizzati a effetti misti con effetti casuali nidificati e/o incrociati, per procedere ad analisi longitudinali o di tipo panel, a misurazioni ripetute e alla modellazione della crescita.

Esecuzione del fitting dei modelli di regressione in modo interattivo con l’app Regression Learner.

Regressione non parametrica

Genera un fitting accurato senza specificare un modello che descriva la relazione tra predittori e risposta, usando le SVM, le Random Forest, i processi gaussiani e i kernel gaussiani.

Rilevamento degli outlier utilizzando la regressione quantile.

Analisi di varianza (ANOVA)

Assegna la varianza campione a diverse sorgenti e determina se la variazione appare all’interno o tra diversi gruppi di popolazione. Usa l’ANOVA a una via, a due vie, a più vie, multivariata e non parametrica, oltre all’analisi di covarianza (ANOCOVA) e all’analisi della varianza a misure ripetute (RANOVA).

Test di gruppi con ANOVA a più vie.

Distribuzioni di probabilità e test di ipotesi

Adatta le distribuzioni ai dati. Analizza se le differenze da campione a campione sono significative o coerenti con la variazione dei dati casuali. Genera numeri casuali da varie distribuzioni.

Distribuzioni di probabilità

Esegui il fitting di distribuzioni continue e discrete, utilizza grafici statistici per valutare l’adeguatezza del fitting e calcola le funzioni di densità di probabilità e le funzioni di distribuzione cumulativa per più di 40 distribuzioni diverse.

Esecuzione del fitting delle distribuzioni in modo interattivo con l’app Distribution Fitter.

Generazione di numeri casuali

Genera sequenze di numeri pseudo-casuali e quasi-casuali da distribuzioni di probabilità sottoposte a fitting o costruite.

Generazione di numeri casuali in modo interattivo.

Test di ipotesi

Esegui test T, test di distribuzione (chi-quadrato, Jarque-Bera, Lilliefors e Kolmogorov-Smirnov) e test non parametrici per campioni singoli, accoppiati o indipendenti. Testa l’autocorrezione e la casualità, quindi confronta le distribuzioni (Kolmogorov-Smirnov a due campioni).

Regione di rifiuto in un test T unidirezionale.

Statistica industriale

Analizza statisticamente effetti e trend di dati. Implementa tecniche di statistica industriale, quali la progettazione personalizzata di esperimenti e il controllo statistico dei processi.

Progettazione di esperimenti (DOE)

Definisci, analizza e visualizza una DOE personalizzata. Crea e testa piani pratici su come manipolare i dati in ingresso in tandem per generare informazioni circa i loro effetti sui dati in uscita.

Applicazione di una progettazione Box-Behnken per generare superfici di risposta di ordine superiore.

Controllo statistico di processo (SPC)

Monitora e migliora prodotti o processi valutando la variabilità del processo. Crea grafici di controllo, stima la funzionalità del processo ed esegui studi di ripetibilità e riproducibilità.

Monitoraggio dei processi di produzione mediante i grafici di controllo.

Analisi di affidabilità e sopravvivenza

Visualizza e analizza i dati relativi ai guasti con o senza censura eseguendo la regressione di Cox dei rischi proporzionali e adatta le distribuzioni. Calcola le funzioni di distribuzione cumulativa, di sopravvivenza e di rischio empirico, oltre alle stime kernel di densità.

Dati di guasto come esempio di valori “censurati”.

Big data, parallelizzazione e Cloud computing

Applica tecniche statistiche e di machine learning ai dati non allocabili in memoria. Accelera i calcoli statistici e l’addestramento dei modelli di machine learning su cluster e istanze Cloud.

Analisi dei big data con i tall array

Utilizza tall array e tabelle con svariati algoritmi di classificazione, regressione e clustering per addestrare i modelli su set di dati troppo grandi per la memoria senza dover modificare il codice.

Accelerazione dei calcoli con Parallel Computing Toolbox o MATLAB Parallel Server.

Cloud e distributed computing

Usa le istanze Cloud per accelerare i calcoli statistici e di machine learning. Esegui il workflow completo di machine learning in MATLAB Online™.

Esecuzione di calcoli sulle istanze Cloud di Amazon o Azure.

Distribuzione, generazione di codice e integrazione con Simulink

Distribuisci le operazioni di statistica e machine learning su sistemi embedded, accelera i calcoli computazionalmente onerosi con il codice C e integra sistemi enterprise e modelli Simulink.

Generazione di codice

Genera codice C o C++ leggibile e portabile per l’inferenza di algoritmi di classificazione e regressione, statistiche descrittive e distribuzioni di probabilità con MATLAB Coder™. Genera codice predittivo C/C++ a precisione ridotta utilizzando Fixed Point Designer™ e aggiorna i parametri dei modelli distribuiti senza dover rigenerare il codice predittivo.

Due percorsi per la distribuzione: generazione di codice C o compilazione di codice MATLAB.

Integrazione con Simulink

Integra modelli di machine learning con modelli Simulink per la distribuzione a hardware embedded o per la simulazione, la verifica e la convalida di sistemi.

Integrazione di applicazioni e sistemi enterprise

Distribuisci modelli statistici e di machine learning come applicazioni standalone, di tipo MapReduce e Spark™, come app web, o add-in per Microsoft® Excel® con MATLAB Compiler™. Costruisci librerie condivise C/C++, assembly Microsoft .NET, classi Java® e pacchetti Python® con MATLAB Compiler SDK™.

MATLAB Compiler utilizzato per integrare un modello per la classificazione della qualità dell’aria.

Ultime Novità

AutoML

Selezione automatica del modello migliore e degli iperparametri associati per la regressione (fitrauto)

Interpretabilità

Possibilità di ottenere spiegazioni LIME (Local Interpretable Model-Agnostic Explanations)

Blocchi per la previsione di SVM

Simulazione e generazione di codice per modelli SVM in Simulink

Apprendimento incrementale

Addestramento incrementale di modelli di regressione lineare e classificazione binaria

Apprendimento con semi-supervisione

Estrapolazione di etichette di classi parziali sull’intero set di dati usando grafici e modelli auto-addestrati (fitsemigraph, fitsemiself)

Generazione di codice

Generazione di codice C/C++ a precisione singola per le previsioni

Prestazioni

Accelerazione dell’addestramento di modelli SVM

Consulta le note della release per ulteriori informazioni su queste caratteristiche e altre funzioni corrispondenti.

Machine Learning Onramp

Un’introduzione interattiva ai metodi pratici di machine learning per i problemi di classificazione.