6 Algoritmi di riduzione della dimensionalità con Python

Tweet Share Share

Ultimo aggiornamento il 17 agosto 2020

La riduzione della dimensionalità è una tecnica di apprendimento non supervisionata.

Tuttavia, può essere utilizzato come fase di pre-elaborazione della trasformazione dei dati per algoritmi di apprendimento automatico su set di dati di modellazione predittiva di classificazione e regressione con algoritmi di apprendimento supervisionati.

Esistono molti algoritmi di riduzione della dimensionalità tra cui scegliere e nessun singolo algoritmo migliore per tutti i casi. Invece, è una buona idea esplorare una gamma di algoritmi di riduzione della dimensionalità e diverse configurazioni per ciascun algoritmo.

In questo tutorial, scoprirai come adattare e valutare gli algoritmi di riduzione della dimensionalità superiore in Python.

Dopo aver completato questo tutorial, saprai:

  • La riduzione della dimensionalità cerca una rappresentazione dimensionale inferiore dei dati di input numerici che preserva le relazioni salienti nei dati.
  • Esistono molti algoritmi di riduzione della dimensionalità diversi e nessun metodo migliore per tutti i set di dati.
  • Come implementare, adattare e valutare la riduzione della dimensionalità superiore in Python con la libreria di apprendimento automatico scikit-learn.

Avvia il tuo progetto con il mio nuovo libro Data Preparation for Machine Learning, inclusi tutorial passo-passo e i file di codice sorgente Python per tutti gli esempi.

Iniziamo.

Algoritmi di riduzione della dimensionalità con Python

Algoritmi di riduzione della dimensionalità con Python
Foto di Bernard Spragg. NZ, alcuni diritti riservati.

Panoramica del tutorial

Questo tutorial è diviso in tre parti; sono:

  1. Riduzione di Dimensionalità
  2. Algoritmi di Riduzione di Dimensionalità
  3. Esempi di Riduzione di Dimensionalità
    1. Scikit-Imparare l’Installazione della Libreria
    2. Classificazione set di dati
    3. Analisi delle Componenti Principali
    4. Decomposizione a valori Singolari
    5. Analisi Discriminante Lineare
    6. Isomap Incorporamento
    7. Incorporamento localmente Lineare
    8. Modificato Localmente Lineare Incorporamento

Riduzione di Dimensionalità

la riduzione della Dimensionalità si riferisce alle tecniche per ridurre il numero di variabili di input nei dati di training.

Quando si tratta di dati ad alta dimensione, è spesso utile ridurre la dimensionalità proiettando i dati in un sottospazio dimensionale inferiore che cattura l ‘ “essenza” dei dati. Questo è chiamato riduzione della dimensionalità.

– Pagina 11, Machine Learning: A Probabilistic Perspective, 2012.

L’alta dimensionalità potrebbe significare centinaia, migliaia o persino milioni di variabili di input.

Meno dimensioni di input spesso significa corrispondentemente meno parametri o una struttura più semplice nel modello di apprendimento automatico, indicato come gradi di libertà. Un modello con troppi gradi di libertà rischia di sovraccaricare il set di dati di allenamento e potrebbe non funzionare bene sui nuovi dati.

È auspicabile avere modelli semplici che generalizzino bene e, a loro volta, dati di input con poche variabili di input. Ciò è particolarmente vero per i modelli lineari in cui il numero di input e i gradi di libertà del modello sono spesso strettamente correlati.

La riduzione della dimensionalità è una tecnica di preparazione dei dati eseguita sui dati prima della modellazione. Potrebbe essere eseguito dopo la pulizia dei dati e il ridimensionamento dei dati e prima della formazione di un modello predittivo.

reduction la riduzione della dimensionalità produce una rappresentazione più compatta e facilmente interpretabile del concetto target, focalizzando l’attenzione dell’utente sulle variabili più rilevanti.

– Pagina 289, Data Mining: Practical Machine Learning Tools and Techniques, 4th edition, 2016.

In quanto tale, qualsiasi riduzione della dimensionalità eseguita sui dati di allenamento deve essere eseguita anche su nuovi dati, come un set di dati di test, un set di dati di convalida e dati quando si effettua una previsione con il modello finale.

Vuoi iniziare con la preparazione dei dati?

Prendi il mio corso accelerato gratuito di 7 giorni (con codice di esempio).

Fare clic per iscriversi e anche ottenere una versione PDF Ebook gratuito del corso.

