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 corrette 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 sbagliate 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. Pertanto, 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 contrapponi l'accuratezza con precisione e richiamo.

Per ulteriori informazioni, consulta Classificazione: accuratezza, richiamo, precisione e metriche correlate nel corso introduttivo al machine learning.

funzione di attivazione

#fundamentals

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

Le funzioni di attivazione più utilizzate includono:

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

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

Un grafico della funzione di attivazione sigmoidea è il seguente:

Un grafico curvo bidimensionale con valori x che vanno da -infinito a +positivo, mentre i valori y vanno da quasi 0 a
          quasi 1. Quando x è 0, y è 0,5. La pendenza della curva è sempre positiva, con la pendenza più elevata a 0,0,5 e pendenze in graduale diminuzione con l'aumentare del valore assoluto di x.

Per saperne di più, consulta Reti neurali: funzioni di attivazione nel corso introduttivo al machine learning.

intelligenza artificiale

#fundamentals

Un modello o un programma non umano in grado di risolvere attività complesse. Ad esempio, un programma o un modello che traduce il testo o un programma o un modello che identifica le malattie dalle immagini radiologiche mostrano entrambi l'intelligenza artificiale.

Formalmente, 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 è vicino a 1,0, migliore è la capacità del modello di separare le classi.

Ad esempio, la seguente illustrazione mostra un modello di classificazione che separa perfettamente le classi positive (ovali verdi) dalle classi negative (rettangoli viola). Questo modello irreale e perfetto ha un AUC pari a 1,0:

Una linea numerica con 8 esempi positivi da un lato e
          9 esempi negativi dall'altro.

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

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

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

La maggior parte dei modelli si colloca a metà strada tra i due estremi. Ad esempio, il seguente modello separa in qualche modo i valori positivi da quelli negativi e, pertanto, ha un AUC compreso tra 0,5 e 1,0:

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

L'AUC ignora qualsiasi valore impostato per la soglia di classificazione. L'AUC, invece, considera tutte le possibili soglie di classificazione.

Per ulteriori informazioni, consulta Classificazione: ROC e AUC nel corso introduttivo al machine learning.

B

retropropagazione

#fundamentals

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

L'addestramento di una rete neurale prevede molte iterations del seguente ciclo in due passaggi:

  1. Durante il passaggio in avanti, il sistema elabora un batch di esempi per generare una o più previsioni. Il sistema confronta ogni predizione 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 di tutti gli esempi per calcolare la perdita totale per il batch corrente.
  2. Durante il passaggio all'indietro (backpropagation), il sistema riduce la perdita modificando i pesi di tutti i neuroni in tutti i strati nascosti.

Le reti neurali spesso contengono molti neuroni in molti strati nascosti. Ciascuno di questi neuroni contribuisce alla perdita complessiva in modi diversi. La retropropagazione determina se aumentare o diminuire i pesi applicati a determinati neuroni.

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

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

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

Per ulteriori informazioni, consulta Reti neurali nel corso introduttivo al machine learning.

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 la sezione epocha per una spiegazione della relazione tra un batch e un'epoca.

