Glossario del machine learning: nozioni di base del machine learning

Questa pagina contiene i termini del glossario di ML Fundamentals. Per tutti i termini del glossario, fai clic qui.

A

accuracy

#fundamentals

Il numero di previsioni di classificazione corretta diviso per il numero totale di previsioni. Ossia:

$$\text{Accuracy} = \frac{\text{correct predictions}} {\text{correct predictions + incorrect predictions }}$$

Ad esempio, un modello che ha effettuato 40 previsioni corrette e 10 previsioni errate avrebbe un'accuratezza pari a:

$$\text{Accuracy} = \frac{\text{40}} {\text{40 + 10}} = \text{80%}$$

La classificazione binaria fornisce nomi specifici per le diverse categorie di previsioni corrette e previsioni errate. Quindi, la formula di accuratezza per la classificazione binaria è la seguente:

$$\text{Accuracy} = \frac{\text{TP} + \text{TN}} {\text{TP} + \text{TN} + \text{FP} + \text{FN}}$$

dove:

Confronta e contrasta l'accuratezza con precisione e richiamo.

funzione di attivazione

#fundamentals

Una funzione che consente alle reti neurali di apprendere le relazioni non lineari (complesse) tra le caratteristiche e l'etichetta.

Le funzioni di attivazione più comuni includono:

I diagrammi delle funzioni di attivazione non sono mai semplici linee rette. Ad esempio, il grafico della funzione di attivazione della ReLU è costituito da due linee rette:

Un appezzamento cartesiano di due linee. La prima riga ha un valore y costante pari a 0, lungo l'asse x da -infinito,0 a 0,-0.
          La seconda riga inizia da 0,0. Questa linea ha una pendenza pari a +1, quindi va da 0,0 a +infinito,+infinito.

Un diagramma della funzione di attivazione sigmoidale ha il seguente aspetto:

Un grafico curvo bidimensionale con valori x che coprono il dominio, dall'infinito a +positivo, mentre i valori y coprono l'intervallo da quasi 0 a quasi 1. Quando x è 0, y è 0,5. La pendenza della curva è sempre positiva, con la pendenza più alta a 0,0,5 e che decresce gradualmente man mano che aumenta il valore assoluto di x.

l'intelligenza artificiale

#fundamentals

Un programma o model generato da strumenti automatici in grado di risolvere attività sofisticate. Ad esempio, un programma o un modello che traduce testi oppure un programma o un modello che identifica le malattie a partire dalle immagini radiologiche mostrano entrambi l'intelligenza artificiale.

Il machine learning è un sottocampo dell'intelligenza artificiale. Tuttavia, negli ultimi anni, alcune organizzazioni hanno iniziato a utilizzare i termini intelligenza artificiale e machine learning in modo intercambiabile.

AUC (area sotto la curva ROC)

#fundamentals

Un numero compreso tra 0,0 e 1,0 che rappresenta la capacità di un modello di classificazione binaria di separare le classi positive dalle classi negative. Più l'AUC è vicina a 1,0, maggiore è la capacità del modello di separare le classi l'una dall'altra.

Ad esempio, la seguente illustrazione mostra un modello di classificatore che separa perfettamente le classi positive (ovali verdi) da quelle negative (rettangoli viola). Questo modello non realisticamente perfetto ha un AUC di 1,0:

Una riga numerica con 8 esempi positivi su un lato e 9 esempi negativi sull'altro lato.

Al contrario, l'illustrazione seguente mostra i risultati di un modello di classificazione che ha generato risultati casuali. Questo modello ha un'AUC pari a 0,5:

Una riga numerica con 6 esempi positivi e 6 esempi negativi.
          La sequenza di esempi è positiva, negativa, positiva, negativa, positiva, negativa, positiva, negativa, positiva, negativa, positiva, negativa".

Sì, il modello precedente ha un'AUC di 0,5, non di 0,0.

La maggior parte dei modelli si trova a metà strada tra i due estremi. Ad esempio, il seguente modello separa in qualche modo i positivi dai negativi e, di conseguenza, ha un'AUC compresa tra 0,5 e 1,0:

Una riga numerica con 6 esempi positivi e 6 esempi negativi.
          La sequenza di esempi è negativo, negativo, negativo, negativo, positivo, negativo, positivo, positivo, negativo, positivo, positivo, positivo.

L'AUC ignora qualsiasi valore impostato per la soglia di classificazione. Al contrario, l'AUC prende in considerazione tutte le possibili soglie di classificazione.

B

retropropagazione dell'errore

#fundamentals

L'algoritmo che implementa la discesa del gradiente nelle reti neurali.

L'addestramento di una rete neurale prevede molte iterazioni del seguente ciclo a due passaggi:

  1. Durante il passaggio in avanti, il sistema elabora un batch di esempi per generare previsioni. Il sistema confronta ogni previsione con ogni valore dell'etichetta. La differenza tra la previsione e il valore dell'etichetta è la perdita per quell'esempio. Il sistema aggrega le perdite per tutti gli esempi al fine di calcolare la perdita totale per il batch corrente.
  2. Durante il passaggio all'indietro (retropropagazione dell'errore), il sistema riduce la perdita regolando le ponderazioni di tutti i neuroni in tutti gli strati nascosti.

Le reti neurali spesso contengono molti neuroni in molti livelli nascosti. Ognuno di questi neuroni contribuisce alla perdita complessiva in modi diversi. La retropropagazione dell'errore determina se aumentare o diminuire le ponderazioni applicate a determinati neuroni.

Il tasso di apprendimento è un moltiplicatore che controlla in che misura ogni passaggio a ritroso aumenta o diminuisce ogni peso. Un tasso di apprendimento elevato aumenta o diminuisce ogni peso di più rispetto a un tasso di apprendimento ridotto.

In termini di calcolo, la retropropagazione dell'errore implementa la regola della catena dal calcolo. In altre parole, la retropropagazione dell'errore calcola la derivata parziale dell'errore in relazione a ciascun parametro.

Anni fa, i professionisti del machine learning dovevano scrivere codice per implementare la retropropagazione dell'errore. Le moderne API ML come TensorFlow ora implementano la retropropagazione dell'errore. Finalmente.

batch

#fundamentals

L'insieme di esempi utilizzati in un'iterazione di addestramento. La dimensione del batch determina il numero di esempi in un batch.

Consulta epoch per una spiegazione della relazione tra un batch e un'epoca.

dimensione del batch

#fundamentals

Il numero di esempi in un batch. Ad esempio, se la dimensione del batch è 100, il modello elabora 100 esempi per iterazione.

Di seguito sono riportate le strategie più comuni per le dimensioni in batch:

  • Stocastic Gradient Descent (SGD), in cui la dimensione del batch è 1.
  • Batch completo, in cui la dimensione del batch corrisponde al numero di esempi nell'intero set di addestramento. Ad esempio, se il set di addestramento contiene un milione di esempi, la dimensione del batch corrisponde a un milione di esempi. L'implementazione completa della modalità batch è in genere una strategia inefficiente.
  • mini-batch in cui la dimensione del batch è generalmente compresa tra 10 e 1000. Il mini-batch è in genere la strategia più efficiente.

pregiudizi (etica/equità)

#fairness
#fundamentals

1. Stereotipi, pregiudizi o favoritismo nei confronti di alcune cose, persone o gruppi rispetto ad altri. Questi bias possono influenzare la raccolta e l'interpretazione dei dati, la progettazione di un sistema e il modo in cui gli utenti interagiscono con il sistema. Questo tipo di bias include:

2. Errore sistematico introdotto da una procedura di campionamento o di reporting. Questo tipo di bias include:

Da non confondere con il termine di bias nei modelli di machine learning o con il bias di previsione.

termine di bias (matematico) o bias

#fundamentals

Un'intercetta o un offset da un'origine. Il bias è un parametro nei modelli di machine learning, simbolizzato da uno dei seguenti elementi:

  • b
  • S0

Ad esempio, il bias è la b nella seguente formula:

$$y' = b + w_1x_1 + w_2x_2 + … w_nx_n$$

In una semplice linea bidimensionale, bias significa semplicemente "intercetta y". Ad esempio, la bias della linea nella seguente illustrazione è 2.

Il grafico di una retta con una pendenza di 0,5 e una bias (intercetta y) di 2.

Il bias esiste perché non tutti i modelli iniziano dall'origine (0,0). Ad esempio, supponiamo che l'ingresso a un parco divertimenti sia di 2 euro e di ulteriori 0,5 euro per ogni ora di soggiorno del cliente. Pertanto, un modello che mappa il costo totale ha una bias pari a 2 perché il costo più basso è di 2 euro.

I pregiudizi non devono essere confusi con i pregiudizi etici e con equità o con i pregiudizi di previsione.

classificazione binaria

#fundamentals

Un tipo di attività di classificazione che prevede una delle due classi che si escludono a vicenda:

Ad esempio, i seguenti due modelli di machine learning eseguono ciascuno la classificazione binaria:

  • Un modello che determina se i messaggi email sono spam (la classe positiva) o non spam (la classe negativa).
  • Un modello che valuta i sintomi medici per determinare se una persona è affetta da una determinata malattia (la classe positiva) o non soffre di quella malattia (la classe negativa).

La differenza è con la classificazione multi-classe.

Vedi anche regressione logistica e soglia di classificazione.

bucket

#fundamentals

La conversione di una singola funzionalità in più caratteristiche binarie chiamate bucket o bin, generalmente basate su un intervallo di valori. La funzionalità tagliata è in genere una funzionalità continua.

Ad esempio, anziché rappresentare la temperatura come un'unica funzionalità a virgola mobile continua, potresti suddividere gli intervalli di temperatura in bucket discreti, ad esempio:

  • <= 10 gradi Celsius è il bucket "a freddo".
  • 11-24 gradi Celsius rappresentano il bucket "temperato".
  • >= 25 gradi Celsius è il bucket "caldo".

Il modello tratterà in modo identico tutti i valori nello stesso bucket. Ad esempio, i valori 13 e 22 sono entrambi nel bucket temperato, quindi il modello tratta i due valori in modo identico.

C

dati categorici

#fundamentals

Funzionalità con un insieme specifico di valori possibili. Ad esempio, considera una funzionalità di categoria denominata traffic-light-state, che può avere solo uno dei seguenti tre valori possibili:

  • red
  • yellow
  • green