Scarica il tuo Mini-corso GRATUITO

Algoritmi di riduzione della dimensionalità

Ci sono molti algoritmi che possono essere utilizzati per la riduzione della dimensionalità.

Due classi principali di metodi sono quelle tratte dall’algebra lineare e quelle tratte dall’apprendimento molteplice.

Metodi di algebra lineare

I metodi di fattorizzazione della matrice tratti dal campo dell’algebra lineare possono essere utilizzati per la dimensionalità.

Per ulteriori informazioni sulla fattorizzazione della matrice, vedere il tutorial:

  • Una Dolce Introduzione alla Fattorizzazione della Matrice per l’Apprendimento automatico

Alcuni dei metodi più diffusi sono:

  • Analisi delle Componenti Principali
  • Decomposizione a valori Singolari
  • Fattorizzazione della Matrice Non Negativa

Collettore di Metodi di Apprendimento

Collettore di metodi di apprendimento cercano inferiore-dimensionale di proiezione di alta ingresso dimensionale che cattura le principali proprietà dei dati di input.

Alcuni dei metodi più popolari includono:

  • Isomap Embedding
  • Local Linear Embedding
  • Multidimensional Scaling
  • Spectral Embedding
  • t-distributed Stocastic Neighbor Embedding

Ogni algoritmo offre un approccio diverso alla sfida di scoprire relazioni naturali nei dati a dimensioni inferiori.

Non esiste il miglior algoritmo di riduzione della dimensionalità e nessun modo semplice per trovare il miglior algoritmo per i tuoi dati senza utilizzare esperimenti controllati.

In questo tutorial, esamineremo come utilizzare ogni sottoinsieme di questi algoritmi di riduzione della dimensionalità popolari dalla libreria scikit-learn.

Gli esempi forniranno la base per copiare e incollare gli esempi e testare i metodi sui propri dati.

Non ci immergeremo nella teoria alla base di come funzionano gli algoritmi o li confronteremo direttamente. Per un buon punto di partenza su questo argomento, vedi:

  • Decomposizione dei segnali nei componenti, scikit-learn API.
  • Apprendimento collettore, scikit-imparare API.

Tuffiamoci.

Esempi di riduzione della dimensionalità

In questa sezione, esamineremo come utilizzare i più diffusi algoritmi di riduzione della dimensionalità in scikit-learn.

Questo include un esempio di utilizzo della tecnica di riduzione della dimensionalità come trasformazione dei dati in una pipeline di modellazione e valutazione di un adattamento del modello sui dati.

Gli esempi sono progettati per copiare e incollare nel proprio progetto e applicare i metodi ai propri dati. Ci sono alcuni algoritmi disponibili nella libreria scikit-learn che non sono dimostrati perché non possono essere utilizzati come trasformazione dei dati direttamente data la natura dell’algoritmo.

Come tale, useremo un set di dati di classificazione sintetica in ogni esempio.

Scikit-Learn Library Installation

Per prima cosa, installiamo la libreria.

Non saltare questo passaggio in quanto è necessario assicurarsi di avere l’ultima versione installata.

È possibile installare la libreria scikit-learn utilizzando il programma di installazione pip Python, come segue:

1
sudo pip install scikit-learn

For additional installation instructions specific to your platform, see:

  • Installing scikit-learn

Next, let’s confirm that the library is installed and you are using a modern version.

Run the following script to print the library version number.

1
2
3

# check scikit-learn version
import sklearn
print(sklearn.__version__)

Running the example, you should see the following version number or higher.

1
0.23.0

Dataset di classificazione

Useremo la funzione make_classification() per creare un dataset di classificazione binaria di prova.

Il set di dati avrà 1.000 esempi con 20 funzioni di input, 10 delle quali sono informative e 10 delle quali sono ridondanti. Ciò offre l’opportunità per ogni tecnica di identificare e rimuovere le funzionalità di input ridondanti.

Il seme casuale fisso per il generatore di numeri pseudorandom assicura che generiamo lo stesso set di dati sintetici ogni volta che viene eseguito il codice.

An example of creating and summarizing the synthetic classification dataset is listed below.

1
2
3
4
5
6

# synthetic classification dataset
from sklearn.set di dati di importazione make_classification
# define dataset
X, y = make_classification(n_samples=1000, n_features=20, n_informative=10, n_redundant=10, random_state=7)
# riassumere il set di dati
stampa(X. forma, y.la forma)