Per ulteriori informazioni, consulta Regressione lineare: iperparametri nel corso introduttivo al machine learning.

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 dei batch:

  • Discesa stocastica del gradiente (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 l'insieme di addestramento contiene un milione di esempi, la dimensione del batch sarà di un milione di esempi. In genere, il batch completo è una strategia inefficiente.
  • mini-batch in cui la dimensione del batch è in genere compresa tra 10 e 1000. In genere, la strategia più efficiente è quella dei mini-batch.

Per ulteriori informazioni, consulta quanto segue:

bias (etica/equità)

#fairness
#fundamentals

1. Stereotipare, mostrare preconcetti o favoritismi verso determinate cose, persone o gruppi rispetto ad altri. Questi bias possono influire sulla raccolta e sull'interpretazione dei dati, sulla progettazione di un sistema e sul modo in cui gli utenti interagiscono con un sistema. Le forme di questo tipo di bias includono:

2. Errore sistematico introdotto da una procedura di campionamento o reporting. Le forme di questo tipo di bias includono:

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

Per ulteriori informazioni, consulta la sezione Equità: tipi di bias nel capitolo introduttivo al machine learning.

bias (matematica) o termine di bias

#fundamentals

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

  • b
  • w0

Ad esempio, la bias è b nella seguente formula:

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

In una semplice linea bidimensionale, il bias significa semplicemente "intercetta sull'asse y". Ad esempio, la bias della linea nell'illustrazione seguente è 2.

Il grafico di una linea con una pendenza di 0,5 e un bias (intercetta sull'asse y) di 2.

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

Il pregiudizio non deve essere confuso con i pregiudizi in termini di etica e equità o con i pregiudizi di previsione.

Per saperne di più, consulta la sezione Regressione lineare nel corso introduttivo al machine learning.

classificazione binaria

#fundamentals

Un tipo di attività di classificazione che predittivo una di due classi mutuamente esclusive:

Ad esempio, i seguenti due modelli di machine learning eseguono ciascuno una 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 ha una determinata malattia (la classe positiva) o no (la classe negativa).

È diverso dalla classificazione multiclasse.

Consulta anche regressione logistica e soglia di classificazione.

Per ulteriori informazioni, consulta la sezione Classificazione nel corso introduttivo al machine learning.

il bucketing

#fundamentals

Conversione di una singola funzionalità in più funzionalità binarie chiamate bucket o bin, tipicamente basate su un intervallo di valori. La funzionalità suddivisa è in genere una caratteristica continua.

Ad esempio, anziché rappresentare la temperatura come una singola caratteristica in virgola mobile continua, puoi suddividere gli intervalli di temperatura in bucket discreti, ad esempio:

  • <= 10 gradi Celsius è il bucket "freddo".
  • 11-24 gradi Celsius corrisponde al bucket "Temperato".
  • >= 25 gradi Celsius è il bucket "caldo".

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

Per ulteriori informazioni, consulta Dati numerici: gruppi nel corso introduttivo al machine learning.

C

dati categorici

#fundamentals

Elementi con un insieme specifico di valori possibili. Ad esempio, consideriamo un attributo categorico denominato traffic-light-state, che può avere solo uno dei seguenti tre valori possibili:

  • red
  • yellow
  • green

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

Le caratteristiche categoriche sono a volte chiamate caratteristiche discrete.

È diverso dai dati numerici.

Per ulteriori informazioni, consulta la sezione Utilizzo dei dati categorici nel corso introduttivo al machine learning.

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 multiclasse che identifica le razze di cani, le classi potrebbero essere poodle, beagle, pug e così via.

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

Per ulteriori informazioni, consulta la sezione Classificazione nel corso introduttivo al machine learning.

modello di classificazione

#fundamentals

Un modello la cui previsione è una classe. Ad esempio, di seguito sono riportati tutti i 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? Rovere? Baobab?).
  • Un modello che prevede la classe positiva o negativa per una determinata condizione medica.

Al contrario, i modelli di regressione prevedono numeri piuttosto che 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 una persona, 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.

Ad esempio, supponiamo 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 influisce notevolmente sul numero di falsi positivi e falsi negativi.

Per ulteriori informazioni, consulta Soglie e matrice di confusione nel corso introduttivo al machine learning.

set di dati sbilanciato per classe

#fundamentals

Un set di dati per un problema di classificazione in cui il numero totale di etichette di ogni classe è molto diverso. Ad esempio, prendiamo un set di dati di classificazione binaria le cui due etichette sono suddivise come segue:

  • 1.000.000 di etichette escluse
  • 10 etichette positive

Il rapporto tra etichette negative e positive è 100.000 a 1, pertanto si tratta di un set di dati con classi sbilanciate.

Al contrario, il seguente set di dati non presenta uno sbilanciamento delle classi perché il rapporto tra etichette negative ed etichette positive è relativamente vicino a 1:

  • 517 etichette negative
  • 483 etichette positive

Anche i set di dati con più classi possono essere sbilanciati. Ad esempio, il seguente set di dati di classificazione multi-classe è anche sbilanciato in termini di classi perché un'etichetta ha molti più esempi rispetto alle altre due:

  • 1.000.000 etichette con la classe "verde"
  • 200 etichette con la classe "purple"
  • 350 etichette con la classe "arancione"

Vedi anche entropia, classe di maggioranza e classe di minoranza.

clipping

#fundamentals

Una tecnica per gestire gli outlier mediante una o entrambe le seguenti operazioni:

  • Riduci i valori della funzionalità superiori a una soglia massima fino a quella soglia massima.
  • Aumentare i valori delle funzionalità inferiori a una soglia minima fino a quella soglia minima.

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

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

Gli outlier possono danneggiare i modelli, a volte causando un overflow dei pesi durante l'addestramento. Alcuni valori anomali possono anche alterare notevolmente le metriche come l'accuratezza. Il clipping è una tecnica comune per limitare i danni.

Il taglio del gradiente impone i valori del gradiente all'interno di un intervallo designato durante l'addestramento.

Per ulteriori informazioni, consulta Dati numerici: normalizzazione nel corso introduttivo al machine learning.

matrice di confusione

#fundamentals

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

Tumore (previsto) Non tumorale (previsione)
Tumore (dati di fatto) 18 (VP) 1 (FN)
Non tumore (dati di fatto) 6 (FP) 452 (TN)

La matrice di confusione precedente mostra quanto segue:

  • Delle 19 previsioni in cui il valore basato su dati empirici reali era Tumore, il modello ne ha classificate correttamente 18 e 1 in modo errato.
  • Delle 458 previsioni in cui il valore basato su dati empirici reali era Non-Tumor, il modello ha classificato correttamente 452 e erroneamente 6.

La matrice di confusione per un problema di classificazione multiclasse può aiutarti a identificare schemi di errori. 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 il valore basato su dati empirici reali era Virginica, la matrice di confusione mostra che il modello aveva molte più probabilità di prevedere erroneamente Versicolor rispetto a Setosa:

  Setosa (prevista) Versicolor (prevista) Virginica (prevista)
Setosa (dati di fatto) 88 12 0
Versicolor (dato di fatto) 6 141 7
Virginica (dati di fatto) 2 27 109

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

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

funzione continua

#fundamentals

Un'elemento con virgola mobile con un intervallo infinito di valori possibili, come temperatura o peso.

È il contrario di funzionalità discreta.

convergenza

#fundamentals

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

Grafico cartesiano. L&#39;asse X è la 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 in calo, ma molto più gradualmente. Dopo circa 700 iterazioni,
          la perdita rimane invariata.

Un modello converge quando un ulteriore addestramento non lo migliora.

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

Vedi anche interruzione anticipata.

Per ulteriori informazioni, consulta la sezione Convergenza del modello e curve di perdita nel corso introduttivo al machine learning.

D

DataFrame

#fundamentals

Un tipo di dati pandas molto utilizzato per rappresentare set di dati in memoria.

Un DataFrame è analogo 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 di un DataFrame è strutturata come un array 2D, tranne per il fatto che a ogni colonna può essere assegnato un proprio tipo di dati.

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

set di dati

#fundamentals

Una raccolta di dati non elaborati, comunemente (ma non esclusivamente) organizzata in uno tra i seguenti formati:

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

modello di deep learning

#fundamentals

Una rete neurale contenente più di un strato nascosto.

Un modello di questo tipo è chiamato anche rete neurale profonda.

È il contrario del modello ampio.

elemento denso

#fundamentals

Una caratteristica in cui la maggior parte o tutti i valori sono diversi da zero, in genere un tensore 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

È il contrario della funzionalità sparsa.

profondità

#fundamentals

La somma di quanto segue in una rete neurale:

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

Tieni presente che il livello di input non influisce sulla profondità.

caratteristica discreta

#fundamentals

Una caratteristica con un insieme finito di valori possibili. Ad esempio, una caratteristica i cui valori possono essere solo animal, vegetable o mineral è una caratteristica discreta (o categorica).

È diverso dalla caratteristica continua.

dinamico

#fundamentals

Qualcosa che viene fatto di frequente o continuamente. I termini dinamico e online sono sinonimi nel machine learning. Di seguito sono riportati gli utilizzi comuni di dinamico e online nel machine learning:

  • Un modello dinamico (o modello online) è un modello che viene riaddestrato di frequente o continuamente.
  • La formazione dinamica (o formazione online) è il processo di addestramento spesso o continuamente.
  • L'inferenza dinamica (o inferenza online) è il processo di generazione di previsioni su richiesta.

modello dinamico

#fundamentals

Un modello sottoposto ad addestramento frequente (forse anche continuo). Un modello dinamico è un "aprendente permanente" che si adatta costantemente ai dati in evoluzione. Un modello dinamico è noto anche come modello online.

È diverso dal modello statico.

E

interruzione anticipata

#fundamentals

Un metodo di regolarizzazione che prevede l'interruzione dell'addestramento prima che la perdita di addestramento smetta di diminuire. Con l'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 embedding

#language
#fundamentals

Un livello nascosto speciale che viene addestrato su una caratteristica categoriale di alta dimensione per imparare gradualmente un vettore di embedding di dimensione inferiore. Un livello di embedding consente a una rete neurale di essere addestrata in modo molto più efficiente rispetto all'addestramento solo sulla caratteristica categorica ad alta dimensione.

Ad esempio, la Terra ospita attualmente circa 73.000 specie di alberi. Supponiamo che la specie di albero sia una caratteristica del modello, quindi il livello di input del modello include un vettore one-hot lungo 73.000 elementi. Ad esempio, baobab potrebbe essere rappresentato in questo modo:

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 embedding al modello, l'addestramento richiederà molto tempo a causa della moltiplicazione di 72.999 zeri. Ad esempio, puoi scegliere che il livello di incorporamento sia costituito da 12 dimensioni. Di conseguenza, il livello di embedding apprenderà gradualmente un nuovo vettore di embedding per ogni specie di albero.

In alcuni casi, l'hashing è un'alternativa ragionevole a un livello di embedding.

Per ulteriori informazioni, consulta la sezione Embedding nel Machine Learning Crash Course.

periodo

#fundamentals

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

Un'epoca rappresenta N/dimensione 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 è 50 esempi.

Pertanto, una singola epoca richiede 20 iterazioni:

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

Per ulteriori informazioni, consulta Regressione lineare: iperparametri nel corso introduttivo al machine learning.

esempio

#fundamentals

I valori di una riga di caratteristiche e possibilmente un'etichetta. Gli esempi di apprendimento supervisionato rientrano in due categorie generali:

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

Ad esempio, supponiamo che tu stia addestrando un modello per determinare l'influenza delle condizioni meteorologiche sui punteggi dei test degli studenti. Ecco tre esempi con etichette:

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

Ecco tre esempi non etichettati:

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. In altre parole, un esempio è costituito in genere da un sottoinsieme di colonne del set di dati. Inoltre, le funzionalità di un esempio possono includere anche caratteristiche sintetiche, come incroci di funzionalità.

Per saperne di più, consulta Apprendimento supervisionato nel corso Introduzione al machine learning.

F

falso negativo (FN)

#fundamentals

Un esempio in cui il modello prevede erroneamente la classe negativa. Ad esempio, il modello predice che un determinato messaggio email non è spam (la classe negativa), ma il messaggio email in realtà è 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 in realtà il messaggio email non è spam.

Per ulteriori informazioni, consulta Soglie e matrice di confusione nel corso introduttivo al machine learning.

tasso di falsi positivi (FPR)

#fundamentals

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

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

La percentuale di falsi positivi è l'asse x di una curva ROC.

Per ulteriori informazioni, consulta Classificazione: ROC e AUC nel corso introduttivo al machine learning.

caratteristica

#fundamentals

Una variabile di input per 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 meteorologiche sui punteggi dei test degli studenti. La tabella seguente mostra tre esempi, ciascuno contenente tre elementi e un'etichetta:

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

Contrasto con l'etichetta.

Per saperne di più, consulta Apprendimento supervisionato nel corso Introduzione al machine learning.

incrocio di caratteristiche

#fundamentals

Una caratteristica sintetica formata da "incroci" di caratteristiche 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

e rappresenta la velocità del vento in uno dei seguenti tre bucket:

  • still
  • light
  • windy

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

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

  • 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 caratteristiche, il modello può apprendere le differenze di umore tra un giorno freezing-windy e un giorno freezing-still.

Se crei una caratteristica sintetica da due caratteristiche che hanno ciascuna molti bucket diversi, l'incrocio di caratteristiche risultante avrà un numero enorme di combinazioni possibili. Ad esempio, se una caratteristica ha 1000 bucket e l'altra ha 2000 bucket, l'incrocio di caratteristiche risultante ha 2.000.000 di bucket.

Formalmente, un incrocio è un prodotto cartesiano.

Le intersezioni di funzionalità vengono utilizzate principalmente con i modelli lineari e raramente con le reti neurali.

Per ulteriori informazioni, consulta Dati categorici: croci tra funzionalità nel corso introduttivo al machine learning.

e applicazione del feature engineering.

#fundamentals
#TensorFlow

Un processo che prevede i seguenti passaggi:

  1. Determinare quali caratteristiche potrebbero essere utili per l'addestramento di un modello.
  2. Convertire i dati non elaborati del set di dati in versioni efficienti di queste funzionalità.

Ad esempio, potresti stabilire che temperature potrebbe essere una funzionalità utile. Dopodiché, puoi sperimentare il bucketing per ottimizzare ciò che il modello può apprendere da diversi intervalli temperature.

Il feature engineering è a volte chiamato estrazione di funzionalità o caratterizzazione.

Per saperne di più, consulta la sezione Dati numerici: come un modello acquisisce i dati utilizzando vettori di funzionalità nel corso introduttivo al machine learning.

set di funzionalità

#fundamentals

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

vettore di caratteristiche

#fundamentals

L'array di valori feature che compongono un esempio. Il vettore di caratteristiche viene inserito durante l'addestramento e l'inferenza. Ad esempio, il vettore di caratteristiche per un modello con due caratteristiche distinte 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, pertanto il vettore di caratteristiche per l'esempio successivo potrebbe essere simile al seguente:

[0.73, 0.49]

La feature engineering determina come rappresentare le caratteristiche nel vettore di caratteristiche. Ad esempio, una caratteristica categorica binaria con cinque possibili valori potrebbe essere rappresentata con la codifica one-hot. In questo caso, la parte del vettore di caratteristiche per un determinato esempio sarà composta da quattro zeri e un singolo 1.0 nella terza posizione, come segue:

[0.0, 0.0, 1.0, 0.0, 0.0]

Come altro esempio, supponiamo che il modello sia costituito da tre elementi:

  • una caratteristica categorica binaria con cinque valori possibili 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 codifica one-hot; ad esempio: [0.0, 0.0, 1.0]
  • una funzionalità con rappresentazione in virgola mobile; ad esempio: 8.3.

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

0.0
1.0
0.0
0.0
0.0
0.0
0.0
1.0
8.3

Per saperne di più, consulta la sezione Dati numerici: come un modello acquisisce i dati utilizzando vettori di funzionalità nel corso introduttivo al machine learning.

feedback loop

#fundamentals

Nel machine learning, una situazione in cui le previsioni di un modello influenzano i dati di addestramento dello stesso modello o di un altro modello. Ad esempio, un modello che consiglia film influisce sui film che le persone guardano, il che a sua volta influisce sui modelli di consigli sui film successivi.

Per ulteriori informazioni, consulta Sistemi di ML di produzione: domande da farsi nel corso introduttivo al machine learning.

G

generalizzazione

#fundamentals

La capacità di un modello di fare previsioni corrette su nuovi dati mai visti prima. Un modello che può generalizzare è l'opposto di un modello con overfitting.

Per ulteriori informazioni, consulta la sezione Generalizzazione nel corso introduttivo al machine learning.

curva di generalizzazione

#fundamentals

Un grafico sia della perdita di addestramento sia della perdita di 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 un overfitting perché la perdita di convalida in ultima analisi diventa notevolmente superiore alla perdita di addestramento.

Un grafico cartesiano in cui l&#39;asse y è etichettato come perdita e l&#39;asse x come iterazioni. Vengono visualizzati due grafici. Uno dei grafici mostra la
          perdita di addestramento e l&#39;altro la perdita di convalida.
          I due grafici iniziano in modo simile, ma la perdita di addestramento alla fine è molto inferiore alla perdita di convalida.

Per ulteriori informazioni, consulta la sezione Generalizzazione nel corso introduttivo al machine learning.

discesa del gradiente

#fundamentals

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

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

Per ulteriori informazioni, consulta la sezione Regressione lineare: discesa con gradiente nel corso introduttivo al machine learning.

dati di fatto

#fundamentals

Realtà.

Che cosa è effettivamente successo.

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

H

strato nascosto

#fundamentals

Uno strato in una rete neurale tra il strato di input (le funzionalità) e il strato 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
          funzionalità. Il secondo livello è uno strato nascosto contenente tre
          neuroni. Il terzo livello è uno strato nascosto contenente due
          neuroni. Il quarto livello è uno strato di output. Ogni elemento
          contiene tre spigoli, ciascuno dei quali punta a un neurone diverso
          nel secondo livello. Ciascuno dei neuroni del secondo livello
          contiene due spigoli, ciascuno dei quali punta a un neurone diverso
          nel terzo livello. Ciascuno dei neuroni del terzo livello contiene
          un arco, ciascuno che punta allo strato di output.

Una rete neurale profonda contiene più di un strati nascosti. Ad esempio, l'illustrazione precedente è una rete neurale profonda perché il modello contiene due livelli nascosti.

Per ulteriori informazioni, consulta Reti neurali: nodi e livelli nascosti nel corso introduttivo al machine learning.

iperparametro

#fundamentals

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

I parametri, invece, sono i vari pesi e bias che il modello apprende durante l'addestramento.

Per ulteriori informazioni, consulta Regressione lineare: iperparametri nel corso introduttivo al machine learning.

I

distribuite in modo indipendente e identico (i.i.d.)

#fundamentals

Dati estratti da una distribuzione che non cambia e in cui ogni valore estratto non dipende dai valori estratti in precedenza. Un dato indipendente e identico è il gas ideale del machine learning, un costrutto matematico utile, ma quasi mai trovato esattamente nel mondo reale. Ad esempio, la distribuzione dei visitatori di una pagina web può essere i.i.d. in un breve periodo di tempo, ovvero la distribuzione non cambia durante questo breve periodo e la visita di una persona è generalmente indipendente da quella di un'altra. Tuttavia, se espandi questo periodo di tempo, potrebbero verificarsi differenze stagionali nei visitatori della pagina web.

Vedi anche non-stazionarietà.

inferenza

#fundamentals

Nel machine learning, il processo di generazione di previsioni mediante l'applicazione di un modello addestrato a esempi non etichettati.

L'inferenza ha un significato leggermente diverso in statistica. Per maggiori dettagli, consulta l' articolo di Wikipedia sull'inferenza statistica.

Consulta la sezione Apprendimento supervisionato nel corso Introduzione all'ML per scoprire il ruolo dell'inferenza in un sistema di apprendimento supervisionato.

livello di input

#fundamentals

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

Quattro livelli: uno di input, due 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, è altamente interpretabile. Basta controllare i pesi dell'addestramento di ogni caratteristica. Le foreste di alberi decisionali sono anche altamente interpretabili. Tuttavia, alcuni modelli richiedono una visualizzazione sofisticata per poter essere interpretati.

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

iterazione

#fundamentals

Un singolo aggiornamento dei parametri di un modello, ovvero i suoi pesi e bias, durante l'addestramento. La dimensione del batch determina quanti esempi vengono 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 coinvolge i seguenti due passaggi:

  1. Un passaggio in avanti per valutare la perdita in un singolo batch.
  2. Un passaggio all'indietro (retropropagazione) 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 pesi diversi da zero in un modello. Ad esempio, un modello con 11 pesi diversi da zero verrebbe penalizzato più di un modello simile con 10 pesi diversi da zero.

La regolarizzazione L0 viene talvolta chiamata regolarizzazione della norma L0.

Perdita L1

#fundamentals

Una funzione di perdita che calcola il valore assoluto della differenza tra i valori effettivi delle etichette e i valori previsti da un modello. Ad esempio, di seguito è riportato il calcolo della perdita L1 per un batch di cinque esempi:

Valore effettivo dell'esempio Valore previsto del modello Valore assoluto di 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 valori anomali rispetto alla perdita L2.

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

Regolarizzazione L1

#fundamentals

Un tipo di regolarizzazione che penalizza le ponderazioni in proporzione alla somma del valore assoluto delle ponderazioni. La regolarizzazione L1 contribuisce a portare i pesi delle caratteristiche irrilevanti o appena pertinenti a esattamente 0. Una caratteristica con un valore di ponderazione pari a 0 viene rimossa dal modello.

È diversa dalla regolarizzazione L2.

Perdita L2

#fundamentals

Una funzione di perdita che calcola il quadrato della differenza tra i valori effettivi delle etichette e i valori previsti da un modello. Ad esempio, di seguito è riportato 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 della quadratura, la perdita L2 amplifica l'influenza degli outlier. In altre parole, la perdita L2 reagisce in modo più marcato alle previsioni sbagliate rispetto alla perdita L1. Ad esempio, la perdita L1 per il batch precedente sarà 8 anziché 16. Tieni presente che un singolo valore outlier rappresenta 9 dei 16.

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

Lo scarto quadratico medio è la perdita L2 media per esempio. La perdita quadratica è un altro nome per la perdita L2.

Regolarizzazione L2

#fundamentals

Un tipo di regolarizzazione che penalizza le ponderazioni in proporzione alla somma dei quadrati delle ponderazioni. La regolarizzazione L2 contribuisce ad avvicinare i pesi degli outlier (con valori positivi elevati o negativi bassi) a 0, ma non proprio 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.

È diverso dalla regolarizzazione L1.

etichetta

#fundamentals

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

Ogni esempio con etichetta è costituito da uno o più elementi e da un'etichetta. Ad esempio, in un set di dati per il rilevamento dello spam, l'etichetta sarà probabilmente "spam" o "non spam". In un set di dati sulla pioggia, l'etichetta potrebbe essere la quantità di pioggia caduta durante un determinato periodo.

Esempio con etichetta

#fundamentals

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

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

Nel machine learning supervisionato, i modelli vengono addestrati su esempi etichettati ed effettuano previsioni su esempi non etichettati.

Confronta l'esempio con etichetta con gli esempi senza etichetta.

lambda

#fundamentals

Sinonimo di tasso di regolarizzazione.

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

livello

#fundamentals

Un insieme di neuroni in una rete neurale. Di seguito sono riportati tre tipi comuni di livelli:

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

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

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

tasso di apprendimento

#fundamentals

Un numero in virgola mobile che indica all'algoritmo di discesa del gradiente quanto modificare le ponderazioni e i bias a ogni iterazione. Ad esempio, un tasso di apprendimento di 0,3 aggiusterebbe i pesi e i bias tre volte più efficacemente di un tasso di apprendimento di 0,1.

Il tasso di apprendimento è un iperparametro chiave. Se imposti la frequenza di apprendimento troppo bassa, l'addestramento richiederà troppo tempo. Se impostate il tasso di apprendimento su un valore troppo elevato, la discesa del gradiente spesso ha difficoltà a raggiungere la convergenza.

lineare

#fundamentals

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

Il grafico di una relazione lineare è una linea.

È il contrario di non lineare.

modello lineare

#fundamentals

Un modello che assegna un peso per caratteristica per fare previsioni. I modelli lineari incorporano anche un bias. Al contrario, la relazione tra le caratteristiche e le previsioni nei modelli di deep learning è generalmente non lineare.

I modelli lineari sono in genere più facili da addestrare e più interpretabili rispetto ai modelli di deep learning. Tuttavia, i modelli di apprendimento profondo possono 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 valgono entrambe le seguenti condizioni:

  • Si tratta di un modello lineare.
  • La previsione è un valore con virgola mobile. (Questa è la parte di regressione della regressione lineare.)

Confronta la regressione lineare con la regressione logistica. Inoltre, confronta 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 è categorica. Il termine regressione logistica solitamente 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 probabilità per le etichette con più di due valori possibili.
  • La funzione di perdita durante l'addestramento è la perdita di log. È possibile inserire più unità di perdita di log in parallelo per le etichette con più di due valori possibili.
  • Il modello ha un'architettura lineare, non una rete neurale profonda. Tuttavia, il resto di questa definizione si applica anche ai modelli di deep learning che prevedono le probabilità per le etichette categoriche.

Ad esempio, considera un modello di regressione logistica che calcola la probabilità che un'email inserita sia spam o meno. Durante l'inferenza, supponiamo che il modello preveda 0,72. Pertanto, 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 alle caratteristiche di input.
  2. Il modello utilizza la previsione non elaborata come input per una funzione sigmoide, che la trasforma in un valore compreso tra 0 e 1, esclusi.

Come qualsiasi modello di regressione, un modello di regressione logistica prevede un numero. Tuttavia, in genere questo numero fa parte di un modello di classificazione binaria come segue:

  • Se il numero previsto è maggiore della soglia di classificazione, il modello di classificazione binaria prevede la classe positiva.
  • Se il numero previsto è inferiore alla soglia di classificazione, il modello di classificazione binaria prevede la classe negativa.

Log Loss

#fundamentals

La funzione di perdita utilizzata nella regressione logistica binaria.

probabilità logaritmica

#fundamentals

Il logaritmo delle probabilità di un evento.

perdita

#fundamentals

Durante l'addestramento di un modello supervisionato, una misura della distanza tra la previsione di un modello e la 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 grafico 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 declino graduale
          e poi da una pendenza piatta durante le iterazioni finali.

Le curve di perdita possono aiutarti a determinare quando il modello è in convergenza o overfitting.

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

Vedi anche curva di generalizzazione.

funzione di perdita

#fundamentals

Durante l'addestramento o il test, una funzione matematica che calcola la perdita su un batch di esempi. Una funzione di perdita restituisce una perdita inferiore per i modelli che fanno buone previsioni rispetto a quelli che fanno cattive previsioni.

Lo scopo dell'addestramento è in genere 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:

M

machine learning

#fundamentals

Un programma o un sistema che addestra un modello a partire dai dati inseriti. Il modello addestrato può fare previsioni utili a partire da nuovi dati (mai visti prima) estratti dalla stessa distribuzione utilizzata per addestrarlo.

Il machine learning si riferisce anche al campo di studi che si occupa di questi programmi o sistemi.

classe di maggioranza

#fundamentals

L'etichetta più comune in un insieme di dati con sbilanciamento delle classi. Ad esempio, dato un set di dati contenente il 99% di etichette negative e l'1% di etichette positive, le etichette negative sono la classe di maggioranza.

È il contrario di classe di minoranza.

mini-batch

#fundamentals

Un sottoinsieme piccolo e selezionato in modo casuale di un batch elaborato in un'iterazione. La dimensione del batch di un mini-batch è solitamente tra 10 e 1000 esempi.

Ad esempio, supponiamo che l'intero set di addestramento (il batch completo) sia costituito da 1000 esempi. Supponiamo inoltre di impostare la dimensione del batch di ogni mini batch su 20. Pertanto, ogni Iterazione determina la perdita su 20 esempi casuali dei 1000 esempi e poi aggiusta i pesi e i bias di conseguenza.

È molto più efficiente calcolare la perdita su un mini-batch rispetto alla perdita su tutti gli esempi del batch completo.

classe minoritaria

#fundamentals

L'etichetta meno comune in un insieme di dati con sbilanciamento delle classi. Ad esempio, dato un set di dati contenente il 99% di etichette negative e l'1% di etichette positive, le etichette positive sono la classe di minoranza.

Contrasta con la classe di maggioranza.

modello

#fundamentals

In generale, qualsiasi costrutto matematico che elabora i dati di input e restituisce un output. In altre parole, un modello è l'insieme di parametri e strutture necessari per consentire a un sistema di fare previsioni. Nel machine learning supervisionato, un modello prende un esempio come input e deducono un previsione come output. Nel machine learning supervisionato, i modelli sono leggermente diversi. Ad esempio:

  • Un modello di regressione lineare è costituito da un insieme di pesi e da un bias.
  • Un modello di rete neurale è costituito da:
    • Un insieme di strati nascosti, ciascuno contenente uno o più neuroni.
    • I pesi e la bias associati a ogni neurone.
  • Un modello di albero decisionale è costituito da:
    • La forma dell'albero, ovvero il pattern in cui le condizioni e le foglie sono collegate.
    • Le condizioni e le foglie.

Puoi salvare, ripristinare o creare copie di un modello.

Anche il machine learning non supervisionato genera 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 appartenere a 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 una classificazione multi-classe.

I problemi di classificazione che distinguono esattamente due classi sono invece modelli di classificazione binaria. Ad esempio, un modello di email che prevede spam o non spam è un modello di classificazione binaria.

Nei problemi di clustering, la classificazione multiclasse si riferisce a più di due cluster.

No

classe negativa

#fundamentals

Nella classificazione binaria, una classe è definita positiva e l'altra negativa. La classe positiva è la cosa o l'evento per cui il modello esegue il test, mentre la classe negativa è l'altra possibilità. Ad esempio:

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

È il contrario della classe positiva.

feed-forward

#fundamentals

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

Una rete neurale con uno strato di input, due strati nascosti e uno di output.

Ogni neurone di una rete neurale si connette a tutti i nodi del livello successivo. Ad esempio, nel diagramma precedente, tieni presente che ciascuno dei tre neuroni nel primo strato nascosto si connette separatamente a entrambi i due neuroni nel secondo strato nascosto.

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

Alcune reti neurali possono imitare relazioni non lineari estremamente complesse tra 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 uno strato nascosto di una rete neurale. Ogni neurone esegue la seguente azione in due fasi:

  1. Calcola la somma ponderata dei valori di input moltiplicati per i relativi pesi.
  2. Trasmette la somma ponderata come input a una funzione di attivazione.

Un neurone nel primo strato nascosto accetta input dai valori delle caratteristiche nel livello di input. Un neurone in qualsiasi strato nascosto successivo al primo accetta input dai neuroni dello strato nascosto precedente. Ad esempio, un neurone nel secondo strato nascosto accetta input dai neuroni del primo strato nascosto.

L'illustrazione seguente mette in evidenza due neuroni e i relativi input.

Una rete neurale con uno strato di input, due strati nascosti e uno di output. Sono evidenziati due neuroni: uno nel primo
          strato nascosto e uno nel secondo. Il neurone evidenziato
          nel primo strato nascosto riceve input da entrambe le funzionalità
          nello strato di input. Il neurone evidenziato nel secondo strato nascosto
          riceve input da ciascuno dei tre neuroni del primo
          strato 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 strato nascosto.

non lineare

#fundamentals

Una relazione tra due o più variabili che non può essere rappresentata unicamente tramite addizione e moltiplicazione. Una relazione lineare può essere rappresentata come una linea, mentre una relazione non lineare non può essere rappresentata come una linea. Ad esempio, considera due modelli che associano ciascuno una singola funzionalità a una singola etichetta. Il modello a sinistra è lineare e quello a destra non lineare:

Due grafici. Un grafico è una linea, quindi si tratta di una relazione lineare.
          L&#39;altro grafico è una curva, quindi si tratta di una relazione non lineare.

non stazionarietà

#fundamentals

Un elemento i cui valori variano in una o più dimensioni, in genere nel tempo. Ad esempio, considera i seguenti esempi di non stazionarietà:

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

È il contrario della stazionarietà.

normalizzazione

#fundamentals

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

  • Da -1 a +1
  • Da 0 a 1
  • Punteggi z (all'incirca da -3 a +3)

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

La normalizzazione è un'attività comune nell'ingegneria delle funzionalità. I modelli di solito si addestrano più velocemente (e producono previsioni migliori) quando ogni caratteristica numerica nel vettore di caratteristiche ha approssimativamente lo stesso intervallo.

Per ulteriori dettagli, consulta il modulo sull'utilizzo dei dati numerici del corso introduttivo al machine learning. Consulta anche Normalizzazione del punteggio Z.

dati numerici

#fundamentals

Caratteristiche rappresentate come numeri interi o a valori reali. 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 della caratteristica 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 valore della casa.

Non tutti i dati interi devono essere rappresentati come dati numerici. Ad esempio, i codici postali in alcune parti del mondo sono numeri interi; tuttavia, i codici postali intieri non devono essere rappresentati come dati numerici nei modelli. Questo perché un codice postale 20000 non è due volte (o la metà) più efficace di un codice postale 10000. Inoltre, anche se codici postali diversi sono correlati a valori immobiliari diversi, non possiamo assumere che i valori immobiliari del codice postale 20000 siano il doppio di quelli del codice postale 10000. I codici postali devono essere rappresentati come dati categorici.

Le caratteristiche numeriche sono a volte chiamate caratteristiche continue.

O

offline

#fundamentals

Sinonimo di static.

Inferenza offline

#fundamentals

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

Ad esempio, prendiamo in considerazione un modello che genera previsioni meteo locali (previsioni) una volta ogni quattro ore. Dopo ogni esecuzione del modello, il sistema memorizza nella cache tutte le previsioni meteo locali. Le app meteo recuperano le previsioni dalla cache.

L'inferenza offline è chiamata anche inferenza statica.

È diverso dall'inferenza online.

Codifica one-hot

#fundamentals

Rappresentazione dei dati categorici come 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 stringhe o identificatori che hanno un insieme finito di valori possibili. Ad esempio, supponiamo che una determinata caratteristica categorica denominata Scandinavia abbia cinque valori possibili:

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

La codifica one-hot potrebbe rappresentare ciascuno dei cinque valori come segue:

country Vettoriale
"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 caratteristica come dati numerici è un'alternativa alla codifica one-hot. Purtroppo, rappresentare i paesi scandinavi in modo numerico non è una buona scelta. Ad esempio, considera la seguente rappresentazione numerica:

  • "Danimarca" è 0
  • "Sweden" è 1
  • "Norvegia" è 2
  • "Finlandia" è 3
  • "Islanda" è 4

Con la codifica numerica, un modello interpreta i numeri non elaborati matematicamente e tenta di addestrarsi su questi numeri. Tuttavia, l'Islanda non è il doppio (o la metà) di qualcosa rispetto alla Norvegia, quindi il modello arriverebbe a conclusioni strane.

one-vs-all

#fundamentals

Dato un problema di classificazione con N classi, una soluzione composta da N classificatori binari distinti, uno per ogni possibile risultato. Ad esempio, dato un modello che classifica gli esempi come animali, vegetali o minerali, una soluzione uno contro tutti fornirà i seguenti tre classificatori binari distinti:

  • animale e non animale
  • ortaggio e non ortaggio
  • minerale e non minerale

online

#fundamentals

Sinonimo di dinamico.

Inferenza online

#fundamentals

Generazione di previsioni on demand. Ad esempio, supponiamo che un'app trasmetta un input a un modello e invii una richiesta di predizione. Un sistema che utilizza l'inferenza online risponde alla richiesta eseguendo il modello (e restituisce la previsione all'app).

È diverso dall'inferenza offline.

livello di output

#fundamentals

Lo strato "finale" di una rete neurale. Lo strato di output contiene la previsione.

La seguente illustrazione mostra una piccola rete neurale profonda con uno strato di input, due strati nascosti e uno di output:

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

overfitting

#fundamentals

Creazione di un modello che corrisponde ai dati di addestramento in modo così preciso da non riuscire a fare previsioni corrette sui nuovi dati.

La regolarizzazione può ridurre il fenomeno di overfitting. L'addestramento su un set di addestramento ampio e diversificato può anche ridurre il fenomeno di 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 come input. Per informazioni dettagliate, consulta la documentazione di pandas.

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 tutti i pesi (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 ottimizzazione degli 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".

È il contrario della classe negativa.

post-elaborazione

#fairness
#fundamentals

Modifica dell'output di un modello dopo l'esecuzione del modello. Il post-trattamento può essere utilizzato per applicare vincoli di equità senza modificare i modelli stessi.

Ad esempio, è possibile applicare il post-trattamento a un classificatore binario impostando una soglia di classificazione in modo da mantenere la parità di opportunità per un determinato attributo controllando che il tasso di vero positivo sia uguale per tutti i valori dell'attributo.

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 multi-classe è 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 che tu debba addestrare un modello per prevedere il livello di stress dei dipendenti. Il set di dati contiene molte funzionalità di previsione, ma non contiene un'etichetta denominata livello di stress. Senza scoraggiarti, scegli "incidenti sul lavoro" come etichetta proxy per il livello di stress. Dopotutto, i dipendenti sottoposti a stress elevato hanno più incidenti rispetto ai dipendenti calmi. O no? Forse gli incidenti sul lavoro in realtà aumentano e diminuiscono per diversi motivi.

Come secondo esempio, supponiamo che tu voglia che piove? sia un'etichetta booleana per il tuo set di dati, ma che il set di dati non contenga dati sulla pioggia. Se sono disponibili fotografie, potresti stabilire che le immagini di persone con ombrello sono un'etichetta proxy per è in corso una pioggia? È un'etichetta proxy valida? È possibile, ma le persone di alcune culture potrebbero essere più propense a portare ombrelli per proteggersi dal sole che dalla pioggia.

Le etichette proxy sono spesso imperfette. Se possibile, scegli le etichette effettive anziché quelle proxy. Detto questo, quando manca un'etichetta reale, scegli con molta attenzione l'etichetta proxy, scegliendo quella meno sgradevole.

R

RAG

#fundamentals

Abbreviazione di retrieval-augmented generation.

valutatore

#fundamentals

Una persona che fornisce etichette per gli esempi. "Annotatore" è un altro nome per valutatore.

Unità lineare rettificata (ReLU)

#fundamentals

Una funzione di attivazione con il seguente comportamento:

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

Ad esempio:

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

Ecco un grafico di ReLU:

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

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

modello di regressione

#fundamentals

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

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

Due tipi comuni di modelli di regressione sono:

  • Regressione lineare, che trova la linea che meglio adatta i valori delle etichette alle funzionalità.
  • 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 generano previsioni numeriche sono modelli di regressione. In alcuni casi, una previsione numerica è in realtà solo un modello di classificazione che ha nomi di classi numerici. Ad esempio, un modello che prevede un codice postale numerico è un modello di classificazione, non un modello di regressione.

regolarizzazione

#fundamentals

Qualsiasi meccanismo che riduca il sovraffittamento. I tipi di regolarizzazione più utilizzati includono:

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

tasso di regolarizzazione

#fundamentals

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

ReLU

#fundamentals

Abbreviazione di unità lineare rettificata.

Retrieval Augmented Generation (RAG)

#fundamentals

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

Ecco alcuni motivi comuni per utilizzare la generazione basata sul recupero:

  • Aumentare l'accuratezza fattuale delle risposte generate da un modello.
  • Dare al modello l'accesso a conoscenze su cui non è stato addestrato.
  • Modificare le conoscenze utilizzate dal modello.
  • Attivare il modello per citare le fonti.

Ad esempio, supponiamo 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, esegue le seguenti operazioni:

  1. Cerca ("recupera") i dati pertinenti alla query dell'utente.
  2. Aggiunge ("aumenta") i dati chimici pertinenti alla query dell'utente.
  3. Indica all'LLM di creare un riepilogo in base ai dati aggiunti.

Curva ROC (caratteristica operativa del ricevitore)

#fundamentals

Un grafico della percentuale di veri positivi rispetto alla percentuale 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 binario di separare le classi positive dalle classi negative. Supponiamo, ad esempio, che un modello di classificazione binaria separi perfettamente tutte le classi negative da tutte le classi positive:

Una linea numerica con 8 esempi positivi sul lato destro e
          7 esempi negativi a sinistra.

La curva ROC per il modello precedente è la seguente:

Una curva ROC. L&#39;asse x è la percentuale di falsi positivi e l&#39;asse y è la percentuale di veri positivi. La curva ha la forma di una L rovesciata. La curva inizia da (0,0) e arriva direttamente a (0,1). Poi la curva
          passa da (0,0,1) a (1,0,1).

Al contrario, la seguente illustrazione mostra i valori non elaborati della regressione logistica per un modello pessimo che non riesce a separare le classi negative dalle classi positive:

Una linea numerica con esempi positivi e classi negative completamente mescolate.

La curva ROC per questo modello è la seguente:

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

Nel frattempo, nel mondo reale, la maggior parte dei modelli di classificazione binaria separa in qualche misura le classi positive e negative, ma in genere non in modo perfetto. Pertanto, una curva ROC tipica si trova a metà tra i due estremi:

Una curva ROC. L&#39;asse x è la percentuale di falsi positivi e l&#39;asse y è la percentuale di veri positivi. La curva ROC approssima un arco tremante
          che attraversa i punti cardinali da ovest a nord.

Il punto di una curva ROC più vicino a (0,0,1,0) identifica teoricamente la soglia di classificazione ideale. Tuttavia, diversi altri problemi reali influiscono sulla selezione della soglia di classificazione ideale. Ad esempio, forse i falsi negativi causano molti più problemi dei falsi positivi.

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

Errore quadratico medio (RMSE)

#fundamentals

La radice quadrata dell'errore quadratico medio.

S

funzione sigmoidea

#fundamentals

Una funzione matematica che "comprime" un valore di input in un intervallo limitato, tipicamente da 0 a 1 o da -1 a +1. In altre parole, puoi passare qualsiasi numero (2, un milione, un miliardo negativo e così via) a una funzione sigmoide e l'output rimarrà nell'intervallo vincolato. Un grafico della funzione di attivazione sigmoidea è il seguente:

Un grafico curvo bidimensionale con valori x che vanno da -infinito a +positivo, mentre i valori y vanno da quasi 0 a
          quasi 1. Quando x è 0, y è 0,5. La pendenza della curva è sempre positiva, con la pendenza più elevata a 0,0,5 e pendenze in graduale diminuzione con l&#39;aumentare del valore assoluto di x.

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

softmax

#fundamentals

Una funzione che determina le probabilità per ogni classe possibile in un modello di classificazione multi-classe. Le probabilità sommate danno esattamente 1.0. Ad esempio, la tabella seguente mostra come la funzione softmax distribuisce varie probabilità:

L'immagine è un... Probabilità
cane 0,85
gatto 0,13
cavallo 0,02

La funzione softmax è chiamata anche full softmax.

È diverso dal campionamento dei candidati.

elemento sparso

#language
#fundamentals

Una caratteristica i cui valori sono prevalentemente pari a zero o vuoti. Ad esempio, una funzionalità contenente un singolo valore 1 e un milione di valori 0 è sparsa. Al contrario, un attributo densa ha valori che prevalentemente non sono nulli o vuoti.

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

In un modello, in genere le caratteristiche sparse vengono rappresentate con la codifica one-hot. Se la codifica one-hot è di grandi dimensioni, puoi inserire un livello di embedding sopra la codifica one-hot per una maggiore efficienza.

rappresentazione sparse

#language
#fundamentals

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

Ad esempio, supponiamo che un attributo categorico denominato species identifichi le 36 specie di alberi in una determinata foresta. Supponiamo inoltre che ogni esempio identifichi una sola specie.

Puoi utilizzare un vettore one-hot per rappresentare le specie di alberi in ogni esempio. Un vettore one-hot conterrebbe un singolo 1 (per rappresentare la determinata specie di albero nell'esempio) e 35 1 (per rappresentare le 35 specie di alberi non presenti nell'esempio).0 Pertanto, la rappresentazione one-hot di maple potrebbe avere il seguente aspetto:

Un 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 identifica semplicemente la posizione della specie in questione. Se maple si trova in posizione 24, la rappresentazione sparsa di maple sarà semplicemente:

24

Tieni presente che la rappresentazione sparse è molto più compatta della rappresentazione con codifica one-hot.

vettore sparso

#fundamentals

Un vettore i cui valori sono per lo più pari a zero. Vedi anche elemento sparso e scarsa densità.

perdita al quadrato

#fundamentals

Sinonimo di perdita L2.

static

#fundamentals

Qualcosa che viene fatto una volta sola anziché continuamente. I termini statico e offline sono sinonimi. Di seguito sono riportati gli usi comuni di statici e offline nel machine learning:

  • Un 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 procedura in cui un modello genera un batch di previsioni alla volta.

È il contrario di dinamico.

Interruzione statica

#fundamentals

Sinonimo di inferenza offline.

stazionarietà

#fundamentals

Un elemento i cui valori non cambiano in una o più dimensioni, in genere il tempo. Ad esempio, una funzionalità i cui valori sono simili nel 2021 e nel 2023 presenta stabilità.

Nella realtà, pochissime funzionalità mostrano stabilità. Anche le caratteristiche sinonimo di stabilità (come il livello del mare) cambiano nel tempo.

È il contrario della non stazionarietà.

la discesa stocastica del gradiente (SGD)

#fundamentals

Un algoritmo di discesa del gradiente in cui la dimensione del batch è pari a 1. In altre parole, la SGD viene addestrata su un singolo esempio scelto in modo uniforme e casuale da un set di addestramento.

machine learning supervisionato

#fundamentals

Addestramento di un modello a partire da caratteristiche e dalle relative etichette. Il machine learning supervisionato è analogo all'apprendimento di un argomento tramite lo studio di un insieme di domande e delle rispettive risposte. Dopo aver appreso la mappatura tra domande e risposte, uno studente può fornire risposte a nuove domande (mai viste prima) sullo stesso argomento.

Confrontalo con il machine learning non supervisionato.

elemento sintetico

#fundamentals

Una caratteristica non presente tra le funzionalità di input, ma assemblata da una o più di esse. I metodi per creare funzionalità sintetiche include:

  • Suddivisione in bucket di una caratteristica continua in intervalli.
  • Creazione di un incrocio di caratteristiche.
  • Moltiplicazione (o divisione) di un valore della caratteristica per altri valori della caratteristica o per se stessa. Ad esempio, se a e b sono elementi di input, i seguenti sono esempi di elementi sintetici:
    • ab
    • a2
  • Applicazione di una funzione trascendentale a un valore della funzionalità. Ad esempio, se c è una caratteristica di input, di seguito sono riportati alcuni esempi di caratteristiche sintetiche:
    • sin(c)
    • ln(c)

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

T

perdita di test

#fundamentals

Una metrica che rappresenta la perdita di un modello rispetto al set di test. Quando crei un modello, solitamente provi a ridurre al minimo la perdita del test. Questo perché una perdita di test bassa è un indicatore di qualità più forte di una perdita di addestramento o di una perdita di convalida bassa.

A volte un ampio divario tra la perdita di test e la perdita di addestramento o la perdita di convalida suggerisce che è necessario aumentare il tasso di regolarizzazione.

formazione

#fundamentals

La procedura di determinazione dei parametri (pesi e bias) ideali che compongono un modello. Durante l'addestramento, un sistema legge esempi e regola gradualmente i parametri. L'addestramento utilizza ogni esempio da alcune volte a miliardi di volte.

perdita di addestramento

#fundamentals

Una metrica che rappresenta la perdita di un modello durante una determinata evoluzione dell'addestramento. Ad esempio, supponiamo che la funzione di perdita sia Errore quadratico medio. Ad esempio, la perdita di addestramento (l'errore quadratico medio) per la decima iterazione è 2,2 e la perdita di addestramento per la centesima iterazione è 1,9.

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

  • Una curva discendente implica che il modello sta migliorando.
  • Una curva ascendente implica che il modello sta peggiorando.
  • Una pendenza piatta implica che il modello ha raggiunto la convergenza.

Ad esempio, la seguente curva di perdita un po' idealizzata mostra:

  • Una forte discesa durante le iterazioni iniziali, che implica un rapido miglioramento del modello.
  • Una curva gradualmente in piano (ma comunque in calo) 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 la convergenza.

Il grafico della perdita di addestramento rispetto alle iterazioni. Questa curva di perdita inizia con una forte pendenza verso il basso. La pendenza si appiattisce gradualmente fino a diventare zero.

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

disallineamento addestramento/produzione

#fundamentals

La differenza tra le prestazioni di un modello durante l'addestramento e le prestazioni 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 sia al set di addestramento sia al set di convalida.

vero negativo (VN)

#fundamentals

Un esempio in cui il modello prevede correttamente la classe negativa. Ad esempio, il modello deducono che un determinato messaggio email non è spam e che il messaggio email è effettivamente non spam.

vero positivo (VP)

#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 il messaggio email è effettivamente spam.

tasso di veri positivi (TPR)

#fundamentals

Sinonimo di richiamo. Ossia:

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

La percentuale di veri positivi è l'asse y di una curva ROC.

U

sottostima

#fundamentals

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

esempio non etichettato

#fundamentals

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

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

Nel machine learning supervisionato, i modelli vengono addestrati su esempi etichettati ed effettuano previsioni su esempi non etichettati.

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

Confronta l'esempio non etichettato con l'esempio etichettato.

machine learning non supervisionato

#clustering
#fundamentals

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

L'utilizzo più comune del machine learning non supervisionato è raggruppare i dati in gruppi di esempi simili. Ad esempio, un algoritmo di machine learning non supervisionato può raggruppare i brani in base a varie proprietà della musica. I cluster risultanti possono diventare input per altri algoritmi di machine learning (ad esempio, per un servizio di consigli musicali). Il clustering può essere utile quando le etichette utili sono scarse o assenti. Ad esempio, in ambiti come la lotta a comportamenti illeciti e frodi, i cluster possono aiutare le persone a comprendere meglio i dati.

È diverso dal machine learning supervisionato.

V

convalida

#fundamentals

La valutazione iniziale della qualità di un modello. La convalida controlla la qualità delle previsioni di un modello rispetto al set di convalida.

Poiché l'insieme di convalida è diverso dall'insieme di addestramento, la convalida aiuta a proteggersi dall'overfitting.

Potresti considerare la valutazione del modello rispetto al set di convalida come il primo ciclo di test e la valutazione del modello rispetto al set di test come il secondo ciclo di test.

perdita di convalida

#fundamentals

Una metrica che rappresenta la perdita di un modello sul set di convalida durante una determinata iterazione dell'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 più volte rispetto al set di convalida prima di essere valutato rispetto al set di test.

Tradizionalmente, gli esempi nel set di dati vengono 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 sia al set di addestramento sia al set di convalida.

M

peso

#fundamentals

Un valore moltiplicato per un altro valore da un modello. L'addestramento è il processo di determinazione dei pesi ideali di un modello; l'inferenza è il processo di utilizzo di questi pesi appresi per effettuare previsioni.

somma ponderata

#fundamentals

La somma di tutti i valori di input pertinenti moltiplicati per i relativi coefficienti. Ad esempio, supponiamo che gli input pertinenti siano costituiti da quanto segue:

valore dell'input peso dell'input
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 del punteggio z

#fundamentals

Una tecnica di scalabilità che sostituisce un valore grezzo della funzionalità con un valore con virgola mobile che rappresenta il numero di deviazioni standard dalla media della funzionalità. Ad esempio, considera un attributo la cui media è 800 e la cui deviazione standard è 100. La tabella seguente mostra in che modo la normalizzazione del punteggio Z mappa 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 viene quindi addestrato sui valori Z per quella funzionalità anziché sui valori non elaborati.