Rappresentando traffic-light-state come funzionalità categorica, un modello può apprendere i diversi impatti di red, green e yellow sul comportamento dei conducenti.

Le funzionalità categoriche sono talvolta chiamate funzionalità discrete.

Al contrario dei dati numerici.

classe

#fundamentals

Una categoria a cui può appartenere un'etichetta. Ad esempio:

  • In un modello di classificazione binaria che rileva lo spam, le due classi potrebbero essere spam e non spam.
  • In un modello di classificazione multi-classe che identifica le razze di cani, le classi potrebbero essere barboncino, beagle, carlino e così via.

Un modello di classificazione prevede una classe. Al contrario, un modello di regressione prevede un numero anziché una classe.

modello di classificazione

#fundamentals

Un model la cui previsione è una model. Ad esempio, quelli di seguito sono tutti modelli di classificazione:

  • Un modello che prevede la lingua di una frase di input (francese? Spagnolo? italiano?).
  • un modello che prevede le specie di alberi (Acero? Oak? Baobab?).
  • Modello che prevede la classe positiva o negativa per una determinata condizione medica.

Al contrario, i modelli di regressione prevedono numeri anziché classi.

Due tipi comuni di modelli di classificazione sono:

soglia di classificazione

#fundamentals

In una classificazione binaria, un numero compreso tra 0 e 1 che converte l'output non elaborato di un modello di regressione logistica in una previsione della classe positiva o della classe negativa. Tieni presente che la soglia di classificazione è un valore scelto da un essere umano, non un valore scelto dall'addestramento del modello.

Un modello di regressione logistica restituisce un valore non elaborato compreso tra 0 e 1. Quindi:

  • Se questo valore non elaborato è maggiore della soglia di classificazione, viene prevista la classe positiva.
  • Se questo valore non elaborato è inferiore alla soglia di classificazione, viene prevista la classe negativa.

Supponiamo, ad esempio, che la soglia di classificazione sia 0,8. Se il valore non elaborato è 0,9, il modello prevede la classe positiva. Se il valore non elaborato è 0,7, il modello prevede la classe negativa.

La scelta della soglia di classificazione influenza fortemente il numero di falsi positivi e falsi negativi.

set di dati con classe non bilanciata

#fundamentals

Un set di dati per un problema di classificazione in cui il numero totale di etichette di ogni classe varia in modo significativo. Ad esempio, considera un set di dati di classificazione binaria le cui due etichette sono divise come segue:

  • 1.000.000 di etichette negative
  • 10 etichette positive

Il rapporto tra etichette negative e positive è compreso tra 100.000 e 1, quindi questo è un set di dati con classe non bilanciata.

Al contrario, il seguente set di dati non è sbilanciato dalla classe perché il rapporto tra etichette negative e positive è relativamente vicino a 1:

  • 517 etichette escluse
  • 483 etichette positive

I set di dati multiclasse possono anche non avere equilibrio di classe. Ad esempio, anche il seguente set di dati di classificazione multiclasse è sbilanciato in classe perché un'etichetta ha molti più esempi rispetto alle altre due:

  • 1.000.000 di etichette con la classe "verde"
  • 200 etichette con la classe "viola"
  • 350 etichette con classe "arancione"

Vedi anche entropia, classe maggiore e classe di minoranza.

ritaglio

#fundamentals

Una tecnica per gestire i requisiti anomali svolgendo una o entrambe le seguenti operazioni:

  • Ridurre i valori delle feature superiori a una soglia massima fino a raggiungere la soglia massima.
  • Aumento dei valori delle funzionalità che sono inferiori a una soglia minima fino alla soglia minima.

Ad esempio, supponiamo che meno dello 0,5% dei valori per una determinata funzionalità non rientri nell'intervallo 40-60. In questo caso, puoi procedere come segue:

  • Ritaglia tutti i valori superiori a 60 (la soglia massima) in modo che siano esattamente 60.
  • Ritaglia tutti i valori inferiori a 40 (la soglia minima) in modo che siano esattamente 40.

I valori anomali possono danneggiare i modelli, causando a volte l'overflow delle ponderazioni durante l'addestramento. Alcune anomalie possono anche compromettere drasticamente metriche come l'accuratezza. Il ritaglio è una tecnica comune per limitare i danni.

Il tagliamento di sfumatura forza i valori gradiente all'interno di un intervallo designato durante l'addestramento.

matrice di confusione

#fundamentals

Una tabella NxN che riassume il numero di previsioni corrette ed errate eseguite da un modello di classificazione. Ad esempio, considera la seguente matrice di confusione per un modello di classificazione binaria:

Tumore (previsto) Non tumore (previsto)
Tumore (dati empirici reali) 18 (VP) 1 (FN)
Non tumore (dati empirici reali) 6 (FP) 452 (TN)

La precedente matrice di confusione mostra quanto segue:

  • Delle 19 previsioni in cui i dati empirici reali erano Tumor, il modello ne ha classificato correttamente 18 e ha erroneamente classificato 1.
  • Su 458 previsioni in cui i dati empirici reali erano Non Tumori, il modello ha classificato correttamente 452 e ha erroneamente classificato 6.

La matrice di confusione per un problema di classificazione multi-classe può aiutarti a identificare i modelli di errore. Ad esempio, considera la seguente matrice di confusione per un modello di classificazione multiclasse a 3 classi che classifica tre diversi tipi di iris (Virginica, Versicolor e Setosa). Quando i dati empirici reali erano Virginica, la matrice di confusione mostra che il modello aveva molte più probabilità di prevedere erroneamente Versicolor rispetto a Setosa:

  Setosa (previsto) Versicolor (previsto) Virginica (previsto)
Setosa (dati empirici reali) 88 12 0
Versicolor (dati empirici reali) 6 141 7
Virginica (dati empirici reali) 2 27 109

Come ulteriore esempio, una matrice di confusione potrebbe rivelare che un modello addestrato a riconoscere le cifre scritte a mano tende a prevedere erroneamente 9 anziché 4 o a predire erroneamente 1 anziché 7.

Le matrici di confusione contengono informazioni sufficienti per calcolare una serie di metriche delle prestazioni, tra cui precisione e richiamo.

funzionalità continua

#fundamentals

Una funzionalità a virgola mobile con una gamma infinito di possibili valori, come la temperatura o il peso.

È in contrasto con la funzionalità discreta.

convergenza

#fundamentals

Uno stato raggiunto quando i valori della perdita cambiano molto poco o per niente a ogni iterazione. Ad esempio, la seguente curva di perdita suggerisce la convergenza a circa 700 iterazioni:

grafico cartesiano. L&#39;asse X corrisponde a una perdita. L&#39;asse Y indica il numero di iterazioni
          di addestramento. La perdita è molto elevata durante le prime iterazioni, ma
          diminuisce drasticamente. Dopo circa 100 iterazioni, la perdita è ancora decrescente, ma molto più gradualmente. Dopo circa 700 iterazioni,
          la perdita rimane fissa.

Un modello converge quando un addestramento aggiuntivo non lo migliora.

Nel deep learning, i valori di perdita a volte rimangono costanti o quasi per molte iterazioni prima di scendere definitivamente. Durante un lungo periodo di valori di perdita costanti, potresti temporaneamente avere un falso senso di convergenza.

Consulta anche la sezione Interruzione anticipata.

D

DataFrame

#fundamentals

Un tipo di dati panda popolare per la rappresentazione di set di dati in memoria.