eseguire l’esempio crea il set di dati e riporta il numero di righe e di colonne che corrispondono alle nostre aspettative.

1
(1000, 20) (1000,)

It is a binary classification task and we will evaluate a LogisticRegression model after each dimensionality reduction transform.

Il modello verrà valutato utilizzando il gold standard di convalida incrociata stratificata ripetuta di 10 volte. Verrà riportata la precisione di classificazione media e deviazione standard in tutte le pieghe e le ripetizioni.

L’esempio seguente valuta il modello sul set di dati raw come punto di confronto.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

# valutare il modello di regressione logistica su dati grezzi
da import numpy media
da numpy importa std
da sklearn.i set di dati importano make_classification
da sklearn.model_selection importa cross_val_score
da sklearn.model_selection importa RepeatedStratifiedKFold
da sklearn.linear_model import LogisticRegression
# define dataset
X, y = make_classification(n_samples=1000, n_features=20, n_informative=10, n_redundant=10, random_state=7)
# define the model
model = LogisticRegression()
# evaluate model
cv = RepeatedStratifiedKFold(n_splits=10, n_repeats=3, random_state=1)
n_scores = cross_val_score(model, X, y, scoring=’accuracy’, cv=cv, n_jobs=-1)
# report performance
print(‘Accuracy: %.3f (%.3f) ‘ % (mean(n_scores), std(n_scores)))

L’esecuzione dell’esempio valuta la regressione logistica sul set di dati raw con tutte le 20 colonne, ottenendo una precisione di classificazione di circa l ‘ 82,4%.

Una trasformazione di riduzione della dimensionalità riuscita su questi dati dovrebbe comportare un modello con una precisione migliore rispetto a questa linea di base, sebbene ciò potrebbe non essere possibile con tutte le tecniche.

Nota: non stiamo cercando di” risolvere ” questo set di dati, basta fornire esempi di lavoro che è possibile utilizzare come punto di partenza.

1
Accuracy: 0.824 (0.034)

Next, we can start looking at examples of dimensionality reduction algorithms applied to this dataset.

I have made some minimal attempts to tune each method to the dataset. Ogni metodo di riduzione della dimensionalità sarà configurato per ridurre le 20 colonne di input a 10, ove possibile.

Useremo una Pipeline per combinare la trasformazione e il modello dei dati in un’unità atomica che può essere valutata utilizzando la procedura di convalida incrociata; ad esempio:

1
2
3
4

# define the pipeline
steps =
model = Pipeline(steps=steps)

Let’s get started.

Can you get a better result for one of the algorithms?
Fatemi sapere nei commenti qui sotto.

Principal Component Analysis

Principal Component Analysis, o PCA, potrebbe essere la tecnica più popolare per la riduzione della dimensionalità con dati densi (pochi valori zero).

Per ulteriori informazioni su come funziona PCA, vedere il tutorial:

  • Come calcolare Principal Component Analysis (PCA) da zero in Python

La libreria scikit-learn fornisce l’implementazione della classe PCA dell’analisi dei componenti principali che può essere utilizzata come trasformazione dei dati di riduzione della dimensionalità. L’argomento “n_components” può essere impostato per configurare il numero di dimensioni desiderate nell’output della trasformazione.

L’esempio completo di valutazione di un modello con riduzione della dimensionalità PCA è elencato di seguito.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

# valutare pca con algoritmo di regressione logistica per classificazione
da numpy import media
da numpy import std
da sklearn.i set di dati importano make_classification
da sklearn.model_selection importa cross_val_score
da sklearn.model_selection importa RepeatedStratifiedKFold
da sklearn.pipeline importa pipeline
da sklearn.scomposizione importa PCA
da sklearn.linear_model import LogisticRegression
# define dataset
X, y = make_classification(n_samples=1000, n_features=20, n_informative=10, n_redundant=10, random_state=7)
# define the pipeline
steps =
model = Pipeline(steps=steps)
# evaluate model
cv = RepeatedStratifiedKFold(n_splits=10, n_repeats=3, random_state=1)
n_scores = cross_val_score(model, X, y, scoring=’accuracy’, cv=cv, n_jobs=-1)
# report performance
print(‘Accuracy: %.3f (%.3f) ‘ % (mean(n_scores), std(n_scores)))

L’esecuzione dell’esempio valuta la pipeline di modellazione con riduzione della dimensionalità e un modello predittivo di regressione logistica.

Nota: I risultati possono variare data la natura stocastica dell’algoritmo o della procedura di valutazione, o differenze nella precisione numerica. Considerare l’esecuzione dell’esempio alcune volte e confrontare il risultato medio.

In questo caso, non vediamo alcun aumento delle prestazioni del modello nell’utilizzo della trasformazione PCA.

1
Accuracy: 0.824 (0.034)

Singular Value Decomposition

Singular Value Decomposition, or SVD, is one of the most popular techniques for dimensionality reduction for sparse data (data with many zero values).

Per ulteriori informazioni su come funziona SVD, vedere il tutorial:

  • Come calcolare SVD da zero con Python

La libreria scikit-learn fornisce l’implementazione della classe TruncatedSVD della decomposizione del valore singolare che può essere utilizzata come trasformazione dei dati di riduzione della dimensionalità. L’argomento “n_components” può essere impostato per configurare il numero di dimensioni desiderate nell’output della trasformazione.

L’esempio completo di valutazione di un modello con riduzione della dimensionalità SVD è elencato di seguito.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

# valutare svd con algoritmo di regressione logistica per classificazione
da numpy import media
da numpy import std
da sklearn.i set di dati importano make_classification
da sklearn.model_selection importa cross_val_score
da sklearn.model_selection importa RepeatedStratifiedKFold
da sklearn.pipeline importa pipeline
da sklearn.scomposizione importa TruncatedSVD
da sklearn.linear_model import LogisticRegression
# define dataset
X, y = make_classification(n_samples=1000, n_features=20, n_informative=10, n_redundant=10, random_state=7)
# define the pipeline
steps =
model = Pipeline(steps=steps)
# evaluate model
cv = RepeatedStratifiedKFold(n_splits=10, n_repeats=3, random_state=1)
n_scores = cross_val_score(model, X, y, scoring=’accuracy’, cv=cv, n_jobs=-1)
# report performance
print(‘Accuracy: %.3f (%.3f) ‘ % (mean(n_scores), std(n_scores)))

L’esecuzione dell’esempio valuta la pipeline di modellazione con riduzione della dimensionalità e un modello predittivo di regressione logistica.

Nota: I risultati possono variare data la natura stocastica dell’algoritmo o della procedura di valutazione, o differenze nella precisione numerica. Considerare l’esecuzione dell’esempio alcune volte e confrontare il risultato medio.

In questo caso, non vediamo alcun aumento delle prestazioni del modello nell’utilizzo della trasformazione SVD.

1
Accuracy: 0.824 (0.034)

Linear Discriminant Analysis

Linear Discriminant Analysis, or LDA, is a multi-class classification algorithm that can be used for dimensionality reduction.

Il numero di dimensioni per la proiezione è limitato a 1 e C-1, dove C è il numero di classi. In questo caso, il nostro set di dati è un problema di classificazione binaria (due classi), limitando il numero di dimensioni a 1.

Per ulteriori informazioni su LDA per la riduzione della dimensionalità, vedere il tutorial:

  • Analisi discriminante lineare per la riduzione della dimensionalità in Python

La libreria scikit-learn fornisce l’implementazione della classe LinearDiscriminantAnalysis dell’analisi discriminante lineare che può essere utilizzata come trasformazione dei dati di riduzione della dimensionalità. L’argomento “n_components” può essere impostato per configurare il numero di dimensioni desiderate nell’output della trasformazione.

L’esempio completo di valutazione di un modello con riduzione della dimensionalità LDA è elencato di seguito.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

# valutare lda con algoritmo di regressione logistica per classificazione
da numpy import media
da numpy import std
da sklearn.i set di dati importano make_classification
da sklearn.model_selection importa cross_val_score
da sklearn.model_selection importa RepeatedStratifiedKFold
da sklearn.pipeline importa pipeline
da sklearn.discriminant_analysis importa LinearDiscriminantAnalysis
da sklearn.linear_model import LogisticRegression
# define dataset
X, y = make_classification(n_samples=1000, n_features=20, n_informative=10, n_redundant=10, random_state=7)
# define the pipeline
steps =
model = Pipeline(steps=steps)
# evaluate model
cv = RepeatedStratifiedKFold(n_splits=10, n_repeats=3, random_state=1)
n_scores = cross_val_score(model, X, y, scoring=’accuracy’, cv=cv, n_jobs=-1)
# report performance
print(‘Accuracy: %.3f (%.3f) ‘ % (mean(n_scores), std(n_scores)))