Un DataFrame è simile a una tabella o a un foglio di lavoro. Ogni colonna di un DataFrame ha un nome (un'intestazione) e ogni riga è identificata da un numero univoco.

Ogni colonna in un DataFrame è strutturata come un array 2D, ad eccezione del fatto che a ogni colonna può essere assegnato il proprio tipo di dati.

Consulta anche la pagina di riferimento ufficiale di pandas.DataFrame.

set di dati o set di dati

#fundamentals

Una raccolta di dati non elaborati, comunemente (ma non esclusivamente) organizzati in uno dei seguenti formati:

  • un foglio di lavoro
  • Un file in formato CSV (valori separati da virgole)

modello profondo

#fundamentals

Una rete neurale contenente più di un livello nascosto.

Un modello deep è anche chiamato rete neurale profonda.

Contrasta con il modello largo.

funzionalità densa

#fundamentals

Una feature in cui la maggior parte o tutti i valori sono diversi da zero, solitamente un Tensor di valori in virgola mobile. Ad esempio, il seguente tensore di 10 elementi è denso perché 9 dei suoi valori sono diversi da zero:

8 3 7 5 2 4 0 4 9 6

Sono invece in contrasto con la funzionalità scarsa.

profondità

#fundamentals

La somma di quanto segue in una rete neurale:

Ad esempio, una rete neurale con cinque livelli nascosti e uno di output ha una profondità pari a 6.

Nota che il livello di input non influisce sulla profondità.

funzionalità discreta

#fundamentals

Una feature con un insieme limitato di valori possibili. Ad esempio, una caratteristica i cui valori possono essere solo animale, vegetale o minerale è una caratteristica discreta (o categorica).

Al contrario, la funzionalità continua è diversa.

dinamico

#fundamentals

Si tratta di un'operazione che viene eseguita di frequente o continuamente. I termini dinamico e online sono sinonimi nel machine learning. Di seguito sono riportati alcuni usi comuni degli attributi dinamico e online nel machine learning:

  • Un modello dinamico (o modello online) è un modello che viene riaddestrato di frequente o continuamente.
  • L'addestramento dinamico (o addestramento online) è il processo di addestramento frequente o continuo.
  • L'inferenza dinamica (o inferenza online) è il processo di generazione di previsioni on demand.

modello dinamico

#fundamentals

Un model che viene riaddestrato di frequente (forse anche continuamente). Un modello dinamico è uno "apprendista per tutta la vita" che si adatta costantemente ai dati in evoluzione. Un modello dinamico è anche noto come modello online.

Sono in contrasto con il modello statico.

E

interruzione anticipata

#fundamentals

Un metodo per la regolarizzazione che prevede la fine dell'addestramento prima che la perdita di addestramento termini in diminuzione. Nell'interruzione anticipata, interrompi intenzionalmente l'addestramento del modello quando la perdita in un set di dati di convalida inizia ad aumentare, ovvero quando le prestazioni della generalizzazione peggiorano.

livello di incorporamento

#language
#fundamentals

Uno speciale livello nascosto che si addestra su una funzionalità categorica ad alta dimensione per apprendere gradualmente un vettore di incorporamento di dimensioni inferiori. Un livello di incorporamento consente a una rete neurale di addestrare in modo molto più efficiente rispetto all'addestramento solo sulla caratteristica categoriale ad alta dimensione.

Ad esempio, attualmente la Terra supporta circa 73.000 specie di alberi. Supponiamo che le specie di alberi siano una caratteristica nel modello, quindi il livello di input del modello include un vettore one-hot lungo 73.000 elementi. Ad esempio, baobab potrebbe essere rappresentato in modo simile al seguente:

Un array di 73.000 elementi. I primi 6232 elementi contengono il valore
     0. L&#39;elemento successivo contiene il valore 1. Gli ultimi 66.767 elementi contengono il valore zero.

Un array di 73.000 elementi è molto lungo. Se non aggiungi un livello di incorporamento al modello, l'addestramento richiederà molto tempo a causa della moltiplicazione di 72.999 zeri. Ad esempio, puoi scegliere che lo strato di incorporamento sia composto da 12 dimensioni. Di conseguenza, lo strato di incorporamento apprenderà gradualmente un nuovo vettore di incorporamento per ogni specie di albero.

In alcune situazioni, l'hashing è un'alternativa ragionevole a un livello di incorporamento.

periodo

#fundamentals

Un passaggio completo di addestramento sull'intero set di addestramento in modo che ogni esempio sia stato elaborato una sola volta.

Un'epoca rappresenta N/dimensione del batch iterazioni di addestramento, dove N è il numero totale di esempi.

Ad esempio, supponiamo quanto segue:

  • Il set di dati è composto da 1000 esempi.
  • La dimensione del batch è di 50 esempi.

Pertanto, una singola epoca richiede 20 iterazioni:

1 epoch = (N/batch size) = (1,000 / 50) = 20 iterations

un esempio.

#fundamentals

I valori di una riga di features ed eventualmente di un'etichetta. Gli esempi di apprendimento supervisionato rientrano in due categorie generali:

  • Un esempio etichettato è costituito da una o più funzionalità e un'etichetta. Gli esempi etichettati vengono utilizzati durante l'addestramento.
  • Un esempio senza etichetta è costituito da una o più funzionalità, ma nessuna etichetta. Durante l'inferenza vengono utilizzati esempi senza etichetta.

Ad esempio, supponi di addestrare un modello per determinare l'influenza delle condizioni meteo sui punteggi dei test degli studenti. Ecco tre esempi di etichette:

Funzionalità Etichetta
Temperatura Umidità Pressione Punteggio del test
15 47 998 Buoni
19 34 1020 Eccellente
18 92 1012 Scadente

Ecco tre esempi senza etichetta:

Temperatura Umidità Pressione  
12 62 1014  
21 47 1017  
19 41 1021  

La riga di un set di dati è in genere l'origine non elaborata di un esempio. Ciò significa che un esempio di solito è costituito da un sottoinsieme delle colonne nel set di dati. Inoltre, le funzionalità di un esempio possono includere anche funzionalità sintetiche, come incroci di funzionalità.

F

falso negativo (FN)

#fundamentals

Un esempio in cui il modello prevede erroneamente la classe negativa. Ad esempio, il modello prevede che un determinato messaggio email non sia spam (la classe negativa), ma che in realtà sia spam.

falso positivo (FP)

#fundamentals

Un esempio in cui il modello prevede erroneamente la classe positiva. Ad esempio, il modello prevede che un determinato messaggio email sia spam (la classe positiva), ma quel messaggio in realtà non è spam.

tasso di falsi positivi

#fundamentals

La proporzione di esempi negativi effettivi per cui il modello ha previsto erroneamente la classe positiva. La seguente formula calcola la percentuale di falsi positivi:

$$\text{false positive rate} = \frac{\text{false positives}}{\text{false positives} + \text{true negatives}}$$

Il tasso di falsi positivi è l'asse x in una curva ROC.

caratteristica

#fundamentals

Una variabile di input in un modello di machine learning. Un esempio è costituito da una o più funzionalità. Ad esempio, supponiamo che tu stia addestrando un modello per determinare l'influenza delle condizioni meteo sui punteggi dei test. La seguente tabella mostra tre esempi, ognuno dei quali contiene tre caratteristiche e un'etichetta:

Funzionalità Etichetta
Temperatura Umidità Pressione Punteggio del test
15 47 998 92
19 34 1020 84
18 92 1012 87

Sono in contrasto con label.

croce di caratteristiche

#fundamentals

Una funzionalità sintetica formata da funzionalità "crossing" categoriche o in bucket.

Ad esempio, considera un modello di "previsione dell'umore" che rappresenta la temperatura in uno dei seguenti quattro bucket:

  • freezing
  • chilly
  • temperate
  • warm

Rappresenta la velocità del vento in una delle seguenti tre categorie:

  • still
  • light
  • windy

Senza incroci di caratteristiche, il modello lineare viene addestrato in modo indipendente su ciascuno dei sette bucket precedenti. Di conseguenza, il modello viene addestrato, ad esempio, freezing indipendentemente dall'addestramento su windy.

In alternativa, puoi creare un croce di caratteristiche tra temperatura e velocità del vento. Questa funzionalità sintetica dovrebbe avere i seguenti 12 valori possibili:

  • freezing-still
  • freezing-light
  • freezing-windy
  • chilly-still
  • chilly-light
  • chilly-windy
  • temperate-still
  • temperate-light
  • temperate-windy
  • warm-still
  • warm-light
  • warm-windy

Grazie agli incroci di funzionalità, il modello può apprendere le differenze di umore tra un freezing-windy giorno e un freezing-still giorno.

Se crei una caratteristica sintetica da due caratteristiche ciascuna con molti bucket diversi, l'intersezione delle caratteristiche risultante avrà un numero enorme di combinazioni possibili. Ad esempio, se una funzionalità ha 1000 bucket e l'altra ne ha 2000, l'incrociato delle caratteristiche risultante avrà 2.000.000 bucket.

Formalmente, una croce è un prodotto cartesiano.

Gli incroci di caratteristiche vengono utilizzati principalmente con i modelli lineari e raramente con le reti neurali.

e applicazione del feature engineering.

#fundamentals
#TensorFlow

Un processo che prevede i seguenti passaggi:

  1. Determinare quali caratteristiche potrebbero essere utili per addestrare un modello.
  2. Convertire i dati non elaborati dal set di dati in versioni efficienti di queste caratteristiche.

Ad esempio, potresti determinare che temperature potrebbe essere una funzionalità utile. Poi, potresti sperimentare il bucketing per ottimizzare le informazioni che il modello può apprendere da diversi intervalli temperature.

Il feature engineering a volte viene chiamato estrazione delle caratteristiche o caratterizzazione.

insieme di funzionalità

#fundamentals

Il gruppo di funzionalità su cui viene addestrato il modello di machine learning. Ad esempio, il codice postale, le dimensioni e le condizioni della proprietà potrebbero comprendere un semplice set di caratteristiche per un modello che prevede i prezzi delle abitazioni.

vettore di caratteristiche

#fundamentals

L'array di valori feature che comprende un esempio. Il vettore di caratteristiche viene inserito durante l'addestramento e durante l'inferenza. Ad esempio, il vettore di caratteristiche per un modello con due caratteristiche discrete potrebbe essere:

[0.92, 0.56]

Quattro livelli: uno di input, due nascosti e uno di output.
          Il livello di input contiene due nodi, uno contenente il valore 0,92 e l&#39;altro contenente il valore 0,56.

Ogni esempio fornisce valori diversi per il vettore di caratteristiche, quindi il vettore di caratteristiche per l'esempio successivo potrebbe essere:

[0.73, 0.49]

Il Feature engineering determina come rappresentare le caratteristiche nel vettore di caratteristiche. Ad esempio, una caratteristica categorica binaria con cinque valori possibili potrebbe essere rappresentata con la codifica one-hot. In questo caso, la porzione del vettore di caratteristiche per un esempio specifico sarebbe composta da quattro zeri e un singolo 1,0 nella terza posizione, come segue:

[0.0, 0.0, 1.0, 0.0, 0.0]

Per fare un altro esempio, supponi che il tuo modello sia costituito da tre caratteristiche:

  • una caratteristica categorica binaria con cinque possibili valori rappresentati con la codifica one-hot; ad esempio: [0.0, 1.0, 0.0, 0.0, 0.0]
  • un'altra caratteristica categorica binaria con tre possibili valori rappresentati con la codifica one-hot; ad esempio: [0.0, 0.0, 1.0]
  • un elemento con rappresentazione in virgola mobile; ad esempio: 8.3.

In questo caso, il vettore di caratteristiche per ogni esempio è rappresentato da nove valori. Dati i valori di esempio nell'elenco precedente, il vettore di caratteristiche sarebbe:

0.0
1.0
0.0
0.0
0.0
0.0
0.0
1.0
8.3

ciclo di feedback

#fundamentals

Nel machine learning, una situazione in cui le previsioni di un modello influiscono sui dati di addestramento per lo stesso modello o per un altro. Ad esempio, un modello che consiglia i film influirà sui film visti dalle persone, il che influirà poi sui modelli successivi per i film consigliati.

G

generalizzazione

#fundamentals

La capacità di un modello di eseguire previsioni corrette su dati nuovi, non visti in precedenza. Un modello in grado di generalizzare è l'opposto di un modello di overfitting.

curva di generalizzazione

#fundamentals

Un grafico sia della perdita di addestramento sia della perdita della convalida in funzione del numero di iterazioni.

Una curva di generalizzazione può aiutarti a rilevare un possibile overfitting. Ad esempio, la seguente curva di generalizzazione suggerisce l'overfitting, poiché la perdita di convalida diventa di fatto molto più elevata rispetto alla perdita di addestramento.

Un grafico cartesiano in cui l&#39;asse y è etichettato come perdita e l&#39;asse x è etichettato come iterazioni. Vengono visualizzati due trame. Un grafico mostra la perdita di addestramento e l&#39;altro mostra la perdita di convalida.
          I due grafici iniziano in modo simile, ma la perdita di addestramento alla fine cala molto più in basso rispetto a quella di convalida.

discesa del gradiente

#fundamentals

Una tecnica matematica per ridurre al minimo la perdita. La discesa del gradiente regola in modo iterativo i ponderazioni e i bias, trovando gradualmente la combinazione migliore per ridurre al minimo la perdita.

La discesa del gradiente è più antica, molto più antica del machine learning.

dato di fatto

#fundamentals

Realtà.

Ciò che è realmente accaduto.

Ad esempio, prendi in considerazione un modello di classificazione binaria che prevede se uno studente al primo anno di università laureerà entro sei anni. I dati empirici reali di questo modello sono se lo studente si è effettivamente laureato in sei anni.

V

strato nascosto

#fundamentals

Un livello in una rete neurale tra il livello di input (le caratteristiche) e il livello di output (la previsione). Ogni livello nascosto è costituito da uno o più neuroni. Ad esempio, la seguente rete neurale contiene due livelli nascosti, il primo con tre neuroni e il secondo con due neuroni:

Quattro strati. Il primo livello è un livello di input contenente due caratteristiche. Il secondo è uno nascosto contenente tre neuroni. Il terzo è uno nascosto contenente due neuroni. Il quarto livello è uno di output. Ogni caratteristica contiene tre bordi, ognuno dei quali rimanda a un neurone diverso nel secondo livello. Ciascuno dei neuroni del secondo strato
          
          contiene due bordi, ognuno dei quali rimanda a un neurone diverso nel terzo strato. Ciascuno dei neuroni nel terzo livello contiene un bordo, ciascuno che punta al livello di output.

Una rete neurale profonda contiene più di un livello nascosto. L'illustrazione precedente è una rete neurale profonda perché il modello contiene due livelli nascosti.

iperparametro

#fundamentals

Le variabili che tu o un servizio di ottimizzazione degli iperparametri regolari durante le successive esecuzioni di addestramento di un modello. Ad esempio, il tasso di apprendimento è un iperparametro. Puoi impostare il tasso di apprendimento su 0,01 prima di una sessione di addestramento. Se determini che 0,01 è troppo alto, potresti impostare il tasso di apprendimento su 0,003 per la prossima sessione di addestramento.

Al contrario, i parametri sono i vari ponderazioni e bias che il modello apprende durante l'addestramento.

I

in modo indipendente e identico (i.d.)

#fundamentals

Dati estratti da una distribuzione che non cambia e in cui ogni valore tracciato non dipende da valori tracciati in precedenza. L'ID è il modello ideale del machine learning, un costrutto matematico utile che non si trova quasi mai nel mondo reale. Ad esempio, la distribuzione dei visitatori di una pagina web può essere, ad esempio, in un breve periodo di tempo, ovvero la distribuzione non cambia in questo breve periodo e la visita di una persona è generalmente indipendente dalla visita di un altro utente. Tuttavia, se espandi questo periodo di tempo, potrebbero apparire differenze stagionali nei visitatori della pagina web.

Vedi anche nonstationarity.

inferenza

#fundamentals

Nel machine learning, il processo di previsione tramite l'applicazione di un modello addestrato ad esempi non etichettati.

L'inferenza ha un significato leggermente diverso nelle statistiche. Per maggiori dettagli, vedi l' articolo di Wikipedia sull'inferenza statistica.

livello di input

#fundamentals

Il livello di una rete neurale che contiene il vettore di caratteristiche. In altre parole, il livello di input fornisce esempi per l'addestramento o l'inferenza. Ad esempio, il livello di input nella seguente rete neurale è costituito da due caratteristiche:

Quattro livelli: uno di input, due livelli nascosti e uno di output.

interpretabilità

#fundamentals

La capacità di spiegare o presentare il ragionamento di un modello di ML in termini comprensibili per un essere umano.

La maggior parte dei modelli di regressione lineare, ad esempio, sono altamente interpretabili. Devi semplicemente esaminare i pesi addestrati per ogni funzionalità. Anche le foreste decisionali sono altamente interpretabili. Alcuni modelli, tuttavia, richiedono una visualizzazione sofisticata per diventare interpretabile.

Puoi utilizzare lo strumento di interpretabilità dell'apprendimento (LIT) per interpretare i modelli ML.

iterazione

#fundamentals

Un singolo aggiornamento dei parametri del modello, ovvero le ponderazioni e i bias del modello, durante l'addestramento. La dimensione batch determina il numero di esempi elaborati dal modello in una singola iterazione. Ad esempio, se la dimensione del batch è 20, il modello elabora 20 esempi prima di regolare i parametri.

Durante l'addestramento di una rete neurale, una singola iterazione prevede i seguenti due passaggi:

  1. Un passaggio in avanti per valutare la perdita su un singolo batch.
  2. Un passaggio a ritroso (backpropagazione) per regolare i parametri del modello in base alla perdita e al tasso di apprendimento.

L

Regolarizzazione L0

#fundamentals

Un tipo di regolarizzazione che penalizza il numero totale di ponderazioni diverse da zero in un modello. Ad esempio, un modello con 11 ponderazioni diverse da zero verrebbe penalizzato più di un modello simile con 10 ponderazioni diverse da zero.

La regolarizzazione L0 è a volte chiamata regolarizzazione L0-norm.

Perdita L1

#fundamentals

Una funzione di perdita che calcola il valore assoluto della differenza tra i valori effettivi dell'etichetta e i valori previsti da un modello. Ad esempio, ecco il calcolo della perdita L1 per un batch di cinque esempi:

Valore effettivo dell'esempio Valore previsto del modello Valore assoluto del delta
7 6 1
5 4 1
8 11 3
4 6 2
9 8 1
  8 = perdita L1

La perdita L1 è meno sensibile ai outlier rispetto alla perdita L2.

L'errore assoluto medio è la perdita media di L1 per esempio.

Regolarizzazione L1

#fundamentals

Un tipo di regolarizzazione che penalizza le ponderazioni in proporzione alla somma del loro valore assoluto. La regolarizzazione L1 aiuta a portare a 0 esattamente 0 le ponderazioni di funzionalità non pertinenti o poco pertinenti. Una funzionalità con peso pari a 0 viene effettivamente rimossa dal modello.

Al contrario, la regolarizzazione L2.

Perdita L2

#fundamentals

Una funzione di perdita che calcola il quadrato della differenza tra i valori effettivi dell'etichetta e i valori previsti da un modello. Ad esempio, ecco il calcolo della perdita L2 per un batch di cinque esempi:

Valore effettivo dell'esempio Valore previsto del modello Quadrato del delta
7 6 1
5 4 1
8 11 9
4 6 4
9 8 1
  16 = perdita L2

A causa dello squaring, la perdita L2 amplifica l'influenza dei outlier. In altre parole, la perdita di L2 reagisce più fortemente alle previsioni errate rispetto alla perdita di L1. Ad esempio, la perdita L1 per il batch precedente sarebbe 8 anziché 16. Nota che un singolo outlier prende in considerazione 9 su 16.

I modelli di regressione in genere utilizzano la perdita L2 come funzione di perdita.

L'errore quadratico medio è la perdita media L2 per esempio. Perdita quadrata è un altro nome per la sconfitta di L2.

Regolarizzazione L2

#fundamentals

Un tipo di regolarizzazione che penalizza le ponderazioni in proporzione alla somma dei quadrati delle ponderazioni. La regolarizzazione L2 aiuta ad aumentare le ponderazioni outlier (con valori positivi o bassi negativi) più vicini a 0, ma non addirittura a 0. Le caratteristiche con valori molto vicini a 0 rimangono nel modello, ma non influiscono molto sulla previsione del modello.

La regolarizzazione L2 migliora sempre la generalizzazione nei modelli lineari.

Al contrario, la regolarizzazione L1.

o l'etichetta.

#fundamentals

Nel machine learning supervisionato, la parte "risposta" o "risultato" di un esempio.

Ogni esempio etichettato è costituito da una o più funzionalità e un'etichetta. Ad esempio, in un set di dati per il rilevamento di spam, l'etichetta probabilmente sarà "spam" o "non spam". In un set di dati sulle precipitazioni, l'etichetta potrebbe essere la quantità di pioggia caduta in un determinato periodo.

esempio con etichetta

#fundamentals

Un esempio che contiene una o più funzionalità e un'etichetta. Ad esempio, la tabella seguente mostra tre esempi etichettati di un modello di valutazione delle case, ciascuno con tre caratteristiche e un'etichetta:

Numero di camere Numero di bagni Età della famiglia Prezzo interno (etichetta)
3 2 15 345.000 $
2 1 72 179.000 $
4 2 34 392.000 $

Nel machine learning supervisionato, i modelli vengono addestrati sulla base di esempi etichettati ed eseguire previsioni su esempi non etichettati.

Confronta l'esempio etichettato con esempi non etichettati.

lambda

#fundamentals

Sinonimo di tasso di regolarizzazione.

Lambda è un termine sovraccarico. Qui ci concentriamo sulla definizione del termine all'interno della regolarizzazione.

strato

#fundamentals

Un insieme di neuroni in una rete neurale. Esistono tre tipi di livelli comuni:

Ad esempio, la seguente illustrazione mostra una rete neurale con un livello di input, due livelli nascosti e uno di output:

Una rete neurale con un livello di input, due livelli nascosti e uno di output. Il livello di input è costituito da due elementi. Il primo strato nascosto è costituito da tre neuroni e il secondo strato nascosto da due neuroni. Il livello di output è costituito da un singolo nodo.

In TensorFlow, i livelli sono anche funzioni Python che utilizzano i Tensor e le opzioni di configurazione come input e producono altri tensori come output.

tasso di apprendimento

#fundamentals

Un numero in virgola mobile che indica all'algoritmo di discesa del gradiente con che intensità regolare le ponderazioni e i bias per ogni iterazione. Ad esempio, un tasso di apprendimento pari a 0,3 modificherebbe le ponderazioni e i bias tre volte in modo più efficace rispetto a un tasso di apprendimento pari a 0,1.

Il tasso di apprendimento è un iperparametro fondamentale. Se imposti un tasso di apprendimento troppo basso, l'addestramento richiederà troppo tempo. Se imposti il tasso di apprendimento troppo alto, la discesa del gradiente spesso fa fatica a raggiungere la convergenza.

lineare

#fundamentals

Una relazione tra due o più variabili che può essere rappresentata esclusivamente tramite addizione e moltiplicazione.

Il grafico di una relazione lineare è una linea.

In contrasto con il modello non lineare.

modello lineare

#fundamentals

Un model che assegna una model per model per effettuare model. I modelli lineari incorporano anche un bias. Al contrario, la relazione tra le caratteristiche e le previsioni nei modelli di profondità è generalmente non lineare.

I modelli lineari sono di solito più facili da addestrare e più interpretabili rispetto ai modelli approfonditi. Tuttavia, i modelli profondi sono in grado di apprendere relazioni complesse tra le caratteristiche.

La regressione lineare e la regressione logistica sono due tipi di modelli lineari.

regressione lineare

#fundamentals

Un tipo di modello di machine learning in cui si verificano entrambe le seguenti condizioni:

  • Il modello è lineare.
  • La previsione è un valore in virgola mobile. Questa è la parte della regressione della regressione lineare.

Confrontare la regressione lineare con la regressione logistica. Inoltre, puoi mettere a confronto la regressione con la classificazione.

regressione logistica

#fundamentals

Un tipo di modello di regressione che prevede una probabilità. I modelli di regressione logistica hanno le seguenti caratteristiche:

  • L'etichetta è categorical. Il termine regressione logistica di solito si riferisce alla regressione logistica binaria, ovvero a un modello che calcola le probabilità per le etichette con due valori possibili. Una variante meno comune, la regressione logistica multinomiale, calcola le probabilità delle etichette con più di due valori possibili.
  • La funzione di perdita durante l'addestramento è Log Loss. È possibile inserire più unità di perdita log in parallelo per le etichette con più di due valori possibili.
  • Il modello ha un'architettura lineare, non una rete neurale profonda. Tuttavia, la parte restante di questa definizione si applica anche ai modelli diretti che prevedono le probabilità per le etichette categoriche.

Ad esempio, considera un modello di regressione logistica che calcola la probabilità che un'email di input sia spam o non spam. Durante l'inferenza, supponiamo che il modello preveda 0,72. Di conseguenza, il modello stima:

  • Una probabilità del 72% che l'email sia spam.
  • Una probabilità del 28% che l'email non sia spam.

Un modello di regressione logistica utilizza la seguente architettura in due fasi:

  1. Il modello genera una previsione non elaborata (y') applicando una funzione lineare delle caratteristiche di input.
  2. Il modello utilizza questa previsione non elaborata come input di una funzione sigmoidale, che converte la previsione non elaborata in un valore compreso tra 0 e 1, esclusi.

Come qualsiasi modello di regressione, un modello di regressione logistica prevede un numero, Tuttavia, questo numero diventa generalmente parte di un modello di classificazione binario come segue:

  • Se il numero previsto è maggiore della soglia di classificazione, il modello di classificazione binario prevede la classe positiva.
  • Se il numero previsto è minore della soglia di classificazione, il modello di classificazione binario prevede la classe negativa.

Log Loss

#fundamentals

La funzione di perdita utilizzata nella regressione logistica binaria.

log-ods

#fundamentals

Il logaritmo delle probabilità di un evento.

perdita

#fundamentals

Durante l'addestramento di un modello supervisionato, una misura di quanto dista la previsione di un modello rispetto alla sua etichetta.

Una funzione di perdita calcola la perdita.

curva di perdita

#fundamentals

Un grafico della perdita in funzione del numero di iterazioni di addestramento. Il seguente diagramma mostra una tipica curva di perdita:

Un grafico cartesiano della perdita rispetto alle iterazioni di addestramento, che mostra un rapido calo della perdita per le iterazioni iniziali, seguito da un calo graduale e quindi da una pendenza piatta durante le iterazioni finali.

Le curve di perdita possono aiutarti a determinare quando il tuo modello è convergente o overfitting.

Le curve di perdita possono tracciare tutti i seguenti tipi di perdita:

Vedi anche curva di generalizzazione.

funzione "loss"

#fundamentals

Durante l'addestramento o il test, una funzione matematica che calcola la perdita su un batch di esempi. Una funzione loss restituisce una perdita inferiore per i modelli che eseguono previsioni corrette rispetto ai modelli che fanno previsioni errate.

L'obiettivo dell'addestramento è tipicamente di minimizzare la perdita restituita da una funzione di perdita.

Esistono molti tipi diversi di funzioni di perdita. Scegli la funzione di perdita appropriata per il tipo di modello che stai creando. Ad esempio:

L

machine learning

#fundamentals

Un programma o sistema che addestra un modello dai dati di input. Il modello addestrato può eseguire previsioni utili a partire da dati nuovi (mai visti prima) ricavati dalla stessa distribuzione utilizzata per addestrare il modello.

Il machine learning si riferisce anche al settore di studio relativo a questi programmi o sistemi.

classe di maggioranza

#fundamentals

L'etichetta più comune in un set di dati non bilanciato in base alla classe. Ad esempio, da un set di dati contenente il 99% di etichette negative e l'1% di etichette positive, le etichette negative sono la classe maggioritaria.

Sono invece opposti a classe di minoranza.

mini-batch

#fundamentals

Un piccolo sottoinsieme selezionato in modo casuale di un batch elaborato in un'unica iterazione. Le dimensioni del batch di un mini-batch in genere sono comprese tra 10 e 1000 esempi.

Supponiamo che l'intero set di addestramento (il batch completo) sia composto da 1000 esempi. Supponiamo inoltre di impostare la dimensione del batch di ogni mini-batch su 20. Di conseguenza, ogni iterazione determina la perdita su un 20 casuale dei 1000 esempi e quindi regola di conseguenza ponderazioni e bias.

È molto più efficiente calcolare la perdita in un mini-batch che in tutti gli esempi nel batch completo.

classe minoranza

#fundamentals

L'etichetta meno comune in un set di dati non bilanciato in base alla classe. Ad esempio, da un set di dati contenente il 99% di etichette negative e l'1% di etichette positive, le etichette positive sono la classe minoritaria.

Al contrario, con classe di maggioranza.

model

#fundamentals

In generale, qualsiasi costrutto matematico che elabora dati di input e restituisce un output. Detto in modo diverso, un modello è l'insieme di parametri e struttura necessari a un sistema per eseguire le previsioni. Nel machine learning supervisionato, un modello prende un esempio come input e deduce una previsione come output. Nel machine learning supervisionato, i modelli differiscono leggermente. Ad esempio:

  • Un modello di regressione lineare è costituito da un insieme di ponderazioni e un bias.
  • Un modello di rete neurale è costituito da:
    • Un insieme di livelli nascosti, ciascuno contenente uno o più neuroni.
    • Le ponderazioni e i bias associati a ogni neurone.
  • Un modello ad albero decisionale è costituito da:
    • La forma dell'albero, ovvero lo schema in cui le condizioni e le foglie sono collegate.
    • Le condizioni e le foglie.

Puoi salvare, ripristinare o creare copie di un modello.

Il machine learning non supervisionato genera anche modelli, in genere una funzione che può mappare un esempio di input al cluster più appropriato.

classificazione multiclasse

#fundamentals

Nell'apprendimento supervisionato, un problema di classificazione in cui il set di dati contiene più di due classi di etichette. Ad esempio, le etichette nel set di dati Iris devono essere una delle seguenti tre classi:

  • Iris setosa
  • Iris virginica
  • Iris versicolor

Un modello addestrato sul set di dati Iris che prevede il tipo di Iris su nuovi esempi esegue la classificazione multiclasse.

Al contrario, i problemi di classificazione che distinguono esattamente due classi sono i modelli di classificazione binaria. Ad esempio, un modello di email che prevede spam o non spam è un modello di classificazione binario.

Nei problemi di clustering, la classificazione multiclasse fa riferimento a più di due cluster.

N

classe esclusa

#fundamentals

Nella classificazione binaria, una classe viene chiamata positiva e l'altra negativa. La classe positiva è l'elemento o l'evento per cui il modello sta testando, mentre la classe negativa è l'altra possibilità. Ad esempio:

  • La classe negativa in un test medico potrebbe essere "non tumore".
  • La classe esclusa in un classificatore email potrebbe essere "non spam".

Al contrario, è classe positiva.

feed-forward

#fundamentals

Un model contenente almeno un model. Una rete neurale profonda è un tipo di rete neurale contenente più di un livello nascosto. Ad esempio, il diagramma seguente mostra una rete neurale profonda contenente due livelli nascosti.

Una rete neurale con un livello di input, due livelli nascosti e uno di output.

Ogni neurone in una rete neurale si connette a tutti i nodi nel livello successivo. Ad esempio, nel diagramma precedente, nota che ciascuno dei tre neuroni nel primo strato nascosto si connettono separatamente a entrambi i neuroni nel secondo strato nascosto.

Le reti neurali implementate sui computer vengono talvolta chiamate reti neurali artificiali per differenziarle dalle reti neurali presenti nel cervello e in altri sistemi nervosi.

Alcune reti neurali possono imitare relazioni non lineari molto complesse tra le diverse caratteristiche e l'etichetta.

Vedi anche rete neurale convoluzionale e rete neurale ricorrente.

neurone

#fundamentals

Nel machine learning, un'unità distinta all'interno di un livello nascosto di una rete neurale. Ogni neurone esegue la seguente azione in due fasi:

  1. Calcola la somma ponderata dei valori di input moltiplicata per le ponderazioni corrispondenti.
  2. Trasmette la somma ponderata come input a una funzione di attivazione.

Un neurone nel primo livello nascosto accetta gli input dai valori delle caratteristiche nel livello di input. Un neurone in qualsiasi livello nascosto oltre il primo accetta gli input dei neuroni nel precedente livello nascosto. Ad esempio, un neurone nel secondo strato nascosto accetta gli input dei neuroni nel primo strato nascosto.

L'illustrazione seguente evidenzia due neuroni e i relativi input.

Una rete neurale con un livello di input, due livelli nascosti e uno di output. Sono evidenziati due neuroni: uno nel primo livello nascosto e uno nel secondo livello nascosto. Il neurone evidenziato nel primo livello nascosto riceve input da entrambe le funzionalità nel livello di input. Il neurone evidenziato nel secondo livello nascosto riceve input da ciascuno dei tre neuroni nel primo livello nascosto.

Un neurone in una rete neurale imita il comportamento dei neuroni nel cervello e in altre parti del sistema nervoso.

nodo (rete neurale)

#fundamentals

Un neurone in uno livello nascosto.

non lineare

#fundamentals

Una relazione tra due o più variabili che non può essere rappresentata esclusivamente tramite l'addizione e la moltiplicazione. Una relazione lineare può essere rappresentata come una linea, mentre una relazione non lineare non può essere rappresentata come una linea. Prendi in considerazione due modelli, ciascuno correlato a una singola etichetta. Il modello a sinistra è lineare, mentre il modello a destra è non lineare:

Due trame. Un grafico è costituito da una linea, quindi si tratta di una relazione lineare.
          L&#39;altro grafico è a curva, perciò si tratta di una relazione non lineare.

nonstationarità

#fundamentals

Una funzionalità i cui valori cambiano in una o più dimensioni, in genere nel tempo. Ad esempio, considera i seguenti esempi di nonstationarità:

  • Il numero di costumi da bagno venduti in un determinato negozio varia in base alla stagione.
  • La quantità di un frutto raccolto in una determinata regione è pari a zero per gran parte dell'anno, ma è elevata per un breve periodo.
  • A causa del cambiamento climatico, le temperature medie annuali stanno cambiando.

Sono in contrasto con la stationarità.

normalizzazione

#fundamentals

In generale, il processo di conversione dell'intervallo effettivo di una variabile in un intervallo standard di valori, ad esempio:

  • Da -1 a +1
  • Da 0 a 1
  • la distribuzione normale

Ad esempio, supponiamo che l'intervallo effettivo di valori di una determinata funzionalità sia compreso tra 800 e 2400. Nell'ambito del feature engineering, puoi normalizzare i valori effettivi fino a un intervallo standard, ad esempio da -1 a +1.

La normalizzazione è un'attività comune nel feature engineering. In genere i modelli vengono addestrati più velocemente (e producono previsioni migliori) quando ogni caratteristica numerica nel vettore di caratteristiche ha all'incirca lo stesso intervallo.

dati numerici

#fundamentals

Funzionalità rappresentate come numeri interi o a valore reale. Ad esempio, un modello di valutazione di una casa rappresenterebbe probabilmente le dimensioni di una casa (in piedi quadrati o metri quadrati) come dati numerici. La rappresentazione di una caratteristica come dati numerici indica che i valori dell'elemento hanno una relazione matematica con l'etichetta. In altre parole, il numero di metri quadrati di una casa ha probabilmente una relazione matematica con il suo valore.

Non tutti i dati interi devono essere rappresentati come dati numerici. Ad esempio, in alcune parti del mondo i codici postali sono numeri interi. Tuttavia, i codici postali interi non devono essere rappresentati come dati numerici nei modelli. Questo perché un codice postale 20000 non è due (o metà) più potente di un codice postale di 10.000. Inoltre, sebbene diversi codici postali corrispondano a valori immobiliari diversi, non possiamo presumere che i valori degli immobili per il codice postale 20000 abbiano il doppio del valore degli immobili per il codice postale 10000. I codici postali devono invece essere rappresentati come dati relativi alle categorie.

Le caratteristiche numeriche sono talvolta chiamate funzionalità continue.

O

offline

#fundamentals

Sinonimo di static.

inferenza offline

#fundamentals

Il processo di un modello che genera un batch di previsioni e quindi memorizzale (salvandole) nella cache. Le app possono quindi accedere alla previsione dedotta dalla cache anziché eseguire nuovamente il modello.

Prendiamo ad esempio un modello che genera le previsioni meteo locali (previsioni) una volta ogni 4 ore. Dopo l'esecuzione di ogni modello, il sistema memorizza nella cache tutte le previsioni meteo locali. Le app Meteo recuperano le previsioni dalla cache.

L'inferenza offline è anche chiamata inferenza statica.

Sono in contrasto con l'inferenza online.

codifica one-hot

#fundamentals

Rappresentare i dati categorici come un vettore in cui:

  • Un elemento è impostato su 1.
  • Tutti gli altri elementi sono impostati su 0.

La codifica one-hot viene comunemente utilizzata per rappresentare le stringhe o gli identificatori che hanno un insieme finito di valori possibili. Ad esempio, supponiamo che una determinata funzionalità di categoria denominata Scandinavia abbia cinque valori possibili:

  • "Danimarca"
  • "Svezia"
  • "Norvegia"
  • "Finlandia"
  • "Islanda"

La codifica one-hot potrebbe rappresentare ciascuno dei cinque valori nel seguente modo:

country Vettore
"Danimarca" 1 0 0 0 0
"Svezia" 0 1 0 0 0
"Norvegia" 0 0 1 0 0
"Finlandia" 0 0 0 1 0
"Islanda" 0 0 0 0 1

Grazie alla codifica one-hot, un modello può apprendere connessioni diverse in base a ciascuno dei cinque paesi.

La rappresentazione di una funzionalità come dati numerici è un'alternativa alla codifica one-hot. Sfortunatamente, rappresentare numericamente i paesi scandinavi non è una buona scelta. Ad esempio, considera la seguente rappresentazione numerica:

  • "Danimarca" è 0
  • "Svezia" corrisponde a 1
  • "Norvegia" è 2
  • "Finlandia" è 3
  • "Islanda" 4

Con la codifica numerica, un modello interpreta i numeri non elaborati matematicamente e prova ad addestrarsi con questi numeri. Tuttavia, l'Islanda non corrisponde al doppio (o la metà) di qualcosa rispetto alla Norvegia, quindi il modello trarrebbe alcune strane conclusioni.

uno contro tutti

#fundamentals

Dato un problema di classificazione con N classi, una soluzione composta da N classificatori binari separati, ovvero un classificatore binario per ogni risultato possibile. Ad esempio, a fronte di un modello che classifica esempi come animali, vegetali o minerali, una soluzione "uno contro tutti" fornirebbe i seguenti tre classificatori binari distinti:

  • animale/non animale
  • ortaggi e non verdure
  • minerale / non minerale

online

#fundamentals

Sinonimo di dynamic.

inferenza online

#fundamentals

Generare previsioni on demand. Ad esempio, supponi che un'app passi l'input a un modello e invii una richiesta per una previsione. Un sistema che utilizza l'inferenza online risponde alla richiesta eseguendo il modello (e restituendo la previsione all'app).

È diverso con l'inferenza offline.

livello di output

#fundamentals

Il livello "finale" di una rete neurale. Il livello di output contiene la previsione.

L'illustrazione seguente mostra una piccola rete neurale profonda con un livello di input, due livelli nascosti e uno di output:

Una rete neurale con un livello di input, due livelli nascosti e uno di output. Il livello di input è costituito da due elementi. Il primo strato nascosto è costituito da tre neuroni e il secondo strato nascosto da due neuroni. Il livello di output è costituito da un singolo nodo.

overfitting

#fundamentals

Creazione di un model che corrisponda così da vicino ai model che il modello non riesce a effettuare previsioni corrette sui nuovi dati.

La regolarizzazione può ridurre l'overfitting. Anche la formazione su un set di addestramento ampio e diversificato può ridurre l'overfitting.

P

panda

#fundamentals

Un'API di analisi dei dati orientata alle colonne basata su numpy. Molti framework di machine learning, tra cui TensorFlow, supportano le strutture di dati pandas. Per ulteriori dettagli, consulta la documentazione di Panda.

parametro

#fundamentals

Le ponderazioni e i bias che un modello apprende durante l'addestramento. Ad esempio, in un modello di regressione lineare, i parametri sono costituiti dal bias (b) e da tutte le ponderazioni (w1, w2 e così via) nella seguente formula:

$$y' = b + w_1x_1 + w_2x_2 + … w_nx_n$$

Al contrario, gli iperparametri sono i valori che tu (o un servizio di rotazione iperparametri) fornisci al modello. Ad esempio, il tasso di apprendimento è un iperparametro.

classe positiva

#fundamentals

Il corso per cui stai eseguendo il test.

Ad esempio, la classe positiva in un modello di cancro potrebbe essere "tumore". La classe positiva in un classificatore di email potrebbe essere "spam".

Sono in contrasto con class negative.

post-elaborazione

#fairness
#fundamentals

Modificare l'output di un modello dopo che quest'ultimo è stato eseguito. La post-elaborazione può essere utilizzata per applicare vincoli di equità senza modificare i modelli stessi.

Ad esempio, si potrebbe applicare la post-elaborazione a un classificatore binario impostando una soglia di classificazione in modo che venga mantenuta uguaglianza di opportunità per alcuni attributi controllando che il tasso di veri positivi sia lo stesso per tutti i valori di quell'attributo.

la previsione.

#fundamentals

L'output di un modello. Ad esempio:

  • La previsione di un modello di classificazione binaria è la classe positiva o la classe negativa.
  • La previsione di un modello di classificazione multiclasse è una classe.
  • La previsione di un modello di regressione lineare è un numero.

etichette proxy

#fundamentals

Dati utilizzati per approssimare le etichette non direttamente disponibili in un set di dati.

Ad esempio, supponiamo di dover addestrare un modello per prevedere il livello di stress dei dipendenti. Il set di dati contiene molte funzionalità predittive, ma non contiene un'etichetta denominata livello di stress. Immediatamente, scegli "incidenti sul lavoro" come etichetta proxy per il livello di stress. Dopotutto, i dipendenti più stressati subiscono più incidenti che tranquillizzarli. Oppure sì? Forse gli incidenti sul posto di lavoro in realtà aumentano e diminuiscono per diversi motivi.

Come secondo esempio, supponi di voler piovere? come etichetta booleana per il set di dati, ma che non contiene dati relativi alle piogge. Se sono disponibili delle fotografie, potresti creare immagini di persone che trasportano ombrelli come etichetta proxy per sta piovendo? È una buona etichetta proxy? Forse, ma in alcune culture è più probabile che portano gli ombrelli per proteggersi dal sole piuttosto che dalla pioggia.

Le etichette del proxy sono spesso imperfette. Se possibile, scegli le etichette effettive anziché le etichette proxy. Detto questo, quando un'etichetta effettiva non è presente, sceglila con molta attenzione, scegliendo l'etichetta proxy meno orribile.

R

RAG

#fundamentals

Abbreviazione di retrieval-augmented Generation.

votante

#fundamentals

Una persona che fornisce etichette per esempi. "Annotator" è un altro nome che indica il responsabile delle valutazioni.

Unità lineare rettificata (ReLU)

#fundamentals

Una funzione di attivazione con il seguente comportamento:

  • Se l'input è negativo o pari a zero, l'output è 0.
  • Se l'input è positivo, l'output corrisponde all'input.

Ad esempio:

  • Se l'input è -3, l'output è 0.
  • Se l'input è +3, l'output è 3,0.

Ecco un diagramma della ReLU:

Un appezzamento cartesiano di due linee. La prima riga ha un valore y costante pari a 0, lungo l&#39;asse x da -infinito,0 a 0,-0.
          La seconda riga inizia da 0,0. Questa linea ha una pendenza pari a +1, quindi va da 0,0 a +infinito,+infinito.

ReLU è una funzione di attivazione molto diffusa. Nonostante il suo comportamento semplice, la ReLU consente comunque a una rete neurale di apprendere relazioni non lineari tra le caratteristiche e l'etichetta.

modello di regressione

#fundamentals

Informale, un modello che genera una previsione numerica. Al contrario, un modello di classificazione genera una previsione della classe. Ad esempio, quelli riportati di seguito sono tutti modelli di regressione:

  • Modello che prevede il valore di una certa casa, ad esempio 423.000 euro.
  • Modello che prevede l'aspettativa di vita di un determinato albero, ad esempio 23,2 anni.
  • un modello che prevede la quantità di pioggia che cadrà in una determinata città nelle sei ore successive, ad esempio 45,7 mm.

Due tipi comuni di modelli di regressione sono:

  • La regressione lineare, che trova la linea più adatta ai valori delle etichette alle caratteristiche.
  • Regressione logistica, che genera una probabilità compresa tra 0,0 e 1,0 che un sistema in genere mappa a una previsione di classe.

Non tutti i modelli che forniscono previsioni numeriche sono modelli di regressione. In alcuni casi, una previsione numerica è in realtà solo un modello di classificazione che ha nomi di classi numeriche. Ad esempio, un modello che prevede un codice CAP numerico è un modello di classificazione, non un modello di regressione.

regolarizzazione

#fundamentals

Qualsiasi meccanismo che riduca l'overfitting. I tipi più comuni di regolarizzazione includono:

La regolarizzazione può anche essere definita come la penalità sulla complessità di un modello.

tasso di regolarizzazione

#fundamentals

Un numero che specifica l'importanza relativa della regolarizzazione durante l'addestramento. Aumentare il tasso di regolarizzazione riduce l'overfitting, ma potrebbe ridurre la capacità predittiva del modello. Invece, ridurre o omettere il tasso di regolarizzazione aumenta l'overfitting.

ReLU

#fundamentals

Abbreviazione di Rectified Linear Unit.

RAG (retrieval-augmented Generation)

#fundamentals

Una tecnica per migliorare la qualità dell'output del modello linguistico di grandi dimensioni (LLM), basandolo su fonti di conoscenza recuperate dopo l'addestramento del modello. RAG migliora l'accuratezza delle risposte LLM fornendo all'LLM addestrato l'accesso a informazioni recuperate da knowledge base o documenti attendibili.

Tra le motivazioni più comuni per utilizzare la generazione avanzata ci sono:

  • Aumento dell'accuratezza oggettiva delle risposte generate da un modello.
  • Concedere al modello l'accesso alle conoscenze su cui non è stato addestrato.
  • Modifica delle conoscenze utilizzate dal modello.
  • Attivazione della citazione delle fonti da parte del modello.

Ad esempio, supponi che un'app di chimica utilizzi l'API PaLM per generare riepiloghi relativi alle query degli utenti. Quando il backend dell'app riceve una query, il backend:

  1. Cerca ("recupera") i dati pertinenti alla query dell'utente.
  2. Aggiunge ("arricchisci") i dati chimici pertinenti alla query dell'utente.
  3. Indica all'LLM di creare un riepilogo basato sui dati aggiunti.

Curva ROC (caratteristica operativa del ricevitore)

#fundamentals

Un grafico del tasso di veri positivi rispetto al tasso di falsi positivi per diverse soglie di classificazione nella classificazione binaria.

La forma di una curva ROC suggerisce la capacità di un modello di classificazione binaria di separare le classi positive da quelle negative. Supponiamo, ad esempio, che un modello di classificazione binaria separa perfettamente tutte le classi negative da tutte le classi positive:

Una riga numerica con 8 esempi positivi a destra e 7 esempi negativi a sinistra.

La curva ROC per il modello precedente appare come segue:

Una curva ROC. L&#39;asse x indica il tasso di falsi positivi e l&#39;asse y
 è il tasso di veri positivi. La curva ha una forma a L invertita. La curva inizia da (0,0,0,0) e va direttamente fino a (0,0,1,0). Quindi la curva va da (0,0,1,0) a (1,0,1,0).

Al contrario, l'illustrazione seguente mostra i valori di regressione logistica non elaborata per un modello terribile che non è in grado di separare le classi negative dalle classi positive:

Una riga numerica con esempi positivi e classi negative
          completamente mescolati.

La curva ROC per questo modello sarà la seguente:

Una curva ROC, che è in realtà una linea retta da (0.0,0.0)
          a (1.0,1.0).

Nel mondo reale, la maggior parte dei modelli di classificazione binaria separa in qualche misura le classi positive e negative, ma di solito non perfettamente. Di conseguenza, una tipica curva ROC rientra tra i due estremi:

Una curva ROC. L&#39;asse x indica il tasso di falsi positivi e l&#39;asse y
 è il tasso di veri positivi. La curva ROC si avvicina a un arco tremolante che attraversa i punti della bussola da ovest a nord.

Il punto su una curva ROC più vicina a (0,0,1,0) identifica in teoria la soglia di classificazione ideale. Tuttavia, molti altri problemi del mondo reale influenzano la scelta della soglia di classificazione ideale. Ad esempio, i falsi negativi forse sono più dolenti dei falsi positivi.

Una metrica numerica denominata AUC riassume la curva ROC in un singolo valore in virgola mobile.

Errore quadratico medio della radice (RMSE, Root Mean Squared Error)

#fundamentals

La radice quadrata dell'errore quadratico medio.

S

funzione sigmoidea

#fundamentals

Una funzione matematica che "schiaccia" un valore di input in un intervallo vincolato, in genere da 0 a 1 o da -1 a +1. In altre parole, puoi passare qualsiasi numero (due, un milione, miliardi negativi o qualsiasi cosa) a una sigmoide e l'output rimarrà nell'intervallo vincolato. Un diagramma della funzione di attivazione sigmoidale ha il seguente aspetto:

Un grafico curvo bidimensionale con valori x che coprono il dominio, dall&#39;infinito a +positivo, mentre i valori y coprono l&#39;intervallo da quasi 0 a quasi 1. Quando x è 0, y è 0,5. La pendenza della curva è sempre positiva, con la pendenza più alta a 0,0,5 e che decresce gradualmente man mano che aumenta il valore assoluto di x.

La funzione sigmoide ha diversi usi nel machine learning, tra cui:

softmax

#fundamentals

Una funzione che determina le probabilità per ogni possibile classe in un modello di classificazione multi-classe. La somma delle probabilità fino a esattamente 1,0. Ad esempio, la tabella seguente mostra in che modo la funzione softmax distribuisce diverse probabilità:

L'immagine è... Probability
cane 0,85
gatto 0,13
cavallo ,02

La funzione Softmax è anche chiamata softmax completa.

Sono invece opposti al campionamento dei candidati.

elemento sparso

#language
#fundamentals

Una feature i cui valori sono prevalentemente zero o vuoti. Ad esempio, una caratteristica che contiene un singolo valore 1 e un milione di valori 0 è scarsa. Al contrario, una caratteristica densa ha valori che non sono prevalentemente zero o vuoti.

Nel machine learning, un numero sorprendente di caratteristiche sono sparse. Le caratteristiche categoriche sono in genere caratteristiche sparse. Ad esempio, delle 300 possibili specie di alberi in una foresta, un singolo esempio potrebbe identificare solo un acero. Oppure, tra i milioni di video possibili in una raccolta video, un singolo esempio potrebbe identificare solo "Casablanca".

In un modello, in genere rappresenti caratteristiche sparse con codifica one-hot. Se la codifica one-hot è di grandi dimensioni, potresti aggiungere un livello di incorporamento oltre alla codifica one-hot per una maggiore efficienza.

rappresentazione sparsa

#language
#fundamentals

Memorizzazione solo delle posizioni degli elementi diversi da zero in una caratteristica sparsa.

Ad esempio, supponiamo che un elemento di categoria denominato species identifichi le 36 specie di alberi in una determinata foresta. Supponiamo inoltre che ogni esempio identifichi solo una singola specie.

Puoi utilizzare un vettore one-hot per rappresentare le specie degli alberi in ciascun esempio. Un vettore one-hot contiene un singolo elemento 1 (per rappresentare le specie di alberi in questione nell'esempio) e 35 0 (per rappresentare le 35 specie di alberi non presenti in quell'esempio). Di conseguenza, la rappresentazione one-hot di maple potrebbe avere il seguente aspetto:

Vettore in cui le posizioni da 0 a 23 contengono il valore 0, la posizione 24 contiene il valore 1 e le posizioni da 25 a 35 contengono il valore 0.

In alternativa, la rappresentazione sparsa identificherebbe semplicemente la posizione della specifica specie. Se maple si trova nella posizione 24, la rappresentazione sparsa di maple sarebbe semplicemente:

24

Nota che la rappresentazione sparsa è molto più compatta rispetto alla rappresentazione one-hot.

vettore sparso

#fundamentals

Un vettore i cui valori sono per lo più zeri. Vedi anche funzionalità scarse e sparsità.

perdita al quadrato

#fundamentals

Sinonimo di perdita L2.

static

#fundamentals

Qualcosa che viene fatto una volta sola anziché continuamente. I termini statici e offline sono sinonimi. Di seguito sono riportati alcuni utilizzi comuni dello spazio statico e offline nel machine learning:

  • modello statico (o modello offline) è un modello addestrato una volta e poi utilizzato per un po' di tempo.
  • L'addestramento statico (o addestramento offline) è il processo di addestramento di un modello statico.
  • L'inferenza statica (o inferenza offline) è un processo in cui un modello genera un batch di previsioni alla volta.

Invece, con dinamico.

inferenza statica

#fundamentals

Sinonimo di inferenza offline.

stazionarietà

#fundamentals

Una funzionalità i cui valori non cambiano in una o più dimensioni, in genere nel tempo. Ad esempio, una caratteristica i cui valori hanno lo stesso aspetto nel 2021 e nel 2023 presenta una stazionarità.

Nel mondo reale, sono davvero poche le caratteristiche che esibiscono stazionarietà. Anche le caratteristiche sinonimizzate di stabilità (come il livello del mare) cambiano nel tempo.

In contrasto con nonstationarity.

Discesa del gradiente stocastico (SGD)

#fundamentals

Un algoritmo di discesa del gradiente in cui la dimensione del batch è uno. In altre parole, SGD si addestra su un singolo esempio scelto in modo uniforme a caso da un set di addestramento.

machine learning supervisionato

#fundamentals

Addestramento di un model utilizzando le model e le relative model. Il machine learning supervisionato è analogo all'apprendimento di una materia mediante lo studio di una serie di domande e delle risposte corrispondenti. Dopo aver imparato la mappatura tra domande e risposte, uno studente può fornire risposte a nuove domande (mai viste prima) sullo stesso argomento.

Confronta con il machine learning non supervisionato.

funzionalità sintetica

#fundamentals

Una funzionalità non presente tra le caratteristiche di input, ma combinata da una o più di esse. I metodi per creare caratteristiche sintetiche includono quanto segue:

  • Bucket una funzionalità continua in fasce di intervalli.
  • Creazione di un incrocio di caratteristiche.
  • Moltiplicare (o dividere) un valore di ciascuna caratteristica per altri valori o per se stesso. Ad esempio, se a e b sono funzionalità di input, di seguito sono riportati alcuni esempi di funzionalità sintetiche:
    • ab
    • 2
  • Applicazione di una funzione trascendentale a un valore dell'elemento. Ad esempio, se c è una funzionalità di input, di seguito sono riportati alcuni esempi di caratteristiche sintetiche:
    • sin(c)
    • ln(c)

Le funzionalità create solo tramite la normalizzazione o la scalabilità non sono considerate funzionalità sintetiche.

T

perdita di prova

#fundamentals

Una metrica che rappresenta la perdita di un modello rispetto al set di test. Quando si crea un model, di solito provi a ridurre al minimo la perdita di test. Questo perché una bassa perdita di test è un segnale di qualità più forte rispetto a una perdita di addestramento bassa o una perdita di convalida bassa.

Un ampio divario tra la perdita di test e la perdita di addestramento o la perdita di convalida a volte indica che è necessario aumentare il tasso di regolarizzazione.

formazione

#fundamentals

Il processo di determinazione dei parametri (ponderazioni e bias) ideali che comprendono un modello. Durante l'addestramento, un sistema legge gli esempi e regola gradualmente i parametri. L'addestramento utilizza ogni esempio da un paio di volte a miliardi di volte.

perdita di addestramento

#fundamentals

Una metrica che rappresenta la perdita di un modello durante una specifica iterazione di addestramento. Ad esempio, supponiamo che la funzione di perdita sia Errore quadratico medio. Forse la perdita di addestramento (errore quadratico medio) per la decima iterazione è 2,2, mentre la perdita di addestramento per la 100° iterazione è 1,9.

Una curva di perdita traccia la perdita di addestramento rispetto al numero di iterazioni. Una curva di perdita fornisce i seguenti suggerimenti sull'addestramento:

  • Una pendenza verso il basso indica che il modello è in miglioramento.
  • Un'inclinazione verso l'alto indica che il modello sta peggiorando.
  • Una pendenza piatta implica che il modello ha raggiunto la convergenza.

Ad esempio, la seguente curva di perdita in qualche modo idealizzata mostra:

  • Una ripida pendenza verso il basso durante le iterazioni iniziali, il che implica un rapido miglioramento del modello.
  • Un pendenza che si appiattisce gradualmente (ma ancora verso il basso) fino alla fine dell'addestramento, il che implica un miglioramento continuo del modello a un ritmo leggermente più lento rispetto alle iterazioni iniziali.
  • Una pendenza piatta verso la fine dell'addestramento, che suggerisce una convergenza.

Il grafico della perdita di addestramento rispetto alle iterazioni. Questa curva di perdita inizia con una ripida pendenza. La pendenza si appiattisce gradualmente fino a quando non diventa zero.

Sebbene la perdita di addestramento sia importante, consulta anche la generalizzazione.

disallineamento addestramento/produzione

#fundamentals

La differenza tra le prestazioni di un modello durante l'addestramento e quelle dello stesso modello durante la pubblicazione.

set di addestramento

#fundamentals

Il sottoinsieme del set di dati utilizzato per addestrare un modello.

Tradizionalmente, gli esempi nel set di dati sono suddivisi nei seguenti tre sottoinsiemi distinti:

Idealmente, ogni esempio nel set di dati dovrebbe appartenere a uno solo dei sottoinsiemi precedenti. Ad esempio, un singolo esempio non deve appartenere al set di addestramento e a quello di convalida.

vero negativo (TN)

#fundamentals

Un esempio in cui il modello prevede correttamente la classe negativa. Ad esempio, il modello deduce che un determinato messaggio email non è spam e che in realtà quel messaggio non è spam.

vero positivo (TP)

#fundamentals

Un esempio in cui il modello prevede correttamente la classe positiva. Ad esempio, il modello deduce che un determinato messaggio email è spam e che quel messaggio è in realtà spam.

tasso di veri positivi (TPR)

#fundamentals

Sinonimo di recall. Ossia:

$$\text{true positive rate} = \frac{\text{true positives}} {\text{true positives} + \text{false negatives}}$$

Il tasso di veri positivi è l'asse y in una curva ROC.

U

underfitting

#fundamentals

Generare un model con scarsa capacità predittiva perché il modello non ha acquisito completamente la complessità dei dati di addestramento. Molti problemi possono causare un overfitting, tra cui:

esempio senza etichetta

#fundamentals

Un esempio che contiene le funzionalità ma nessuna etichetta. Ad esempio, la tabella seguente mostra tre esempi senza etichetta di un modello di valutazione delle abitazioni, ciascuno con tre caratteristiche ma nessun valore della casa:

Numero di camere Numero di bagni Età della famiglia
3 2 15
2 1 72
4 2 34

Nel machine learning supervisionato, i modelli vengono addestrati sulla base di esempi etichettati ed eseguire previsioni su esempi non etichettati.

Nell'apprendimento semi-supervisionato e non supervisionato, vengono utilizzati esempi non etichettati durante l'addestramento.

Contrasta l'esempio senza etichetta con l'esempio etichettato.

machine learning non supervisionato

#clustering
#fundamentals

Addestramento di un model per trovare pattern in un set di dati, in genere un set di dati non etichettato.

L'uso più comune del machine learning non supervisionato è clustering i dati in gruppi di esempi simili. Ad esempio, un algoritmo di machine learning non supervisionato è in grado di raggruppare i brani in base a varie proprietà della musica. I cluster risultanti possono diventare un input per altri algoritmi di machine learning (ad esempio, per un servizio di suggerimenti musicali). Il clustering può essere utile quando le etichette utili sono scarse o assenti. Ad esempio, in domini quali anti-abuso e attività fraudolenta, i cluster possono aiutare gli esseri umani a comprendere meglio i dati.

Sono invece a confronto con il machine learning con supervisione.

V

validation

#fundamentals

La valutazione iniziale della qualità di un modello. La convalida verifica la qualità delle previsioni di un modello in base al set di convalida.

Poiché il set di convalida è diverso dal set di addestramento, la convalida aiuta a evitare l'overfitting.

Potrebbe essere considerata la valutazione del modello in base al set di convalida come prima fase di test e la valutazione del modello in base al set di test come seconda fase di test.

perdita di convalida

#fundamentals

Una metrica che rappresenta la perdita di un modello nel set di convalida durante una particolare iterazione di addestramento.

Vedi anche curva di generalizzazione.

set di convalida

#fundamentals

Il sottoinsieme del set di dati che esegue la valutazione iniziale rispetto a un modello addestrato. In genere, il modello addestrato viene valutato diverse volte rispetto al set di convalida prima di valutare il modello in base al set di test.

Tradizionalmente, dividi gli esempi nel set di dati nei seguenti tre sottoinsiemi distinti:

Idealmente, ogni esempio nel set di dati dovrebbe appartenere a uno solo dei sottoinsiemi precedenti. Ad esempio, un singolo esempio non deve appartenere al set di addestramento e a quello di convalida.

M

weight

#fundamentals

Il valore che un modello moltiplica per un altro valore. L'addestramento è il processo di determinazione dei pesi ideali di un modello; l'inferenza è il processo di utilizzo dei pesi appresi per fare previsioni.

somma ponderata

#fundamentals

La somma di tutti i valori di input pertinenti moltiplicata per le ponderazioni corrispondenti. Ad esempio, supponiamo che gli input pertinenti siano i seguenti:

valore di input peso inserito
2 -1,3
-1 0.6
3 0.4

La somma ponderata è quindi:

weighted sum = (2)(-1.3) + (-1)(0.6) + (3)(0.4) = -2.0

Una somma ponderata è l'argomento di input di una funzione di attivazione.

Z

Normalizzazione dello Z-Score

#fundamentals

Una tecnica di scalabilità che sostituisce un valore non elaborato di feature con un valore in virgola mobile che rappresenta il numero di deviazioni standard dalla media di questa caratteristica. Ad esempio, considera una caratteristica la cui media è 800 e la cui deviazione standard è 100. La tabella seguente mostra in che modo la normalizzazione del punteggio Z mapperebbe il valore non elaborato al relativo punteggio Z:

Valore non elaborato Punteggio Z
800 0
950 +1,5
575 -2,25

Il modello di machine learning addestra quindi in base al punteggio Z per quella caratteristica, anziché ai valori non elaborati.