L’esecuzione dell’esempio valuta la pipeline di modellazione con riduzione della dimensionalità e un modello predittivo di regressione logistica.

Nota: I risultati possono variare data la natura stocastica dell’algoritmo o della procedura di valutazione, o differenze nella precisione numerica. Considerare l’esecuzione dell’esempio alcune volte e confrontare il risultato medio.

In questo caso, possiamo vedere un leggero aumento delle prestazioni rispetto alla misura di base sui dati grezzi.

1
Accuracy: 0.825 (0.034)

Isomap Embedding

Isomap Embedding, or Isomap, creates an embedding of the dataset and attempts to preserve the relationships in the dataset.

La libreria scikit-learn fornisce l’implementazione della classe Isomap di Isomap Embedding che può essere utilizzata come trasformazione dei dati di riduzione della dimensionalità. L’argomento “n_components” può essere impostato per configurare il numero di dimensioni desiderate nell’output della trasformazione.

L’esempio completo di valutazione di un modello con riduzione della dimensionalità SVD è elencato di seguito.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

# valutare isomap con algoritmo di regressione logistica per classificazione
da numpy import media
da numpy import std
da sklearn.i set di dati importano make_classification
da sklearn.model_selection importa cross_val_score
da sklearn.model_selection importa RepeatedStratifiedKFold
da sklearn.pipeline importa pipeline
da sklearn.collettore importa Isomap
da sklearn.linear_model import LogisticRegression
# define dataset
X, y = make_classification(n_samples=1000, n_features=20, n_informative=10, n_redundant=10, random_state=7)
# define the pipeline
steps =
model = Pipeline(steps=steps)
# evaluate model
cv = RepeatedStratifiedKFold(n_splits=10, n_repeats=3, random_state=1)
n_scores = cross_val_score(model, X, y, scoring=’accuracy’, cv=cv, n_jobs=-1)
# report performance
print(‘Accuracy: %.3f (%.3f) ‘ % (mean(n_scores), std(n_scores)))

L’esecuzione dell’esempio valuta la pipeline di modellazione con riduzione della dimensionalità e un modello predittivo di regressione logistica.

Nota: I risultati possono variare data la natura stocastica dell’algoritmo o della procedura di valutazione, o differenze nella precisione numerica. Considerare l’esecuzione dell’esempio alcune volte e confrontare il risultato medio.

In questo caso, possiamo vedere un aumento delle prestazioni con la trasformazione dei dati Isomap rispetto all’adattamento di base sui dati grezzi.

1
Accuracy: 0.888 (0.029)

Locally Linear Embedding

Locally Linear Embedding, or LLE, creates an embedding of the dataset and attempts to preserve the relationships between neighborhoods in the dataset.

La libreria scikit-learn fornisce l’implementazione della classe LocallyLinearEmbedding dell’incorporamento lineare locale che può essere utilizzata come trasformazione dei dati di riduzione della dimensionalità. L’argomento “n_components” può essere impostato per configurare il numero di dimensioni desiderate nell’output della trasformazione

L’esempio completo di valutazione di un modello con riduzione della dimensionalità LLE è elencato di seguito.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

# valutare lle e la regressione logistica per la tassonomia
da numpy import mean
da numpy import std
da sklearn.i set di dati importano make_classification
da sklearn.model_selection importa cross_val_score
da sklearn.model_selection importa RepeatedStratifiedKFold
da sklearn.pipeline importa pipeline
da sklearn.manifold importa LocallyLinearEmbedding
da sklearn.linear_model import LogisticRegression
# define dataset
X, y = make_classification(n_samples=1000, n_features=20, n_informative=10, n_redundant=10, random_state=7)
# define the pipeline
steps =
model = Pipeline(steps=steps)
# evaluate model
cv = RepeatedStratifiedKFold(n_splits=10, n_repeats=3, random_state=1)
n_scores = cross_val_score(model, X, y, scoring=’accuracy’, cv=cv, n_jobs=-1)
# report performance
print(‘Accuracy: %.3f (%.3f) ‘ % (mean(n_scores), std(n_scores)))

L’esecuzione dell’esempio valuta la pipeline di modellazione con riduzione della dimensionalità e un modello predittivo di regressione logistica.

Nota: I risultati possono variare data la natura stocastica dell’algoritmo o della procedura di valutazione, o differenze nella precisione numerica. Considerare l’esecuzione dell’esempio alcune volte e confrontare il risultato medio.

In questo caso, possiamo vedere un aumento delle prestazioni con la trasformazione dei dati LLE rispetto alla misura di base sui dati grezzi.

1
Accuracy: 0.886 (0.028)

Modified Locally Linear Embedding

Modified Locally Linear Embedding, or Modified LLE, is an extension of Locally Linear Embedding that creates multiple weighting vectors for each neighborhood.

La libreria scikit-learn fornisce l’implementazione della classe LocallyLinearEmbedding di Embedding lineare localmente modificato che può essere utilizzato come trasformazione dei dati di riduzione della dimensionalità. L’argomento ” metodo “deve essere impostato su” modificato “e l’argomento” n_components” può essere impostato per configurare il numero di dimensioni desiderate nell’output della trasformazione che deve essere inferiore all’argomento “n_neighbors”.

L’esempio completo di valutazione di un modello con riduzione della dimensionalità LLE modificata è elencato di seguito.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

# valutare modificato lle e le regressioni logistiche per classificazione
da numpy import media
da numpy import std
da sklearn.i set di dati importano make_classification
da sklearn.model_selection importa cross_val_score
da sklearn.model_selection importa RepeatedStratifiedKFold
da sklearn.pipeline importa pipeline
da sklearn.manifold importa LocallyLinearEmbedding
da sklearn.linear_model import LogisticRegression
# define dataset
X, y = make_classification(n_samples=1000, n_features=20, n_informative=10, n_redundant=10, random_state=7)
# define the pipeline
steps =
model = Pipeline(steps=steps)
# evaluate model
cv = RepeatedStratifiedKFold(n_splits=10, n_repeats=3, random_state=1)
n_scores = cross_val_score(model, X, y, scoring=’accuracy’, cv=cv, n_jobs=-1)
# report performance
print(‘Accuracy: %.3f (%.3f) ‘ % (mean(n_scores), std(n_scores)))

L’esecuzione dell’esempio valuta la pipeline di modellazione con riduzione della dimensionalità e un modello predittivo di regressione logistica.

Nota: I risultati possono variare data la natura stocastica dell’algoritmo o della procedura di valutazione, o differenze nella precisione numerica. Considerare l’esecuzione dell’esempio alcune volte e confrontare il risultato medio.

In questo caso, possiamo vedere un aumento delle prestazioni con la trasformazione dei dati LLE modificata rispetto all’adattamento di base sui dati grezzi.

1
Accuracy: 0.846 (0.036)

Further Reading

This section provides more resources on the topic if you are looking to go deeper.

Tutorial

  • Introduzione alla Riduzione di Dimensionalità per l’Apprendimento automatico
  • Analisi delle Componenti Principali per la Riduzione della Dimensionalità in Python
  • Decomposizione a valori Singolari per la Riduzione della Dimensionalità in Python
  • Analisi Discriminante Lineare per la Riduzione della Dimensionalità in Python

Api

  • Decomposizione segnali di componenti, scikit-per saperne di API.
  • Apprendimento collettore, scikit-imparare API.

In questo tutorial, hai scoperto come adattare e valutare gli algoritmi di riduzione della dimensionalità superiore in Python.

In particolare, hai imparato:

  • La riduzione della dimensionalità cerca una rappresentazione dimensionale inferiore dei dati di input numerici che preserva le relazioni salienti nei dati.
  • Esistono molti algoritmi di riduzione della dimensionalità diversi e nessun metodo migliore per tutti i set di dati.
  • Come implementare, adattare e valutare la riduzione della dimensionalità superiore in Python con la libreria di apprendimento automatico scikit-learn.

Hai qualche domanda?
Fai le tue domande nei commenti qui sotto e farò del mio meglio per rispondere.

Prendi una maniglia sulla moderna preparazione dei dati!

Preparazione dei dati per l'apprendimento automatico

Prepara i tuoi dati di apprendimento automatico in pochi minuti

…con poche righe di codice python

Scopri come nel mio nuovo Ebook:
Preparazione dei dati per l’apprendimento automatico

Fornisce tutorial di autoapprendimento con codice di lavoro completo su:
Selezione delle funzionalità, RFE, pulizia dei dati, trasformazioni dei dati, ridimensionamento, riduzione della dimensionalità e molto altro…

Porta le moderne tecniche di preparazione dei dati ai tuoi progetti di apprendimento automatico

Guarda cosa c’è dentro

Tweet Condividi Condividi

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.