Glossario del machine learning

Questo glossario definisce i termini del machine learning.

A

ablazione

Una tecnica per valutare l'importanza di una caratteristica o di un componente rimuovendolo temporaneamente da un modello. Poi, riaddestra il modello senza la funzionalità o il componente e, se il modello riaddestrato ha un rendimento notevolmente peggiore, la funzionalità o il componente rimosso era probabilmente importante.

Ad esempio, supponiamo di addestrare un modello di classificazione su 10 funzionalità e di ottenere l'88% di precisione sul set di test. Per controllare l'importanza della prima funzionalità, puoi addestrare nuovamente il modello utilizzando solo le altre nove funzionalità. Se il modello addestrato di nuovo ha un rendimento notevolmente peggiore (ad esempio, una precisione del 55%), la funzionalità rimossa era probabilmente importante. Al contrario, se il modello riavviato funziona altrettanto bene, è probabile che la funzionalità non sia così importante.

L'ablazione può anche aiutarti a determinare l'importanza di:

  • Componenti più grandi, ad esempio un intero sottosistema di un sistema ML più grande
  • Processi o tecniche, ad esempio un passaggio di pre-elaborazione dei dati

In entrambi i casi, osserverai come cambia (o meno) il rendimento del sistema dopo aver rimosso il componente.

Test A/B

Un modo statistico per confrontare due (o più) tecniche: A e B. In genere, A è una tecnica esistente e B è una nuova tecnica. I test A/B non solo determinano quale tecnica ha un rendimento migliore, ma anche se la differenza è statisticamente significativa.

I test A/B di solito confrontano una singola metrica su due tecniche. Ad esempio, come si confronta l'accuratezza del modello per due tecniche? Tuttavia, i test A/B possono anche confrontare un numero finito di metriche.

chip dell'acceleratore

#GoogleCloud

Una categoria di componenti hardware specializzati progettati per eseguire i calcoli chiave necessari per gli algoritmi di deep learning.

I chip acceleratore (o semplicemente acceleratori) possono aumentare notevolmente la velocità e l'efficienza delle attività di addestramento e inferenza rispetto a una CPU generica. Sono ideali per l'addestramento delle reti neurali e di attività simili ad alta intensità di calcolo.

Ecco alcuni esempi di chip acceleratori:

  • Le Tensor Processing Unit (TPU) di Google con hardware dedicato per il deep learning.
  • Le GPU di NVIDIA, sebbene inizialmente progettate per l'elaborazione grafica, sono progettate per abilitare l'elaborazione in parallelo, che può aumentare notevolmente la velocità di elaborazione.

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.

azione

#rl

Nel reinforcement learning, il meccanismo attraverso il quale l'agente esegue la transizione tra gli stati dell' ambiente. L'agente sceglie l'azione utilizzando un regolamento.

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.

apprendimento attivo

Un approccio di addestramento in cui l'algoritmo sceglie alcuni dei dati da cui apprende. L'apprendimento attivo è particolarmente utile quando gli esempi etichettati sono scarsi o costosi da ottenere. Invece di cercare ciecamente una gamma diversa di esempi etichettati, un algoritmo di apprendimento attivo cerca in modo selettivo la particolare gamma di esempi di cui ha bisogno per l'apprendimento.

AdaGrad

Un sofisticato algoritmo di discesa del gradiente che riscala i gradienti di ciascun parametro, assegnando a ciascun parametro un'velocità di apprendimento indipendente. Per una spiegazione completa, consulta questo articolo su AdaGrad.

agente

#rl

Nell'apprendimento per rinforzo, l'entità che utilizza un regolamento per massimizzare il ritorno previsto ottenuto dalla transizione tra stati dell' ambiente.

Più in generale, un agente è un software che pianifica ed esegue autonomamente una serie di azioni al fine di raggiungere un obiettivo, con la capacità di adattarsi alle variazioni del suo ambiente. Ad esempio, un agente basato su LLM potrebbe utilizzare un LLM per generare un piano anziché applicare un criterio di apprendimento tramite rinforzo.

clustering agglomerativo

#clustering

Consulta la sezione relativa al clustering gerarchico.

Rilevamento di anomalie

Il processo di identificazione degli outlier. Ad esempio, se la media per una determinata caratteristica è 100 con una deviazione standard di 10, il rilevamento di anomalie dovrebbe segnalare un valore di 200 come sospetto.

AR

Abbreviazione di realtà aumentata.

area sotto la curva PR

Vedi AUC PR (area sotto la curva PR).

area sotto la curva ROC

Consulta AUC (area sotto la curva ROC).

intelligenza artificiale generale

Un meccanismo non umano che dimostra una vasta gamma di risoluzione dei problemi, creatività e adattabilità. Ad esempio, un programma che dimostri l'intelligenza generale artificiale potrebbe tradurre testo, comporre sinfonie e eccellere in giochi che non sono ancora stati inventati.

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.

Attention,

#language

Un meccanismo utilizzato in una rete neurale che indica l'importanza di una determinata parola o parte di una parola. L'attenzione comprime la quantità di informazioni di cui un modello ha bisogno per prevedere il token/la parola successiva. Un tipico meccanismo di attenzione potrebbe consistere in una somma ponderata su un insieme di input, in cui il peso per ogni input viene calcolato da un'altra parte della rete neurale.

Consulta anche l'articolo sull'auto-attenzione e sulla auto-attenzione multi-head, che sono i componenti di base dei Transformer.

Per saperne di più sull'autoattenzione, consulta LLM: che cos'è un modello linguistico di grandi dimensioni? nel corso introduttivo al machine learning.

attributo

#fairness

Sinonimo di funzionalità.

Nell'equità del machine learning, gli attributi spesso si riferiscono alle caratteristiche degli individui.

Campionamento degli attributi

#df

Una tattica per l'addestramento di una foresta decisionale in cui ogni albero decisionale prende in considerazione solo un sottoinsieme casuale di possibili caratteristiche durante l'apprendimento della condizione. In genere, viene campionato un sottoinsieme diverso di funzionalità per ogni nodo. Al contrario, durante l'addestramento di un albero decisionale senza campionamento degli attributi, vengono prese in considerazione tutte le possibili caratteristiche per ogni nodo.

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.

realtà aumentata

#image

Una tecnologia che sovrappone un'immagine creata con il computer alla visione del mondo reale di un utente, fornendo così una vista composita.

autoencoder

#language
#image

Un sistema che impara a estrarre le informazioni più importanti dall'input. Gli autoencoder sono una combinazione di un encoder e di un decoder. Gli autocodificatori si basano sul seguente processo in due fasi:

  1. L'encoder mappa l'input a un formato (in genere) con perdita di dimensioni inferiori (intermedio).
  2. Il decodificatore crea una versione con perdita dell'input originale mappando il formato di dimensioni inferiori al formato di input originale di dimensioni superiori.

Gli autoencoder vengono addestrati end-to-end facendo in modo che il decodificatore cerchi di recostruire l'input originale dal formato intermedio dell'encoder nel modo più preciso possibile. Poiché il formato intermedio è più piccolo (di dimensioni inferiori) rispetto al formato originale, l'autoencoder è costretto a imparare quali informazioni nell'input sono essenziali e l'output non sarà perfettamente identico all'input.

Ad esempio:

  • Se i dati di input sono un'immagine, la copia non esatta sarà simile all'immagine originale, ma leggermente modificata. Forse la copia non esatta rimuove il rumore dalla grafica originale o completa alcuni pixel mancanti.
  • Se i dati di input sono di tipo testo, un autoencoder genererà un nuovo testo che imita (ma non è identico) al testo originale.

Vedi anche autoencoder variazionali.

valutazione automatica

#language
#generativeAI

Utilizzo di software per valutare la qualità dell'output di un modello.

Quando l'output del modello è relativamente semplice, uno script o un programma può confrontare l'output del modello con una risposta standard. Questo tipo di valutazione automatica è talvolta chiamato valutazione programmatica. Metriche come ROUGE o BLEU sono spesso utili per la valutazione programmatica.

Quando l'output del modello è complesso o non ha una sola risposta corretta, a volte la valutazione automatica viene eseguita da un programma di ML separato chiamato valutatore automatico.

È diverso dalla valutazione umana.

bias di automazione

#fairness

Quando un decisore umano preferisce i consigli di un sistema di presa di decisioni automatico alle informazioni ottenute senza automazione, anche quando il sistema di presa di decisioni automatico commette errori.

Per saperne di più, consulta Equità: tipi di bias nel corso introduttivo al machine learning.

AutoML

Qualsiasi processo automatizzato per la creazione di modelli di machine learning . AutoML può eseguire automaticamente attività come:

AutoML è utile per i data scientist perché può far risparmiare tempo e impegno nello sviluppo di pipeline di machine learning e migliorare l'accuratezza delle previsioni. È utile anche per i non esperti, perché rende più accessibili le complesse attività di machine learning.

Per saperne di più, consulta Machine Learning automatizzato (AutoML) nel Machine Learning Crash Course.

valutazione autore

#language
#generativeAI
Un meccanismo ibrido per valutare la qualità dell'output di un modello di IA generativa che combina valutazione umana con valutazione automatica. Un autore automatico è un modello di ML addestrato su dati creati da valutazioni umane. Idealmente, uno strumento di valutazione automatica impara a imitare un valutatore umano.

Sono disponibili autoritratti predefiniti, ma i migliori sono ottimizzati in base all'attività che stai valutando.

modello autoregressivo

#language
#image
#generativeAI

Un modello che deducono una previsione in base alle proprie predizioni precedenti. Ad esempio, i modelli linguistici autoregressivi prevedono il successivo token in base ai token previsti in precedenza. Tutti i modelli linguistici di grandi dimensioni basati su Transformer sono autoregressivi.

Al contrario, i modelli di immagini basati su GAN in genere non sono autoregressivi, poiché generano un'immagine in un unico passaggio in avanti e non in modo iterativo. Tuttavia, alcuni modelli di generazione di immagini sono autoregressivi perché generano un'immagine in più passaggi.

perdita ausiliaria

Una funzione di perdita, utilizzata in combinazione con la funzione di perdita principale di un modello di rete neurale , che aiuta ad accelerare l'addestramento durante le prime iterazioni quando i pesi vengono inizializzati in modo casuale.

Le funzioni di perdita ausiliarie trasferiscono gradienti efficaci ai livelli precedenti. Ciò facilita la convergenza durante l'addestramento combattendo il problema della scomparsa del gradiente.

Precisione media a k

#language

Una metrica per riepilogare il rendimento di un modello su un singolo prompt che genera risultati classificati, ad esempio un elenco numerato di consigli sui libri. La precisione media a k è la media dei valori di precisione a k per ogni risultato pertinente. La formula per la precisione media a k è quindi:

\[{\text{average precision at k}} = \frac{1}{n} \sum_{i=1}^n {\text{precision at k for each relevant item} } \]

dove:

  • \(n\) è il numero di elementi pertinenti nell'elenco.

È diverso dal richiamo a k.

condizione allineata all'asse

#df

In un albero decisionale, una condizione che coinvolge una sola caratteristica. Ad esempio, se area è un elemento, la seguente è una condizione allineata all'asse:

area > 200

È diverso dalla condizione obliqua.

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.

bagging

#df

Un metodo per addestrare un ensemble in cui ogni modello costituente viene addestrato su un sottoinsieme random di esempi di addestramento campionati con sostituzione. Ad esempio, una foresta casuale è una raccolta di alberi decisionali addestrati con il bagging.

Il termine bagging è l'abbreviazione di bootstrap aggregating.

Per ulteriori informazioni, consulta la sezione Foreste casuali nel corso Foreste di decisione.

bag of words

#language

Una rappresentazione delle parole in una frase o un passaggio, indipendentemente dall'ordine. Ad esempio, il bag of words rappresenta le seguenti tre frasi in modo identico:

  • il cane salta
  • salta il cane
  • cane salta

Ogni parola viene associata a un indice in un vettore sparso, dove il vettore ha un indice per ogni parola del vocabolario. Ad esempio, la frase il cane salta viene mappata in un vettore di caratteristiche con valori diversi da zero nei tre indici corrispondenti alle parole il, cane e salta. Il valore diverso da zero può essere uno dei seguenti:

  • Un 1 per indicare la presenza di una parola.
  • Un conteggio del numero di volte in cui una parola compare nel bag. Ad esempio, se la frase fosse il cane marrone è un cane con pelo marrone, sia marrone che cane verrebbero rappresentati come 2, mentre le altre parole come 1.
  • Qualche altro valore, ad esempio il logaritmo del conteggio del numero di volte che una parola compare nel bag.

base di riferimento

Un modello utilizzato come punto di riferimento per confrontare il rendimento di un altro modello (in genere più complesso). Ad esempio, un modello di regressione logistica potrebbe essere un buon punto di riferimento per un modello di deep learning.

Per un problema specifico, la linea di base aiuta gli sviluppatori di modelli a quantificare il rendimento minimo previsto che un nuovo modello deve raggiungere per essere utile.

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.

inferenza batch

#TensorFlow
#GoogleCloud

Il processo di deduzione di previsioni su più esempi non etichettati suddivisi in sottoinsiemi più piccoli ("lotti").

L'inferenza batch può sfruttare le funzionalità di parallellizzazione dei chip di acceleratore. In altre parole, più acceleratori possono dedurre contemporaneamente le previsioni su diversi batch di esempi non etichettati, aumentando notevolmente il numero di deduzioni al secondo.

Per ulteriori informazioni, consulta Sistemi di ML di produzione: inferenza statica e dinamica nel corso introduttivo al machine learning.

normalizzazione batch

Normalizzazione dell'input o dell'output delle funzioni di attivazione in un livello nascosto. La normalizzazione dei batch può offrire i seguenti vantaggi:

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:

Rete neurale bayesiana

Una rete neurale probabilistica che tiene conto dell'incertezza nei pesi e negli output. Un modello di regressione con rete neurale standard in genere predice un valore scalare. Ad esempio, un modello standard prevede un prezzo di una casa di 853.000. Al contrario, una rete neurale bayesiana prevede una distribuzione di valori. Ad esempio, un modello bayesiano prevede un prezzo di una casa di 853.000 con una deviazione standard di 67.200.

Una rete neurale bayesiana si basa sul teorema di Bayes per calcolare le incertezze nelle ponderazioni e nelle previsioni. Una rete neurale bayesiana può essere utile quando è importante quantificare l'incertezza, ad esempio nei modelli relativi ai prodotti farmaceutici. Le reti neurali bayesiane possono anche contribuire a evitare il sovraffittamento.

Ottimizzazione bayesiana

Una tecnica di modello di regressione probabilistica per ottimizzare le funzioni oggettive di calcolo costoso ottimizzando invece un surrogato che quantifica l'incertezza utilizzando una tecnica di apprendimento bayesiana. Poiché l'ottimizzazione bayesiana è molto costosa, in genere viene utilizzata per ottimizzare attività di valutazione complesse che hanno un numero ridotto di parametri, come la selezione degli iperparametri.

Equazione di Bellman

#rl

Nell'apprendimento tramite rinforzo, la seguente identità soddisfatta dalla funzione Q ottimale:

\[Q(s, a) = r(s, a) + \gamma \mathbb{E}_{s'|s,a} \max_{a'} Q(s', a')\]

Gli algoritmi di apprendimento per rinforzo applicano questa identità per creare l'apprendimento Q tramite la seguente regola di aggiornamento:

\[Q(s,a) \gets Q(s,a) + \alpha \left[r(s,a) + \gamma \displaystyle\max_{\substack{a_1}} Q(s',a') - Q(s,a) \right] \]

Oltre al reinforcement learning, l'equazione di Bellman ha applicazioni alla programmazione dinamica. Consulta la voce di Wikipedia sull'equazione di Bellman.

BERT (Bidirectional Encoder Representations from Transformers)

#language

Un'architettura del modello per la rappresentazione del testo. Un modello BERT addestrato può essere parte di un modello più grande per la classificazione del testo o altre attività di ML.

BERT presenta le seguenti caratteristiche:

Le varianti di BERT includono:

Per una panoramica di BERT, consulta Open Sourcing BERT: State-of-the-Art Pre-training for Natural Language Processing.

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.

bidirezionale

#language

Termine utilizzato per descrivere un sistema che valuta il testo che precede e segue una sezione di testo target. Al contrario, un sistema unidirezionale valuta solo il testo che precede una sezione di testo target.

Ad esempio, considera un modello linguistico con maschera che deve determinare le probabilità per la parola o le parole che rappresentano il tratto sottolineato nella seguente domanda:

Che cos'è il _____?

Un modello linguistico unidirezionale dovrebbe basare le sue probabilità solo sul contesto fornito dalle parole "Che cosa", "è" e "il". Al contrario, un modello linguistico bidirezionale potrebbe anche acquisire il contesto da "con" e "tu", il che potrebbe aiutare il modello a generare previsioni migliori.

modello linguistico bidirezionale

#language

Un modello linguistico che determina la probabilità che un determinato token sia presente in una determinata posizione in un estratto di testo in base al testo precedente e successivo.

bigramma

#seq
#language

Un n-gramma in cui N=2.

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.

condizione binaria

#df

In un albero decisionale, una condizione con due soli possibili risultati, in genere o no. Ad esempio, la seguente è una condizione binaria:

temperature >= 100

È il contrario della condizione non binaria.

Per ulteriori informazioni, consulta la sezione Tipi di condizioni nel corso Foreste di decisione.

raggruppamento

Sinonimo di bucketing.

BLEU (Bilingual Evaluation Understudy)

#language

Una metrica compresa tra 0,0 e 1,0 per valutare le traduzioni automatiche, ad esempio dallo spagnolo al giapponese.

Per calcolare un punteggio, BLEU in genere confronta la traduzione di un modello di ML (testo generato) con la traduzione di un esperto umano (testo di riferimento). Il grado di corrispondenza degli n-grammi nel testo generato e nel testo di riferimento determina il punteggio BLEU.

Il documento originale su questa metrica è BLEU: a Method for Automatic Evaluation of Machine Translation.

Vedi anche BLEURT.

BLEURT (Bilingual Evaluation Understudy from Transformers)

#language

Una metrica per valutare le traduzioni automatiche da una lingua all'altra, in particolare verso e dall'inglese.

Per le traduzioni verso e dall'inglese, BLEURT è più in linea con le valutazioni umane rispetto a BLEU. A differenza di BLEU, BLEURT enfatizza le somiglianze semantiche (di significato) e può adattarsi al parafrasaggio.

BLEURT si basa su un modello linguistico di grandi dimensioni preaddestrato (per l'esattezza BERT) che viene poi ottimizzato sul testo di traduttori umani.

Il documento originale su questa metrica è BLEURT: Learning Robust Metrics for Text Generation.

aumento

Una tecnica di machine learning che combina in modo iterativo un insieme di classificatori semplici e non molto accurati (chiamati classificatori "deboli") in un classificatore con elevata precisione (un classificatore "forte") assegnando un peso maggiore agli esempi che il modello attualmente classifica erroneamente.

Per ulteriori informazioni, consulta la sezione Che cosa sono gli alberi decisionali con boosting della regressione? nel corso sulle foreste decisionali.

riquadro di delimitazione

#image

In un'immagine, le coordinate (x, y) di un rettangolo attorno a un'area di interesse, ad esempio il cane nell'immagine di seguito.

Fotografia di un cane seduto su un divano. Un riquadro delimitante verde
          con coordinate in alto a sinistra (275, 1271) e in basso a destra (2954, 2761) che circoscrive il corpo del cane

trasmissione

Espansione della forma di un operando in un'operazione matematica di matrice a dimensioni compatibili per l'operazione. Ad esempio, la algebra lineare richiede che i due operandi in un'operazione di somma di matrici devano avere le stesse dimensioni. Di conseguenza, non puoi aggiungere una matrice di forma (m, n) a un vettore di lunghezza n. La trasmissione consente questa operazione espandendo virtualmente il vettore di lunghezza n in una matrice di forma (m, n) replicando gli stessi valori in ogni colonna.

Ad esempio, date le seguenti definizioni, l'algebra lineare vieta A+B perché A e B hanno dimensioni diverse:

A = [[7, 10, 4],
     [13, 5, 9]]
B = [2]

Tuttavia, la trasmissione consente l'operazione A+B espandendo virtualmente B a:

 [[2, 2, 2],
  [2, 2, 2]]

Pertanto, A+B è ora un'operazione valida:

[[7, 10, 4],  +  [[2, 2, 2],  =  [[ 9, 12, 6],
 [13, 5, 9]]      [2, 2, 2]]      [15, 7, 11]]

Per ulteriori dettagli, consulta la seguente descrizione della trasmissione in NumPy.

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

livello di calibrazione

Un aggiustamento post-previsione, in genere per tenere conto del bias di previsione. Le probabilità e le predizioni aggiustate devono corrispondere alla distribuzione di un insieme di etichette osservato.

generazione di candidati

#recsystems

L'insieme iniziale di consigli scelti da un sistema di consigli. Ad esempio, considera una libreria che offre 100.000 titoli. La fase di generazione dei candidati crea un elenco molto più piccolo di libri adatti per un determinato utente, ad esempio 500. Tuttavia, anche 500 libri sono troppi da consigliare a un utente. Le fasi successive e più costose di un sistema di consigli (come l'assegnazione del punteggio e il nuovo ranking) riducono questi 500 a un insieme molto più piccolo e utile di consigli.

Per ulteriori informazioni, consulta la Panoramica della generazione di candidati nel corso sui sistemi di raccomandazione.

campionamento dei candidati

Un'ottimizzazione in fase di addestramento che calcola una probabilità per tutte le etichette positive, utilizzando, ad esempio, softmax, ma solo per un campione casuale di etichette negative. Ad esempio, dato un esempio etichettato come beagle e cane, il campionamento dei candidati calcola le probabilità previste e i termini di perdita corrispondenti per:

  • beagle
  • cane
  • un sottoinsieme casuale delle classi negative rimanenti (ad es. gatto, lecca-lecca, recinzione).

L'idea è che le classi negative possano imparare da un rinforzo negativo meno frequente, a condizione che le classi positive ricevano sempre un rinforzo positivo adeguato, e questo è effettivamente osservato empiricamente.

Il campionamento dei candidati è più efficiente dal punto di vista computazionale rispetto agli algoritmi di addestramento che calcolano le previsioni per tutte le classi negative, in particolare quando il numero di classi negative è molto elevato.

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.

modello linguistico causale

#language

Sinonimo di modello linguistico unidirezionale.

Consulta modello linguistico bidirezionale per mettere in risalto i diversi approcci diretti nella creazione di modelli linguistici.

centroid

#clustering

Il centro di un cluster determinato da un algoritmo k-means o k-mediana. Ad esempio, se k è 3, l'algoritmo k-means o k-median trova 3 centroidi.

Per saperne di più, consulta la sezione Algoritmi di clustering nel corso Clustering.

Clustering basato su centroidi

#clustering

Una categoria di algoritmi di clustering che organizzano i dati in cluster non gerarchici. K-means è l'algoritmo di clustering basato su centroidi più utilizzato.

È diverso dagli algoritmi di clustering gerarchico.

Per saperne di più, consulta la sezione Algoritmi di clustering nel corso Clustering.

Chain-of-Thought Prompting

#language
#generativeAI

Una tecnica di progettazione di prompt che incoraggia un modello linguistico di grandi dimensioni (LLM) a spiegare il suo ragionamento passo passo. Ad esempio, considera il seguente prompt, prestando particolare attenzione alla seconda frase:

Quante forze g vengono sperimentate da un conducente in un'auto che passa da 0 a 96 km/h in 7 secondi? Nella risposta, mostra tutti i calcoli pertinenti.

La risposta dell'LLM probabilmente:

  • Mostra una sequenza di formule di fisica, inserendo i valori 0, 60 e 7 nei punti appropriati.
  • Spiega perché ha scelto queste formule e il significato delle varie variabili.

La Chain-of-Thought Prompting costringe l'LLM a eseguire tutti i calcoli, che potrebbero portare a una risposta più corretta. Inoltre, i prompt della catena di pensiero consentono all'utente di esaminare i passaggi dell'LLM per determinare se la risposta ha senso o meno.

chat

#language
#generativeAI

I contenuti di un dialogo con un sistema di ML, in genere un modello linguistico di grandi dimensioni. L'interazione precedente in una chat (ciò che hai digitato e la risposta del modello linguistico di grandi dimensioni) diventa il contesto per le parti successive della chat.

Un chatbot è un'applicazione di un modello linguistico di grandi dimensioni.

posto di blocco

Dati che acquisiscono lo stato dei parametri di un modello durante l'addestramento o al termine dell'addestramento. Ad esempio, durante l'addestramento, puoi:

  1. Interrompere l'addestramento, magari intenzionalmente o a causa di determinati errori.
  2. Acquisisci il checkpoint.
  3. In un secondo momento, ricarica il checkpoint, eventualmente su hardware diverso.
  4. Riavvia l'addestramento.

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.

Cloud TPU

#TensorFlow
#GoogleCloud

Un acceleratore hardware specializzato progettato per accelerare i carichi di lavoro di machine learning su Google Cloud.

clustering

#clustering

Raggruppamento di esempi correlati, in particolare durante l'apprendimento non supervisionato. Una volta raggruppati tutti gli esempi, una persona può facoltativamente assegnare un significato a ogni cluster.

Esistono molti algoritmi di clustering. Ad esempio, l'algoritmo k-means agrupa gli esempi in base alla loro vicinanza a un centroide, come nel seguente diagramma:

Un grafico bidimensionale in cui l&#39;asse x è etichettato come larghezza dell&#39;albero e l&#39;asse y come altezza dell&#39;albero. Il grafico contiene due
          centroidi e diverse dozzine di punti dati. I punti dati vengono
          classificati in base alla loro vicinanza. In altre parole, i punti dati
          più vicini a un centroide sono classificati come cluster 1, mentre quelli
          più vicini all&#39;altro centroide sono classificati come cluster 2.

Un ricercatore umano potrebbe quindi esaminare i cluster e, ad esempio, etichettare il cluster 1 come "alberi nani" e il cluster 2 come "alberi di dimensioni standard".

Come altro esempio, prendiamo in considerazione un algoritmo di clustering basato sulla distanza di un esempio da un punto centrale, illustrato come segue:

Decine di punti dati sono disposti in cerchi concentrici, quasi come fori intorno al centro di una tavola da freccette. L&#39;anello più interno
          dei punti dati è classificato come cluster 1, l&#39;anello intermedio
          è classificato come cluster 2 e l&#39;anello più esterno come
          cluster 3.

Per ulteriori informazioni, consulta il corso sul clustering.

co-adattamento

Quando i neuroni prevedono schemi nei dati di addestramento basandosi quasi esclusivamente sugli output di altri neuroni specifici anziché sul comportamento della rete nel suo complesso. Quando gli schemi che causano la co-adattazione non sono presenti nei dati di convalida, la co-adattazione causa un adattamento eccessivo. La regolarizzazione con dropout riduce la co-adattazione perché il dropout garantisce che i neuroni non possano fare affidamento esclusivamente su altri neuroni specifici.

filtro collaborativo

#recsystems

Effettuare previsioni sugli interessi di un utente in base agli interessi di molti altri utenti. Il filtraggio collaborativo viene spesso utilizzato nei sistemi di consigli.

Per ulteriori informazioni, consulta la sezione Filtro collaborativo nel corso sui sistemi di raccomandazione.

Spostamento del concetto

Un cambiamento nella relazione tra le caratteristiche e l'etichetta. Nel tempo, la deriva del concetto riduce la qualità di un modello.

Durante l'addestramento, il modello apprende la relazione tra le caratteristiche e le relative etichette nel set di addestramento. Se le etichette nel set di addestramento sono buoni proxy per il mondo reale, il modello dovrebbe fare buone previsioni per il mondo reale. Tuttavia, a causa del cambiamento del concetto, le predizioni del modello tendono a peggiorare nel tempo.

Ad esempio, considera un modello di classificazione binaria che prevede se un determinato modello di auto è "a basso consumo di carburante" o meno. In altre parole, le funzionalità potrebbero essere:

  • peso dell'auto
  • compressione del motore
  • tipo di trasmissione

mentre l'etichetta è:

  • a basso consumo di carburante
  • non efficiente dal punto di vista del consumo di carburante

Tuttavia, il concetto di "auto a basso consumo di carburante" continua a cambiare. Un modello di auto etichettato come a basso consumo di carburante nel 1994 quasi certamente verrebbe etichettato come a elevato consumo di carburante nel 2024. Un modello che soffre di deriva del concetto tende a fare previsioni sempre meno utili nel tempo.

Confronta e contrapponi con la non stazionarietà.

condizione

#df

In un albero decisionale, qualsiasi nodo che valuta un'espressione. Ad esempio, la seguente parte di un albero decisionale contiene due condizioni:

Un albero decisionale composto da due condizioni: (x > 0) e
          (y > 0).

Una condizione è chiamata anche suddivisione o test.

Condizione di contrasto con foglia.

Vedi anche:

Per ulteriori informazioni, consulta la sezione Tipi di condizioni nel corso Foreste di decisione.

confabulazione

#language

Sinonimo di allucinazione.

La confabulazione è probabilmente un termine tecnicamente più preciso dell'allucinazione. Tuttavia, l'allucinazione è diventata popolare per prima.

configurazione

La procedura di assegnazione dei valori iniziali delle proprietà utilizzati per addestrare un modello, tra cui:

Nei progetti di machine learning, la configurazione può essere eseguita tramite un file di configurazione speciale o utilizzando librerie di configurazione come le seguenti:

bias di conferma

#fairness

La tendenza a cercare, interpretare, favorire e ricordare le informazioni in modo da confermare le proprie convinzioni o ipotesi preesistenti. Gli sviluppatori di machine learning potrebbero raccogliere o etichettare inavvertitamente i dati in modo da influenzare un risultato che supporti le loro convinzioni esistenti. Il bias di conferma è una forma di bias implicito.

Il bias dell'osservatore è una forma di bias di conferma in cui un sperimentatore continua ad addestrare i modelli finché non viene confermata un'ipotesi preesistente.

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.

analisi delle circoscrizioni

#language

Suddivisione di una frase in strutture grammaticali più piccole ("componenti"). Una parte successiva del sistema di ML, ad esempio un modello di comprensione del linguaggio naturale, può analizzare i componenti più facilmente della frase originale. Ad esempio, considera la seguente frase:

Un mio amico ha adottato due gatti.

Un parser di costituenti può suddividere questa frase nei seguenti due costituenti:

  • Il mio amico è una frase nominale.
  • ha adottato due gatti è una frase verbale.

Questi componenti possono essere ulteriormente suddivisi in componenti più piccoli. Ad esempio, la frase verbale

ha adottato due gatti

può essere ulteriormente suddiviso in:

  • adopted è un verbo.
  • due gatti è un'altra frase nominale.

Embedding del linguaggio contestualizzato

#language
#generativeAI

Un embedding che si avvicina alla "comprensione" di parole e frasi come farebbe un madrelingua. Gli embedding linguistici contestualizzati possono comprendere sintassi, semantica e contesto complessi.

Ad esempio, considera gli embedding della parola inglese cow. Gli embeddings meno recenti, come word2vec, possono rappresentare le parole in inglese in modo che la distanza nello spazio di embedding da cow a bull sia simile alla distanza da ewe (pecora femmina) a ram (pecora maschio) o da female a male. Gli embedding linguistici contestualizzati possono fare un passo avanti riconoscendo che a volte gli anglofoni utilizzano la parola cow per indicare una mucca o un toro.

finestra di contesto

#language
#generativeAI

Il numero di token che un modello può elaborare in un determinato prompt. Maggiore è la finestra di contesto, più informazioni può utilizzare il modello per fornire risposte coerenti e coese al prompt.

funzione continua

#fundamentals

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

È il contrario di funzionalità discreta.

campionamento di convenienza

Utilizzo di un set di dati non raccolto in modo scientifico per eseguire esperimenti rapidi. In un secondo momento, è essenziale passare a un set di dati raccolto in modo scientifico.

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.

funzione convessa

Una funzione in cui la regione sopra il grafico della funzione è un insieme convesso. La funzione convessa prototipale ha la forma della lettera U. Ad esempio, le seguenti sono tutte funzioni convesse:

Curve a forma di U, ciascuna con un singolo punto minimo.

Al contrario, la seguente funzione non è convessa. Nota che la regione sopra il grafico non è un insieme convesso:

Una curva a forma di W con due diversi punti di minimo locale.

Una funzione strettamente convessa ha esattamente un punto minimo locale, che è anche il punto minimo globale. Le funzioni classiche a forma di U sono funzioni strettamente convesse. Tuttavia, alcune funzioni convesse (ad esempio le linee rette) non hanno forma a U.

Per ulteriori informazioni, consulta la sezione Funzioni di convergenza e convesse nel corso introduttivo al machine learning.

Ottimizzazione convessa

Il processo di utilizzo di tecniche matematiche come la discesa del gradiente per trovare il minimo di una funzione convessa. Gran parte della ricerca nel machine learning si è concentrata sulla formulazione di vari problemi come problemi di ottimizzazione convessa e sulla loro risoluzione in modo più efficiente.

Per informazioni dettagliate, consulta Boyd e Vandenberghe, Convex Optimization.

insieme convesso

Un sottoinsieme dello spazio euclideo tale che una linea tracciata tra due punti qualsiasi del sottoinsieme rimanga completamente all'interno del sottoinsieme. Ad esempio, le seguenti due forme sono insiemi convessi:

Un&#39;illustrazione di un rettangolo. Un&#39;altra illustrazione di un ovale.

Al contrario, le due forme seguenti non sono insiemi convessi:

Illustrazione di un grafico a torta con una fetta mancante.
          Un&#39;altra illustrazione di un poligono molto irregolare.

convoluzione

#image

In matematica, in senso colloquiale, una combinazione di due funzioni. Nel machine learning, una convergenza mescola il filtro convergenza e la matrice di input per addestrare i pesi.

Il termine "convoluzione" nel machine learning è spesso un modo abbreviato per fare riferimento all'operazione di convoluzione o al livello di convoluzione.

Senza le convoluzioni, un algoritmo di machine learning dovrebbe apprendere un peso distinto per ogni cella di un grande tensore. Ad esempio, un algoritmo di machine learning addestrato su immagini 2K x 2K sarebbe costretto a trovare 4 milioni di pesi separati. Grazie alle convoluzioni, un algoritmo di machine learning deve solo trovare i pesi per ogni cella del filtro convoluzionale, riducendo notevolmente la memoria necessaria per addestrare il modello. Quando viene applicato il filtro convoluzionale, viene semplicemente replicato nelle celle in modo che ciascuna venga moltiplicata per il filtro.

Per saperne di più, consulta Introduzione alle reti neurali convolute nel corso Classificazione delle immagini.

filtro convoluzionale

#image

Uno dei due elementi di un'operazione di convoluzione. L'altro attore è un'estrazione di una matrice di input. Un filtro convoluzionale è una matrice con lo stesso rango della matrice di input, ma di dimensioni inferiori. Ad esempio, data una matrice di input 28 x 28, il filtro potrebbe essere qualsiasi matrice 2D inferiore a 28 x 28.

Nella manipolazione fotografica, tutte le celle di un filtro convoluzionale sono tipicamente impostate su un pattern costante di 1 e 0. Nel machine learning, i filtri con convoluzione vengono generalmente avviati con numeri casuali e poi la rete li addestra ai valori ideali.

Per ulteriori informazioni, consulta la sezione Convoluzione nel corso Classificazione delle immagini.

livello convoluzionale

#image

Uno strato di una rete neurale profonda in cui un filtro convoluzionale passa lungo una matrice di input. Ad esempio, considera il seguente filtro convoluzionale 3 x 3:

Una matrice 3x3 con i seguenti valori: [[0,1,0], [1,0,1], [0,1,0]]

L'animazione seguente mostra un livello di convoluzione costituito da 9 operazioni di convoluzione che coinvolgono la matrice di input 5x5. Tieni presente che ogni operazione di convoluzione agisce su un diverso segmento 3x3 della matrice di input. La matrice 3x3 risultante (a destra) è costituita dai risultati delle 9 operazioni di convolvezione:

Un&#39;animazione che mostra due matrici. La prima matrice è la matrice 5x5: [[128,97,53,201,198], [35,22,25,200,195],
          [37,24,28,197,182], [33,28,92,195,179], [31,40,100,192,177]].
          La seconda matrice è la matrice 3x3:
          [[181,303,618], [115,338,605], [169,351,560]].
          La seconda matrice viene calcolata applicando il filtro convolzionale
          [[0, 1, 0], [1, 0, 1], [0, 1, 0]] su diversi sottoinsiemi 3x3 della matrice 5x5.

Per saperne di più, consulta la sezione Livelli completamente connessi nel corso Classificazione delle immagini.

rete neurale convoluzionale

#image

Una rete neurale in cui almeno uno strato è un strato convoluzionale. Una tipica rete neurale convolzionale è costituita da una combinazione dei seguenti livelli:

Le reti neurali convoluzionali hanno avuto un grande successo in determinati tipi di problemi, come il riconoscimento delle immagini.

Operazione di convoluzione

#image

La seguente operazione matematica in due passaggi:

  1. Moltiplicazione elemento per elemento del filtro convoluzionale e di una fetta di una matrice di input. Il segmento della matrice di input ha lo stesso rango e le stesse dimensioni del filtro convoluzionale.
  2. Somma di tutti i valori nella matrice del prodotto risultante.

Ad esempio, considera la seguente matrice di input 5x5:

La matrice 5 x 5: [[128,97,53,201,198], [35,22,25,200,195],
          [37,24,28,197,182], [33,28,92,195,179], [31,40,100,192,177]].

Ora immagina il seguente filtro convoluzionale 2x2:

La matrice 2x2: [[1, 0], [0, 1]]

Ogni operazione di convoluzione coinvolge un singolo slice 2x2 della matrice di input. Ad esempio, supponiamo di utilizzare il sezionamento 2x2 in alto a sinistra della matrice di input. Pertanto, l'operazione di convergenza su questo segmento è la seguente:

Applicazione del filtro convoluzionale [[1, 0], [0, 1]] alla sezione 2x2 in alto a sinistra della matrice di input, ovvero [[128,97], [35,22]].
          Il filtro convoluzionale lascia invariati 128 e 22, ma azzera 97 e 35. Di conseguenza, l&#39;operazione di convergenza genera
          il valore 150 (128 + 22).

Un livello di convoluzione è costituito da una serie di operazioni di convoluzione, ciascuna delle quali agisce su un diverso segmento della matrice di input.

costo

Sinonimo di perdita.

co-training

Un approccio di apprendimento semi-supervisionato particolarmente utile quando si verificano tutte le seguenti condizioni:

Il co-training amplifica essenzialmente gli indicatori indipendenti in un indicatore più forte. Ad esempio, prendiamo in considerazione un modello di classificazione che classifica le singole auto usate come Buone o Cattive. Un insieme di funzionalità predittive potrebbe concentrarsi su caratteristiche aggregate come l'anno, la marca e il modello dell'auto; un altro insieme di funzionalità predittive potrebbe concentrarsi sul comportamento di guida del proprietario precedente e sulla cronologia della manutenzione dell'auto.

Il documento fondamentale sul co-training è Combining Labeled and Unlabeled Data with Co-Training di Blum e Mitchell.

equità controfattuale

#fairness

Una metrica di equità che controlla se un classificatore produce lo stesso risultato per un individuo e per un altro individuo identico al primo, tranne che per uno o più attributi sensibili. La valutazione di un classificatore per l'equità controfattuale è un metodo per evidenziare potenziali fonti di bias in un modello.

Per ulteriori informazioni, consulta una delle seguenti risorse:

bias di copertura

#fairness

Consulta la sezione relativa al bias di selezione.

arresto anomalo

#language

Una frase o una locuzione con un significato ambiguo. I crash blossom rappresentano un problema significativo nella comprensione del linguaggio naturale. Ad esempio, il titolo La burocrazia blocca il grattacielo è un crash blossom perché un modello di NLU potrebbe interpretare il titolo in modo letterale o figurativo.

critico

#rl

Sinonimo di Deep Q-Network.

entropia incrociata

Una generalizzazione della perdita di log per problemi di classificazione multiclasse. L'entropia incrociata quantifica la differenza tra due distribuzioni di probabilità. Vedi anche perplessità.

convalida incrociata

Un meccanismo per stimare il grado di generalizzazione di un modello a nuovi dati testando il modello su uno o più sottoinsiemi di dati non sovrapposti trattenuti dal set di addestramento.

funzione di distribuzione cumulativa (CDF)

Una funzione che definisce la frequenza dei campioni minori o uguali a un valore di destinazione. Ad esempio, considera una distribuzione normale di valori continui. Una CDF indica che circa il 50% dei campioni deve essere inferiore o uguale alla media e che circa l'84% dei campioni deve essere inferiore o uguale a una deviazione standard sopra la media.

D

analisi dei dati

Ottenere una comprensione dei dati tenendo conto di campioni, misurazioni e visualizzazione. L'analisi dei dati può essere particolarmente utile quando viene ricevuto un set di dati per la prima volta, prima di creare il primo modello. È inoltre fondamentale per comprendere gli esperimenti e i problemi di debug del sistema.

aumento dei dati

#image

Aumentare artificialmente l'intervallo e il numero di esempi di addestramento tramite la trasformazione di esempi esistenti per creare esempi aggiuntivi. Ad esempio, immagina che le immagini siano una delle tue caratteristiche, ma che il tuo set di dati non contenga esempi di immagini sufficienti per consentire al modello di apprendere associazioni utili. Idealmente, dovresti aggiungere al set di dati un numero sufficiente di immagini etichettate per consentire al modello di addestrarsi correttamente. Se ciò non è possibile, l'aumento dei dati può ruotare, allungare e riflettere ogni immagine per produrre molte varianti dell'immagine originale, producendo eventualmente dati etichettati sufficienti per consentire un'ottima formazione.

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.

parallelismo dei dati

Un modo per scalare l'addestramento o l'inferenza che replica un intero modello su più dispositivi e poi passa un sottoinsieme dei dati di input a ciascun dispositivo. Il parallelismo dei dati può consentire l'addestramento e l'inferenza su batch di dimensioni molto grandi. Tuttavia, il parallelismo dei dati richiede che il modello sia abbastanza piccolo da adattarsi a tutti i dispositivi.

In genere, il parallelismo dei dati velocizza l'addestramento e l'inferenza.

Vedi anche parallismo dei modelli.

API Dataset (tf.data)

#TensorFlow

Un'API TensorFlow di alto livello per leggere i dati e trasformarli in una forma richiesta da un algoritmo di machine learning. Un oggetto tf.data.Dataset rappresenta una sequenza di elementi, in cui ogni elemento contiene uno o più Tensori. Un oggetto tf.data.Iterator fornisce accesso agli elementi di un Dataset.

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)

confine decisionale

Il separatore tra classi appreso da un modello in un gruppo di classi binarie o problemi di classificazione multiclasse. Ad esempio, nella seguente immagine che rappresenta un problema di classificazione binaria, la soglia di decisione è la frontiera tra la classe arancione e la classe blu:

Un confine ben definito tra una classe e un&#39;altra.

foresta decisionale

#df

Un modello creato da più alberi decisionali. Una foresta decisionale effettua una previsione aggregando le previsioni dei suoi alberi decisionali. I tipi più diffusi di foreste decisionali includono foreste casuali e alberi con boosting della curva di distribuzione.

Per ulteriori informazioni, consulta la sezione Foreste di decisione nel corso Foreste di decisione.

soglia di decisione

Sinonimo di soglia di classificazione.

albero decisionale

#df

Un modello di apprendimento supervisionato composto da un insieme di condizioni e foglie organizzate in modo gerarchico. Ad esempio, di seguito è riportato un albero decisionale:

Un albero decisionale costituito da quattro condizioni disposte in modo gerarchico, che portano a cinque foglie.

decodificatore

#language

In generale, qualsiasi sistema di ML che converte da una rappresentazione interna elaborata, densa o a una rappresentazione più grezza, sparsa o esterna.

I decodificatori sono spesso un componente di un modello più grande, dove vengono spesso abbinati a un codificatore.

Nelle attività di sequenza a sequenza, un decodificatore inizia con lo stato interno generato dall'encoder per prevedere la sequenza successiva.

Consulta Transformer per la definizione di un decodificatore all'interno dell'architettura Transformer.

Per saperne di più, consulta Modelli linguistici di grandi dimensioni nel corso introduttivo al machine learning.

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.

per le reti neurali profonde

Sinonimo di modello di deep learning.

Deep Q-Network (DQN)

#rl

In Q-learning, una rete neurale profonda che prevede le funzioni Q.

Critic è un sinonimo di Deep Q-Network.

parità demografica

#fairness

Una metrica di equità che è soddisfatta se i risultati della classificazione di un modello non dipendono da un determinato attributo sensibile.

Ad esempio, se sia i lillipuziani che i brobdingnagiani si iscrivono all'Università Glubbdubdrib, la parità demografica viene raggiunta se la percentuale di lillipuziani ammessi è uguale alla percentuale di brobdingnagiani ammessi, indipendentemente dal fatto che un gruppo sia in media più qualificato dell'altro.

È diverso da pari opportunità e uguaglianza di opportunità, che consentono ai risultati di classificazione aggregati di dipendere da attributi sensibili, ma non consentono ai risultati di classificazione per determinate etichette di verità oggettive specificate di dipendere da attributi sensibili. Consulta "Attacking discrimination with smarter machine learning" per una visualizzazione che illustra i compromessi durante l'ottimizzazione per la parità demografica.

Per ulteriori informazioni, consulta Equità: parità demografica nel corso introduttivo al machine learning.

riduzione del rumore

#language

Un approccio comune all'apprendimento autosupervisionato in cui:

  1. Il rumore viene aggiunto artificialmente al set di dati.
  2. Il modello tenta di rimuovere il rumore.

La riduzione del rumore consente di apprendere da esempi non etichettati. Il set di dati originale funge da destinazione o etichetta e i dati con rumore come input.

Alcuni modelli linguistici con maschera utilizzano il denoising come segue:

  1. Il rumore viene aggiunto artificialmente a una frase non etichettata mascherando alcuni dei token.
  2. Il modello tenta di prevedere i token originali.

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.

strato denso

Sinonimo di livello completamente connesso.

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à.

Rete neurale convoluzionale separabile in profondità (sepCNN)

#image

Un'architettura di rete neurale convoluzionale basata su Inception, ma in cui i moduli Inception sono sostituiti da convolute separabili in base alla profondità. È noto anche come Xception.

Una convoluzione separabile in profondità (abbreviata anche come convoluzione separabile) scompone una convoluzione 3D standard in due operazioni di convoluzione separate che sono più efficienti dal punto di vista computazionale: in primo luogo, una convoluzione in profondità, con una profondità di 1 (n ✕ n ✕ 1) e, in secondo luogo, una convoluzione puntuale, con lunghezza e larghezza pari a 1 (1 ✕ 1 ✕ n).

Per saperne di più, consulta Xception: Deep Learning with Depthwise Separable Convolutions.

etichetta derivata

Sinonimo di etichetta proxy.

dispositivo

#TensorFlow
#GoogleCloud

Un termine sovraccaricato con le seguenti due possibili definizioni:

  1. Una categoria di hardware che può eseguire una sessione TensorFlow, tra cui CPU, GPU e TPU.
  2. Quando si addestra un modello ML su chip di acceleratore (GPU o TPU), la parte del sistema che manipola effettivamente tensori ed embedding. Il dispositivo funziona su chip acceleratori. Al contrario, l'host tipicamente viene eseguito su una CPU.

privacy differenziale

Nel machine learning, un approccio di anonimizzazione per proteggere dall'esposizione eventuali dati sensibili (ad esempio le informazioni personali di un individuo) inclusi nel set di addestramento di un modello. Questo approccio garantisce che il modello non apprenda o ricordi molto su una persona specifica. Questo viene ottenuto campionando e aggiungendo rumore durante l'addestramento del modello per oscurare i singoli punti dati, mitigando il rischio di esporre i dati di addestramento sensibili.

La privacy differenziale viene utilizzata anche al di fuori del machine learning. Ad esempio, talvolta i data scientist utilizzano la privacy differenziale per proteggere la privacy delle persone quando calcolano le statistiche sull'utilizzo dei prodotti per diversi gruppi demografici.

riduzione delle dimensioni

Riduzione del numero di dimensioni utilizzate per rappresentare una determinata funzionalità in un vettore di funzionalità, in genere mediante la conversione in un vettore di incorporamento.

dimensioni

Termine sovraccaricato con una delle seguenti definizioni:

  • Il numero di livelli di coordinate in un Tensor. Ad esempio:

    • Un valore scalare ha zero dimensioni, ad esempio ["Hello"].
    • Un vettore ha una dimensione, ad esempio [3, 5, 7, 11].
    • Una matrice ha due dimensioni, ad esempio [[2, 4, 18], [5, 7, 14]]. Puoi specificare in modo univoco una determinata cella in un vettore unidimensionale con una coordinata; sono necessarie due coordinate per specificare in modo univoco una determinata cella in una matrice bidimensionale.
  • Il numero di voci in un vettore di caratteristiche.

  • Il numero di elementi in un livello di embedding.

prompt diretto

#language
#generativeAI

Sinonimo di prompt zero-shot.

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.

modello discriminativo

Un modello che prevede le etichette da un insieme di una o più caratteristiche. In modo più formale, i modelli di classificazione definiscono la probabilità condizionale di un output in base alle funzionalità e ai pesi, ovvero:

p(output | features, weights)

Ad esempio, un modello che prevede se un'email è spam in base a caratteristiche e pesi è un modello discriminante.

La maggior parte dei modelli di apprendimento supervisionato, inclusi i modelli di classificazione e di regressione, sono modelli di discriminazione.

È diverso dal modello generativo.

discriminatore

Un sistema che determina se gli esempi sono reali o falsi.

In alternativa, il sottosistema all'interno di una rete di GAN che determina se gli esempi creati dal generatore sono reali o falsi.

Per ulteriori informazioni, consulta la sezione Il discriminatore nel corso sulle GAN.

impatto differenziato

#fairness

Prendere decisioni sulle persone che influiscono in modo sproporzionato su diversi sottogruppi di popolazione. Di solito si riferisce a situazioni in cui un processo decisionale algoritmico danneggia o avvantaggia alcuni sottogruppi più di altri.

Ad esempio, supponiamo che un algoritmo che determina l'idoneità di un Lilliputiano per un mutuo per una casa in miniatura abbia maggiori probabilità di classificarlo come "non idoneo" se il suo indirizzo postale contiene un determinato codice postale. Se i Lillipuziani big-endian hanno maggiori probabilità di avere indirizzi postali con questo codice postale rispetto ai Lillipuziani little-endian, questo algoritmo potrebbe avere un impatto diverso.

È diverso dal trattamento ingiusto, che si concentra sulle disparità che si verificano quando le caratteristiche dei sottogruppi sono input espliciti per un processo decisionale algoritmico.

trattamento diverso

#fairness

L'inserimento degli attributi sensibili dei soggetti in un processo decisionale algoritmico in modo che i diversi sottogruppi di persone vengano trattati in modo diverso.

Ad esempio, prendiamo in considerazione un algoritmo che determina l'idoneità dei lillipuziani per un prestito per una casa in miniatura in base ai dati forniti nella richiesta di prestito. Se l'algoritmo utilizza come input l'affiliazione di un Lilliputiano come Big-Endian o Little-Endian, attua un trattamento diverso in base a questa dimensione.

È diverso dall'impatto differenziato, che si concentra sulle disparità nell'impatto sociale delle decisioni algoritmiche sui sottogruppi, indipendentemente dal fatto che questi sottogruppi siano input del modello.

distillazione

#generativeAI

Il processo di riduzione delle dimensioni di un modello (noto come insegnante) in un modello più piccolo (noto come allievo) che emula le previsioni del modello originale nel modo più fedele possibile. La distillazione è utile perché il modello più piccolo presenta due vantaggi chiave rispetto al modello più grande (l'insegnante):

  • Tempo di inferenza più rapido
  • Riduzione del consumo di memoria ed energia

Tuttavia, le previsioni dello studente in genere non sono buone quanto quelle dell'insegnante.

La distillazione addestra il modello studente a minimizzare una funzione di perdita in base alla differenza tra gli output delle previsioni dei modelli studente e insegnante.

Confronta e contrapponi la distillazione con i seguenti termini:

Per saperne di più, consulta LLM: ottimizzazione, distillazione e progettazione dei prompt nel corso introduttivo al machine learning.

distribution

La frequenza e l'intervallo di valori diversi per un determinato elemento o etichetta. Una distribuzione acquisisce la probabilità di un determinato valore.

L'immagine seguente mostra le edistogrammi di due distribuzioni diverse:

  • A sinistra, una distribuzione della ricchezza in base alla legge di potenza rispetto al numero di persone che la possiedono.
  • A destra, una distribuzione normale dell'altezza rispetto al numero di persone che la possiedono.

Due istogrammi. Un istogramma mostra una distribuzione di legge di potenza con
          la ricchezza sull&#39;asse x e il numero di persone che dispongono di questa ricchezza sull&#39;asse y. La maggior parte delle persone ha pochissima ricchezza e poche persone ne hanno moltissima. L&#39;altro istogramma mostra una distribuzione normale
          con l&#39;altezza sull&#39;asse x e il numero di persone con quell&#39;altezza
          sull&#39;asse y. La maggior parte delle persone si concentra in un punto vicino alla media.

Comprendere la distribuzione di ogni funzionalità ed etichetta può aiutarti a determinare come normalizzare i valori e rilevare gli outlier.

L'espressione out of distribution si riferisce a un valore che non compare nel set di dati o è molto raro. Ad esempio, un'immagine del pianeta Saturno viene considerata al di fuori della distribuzione per un set di dati costituito da immagini di gatti.

clustering divisive

#clustering

Consulta la sezione relativa al clustering gerarchico.

downsampling

#image

Termine sovraccaricato che può significare una delle seguenti opzioni:

  • Ridurre la quantità di informazioni in una caratteristica per addestrare un modello in modo più efficiente. Ad esempio, prima di addestrare un modello di riconoscimento delle immagini, riduci la risoluzione delle immagini in un formato a risoluzione inferiore.
  • Addestramento su una percentuale sproporzionatamente bassa di esempi di classi rappresentate in modo eccessivo per migliorare l'addestramento del modello sulle classi sottorappresentate. Ad esempio, in un set di dati con sbilanciamento delle classi, i modelli tendono ad apprendere molto sulla classe di maggioranza e non abbastanza sulla classe di minoranza. Il sottocampionamento aiuta a bilanciare la quantità di addestramento sulle classi di maggioranza e minoranza.

Per ulteriori informazioni, consulta Set di dati: set di dati sbilanciati nel corso introduttivo al machine learning.

DQN

#rl

Abbreviazione di Deep Q-Network.

regolarizzazione del dropout

Una forma di regolarizzazione utile per l'addestramento delle reti neurali. La regolarizzazione con dropoutrimuove una selezione casuale di un numero fisso di unità in un livello della rete per un singolo passo del gradiente. Più unità vengono escluse, più forte è la regolarizzazione. Questo è analogo all'addestramento della rete per emulare un ensemble esponenzialmente grande di reti più piccole. Per maggiori dettagli, consulta Dropout: un modo semplice per evitare l'overfitting delle reti neurali.

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

esecuzione eager

#TensorFlow

Un ambiente di programmazione TensorFlow in cui le operazioni vengono eseguite immediatamente. Al contrario, le operazioni chiamate nell'esecuzione del grafo non vengono eseguite finché non vengono valutate esplicitamente. L'esecuzione anticipata è un'interfaccia imperativa, molto simile al codice della maggior parte dei linguaggi di programmazione. I programmi di esecuzione eager sono generalmente molto più facili da eseguire il debug rispetto ai programmi di esecuzione del grafico.

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.

distanza del movimento della terra (EMD)

Una misura della somiglianza relativa di due distribuzioni. Più bassa è la distanza del movimento della terra, più simili sono le distribuzioni.

distanza di modifica

#language

Una misura della somiglianza tra due stringhe di testo. Nel machine learning, la distanza di modifica è utile per i seguenti motivi:

  • La distanza di modifica è facile da calcolare.
  • La distanza di modifica può confrontare due stringhe note per essere simili tra loro.
  • La distanza di modifica può determinare il grado di somiglianza tra stringhe diverse e una determinata stringa.

Esistono diverse definizioni della distanza di modifica, ciascuna delle quali utilizza operazioni su stringhe diverse. Per un esempio, consulta la distanza di Levenshtein.

Notazione Einsum

Una notazione efficiente per descrivere come devono essere combinati due tensori. I tensori vengono combinati moltiplicando gli elementi di un tensore per gli elementi dell'altro tensore e poi sommando i prodotti. La notazione Einsum utilizza simboli per identificare gli assi di ciascun tensore e gli stessi simboli vengono riorganizzati per specificare la forma del nuovo tensore risultante.

NumPy fornisce un'implementazione comune di Einsum.

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.

spazio di incorporamento

#language

Lo spazio vettoriale di dimensione d a cui vengono mappati gli elementi di uno spazio vettoriale di dimensione superiore. Lo spazio di embedding viene addestrato per acquisire una struttura significativa per l'applicazione prevista.

Il prodotto scalare di due embedding è una misura della loro somiglianza.

vettore di embedding

#language

In generale, un array di numeri in virgola mobile presi da qualsiasi livello nascosto che descrivono gli input a quel livello nascosto. Spesso, un vettore di incorporamento è l'array di numeri in virgola mobile addestrato in un livello di incorporamento. Ad esempio, supponiamo che un livello di embedding debba apprendere un vettore di embedding per ciascuna delle 73.000 specie di alberi sulla Terra. Forse il seguente array è il vettore di incorporamento di un albero di baobab:

Un array di 12 elementi, ciascuno contenente un numero in virgola mobile tra 0,0 e 1,0.

Un vettore di incorporamento non è un insieme di numeri casuali. Uno strato di incorporamento determina questi valori tramite l'addestramento, in modo simile a come una rete neurale apprende altri pesi durante l'addestramento. Ogni elemento dell'array è una valutazione in base a una caratteristica di una specie di albero. Quale elemento rappresenta la caratteristica di quale specie di albero? È molto difficile per gli esseri umani determinare se

La parte matematicamente notevole di un vettore di incorporamento è che gli elementi simili hanno insiemi simili di numeri in virgola mobile. Ad esempio, le specie di alberi simili hanno un insieme di numeri in virgola mobile più simile rispetto alle specie di alberi diverse. Le sequoie e le sequoie giganti sono specie di alberi correlate, quindi avranno un insieme di numeri con virgola mobile più simile rispetto alle sequoie e alle palme da cocco. I numeri nel vettore di embedding cambieranno ogni volta che addestrini nuovamente il modello, anche se lo fai con input identici.

Funzione di distribuzione cumulativa empirica (eCDF o EDF)

Una funzione di distribuzione cumulativa basata su misure empiriche di un set di dati reale. Il valore della funzione in qualsiasi punto dell'asse x è la frazione di osservazioni nel set di dati minori o uguali al valore specificato.

minimizzazione del rischio empirico (ERM)

Scegli la funzione che minimizza la perdita nel set di addestramento. È diverso dalla riduzione al minimo del rischio strutturale.

codificatore

#language

In generale, qualsiasi sistema di ML che esegue la conversione da una rappresentazione non elaborata, sparsa o esterna in una rappresentazione più elaborata, più densa o più interna.

Gli encoder sono spesso un componente di un modello più grande, dove vengono spesso abbinati a un decoder. Alcuni Transformer abbinano gli encoder ai decoder, mentre altri usano solo l'encoder o solo il decoder.

Alcuni sistemi utilizzano l'output dell'encoder come input di una rete di classificazione o regressione.

Nelle attività di sequenza a sequenza, un encoder prende una sequenza di input e restituisce uno stato interno (un vettore). Il decodificatore utilizza questo stato interno per prevedere la sequenza successiva.

Consulta Transformer per la definizione di un'encoder nell'architettura Transformer.

Per saperne di più, consulta LLM: che cos'è un modello linguistico di grandi dimensioni nel corso introduttivo al machine learning.

ensemble

Una raccolta di modelli addestrati in modo indipendente le cui previsioni vengono medie o aggregate. In molti casi, un insieme produce predizioni migliori rispetto a un singolo modello. Ad esempio, una foresta casuale è un insieme costituito da più alberi decisionali. Tieni presente che non tutti i foresti di alberi decisionali sono insiemi.

Per ulteriori informazioni, consulta la sezione Foresta casuale in Machine Learning Crash Course.

entropia

#df

In teoria dell'informazione, una descrizione dell'imprevedibilità di una distribuzione di probabilità. In alternativa, l'entropia è definita anche come la quantità di informazione contenuta in ogni esempio. Una distribuzione ha la massima entropia possibile quando tutti i valori di una variabile aleatoria sono sempre possibili.

L'entropia di un insieme con due possibili valori "0" e "1" (ad esempio, le etichette in un problema di classificazione binaria) ha la seguente formula:

  H = -p log p - q log q = -p log p - (1-p) * log (1-p)

dove:

  • H è l'entropia.
  • p è la frazione di esempi "1".
  • q è la frazione di esempi "0". Tieni presente che q = (1 - p)
  • log è generalmente log2. In questo caso, l'unità di misura dell'entropia è un bit.

Ad esempio, supponiamo quanto segue:

  • 100 esempi contengono il valore "1"
  • 300 esempi contengono il valore "0"

Pertanto, il valore di entropia è:

  • p = 0,25
  • q = 0,75
  • H = (-0,25)log2(0,25) - (0,75)log2(0,75) = 0,81 bit per esempio

Un insieme perfettamente bilanciato (ad esempio 200 "0" e 200 "1") avrebbe un'entropia di 1, 0 bit per esempio. Man mano che un insieme diventa più sbilanciato, la sua entropia si sposta verso 0,0.

Negli alberi decisionali, l'entropia aiuta a formulare il guadagno di informazione per aiutare lo strumento di suddivisione a selezionare le condizioni durante la crescita di un albero decisionale di classificazione.

Confronta l'entropia con:

L'entropia viene spesso chiamata entropia di Shannon.

Per ulteriori informazioni, consulta Spartito esatto per la classificazione binaria con caratteristiche numeriche nel corso sulle foreste di decisione.

produzione

#rl

Nell'apprendimento tramite rinforzo, il mondo che contiene l'agente e consente all'agente di osservare lo stato di quel mondo. Ad esempio, il mondo rappresentato può essere un gioco come gli scacchi o un mondo fisico come un labirinto. Quando l'agente applica un'azione all'ambiente, l'ambiente passa da uno stato all'altro.

puntata

#rl

Nell'apprendimento per rinforzo, ciascuno dei tentativi ripetuti dell'agente di apprendere un ambiente.

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.

Criterio epsilon greedy

#rl

Nell'apprendimento basato su rinforzo, una norma che segue una norma casuale con probabilità epsilon o una norma avida in caso contrario. Ad esempio, se epsilon è uguale a 0,9, il criterio segue un criterio casuale nel 90% dei casi e un criterio avido nel 10% dei casi.

Nelle puntate successive, l'algoritmo riduce il valore di epsilon per passare dal seguire un criterio casuale a seguire un criterio avido. Spostando il criterio, l'agente esplora prima l'ambiente in modo casuale e poi sfrutta avidamente i risultati dell'esplorazione casuale.

uguaglianza di opportunità

#fairness

Una metrica di equità per valutare se un modello predittivo è ugualmente efficace per tutti i valori di un attributo sensibile. In altre parole, se il risultato auspicato per un modello è la classe positiva, lo scopo è che il tasso di veri positivi sia uguale per tutti i gruppi.

L'uguaglianza di opportunità è correlata alle probabilità ugualizzate, che richiedono che entrambi i tassi di veri positivi e falsi positivi siano uguali per tutti i gruppi.

Supponiamo che l'Università di Glubbdubdrib ammetta sia i lillipuziani che i brobdingnagiani a un rigoroso programma di matematica. Le scuole secondarie dei Lillipuziani offrono un solido programma di corsi di matematica e la stragrande maggioranza degli studenti è idonea per il programma universitario. Le scuole secondarie dei Brobdingnagiani non offrono affatto corsi di matematica e, di conseguenza, un numero molto minore di loro è qualificato. L'uguaglianza di opportunità è soddisfatta per l'etichetta preferita di "ammissione" in base alla nazionalità (Lilliput o Brobdingnag) se gli studenti qualificati hanno la stessa probabilità di essere ammessi indipendentemente dal fatto che siano Lilliput o Brobdingnag.

Ad esempio, supponiamo che 100 Lillipuziani e 100 Brobdingnagiani presentino domanda di ammissione all'Università Glubbdubdrib e che le decisioni di ammissione vengano prese nel seguente modo:

Tabella 1. Lilliputian (90% idonei)

  Qualificato Non qualificato
Ammessi 45 3
Rifiutato 45 7
Totale 90 10
Percentuale di studenti idonei ammessi: 45/90 = 50%
Percentuale di studenti non idonei rifiutati: 7/10 = 70%
Percentuale totale di studenti di Lilliput ammessi: (45+3)/100 = 48%

 

Tabella 2. Richiedenti Brobdingnagian (il 10% è idoneo):

  Qualificato Non qualificato
Ammessi 5 9
Rifiutato 5 81
Totale 10 90
Percentuale di studenti idonei ammessi: 5/10 = 50%
Percentuale di studenti non idonei rifiutati: 81/90 = 90%
Percentuale totale di studenti di Brobdingnag ammessi: (5+9)/100 = 14%

Gli esempi precedenti soddisfano l'uguaglianza di opportunità per l'accettazione degli studenti qualificati perché sia i Lillipuziani che i Brobdingnagiani qualificati hanno entrambi il 50% di probabilità di essere ammessi.

Sebbene l'uguaglianza di opportunità sia soddisfatta, le seguenti due metriche di equità non lo sono:

  • Parità demografica: i Lillipuziani e i Brobdingnagiani vengono ammessi all'università a tassi diversi; il 48% degli studenti Lillipuziani viene ammesso, ma solo il 14% degli studenti Brobdingnagiani.
  • Probabilità uguali: sebbene gli studenti di Lilliput e Brobdingnag idonei abbiano entrambi la stessa probabilità di essere ammessi, il vincolo aggiuntivo che gli studenti di Lilliput e Brobdingnag non idonei abbiano entrambi la stessa probabilità di essere rifiutati non è soddisfatto. I Lillipuziani non idonei hanno un tasso di rifiuto del 70%, mentre i Brobdingnagiani non idonei hanno un tasso di rifiuto del 90%.

Per ulteriori informazioni, consulta Equità: parità di opportunità nel corso introduttivo al machine learning.

probabilità ugualizzate

#fairness

Una metrica di equità per valutare se un modello prevede gli esiti allo stesso modo per tutti i valori di un attributo sensibile sia rispetto alla classe positiva sia rispetto alla classe negativa, non solo per una classe o per l'altra in modo esclusivo. In altre parole, sia la percentuale di veri positivi sia la percentuale di falsi negativi devono essere uguali per tutti i gruppi.

Le probabilità ugualizzate sono correlate all'uguaglianza di opportunità, che si concentra solo sui tassi di errore per una singola classe (positiva o negativa).

Ad esempio, supponiamo che l'Università di Glubbdubdrib ammetta sia i lillipuziani che i Brobdingnagiani a un rigoroso programma di matematica. I licei dei Lillipuziani offrono un solido programma di corsi di matematica e la stragrande maggioranza degli studenti è idonea al programma universitario. I Brobdingnagiani non offrono affatto corsi di matematica nelle scuole secondarie e, di conseguenza, un numero molto inferiore di studenti è qualificato. Le probabilità uguali sono soddisfatte a condizione che, indipendentemente dal fatto che un richiedente sia un lillipuziano o un brobdignag, se è qualificato, abbia le stesse probabilità di essere ammesso al programma e, se non è qualificato, abbia le stesse probabilità di essere rifiutato.

Supponiamo che 100 lillipuziani e 100 brobdingnagiani presentino domanda di ammissione all'Università di Glubbdubdrib e che le decisioni di ammissione vengano prese nel seguente modo:

Tabella 3. Lilliputian (90% idonei)

  Qualificato Non qualificato
Ammessi 45 2
Rifiutato 45 8
Totale 90 10
Percentuale di studenti idonei ammessi: 45/90 = 50%
Percentuale di studenti non idonei rifiutati: 8/10 = 80%
Percentuale totale di studenti lillipuziani ammessi: (45+2)/100 = 47%

 

Tabella 4. Richiedenti Brobdingnagian (il 10% è idoneo):

  Qualificato Non qualificato
Ammessi 5 18
Rifiutato 5 72
Totale 10 90
Percentuale di studenti idonei ammessi: 5/10 = 50%
Percentuale di studenti non idonei rifiutati: 72/90 = 80%
Percentuale totale di studenti di Brobdingnag ammessi: (5+18)/100 = 23%

Le probabilità uguali sono soddisfatte perché gli studenti di Lilliput e Brobdingnag idonei hanno entrambi una probabilità del 50% di essere ammessi e gli studenti di Lilliput e Brobdingnag non idonei hanno una probabilità dell'80% di essere rifiutati.

Le probabilità ugualizzate sono definite formalmente in "Equality of Opportunity in Supervised Learning" come segue: "il predittore Ŷ soddisfa le probabilità ugualizzate rispetto all'attributo protetto A e al risultato Y se Ŷ e A sono indipendenti, condizionale su Y".

Estimator

#TensorFlow

Un'API TensorFlow deprecata. Utilizza tf.keras anziché gli estimatori.

evals

#language
#generativeAI

Utilizzato principalmente come abbreviazione di valutazioni LLM. Più in generale, evals è un'abbreviazione per qualsiasi forma di valutazione.

valutazione

#language
#generativeAI

Il processo di misurazione della qualità di un modello o di confronto tra modelli diversi.

Per valutare un modello di machine learning supervisionato, in genere lo si confronta con un set di convalida e un set di test. La valutazione di un LLM tipicamente prevede valutazioni più ampie di qualità e sicurezza.

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.

Esperienza di replay

#rl

Nell'apprendimento per rinforzo, una tecnica DQN utilizzata per ridurre le correlazioni temporali nei dati di addestramento. L'agente immagazzina le transizioni di stato in un buffer di replay e poi campiona le transizioni dal buffer di replay per creare i dati di addestramento.

Bias dell'esaminatore

#fairness

Consulta la pagina relativa al bias di conferma.

problema del gradiente esplosivo

#seq

La tendenza dei gradienti nelle reti neurali profonde (in particolare reti neurali ricorrenti) a diventare sorprendentemente ripidi (alti). Le derive ripide spesso causano aggiornamenti molto elevati ai pesi di ogni nodo in una rete neurale profonda.

I modelli che presentano il problema dell'esplosione del gradiente diventano difficili o impossibili da addestrare. Il taglio del gradiente può mitigare questo problema.

Confronta con il problema di scomparsa del gradiente.

F

F1

Una metrica di classificazione binaria "aggregata" che si basa sia sulla precisione sia sul richiamo. Ecco la formula:

$$F{_1} = \frac{\text{2 * precision * recall}} {\text{precision + recall}}$$

oggettività

#generativeAI

Nel mondo del machine learning, una proprietà che descrive un modello il cui output si basa sulla realtà. La veridicità è un concetto piuttosto che una metrica. Ad esempio, supponiamo di inviare il seguente prompt a un modello linguistico di grandi dimensioni:

Qual è la formula chimica del sale da cucina?

Un modello che ottimizza l'oggettività risponderebbe:

NaCl

È facile presumere che tutti i modelli debbano essere basati su dati di fatto. Tuttavia, alcuni prompt, come il seguente, dovrebbero indurre un modello di IA generativa a ottimizzare la creatività anziché la veridicità.

Raccontami una filastrocca su un astronauta e una farfalla.

È improbabile che il limerick risultante sia basato sulla realtà.

È il contrario della groundedness.

vincolo di equità

#fairness
Applicazione di una limitazione a un algoritmo per garantire che una o più definizioni di equità siano soddisfatte. Ecco alcuni esempi di vincoli di equità:

metrica di equità

#fairness

Una definizione matematica di "equità" misurabile. Alcune metriche di equità di uso comune includono:

Molte metriche di equità sono mutuamente esclusive; consulta la sezione sull'incompatibilità delle metriche di equità.

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.

tasso di falsi negativi

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

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

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

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.

estrazione di funzionalità

Termine sovraccaricato con una delle seguenti definizioni:

importanza delle caratteristiche

#df

Sinonimo di importanza delle variabili.

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.

specifiche della funzionalità

#TensorFlow

Descrive le informazioni necessarie per estrarre i dati delle caratteristiche dal buffer di protocollo tf.Example. Poiché il buffer di protocollo tf.Example è solo un contenitore per i dati, devi specificare quanto segue:

  • I dati da estrarre (ovvero le chiavi per le funzionalità)
  • Il tipo di dati (ad es. float o int)
  • La lunghezza (fissa o variabile)

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.

creazione di funzionalità

Il processo di estrazione delle caratteristiche da un'origine di input, come un documento o un video, e la mappatura di queste caratteristiche in un vettore di caratteristiche.

Alcuni esperti di ML utilizzano la funzionalità di creazione di funzionalità come sinonimo di feature engineering o estrazione di funzionalità.

apprendimento federato

Un approccio di machine learning distribuito che addestra modelli di machine learning utilizzando esempi decentralizzati che risiedono su dispositivi come gli smartphone. Nell'apprendimento federato, un sottoinsieme di dispositivi scarica il modello corrente da un server di coordinamento centrale. I dispositivi utilizzano gli esempi memorizzati su di essi per apportare miglioramenti al modello. I dispositivi caricano poi i miglioramenti del modello (ma non gli esempi di addestramento) sul server di coordinamento, dove vengono aggregati con altri aggiornamenti per produrre un modello globale migliore. Dopo l'aggregazione, gli aggiornamenti del modello calcolati dai dispositivi non sono più necessari e possono essere ignorati.

Poiché gli esempi di addestramento non vengono mai caricati, l'apprendimento federato segue i principi della privacy relativi alla raccolta mirata e alla minimizzazione dei dati.

Per ulteriori informazioni sull'apprendimento federato, consulta questo tutorial.

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.

rete neurale feed-forward (FFN)

Una rete neurale senza connessioni cicliche o ricorsive. Ad esempio, le reti neurali profonde tradizionali sono reti neurali feedforward. A differenza delle reti neurali recurrenti, che sono cicliche.

apprendimento few-shot

Un approccio di machine learning, spesso utilizzato per la classificazione degli oggetti, progettato per addestrare classificatori efficaci a partire da un numero limitato di esempi di addestramento.

Consulta anche apprendimento one-shot e apprendimento zero-shot.

prompting few-shot

#language
#generativeAI

Un prompt contenente più di un esempio (alcuni) che dimostri come deve rispondere il modello linguistico di grandi dimensioni. Ad esempio, il seguente prompt lungo contiene due esempi che mostrano a un modello linguistico di grandi dimensioni come rispondere a una query.

Parti di un prompt Note
Qual è la valuta ufficiale del paese specificato? La domanda a cui vuoi che l'LLM risponda.
Francia: euro Un esempio.
Regno Unito: GBP Un altro esempio.
India: La query effettiva.

In genere, i prompt few-shot producono risultati più auspicabili rispetto ai prompt zero-shot e ai prompt one-shot. Tuttavia, la progettazione dei prompt few-shot richiede un prompt più lungo.

Il prompt few-shot è una forma di apprendimento few-shot applicata all'apprendimento basato su prompt.

Per saperne di più, consulta la sezione Progettazione dei prompt nel Machine Learning Crash Course.

Violino

#language

Una libreria di configurazione incentrata su Python che imposta i valori di funzioni e classi senza codice o infrastruttura invasivi. Nel caso di Pax e di altri codebase di ML, queste funzioni e classi rappresentano modelli e iperparametri di addestramento.

Fiddle assume che le basi di codice di machine learning siano in genere suddivise in:

  • Codice della libreria, che definisce i livelli e gli ottimizzatori.
  • Il codice "collante" del set di dati, che chiama le librerie e collega tutto.

Fiddle acquisisce la struttura di chiamata del codice di collegamento in un formato non valutato e mutabile.

ottimizzazione

#language
#image
#generativeAI

Un secondo passaggio di addestramento specifico per l'attività eseguito su un modello preaddestrato per perfezionarne i parametri per un caso d'uso specifico. Ad esempio, la sequenza di addestramento completa per alcuni modelli linguistici di grandi dimensioni è la seguente:

  1. Preaddestramento: addestramento di un modello linguistico di grandi dimensioni su un vasto set di dati generale, come tutte le pagine di Wikipedia in lingua inglese.
  2. Ottimizzazione: addestrare il modello preaddestrato a eseguire un'attività specifica, come rispondere a query mediche. La messa a punto in genere prevede centinaia o migliaia di esempi incentrati sull'attività specifica.

Un altro esempio è la sequenza di addestramento completa per un modello di immagini di grandi dimensioni:

  1. Preaddestramento: addestrare un modello di immagini di grandi dimensioni su un vasto set di dati di immagini generali, come tutte le immagini di Wikimedia Commons.
  2. Ottimizzazione: addestrare il modello preaddestrato a eseguire un'attività specifica, come la generazione di immagini di orche.

La messa a punto può comportare qualsiasi combinazione delle seguenti strategie:

  • Modifica di tutti i parametri esistenti del modello preaddestrato. Questa operazione è talvolta chiamata ottimizzazione completa.
  • Modificare solo alcuni dei parametri esistenti del modello preaddestrato (in genere, i livelli più vicini al livello di output), mantenendo invariati gli altri parametri esistenti (in genere, i livelli più vicini al livello di input). Consulta l'ottimizzazione efficiente dei parametri.
  • Aggiunta di altri livelli, in genere sopra i livelli esistenti più vicini al livello di output.

La messa a punto fine è una forma di apprendimento tramite trasferimento. Di conseguenza, la messa a punto fine potrebbe utilizzare una funzione di perdita o un tipo di modello diverso da quelli utilizzati per addestrare il modello preaddestrato. Ad esempio, potresti perfezionare un modello di immagini di grandi dimensioni preaddestrato per produrre un modello di regressione che restituisce il numero di uccelli in un'immagine di input.

Confronta e contrapponi la messa a punto fine con i seguenti termini:

Per ulteriori informazioni, consulta Ottimizzazione fine nel Machine Learning Crash Course.

Lino

#language

Una libreria open source ad alte prestazioni per il deep learning basata su JAX. Flax fornisce funzioni per l'addestramento delle reti neurali, nonché metodi per valutarne le prestazioni.

Flaxformer

#language

Una libreria di Transformer open source basata su Flax, progettata principalmente per l'elaborazione del linguaggio naturale e la ricerca multimodale.

gate di dimenticanza

#seq

La parte di una cellula Long Short-Term Memory che regola il flusso di informazioni all'interno della cellula. I cancelli di dimenticanza mantengono il contesto decidendo quali informazioni eliminare dallo stato della cella.

frazione di successi

#generativeAI

Una metrica per valutare il testo generato di un modello ML. La frazione di successi è il numero di output di testo generati "correttamente" diviso per il numero totale di output di testo generati. Ad esempio, se un modello linguistico di grandi dimensioni ha generato 10 blocchi di codice, di cui cinque sono andati a buon fine, la frazione di successi sarà del 50%.

Sebbene la frazione di successi sia ampiamente utile in tutte le statistiche, nel machine learning questa metrica è utile principalmente per misurare attività verificabili come la generazione di codice o i problemi di matematica.

softmax completa

Sinonimo di softmax.

È diverso dal campionamento dei candidati.

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

Strato completamente connesso

Uno strato nascosto in cui ogni nodo è collegato a ogni nodo dello strato nascosto successivo.

Uno strato completamente connesso è noto anche come strato denso.

trasformazione della funzione

Una funzione che accetta una funzione come input e restituisce una funzione trasformata come output. JAX utilizza le trasformazioni delle funzioni.

G

GAN

Abbreviazione di rete generative avversaria.

Gemini

#language
#image
#generativeAI

L'ecosistema che comprende l'IA più avanzata di Google. Gli elementi di questo ecosistema includono:

Modelli Gemini

#language
#image
#generativeAI

I modelli multimodali basati su Transformer all'avanguardia di Google. I modelli Gemini sono progettati appositamente per essere integrati con gli agenti.

Gli utenti possono interagire con i modelli Gemini in diversi modi, ad esempio tramite un'interfaccia di dialogo interattiva e tramite SDK.

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.

modello lineare generalizzato

Una generalizzazione dei modelli di regressione lineare minima, basati sul rumore gaussiano, ad altri tipi di modelli basati su altri tipi di rumore, come il rumore di Poisson o il rumore categorico. Ecco alcuni esempi di modelli lineari generalizzati:

I parametri di un modello lineare generalizzato possono essere trovati tramite ottimizzazione convessa.

I modelli lineari generalizzati presentano le seguenti proprietà:

  • La previsione media del modello di regressione con minimi quadrati ottimale è uguale all'etichetta media sui dati di addestramento.
  • La probabilità media prevista dal modello di regressione logistica ottimale è uguale all'etichetta media dei dati di addestramento.

La potenza di un modello lineare generalizzato è limitata dalle sue caratteristiche. A differenza di un modello di apprendimento profondo, un modello lineare generalizzato non può "apprendere nuove funzionalità".

testo generato

#language
#generativeAI

In generale, il testo prodotto da un modello di ML. Quando si valutano i modelli linguistici di grandi dimensioni, alcune metriche confrontano il testo generato con il testo di riferimento. Ad esempio, supponiamo che tu stia tentando di determinare l'efficacia di un modello ML per le traduzioni dal francese al fiammingo. In questo caso:

  • Il testo generato è la traduzione in olandese generata dal modello di ML.
  • Il testo di riferimento è la traduzione in olandese creata da un traduttore umano (o da un software).

Tieni presente che alcune strategie di valutazione non prevedono il testo di riferimento.

rete generative adversarial (GAN)

Un sistema per creare nuovi dati in cui un generatore crea dati e un discriminatore determina se i dati creati sono validi o non validi.

Per ulteriori informazioni, consulta il corso sulle reti generative avversarie.

IA generativa

#language
#image
#generativeAI

Un campo trasformativo emergente senza definizione formale. Detto questo, la maggior parte degli esperti concorda sul fatto che i modelli di IA generativa possono creare ("generare") contenuti che presentano tutte le seguenti caratteristiche:

  • complesso
  • coerenti
  • originale

Ad esempio, un modello di IA generativa può creare testi o immagini sofisticati.

Anche alcune tecnologie precedenti, tra cui le LSTM e le RNN, possono generare contenuti originali e coerenti. Alcuni esperti considerano queste tecnologie precedenti come IA generativa, mentre altri ritengono che la vera IA generativa richieda un output più complesso di quanto possano produrre queste tecnologie precedenti.

È diverso dal machine learning predittivo.

modello generativo

In pratica, un modello che esegue una delle seguenti operazioni:

  • Crea (genera) nuovi esempi dal set di dati di addestramento. Ad esempio, un modello generativo potrebbe creare poesie dopo l'addestramento su un set di dati di poesie. Il generatore di una rete generativa avversaria rientra in questa categoria.
  • Determina la probabilità che un nuovo esempio provenga dal set di addestramento o sia stato creato dallo stesso meccanismo che ha creato il set di addestramento. Ad esempio, dopo l'addestramento su un set di dati costituito da frasi in inglese, un modello generativo potrebbe determinare la probabilità che il nuovo input sia una frase in inglese valida.

Un modello generativo può teoricamente distinguere la distribuzione di esempi o determinate funzionalità in un set di dati. Ossia:

p(examples)

I modelli di apprendimento non supervisionato sono generativi.

È diverso dai modelli discriminativi.

generatore

Il sottosistema all'interno di una rete di GAN che crea nuovi esempi.

È diverso dal modello discriminativo.

Impurità di Gini

#df

Una metrica simile all'entropia. Gli strumenti di suddivisione utilizzano i valori derivati dall'impurità di Gini o dall'entropia per comporre condizioni per la classificazione degli alberi decisionali. Il guadagno di informazione deriva dall'entropia. Non esiste un termine equivalente universalmente accettato per la metrica ricavata dall'impurità di Gini. Tuttavia, questa metrica senza nome è importante quanto il guadagno di informazione.

L'impurità di Gini è chiamata anche indice di Gini o semplicemente Gini.

set di dati di riferimento

Un insieme di dati selezionati manualmente che acquisiscono i dati di fatto. I team possono utilizzare uno o più set di dati di riferimento per valutare la qualità di un modello.

Alcuni set di dati di riferimento acquisiscono diversi sottodomini di dati empirici reali. Ad esempio, un set di dati di riferimento per la classificazione delle immagini potrebbe acquisire le condizioni di illuminazione e la risoluzione delle immagini.

risposta ottimale

#language
#generativeAI

Una risposta nota per essere buona. Ad esempio, dato il seguente prompt:

2 + 2

La risposta ideale è:

4

GPT (Generative Pre-Trained Transformer)

#language

Una famiglia di modelli linguistici di grandi dimensioni basati su Transformer sviluppati da OpenAI.

Le varianti GPT possono essere applicate a più modalità, tra cui:

  • generazione di immagini (ad esempio ImageGPT)
  • generazione di immagini da testo (ad esempio, DALL-E).

gradiente

Il vettore delle derivate parziali rispetto a tutte le variabili indipendenti. Nel machine learning, il gradiente è il vettore delle derivate parziali della funzione del modello. Il gradiente indica la direzione della salita più ripida.

accumulo di gradiente

Una tecnica di retropropagazione che aggiorna i parametri solo una volta per epoca anziché una volta per iterazione. Dopo aver elaborato ogni mini-batch, l'accumulo del gradiente aggiorna semplicemente un totale corrente dei gradienti. Poi, dopo aver elaborato l'ultimo mini-batch dell'epoca, il sistema aggiorna finalmente i parametri in base al totale di tutte le modifiche del gradiente.

L'accumulo di gradienti è utile quando la dimensione del batch è molto grande rispetto alla quantità di memoria disponibile per l'addestramento. Quando la memoria è un problema, la tendenza naturale è ridurre la dimensione del batch. Tuttavia, la riduzione della dimensione del batch nella retropropagazione normale aumenta il numero di aggiornamenti dei parametri. L'accumulo di gradienti consente al modello di evitare problemi di memoria, ma di continuare ad addestrarsi in modo efficiente.

alberi (decisionali) con boosting per gradiente (GBT)

#df

Un tipo di foresta decisionale in cui:

Per ulteriori informazioni, consulta la sezione Albero decisionale con boosting della regressione nel corso Foreste decisionali.

boosting del gradiente

#df

Un algoritmo di addestramento in cui i modelli deboli vengono addestrati per migliorare in modo iterativo la qualità (ridurre la perdita) di un modello efficace. Ad esempio, un modello debole potrebbe essere un modello di albero decisionale lineare o di piccole dimensioni. Il modello efficace diventa la somma di tutti i modelli deboli addestrati in precedenza.

Nella forma più semplice del boosting per gradiente, a ogni iterazione viene addestrato un modello debole per prevedere il gradiente di perdita del modello forte. Poi, l'output del modello migliore viene aggiornato sottraendo il gradiente previsto, in modo simile alla discesa del gradiente.

$$F_{0} = 0$$ $$F_{i+1} = F_i - \xi f_i $$

dove:

  • $F_{0}$ è il modello forte iniziale.
  • $F_{i+1}$ è il modello efficace successivo.
  • $F_{i}$ è il modello attuale efficace.
  • $\xi$ è un valore compreso tra 0,0 e 1,0 chiamato shrinkage, che è analogo al tasso di apprendimento in discesa del gradiente.
  • $f_{i}$ è il modello debole addestrato a prevedere il gradiente di perdita di $F_{i}$.

Le varianti moderne del boosting per gradiente includono anche la seconda derivata (Hessian) della perdita nel calcolo.

Gli alberi decisionali vengono comunemente utilizzati come modelli deboli nell'aumento di gradiente. Consulta gli alberi (decisionali) con boosting della curva di apprendimento.

taglio del gradiente

#seq

Un meccanismo di uso comune per mitigare il problema del gradiente esplosivo limitando artificialmente (tagliando) il valore massimo dei gradienti quando si utilizza la discesa del gradiente per addestrare un modello.

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.

grafico

#TensorFlow

In TensorFlow, una specifica di calcolo. I nodi nel grafico rappresentano le operazioni. Gli archi sono diretti e rappresentano il passaggio del risultato di un'operazione (un Tensor) come operando a un'altra operazione. Utilizza TensorBoard per visualizzare un grafico.

esecuzione del grafo

#TensorFlow

Un ambiente di programmazione TensorFlow in cui il programma costruisce prima un grafo e poi lo esegue tutto o in parte. L'esecuzione del grafo è la modalità di esecuzione predefinita in TensorFlow 1.x.

È il contrario dell'esecuzione anticipata.

criterio di scelta greedy

#rl

Nell'apprendimento tramite rinforzo, un criterio che sceglie sempre l'azione con il ritorno previsto più elevato.

radicamento

Una proprietà di un modello il cui output si basa (è "basato su") su materiale di origine specifico. Ad esempio, supponiamo di fornire un intero libro di fisica come input ("contesto") a un modello linguistico di grandi dimensioni. Poi, chiedi al modello linguistico di grandi dimensioni una domanda di fisica. Se la risposta del modello riflette le informazioni contenute nel libro di testo, il modello è basato su quel libro di testo.

Tieni presente che un modello basato su dati non è sempre un modello sulla base dei fatti. Ad esempio, il libro di testo di fisica inserito potrebbe contenere errori.

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.

bias di attribuzione di gruppo

#fairness

Supponendo che ciò che è vero per un individuo valga anche per tutti nel gruppo. Gli effetti del bias di attribuzione del gruppo possono essere esacerbati se per la raccolta dei dati viene utilizzato un campionamento di convenienza. In un campione non rappresentativo, è possibile che vengano attribuite delle attribuzioni che non riflettono la realtà.

Consulta anche bias di omogeneità del gruppo esterno e bias di affinità. Per saperne di più, consulta anche Equità: tipi di bias nel corso introduttivo al machine learning.

H

allucinazione

#language

La produzione di output apparentemente plausibili, ma in realtà errati, da parte di un modello di IA generativa che pretende di fare un'affermazione sul mondo reale. Ad esempio, un modello di IA generativa che afferma che Barack Obama è morto nel 1865 è allucinante.

hashing

Nel machine learning, un meccanismo per il raggruppamento di dati categorici, in particolare quando il numero di categorie è elevato, ma il numero di categorie effettivamente visualizzate nel set di dati è relativamente ridotto.

Ad esempio, la Terra ospita circa 73.000 specie di alberi. Potresti rappresentare ciascuna delle 73.000 specie di alberi in 73.000 bucket categorici distinti. In alternativa, se in un set di dati vengono visualizzate solo 200 di queste specie di alberi, puoi utilizzare l'hashing per suddividere le specie di alberi in circa 500 bucket.

Un singolo bucket potrebbe contenere più specie di alberi. Ad esempio, l'hashing potrebbe inserire baobab e acero rosso, due specie geneticamente diverse, nello stesso bucket. In ogni caso, l'hashing è ancora un buon modo per mappare insiemi di categorie di grandi dimensioni nel numero selezionato di bucket. L'hashing trasforma una caratteristica categorica con un numero elevato di valori possibili in un numero molto inferiore di valori raggruppandoli in modo deterministico.

Per ulteriori informazioni, consulta Dati categorici: vocabolario e codifica one-hot nel corso introduttivo al machine learning.

euristica

Una soluzione semplice e rapida per un problema. Ad esempio, "Con un'euristica abbiamo raggiunto un'accuratezza dell'86%. Quando abbiamo adottato una rete neurale profonda, l'accuratezza è aumentata fino al 98%".

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.

clustering gerarchico

#clustering

Una categoria di algoritmi di clustering che creano un albero di cluster. Il clustering gerarchico è adatto ai dati gerarchici, come le tassonomie botaniche. Esistono due tipi di algoritmi di clustering gerarchico:

  • Il clustering agglomerativo assegna innanzitutto ogni esempio al proprio cluster e unisce in modo iterativo i cluster più vicini per creare un albero gerarchico.
  • Il clustering divisibile raggruppa innanzitutto tutti gli esempi in un cluster e poi lo suddivide in modo iterativo in una struttura ad albero gerarchica.

È diverso dal clustering basato su centroidi.

Per ulteriori informazioni, consulta la sezione Algoritmi di clustering nel corso Clustering.

salita

Un algoritmo per migliorare in modo iterativo ("camminare in salita") un modello ML finché il modello non smette di migliorare ("raggiunge la cima di una collina"). La forma generale dell'algoritmo è la seguente:

  1. Crea un modello iniziale.
  2. Crea nuovi modelli candidati apportando piccole modifiche al modo in cui addestri o ottimizzi. Ciò potrebbe comportare lavorare con un set di addestramento leggermente diverso o con iperparametri diversi.
  3. Valuta i nuovi modelli candidati ed esegui una delle seguenti azioni:
    • Se un modello candidato supera il modello iniziale, diventa il nuovo modello iniziale. In questo caso, ripeti i passaggi 1, 2 e 3.
    • Se nessun modello supera il modello iniziale, significa che hai raggiunto il picco e devi interrompere l'iterazione.

Consulta il Playbook di ottimizzazione del deep learning per indicazioni sull'ottimizzazione degli iperparametri. Consulta i moduli Dati di Machine Learning Crash Course per indicazioni sulla feature engineering.

perdita della cerniera

Una famiglia di funzioni di perdita per la classificazione progettata per trovare il confine di decisione il più lontano possibile da ogni esempio di addestramento, quindi massimizzando il margine tra gli esempi e il confine. I KSVM utilizzano la perdita a cerniera (o una funzione correlata, come la perdita a cerniera quadrata). Per la classificazione binaria, la funzione di perdita di hinge è definita come segue:

$$\text{loss} = \text{max}(0, 1 - (y * y'))$$

dove y è l'etichetta vera, -1 o +1, e y' è l'output non elaborato del modello di classificazione:

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

Di conseguenza, un grafico della perdita a cerniera rispetto a (y * y') è il seguente:

Un grafico cartesiano costituito da due segmenti di linea uniti. Il primo
          segmento di linea inizia in (-3, 4) e termina in (1, 0). Il secondo segmento
          di linea inizia in (1, 0) e continua a tempo indeterminato con una pendenza
          di 0.

bias storico

#fairness

Un tipo di bias che esiste già nel mondo ed è entrato in un set di dati. Questi bias tendono a riflettere stereotipi culturali, disuguaglianze demografiche e pregiudizi esistenti nei confronti di determinati gruppi sociali.

Ad esempio, prendiamo in considerazione un modello di classificazione che predittivo se un richiedente di prestito non riuscirà a onorare il prestito. Il modello è stato addestrato con dati storici sui mancati pagamenti dei prestiti degli anni '80 di banche locali in due comunità diverse. Se in passato i richiedenti della Comunità A avevano sei volte più probabilità di non pagare i prestiti rispetto ai richiedenti della Comunità B, il modello potrebbe apprendere un bias storico che lo rende meno propenso ad approvare i prestiti nella Comunità A, anche se le condizioni storiche che hanno portato a tassi di insolvenza più elevati in quella comunità non sono più pertinenti.

Per saperne di più, consulta Equità: tipi di bias nel corso introduttivo al machine learning.

dati di controllo

Esempi intenzionalmente non utilizzati ("trattenuti") durante l'addestramento. Il set di dati di convalida e il set di dati di test sono esempi di dati di esclusione. I dati di riserva aiutano a valutare la capacità del modello di generalizzare a dati diversi da quelli su cui è stato addestrato. La perdita nel set di esclusione fornisce una stima migliore della perdita in un set di dati non visto rispetto alla perdita nel set di addestramento.

host

#TensorFlow
#GoogleCloud

Quando addestrini un modello di ML su chip acceleratore (GPU o TPU), la parte del sistema che controlla entrambi i seguenti elementi:

  • Il flusso complessivo del codice.
  • L'estrazione e la trasformazione della pipeline di input.

In genere, l'host viene eseguito su una CPU, non su un chip di accelerazione. Il dispositivo manipola i tensori sui chip di accelerazione.

valutazione umana

#language
#generativeAI

Un processo in cui le persone valutano la qualità dell'output di un modello di ML, ad esempio persone bilingue che valutano la qualità di un modello di traduzione ML. La valutazione da parte di persone fisiche è particolarmente utile per giudicare i modelli che non hanno una sola risposta corretta.

È diversa dalla valutazione automatica e dalla valutazione dell'autorater.

human-in-the-loop (HITL)

#generativeAI

Un idioma poco definito che può significare una delle seguenti opzioni:

  • Una norma che prevede di esaminare l'output dell'IA generativa in modo critico o scettico. Ad esempio, le persone che scrivono questo glossario sul machine learning sono stupite da ciò che possono fare i modelli linguistici di grandi dimensioni, ma sono consapevoli degli errori che commettono.
  • Una strategia o un sistema per garantire che le persone contribuiscano a definire, valutare e perfezionare il comportamento di un modello. Il coinvolgimento di un essere umano consente a un'IA di trarre vantaggio sia dall'intelligenza artificiale sia dall'intelligenza umana. Ad esempio, un sistema in cui un'IA genera codice che viene poi esaminato dai software engineer è un sistema con intervento umano.

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.

iperpiano

Un confine che separa uno spazio in due sottospazi. Ad esempio, una linea è un iperpiano in due dimensioni e un piano è un iperpiano in tre dimensioni. Più in generale, nel machine learning un iperpiano è il confine che separa uno spazio di alta dimensione. Le macchine a vettori di supporto con kernel utilizzano hyperplane per separare le classi positive dalle classi negative, spesso in uno spazio di dimensioni molto elevate.

I

i.i.d.

Abbreviazione di distribuzione indipendente e identica.

riconoscimento immagini

#image

Un processo che classifica oggetti, pattern o concetti in un'immagine. Il riconoscimento delle immagini è noto anche come classificazione delle immagini.

Per ulteriori informazioni, consulta ML Practicum: Image Classification.

Per saperne di più, consulta il corso pratico di ML: classificazione delle immagini.

set di dati sbilanciato

Sinonimo di set di dati con classi sbilanciate.

bias implicito

#fairness

Fare automaticamente un'associazione o un'ipotesi in base ai propri modelli mentali e ricordi. I pregiudizi impliciti possono influire su quanto segue:

  • Come vengono raccolti e classificati i dati.
  • Come vengono progettati e sviluppati i sistemi di machine learning.

Ad esempio, quando crea un classificatore per identificare le foto di matrimoni, un ingegnere potrebbe utilizzare la presenza di un abito bianco in una foto come caratteristica. Tuttavia, gli abiti bianchi sono stati consueti solo in determinate epoche e in determinate culture.

Vedi anche bias di conferma.

imputazione

Forma abbreviata di attribuzione del valore.

Incompatibilità delle metriche di equità

#fairness

L'idea che alcune nozioni di equità siano reciprocamente incompatibili e non possano essere soddisfatte contemporaneamente. Di conseguenza, non esiste un'unica metrica universale per quantificare l'equità che possa essere applicata a tutti i problemi di ML.

Sebbene possa sembrare scoraggiante, l'incompatibilità delle metriche di equità non implica che gli sforzi per l'equità siano infruttuosi. Suggerisce invece che l'equità debba essere definita in modo contestuale per un determinato problema di ML, con lo scopo di prevenire danni specifici ai relativi casi d'uso.

Per una discussione più dettagliata su questo argomento, consulta "Sulla (im)possibilità di equità".

Apprendimento contestuale

#language
#generativeAI

Sinonimo di prompt few-shot.

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à.

equità individuale

#fairness

Una metrica di equità che controlla se persone simili vengono classificate in modo simile. Ad esempio, la Brobdingnagian Academy potrebbe voler soddisfare la equità individuale garantendo che due studenti con voti e punteggi dei test standardizzati identici abbiano la stessa probabilità di ottenere l'ammissione.

Tieni presente che l'equità individuale si basa interamente su come definisci la"somiglianza" (in questo caso, voti e risultati dei test) e puoi rischiare di introdurre nuovi problemi di equità se la metrica di somiglianza non contiene informazioni importanti (come la rigore del curriculum di uno studente).

Per una discussione più dettagliata sull'equità individuale, consulta "Equità tramite consapevolezza".

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.

percorso di inferenza

#df

In un albero decisionale, durante l'inferenza, viene indicato il percorso seguito da un determinato esempio dalla radice ad altre condizioni, che termina con un elemento foglia. Ad esempio, nella seguente struttura decisionale, le frecce più spesse mostrano il percorso di inferenza per un esempio con i seguenti valori delle funzionalità:

  • x = 7
  • y = 12
  • z = -3

Il percorso di inferenza nell'illustrazione seguente attraversa tre condizioni prima di raggiungere la foglia (Zeta).

Un albero decisionale composto da quattro condizioni e cinque foglie.
          La condizione principale è (x > 0). Poiché la risposta è Sì, il percorso di deduzione procede dalla radice alla condizione successiva (y > 0).
          Poiché la risposta è Sì, il percorso di inferenza passa alla
          condizione successiva (z > 0). Poiché la risposta è No, il percorso di inferenza
          arriva al nodo terminale, ovvero il nodo a foglia (Zeta).

Le tre frecce spesse mostrano il percorso di inferenza.

Per ulteriori informazioni, consulta la sezione Alberi decisionali nel corso Foreste di alberi decisionali.

guadagno di informazioni

#df

Nelle foreste di alberi decisionali, la differenza tra l'entropia di un nodo e la somma ponderata (in base al numero di esempi) dell'entropia dei suoi nodi secondari. L'entropia di un nodo è l'entropia degli esempi in quel nodo.

Ad esempio, considera i seguenti valori di entropia:

  • entropia del nodo principale = 0,6
  • entropia di un nodo secondario con 16 esempi pertinenti = 0,2
  • entropia di un altro nodo secondario con 24 esempi pertinenti = 0,1

Pertanto, il 40% degli esempi si trova in un nodo figlio e il 60% nell'altro nodo figlio. Pertanto:

  • somma dell'entropia ponderata dei nodi secondari = (0,4 * 0,2) + (0,6 * 0,1) = 0,14

Pertanto, l'incremento di informazioni è:

  • guadagno informativo = entropia del nodo principale - somma ponderata dell'entropia dei nodi secondari
  • guadagno informativo = 0,6 - 0,14 = 0,46

La maggior parte degli strumenti di suddivisione cerca di creare condizioni che massimizzano l'aumento delle informazioni.

bias di affinità

#fairness

Mostrare parzialità nei confronti del proprio gruppo o delle proprie caratteristiche. Se i tester o i valutatori sono amici, familiari o colleghi dello sviluppatore di machine learning, il bias di gruppo potrebbe invalidare i test del prodotto o il set di dati.

Il bias di affinità è una forma di bias di attribuzione di gruppo. Vedi anche bias di omogeneità del gruppo esterno.

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

generatore di input

Un meccanismo con cui i dati vengono caricati in una rete neurale.

Un generatore di input può essere considerato un componente responsabile dell'elaborazione dei dati non elaborati in tensori che vengono sottoposti a iterazione per generare batch per l'addestramento, la valutazione e l'inferenza.

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.

Condizione in-set

#df

In un albero decisionale, una condizione che verifica la presenza di un elemento in un insieme di elementi. Ad esempio, la seguente è una condizione in-set:

  house-style in [tudor, colonial, cape]

Durante l'inferenza, se il valore dell'attributo casa di stile è tudor o colonial o cape, questa condizione viene valutata come Sì. Se il valore della funzionalità stile-casa è un altro (ad esempio ranch), la condizione restituisce No.

Le condizioni in-set di solito generano alberi decisionali più efficienti rispetto alle condizioni che testano le funzionalità codificate one-hot.

istanza

Sinonimo di esempio.

Ottimizzazione delle istruzioni

#generativeAI

Una forma di ottimizzazione fine che migliora la capacità di un modello di AI generativa di seguire le istruzioni. L'ottimizzazione delle istruzioni prevede l'addestramento di un modello su una serie di prompt di istruzioni, che in genere coprono un'ampia gamma di attività. Il modello sintonizzato sulle istruzioni risultante tende quindi a generare risposte utili ai prompt zero-shot in una serie di attività.

Confrontare e contrapporre:

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.

accordo tra valutatori

Una misura della frequenza con cui i valutatori umani sono d'accordo quando svolgono un'attività. Se i valutatori non sono d'accordo, potrebbe essere necessario migliorare le istruzioni dell'attività. A volte viene chiamata anche concordanza tra annotatori o attendibilità tra valutatori. Consulta anche il coefficiente kappa di Cohen, uno dei più utilizzati per misurare il grado di accordo tra valutatori.

Per ulteriori informazioni, consulta Dati categorici: problemi comuni nel corso introduttivo al machine learning.

Intersection over Union (IoU)

#image

L'intersezione di due insiemi divisa per la loro unione. Nelle attività di rilevamento delle immagini con il machine learning, l'IoU viene utilizzato per misurare la precisione del riquadro di delimitazione previsto dal modello rispetto al riquadro di delimitazione dei dati empirici reali. In questo caso, l'IoU per i due riquadri è il rapporto tra l'area di sovrapposizione e l'area totale e il suo valore varia da 0 (nessuna sovrapposizione tra il riquadro di delimitazione previsto e il riquadro di delimitazione dei dati empirici reali) a 1 (il riquadro di delimitazione previsto e il riquadro di delimitazione dei dati empirici reali hanno le stesse coordinate).

Ad esempio, nell'immagine seguente:

  • Il riquadro di delimitazione previsto (le coordinate che delimitano la posizione in cui il modello predice che si trovi la tavola da notte nel dipinto) è delineato in viola.
  • Il riquadro delimitante dei dati di fatto (le coordinate che delimitano la posizione effettiva della tavola notturna nel dipinto) è delineato in verde.

Il dipinto di Van Gogh Camera da letto di Vincent ad Arles, con due diversi
          riquadri delimitanti attorno al comodino accanto al letto. Il riquadro di delimitazione
          dei dati di fatto (in verde) circoscrive perfettamente il comodino. Il
          riquadro delimitante previsto (in viola) è spostato verso il basso e verso destra del 50% del riquadro delimitante di riferimento; racchiude il quarto
          in basso a destra della tabella notturna, ma non il resto della tabella.

Qui l'intersezione dei riquadri di delimitazione per la previsione e i dati empirici reali (sotto a sinistra) è 1 e l'unione dei riquadri di delimitazione per la previsione e i dati empirici reali (sotto a destra) è 7, quindi l'IoU è \(\frac{1}{7}\).

Stessa immagine di cui sopra, ma con ogni riquadro di delimitazione diviso in quattro quadranti. Esistono in totale sette quadranti, poiché il quadrante in basso a destra
          del riquadro di delimitazione dei dati empirici reali e il quadrante in alto a sinistra
          del riquadro di delimitazione previsto si sovrappongono. Questa
          sezione sovrapposta (evidenziata in verde) rappresenta la
          intersezione e ha un&#39;area pari a 1. Stessa immagine di cui sopra, ma con ogni riquadro di delimitazione diviso in quattro quadranti. Esistono in totale sette quadranti, poiché il quadrante in basso a destra
          del riquadro di delimitazione dei dati empirici reali e il quadrante in alto a sinistra
          del riquadro di delimitazione previsto si sovrappongono.
          L&#39;intero interno racchiuso da entrambi i rettangoli delimitanti
          (evidenziati in verde) rappresenta l&#39;unione e ha
          un&#39;area di 7.

IoU

Abbreviazione di intersezione sull'unione.

matrice di elementi

#recsystems

Nei sistemi di consigli, una matrice di vettori di incorporamento generata dalla fattorizzazione matriciale che contiene indicatori latenti su ogni elemento. Ogni riga della matrice degli articoli contiene il valore di una singola caratteristica latente per tutti gli articoli. Ad esempio, prendi in considerazione un sistema di consigli sui film. Ogni colonna nella matrice di elementi rappresenta un singolo film. Gli indicatori latenti possono rappresentare generi o essere indicatori più difficili da interpretare che coinvolgono interazioni complesse tra genere, star, età del film o altri fattori.

La matrice degli elementi ha lo stesso numero di colonne della matrice di destinazione che viene fattorizzata. Ad esempio, dato un sistema di consigli per i film che valuta 10.000 titoli di film, la matrice degli elementi avrà 10.000 colonne.

elementi

#recsystems

In un sistema di consigli, le entità consigliate da un sistema. Ad esempio, i video sono gli articoli consigliati da un negozio di video, mentre i libri sono gli articoli consigliati da una libreria.

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.

J

JAX

Una libreria di calcolo di array che riunisce XLA (algebra lineare accelerata) e la differenziazione automatica per il calcolo numerico ad alte prestazioni. JAX fornisce un'API semplice e potente per scrivere codice numerico accelerato con trasformazioni componibili. JAX offre funzionalità come:

  • grad (differenziazione automatica)
  • jit (compilazione just-in-time)
  • vmap (vetorizzazione o raggruppamento automatico)
  • pmap (parallelizzazione)

JAX è un linguaggio per esprimere e comporre trasformazioni di codice numerico, analogo, ma molto più ampio, alla libreria NumPy di Python. Infatti, la libreria .numpy in JAX è una versione funzionalmente equivalente, ma completamente riscritta, della libreria NumPy di Python.

JAX è particolarmente adatto per velocizzare molte attività di machine learning tramite la trasformazione dei modelli e dei dati in una forma adatta al parallelismo tra GPU e chip di acceleratore TPU.

Flax, Optax, Pax e molte altre biblioteche sono basate sull'infrastruttura JAX.

K

Keras

Un'API di machine learning Python molto utilizzata. Keras funziona su diversi framework di deep learning, tra cui TensorFlow, dove è reso disponibile come tf.keras.

Macchine a vettori di supporto con kernel (KSVM)

Un algoritmo di classificazione che mira a massimizzare il margine tra le classi positive e le classi negative mappando i vettori di dati di input a uno spazio di dimensioni superiori. Ad esempio, prendiamo in considerazione un problema di classificazione in cui il set di dati di input ha cento caratteristiche. Per massimizzare il margine tra le classi positive e negative, un KSVM potrebbe mappare internamente queste funzionalità in uno spazio di un milione di dimensioni. I KSVM utilizzano una funzione di perdita chiamata perdita a cerniera.

keypoints

#image

Le coordinate di determinate caratteristiche in un'immagine. Ad esempio, per un modello di riconoscimento delle immagini che distingue le specie di fiori, i punti chiave potrebbero essere il centro di ogni petalo, il gambo, lo stame e così via.

Convalida incrociata k-fold

Un algoritmo per prevedere la capacità di un modello di generalizzare a nuovi dati. Il valore k in k-fold si riferisce al numero di gruppi uguali in cui dividi gli esempi di un set di dati, ovvero addestra e testa il modello k volte. Per ogni ciclo di addestramento e test, un gruppo diverso è il set di test e tutti i gruppi rimanenti diventano il set di addestramento. Dopo k cicli di addestramento e test, calcola la media e la deviazione standard delle metriche di test scelte.

Ad esempio, supponiamo che il tuo set di dati sia costituito da 120 esempi. Supponiamo inoltre che tu decida di impostare k su 4. Pertanto, dopo aver rimescolato gli esempi, suddividi il set di dati in quattro gruppi uguali di 30 esempi e conduci quattro fasi di addestramento e test:

Un set di dati suddiviso in quattro gruppi uguali di esempi. Nel primo round,
          i primi tre gruppi vengono utilizzati per l&#39;addestramento e l&#39;ultimo gruppo
          viene utilizzato per i test. Nel secondo round, i primi due gruppi e l&#39;ultimo vengono utilizzati per l&#39;addestramento, mentre il terzo viene utilizzato per i test. Nel terzo round, il primo gruppo e gli ultimi due vengono utilizzati per l&#39;addestramento, mentre il secondo gruppo viene utilizzato per i test.
          Nel quarto round, il primo gruppo viene utilizzato per i test, mentre gli ultimi tre gruppi vengono utilizzati per l&#39;addestramento.

Ad esempio, l'errore quadratico medio (MSE) potrebbe essere la metrica più significativa per un modello di regressione lineare. Pertanto, troverai la media e la deviazione standard dell'errore quadratico medio in tutti e quattro i round.

K-means

#clustering

Un algoritmo di clustering molto utilizzato che raggruppa gli esempi nell'apprendimento non supervisionato. L'algoritmo k-means esegue in sostanza le seguenti operazioni:

  • Determina in modo iterativo i migliori punti di centro k (noti come centridi).
  • Assegna ogni esempio al centroide più vicino. Gli esempi più vicini allo stesso centroide appartengono allo stesso gruppo.

L'algoritmo k-means sceglie le posizioni dei centroidi per ridurre al minimo il valore quadrato cumulativo delle distanze da ciascun esempio al centroide più vicino.

Ad esempio, considera il seguente grafico dell'altezza del cane rispetto alla sua larghezza:

Un grafico cartesiano con diverse dozzine di punti dati.

Se k=3, l'algoritmo K-means determinerà tre centroidi. Ogni esempio viene assegnato al centroide più vicino, generando tre gruppi:

Lo stesso grafico cartesiano dell&#39;illustrazione precedente, tranne che per la presenza di tre centroidi.
          I punti dati precedenti sono raggruppati in tre gruppi distinti,
          ciascuno dei quali rappresenta i punti dati più vicini a un determinato
          centroide.

Immagina che un produttore voglia determinare le taglie ideali per maglioni per cani di taglia piccola, media e grande. I tre centroidi identificano l'altezza media e la larghezza media di ogni cane nel cluster. Pertanto, il produttore dovrebbe basare le taglie dei maglioni su questi tre centroidi. Tieni presente che il centroide di un cluster in genere non è un esempio nel cluster.

Le illustrazioni precedenti mostrano k-means per esempi con solo due caratteristiche (altezza e larghezza). Tieni presente che k-means può raggruppare gli esempi in base a molte funzionalità.

mediana k

#clustering

Un algoritmo di clustering strettamente correlato al clustering K-means. La differenza pratica tra i due è la seguente:

  • In k-means, i centroidi vengono determinati minimizzando la somma dei quadrati della distanza tra un centroide candidato e ciascuno dei suoi esempi.
  • In k-median, i centroidi vengono determinati minimizzando la somma della distanza tra un centroide candidato e ciascuno dei suoi esempi.

Tieni presente che anche le definizioni di distanza sono diverse:

  • k-means si basa sulla distanza euclidea dal centroide a un esempio. In due dimensioni, la distanza euclidea significa utilizzare il teorema di Pitagora per calcolare l'ipotenusa. Ad esempio, la distanza di k-means tra (2,2) e (5,-2) è:
$$ {\text{Euclidean distance}} = {\sqrt {(2-5)^2 + (2--2)^2}} = 5 $$
  • Il k-median si basa sulla distanza di Manhattan dal centroide a un esempio. Questa distanza è la somma dei variazioni assolute in ogni dimensione. Ad esempio, la distanza mediana k tra (2,2) e (5,-2) è:
$$ {\text{Manhattan distance}} = \lvert 2-5 \rvert + \lvert 2--2 \rvert = 7 $$

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.

Perdita di etichette

Un difetto di progettazione del modello in cui un'caratteristica è un'entità proxy per la etichetta. Ad esempio, prendiamo in considerazione un modello di classificazione binaria che prevede se un potenziale cliente acquisterà o meno un determinato prodotto. Supponiamo che una delle caratteristiche del modello sia un valore booleano denominato SpokeToCustomerAgent. Supponiamo inoltre che un agente addetto alla clientela venga assegnato solo dopo che il potenziale cliente ha effettivamente acquistato il prodotto. Durante l'addestramento, il modello apprenderà rapidamente l'associazione tra SpokeToCustomerAgent e l'etichetta.

lambda

#fundamentals

Sinonimo di tasso di regolarizzazione.

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

LaMDA (Language Model for Dialogue Applications)

#language

Un modello linguistico di grandi dimensioni basato su Transformer sviluppato da Google e addestrato su un ampio set di dati di dialogo in grado di generare risposte di conversazione realistiche.

LaMDA: la nostra tecnologia di conversazione rivoluzionaria fornisce una panoramica.

punti di riferimento

#image

Sinonimo di keypoints.

modello linguistico

#language

Un modello che stima la probabilità che un token o una sequenza di token si verifichi in una sequenza più lunga di token.

modello linguistico di grandi dimensioni

#language

Almeno un modello linguistico con un numero molto elevato di parametri. In termini più informali, qualsiasi modello linguistico basato su Transformer, come Gemini o GPT.

spazio latente

#language

Sinonimo di spazio di incorporamento.

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.

API Layers (tf.layers)

#TensorFlow

Un'API TensorFlow per la costruzione di una rete neurale profonda come composizione di strati. L'API Layers consente di creare diversi tipi di strati, ad esempio:

L'API Layers segue le convenzioni dell'API dei livelli Keras. Ciò significa che, a parte un prefisso diverso, tutte le funzioni dell'API Layers hanno gli stessi nomi e le stesse firme delle relative controparti nell'API di Keras.

foglia

#df

Qualsiasi endpoint in un albero decisionale. A differenza di una condizione, una foglia non esegue un test. Piuttosto, una foglia è una possibile previsione. Una foglia è anche il nodo terminale di un percorso di inferenza.

Ad esempio, il seguente albero decisionale contiene tre foglie:

Un albero decisionale con due condizioni che portano a tre foglie.

Learning Interpretability Tool (LIT)

Uno strumento visivo e interattivo per la comprensione dei modelli e la visualizzazione dei dati.

Puoi utilizzare LIT open source per interpretare i modelli o per visualizzare testo, immagini e dati tabulari.

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.

regressione lineare dei minimi quadrati

Un modello di regressione lineare addestrato mediante la minimizzazione della perdita L2.

Distanza di Levenshtein

#language
#metric

Una metrica di distanza di modifica che calcola il minor numero di operazioni di eliminazione, inserimento e sostituzione necessarie per sostituire una parola con un'altra. Ad esempio, la distanza di Levenshtein tra le parole "heart" e "darts" è pari a 3 perché le tre modifiche che seguono sono le modifiche minime necessarie per trasformare una parola nell'altra:

  1. cuore → deare (sostituisci "h" con "d")
  2. deart → dart (elimina "e")
  3. dardo → freccette (inserisci "s")

Tieni presente che la sequenza precedente non è l'unico percorso di tre modifiche.

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.

LIT

Abbreviazione di Learning Interpretability Tool (LIT), in precedenza noto come Language Interpretability Tool.

LLM

#language
#generativeAI

Abbreviazione di modello linguistico di grandi dimensioni.

Valutazioni LLM (evals)

#language
#generativeAI

Un insieme di metriche e benchmark per valutare il rendimento dei modelli linguistici di grandi dimensioni (LLM). A livello generale, le valutazioni LLM:

  • Aiutare i ricercatori a identificare le aree in cui gli LLM devono essere migliorati.
  • Sono utili per confrontare diversi LLM e identificare il migliore per una determinata attività.
  • Contribuisci ad assicurare che gli LLM siano sicuri ed etici.

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.

logit

Il vettore delle previsioni non elaborate (non normalizzate) generate da un modello di classificazione, che in genere viene poi passato a una funzione di normalizzazione. Se il modello risolve un problema di classificazione multiclasse, i logit diventano in genere un input della funzione softmax. La funzione softmax genera quindi un vettore di probabilità (normalizzate) con un valore per ogni classe possibile.

Log Loss

#fundamentals

La funzione di perdita utilizzata nella regressione logistica binaria.

probabilità logaritmica

#fundamentals

Il logaritmo delle probabilità di un evento.

Long Short-Term Memory (LSTM)

#seq

Un tipo di cella in una rete neurale ricorrente utilizzata per elaborare sequenze di dati in applicazioni come il riconoscimento della scrittura a mano, la traduzione automatica e la creazione di didascalie per le immagini. Le LSTM risolvono il problema del gradiente che scompare che si verifica durante l'addestramento delle RNN a causa di sequenze di dati lunghe mantenendo la cronologia in uno stato di memoria interna in base al nuovo input e al contesto delle celle precedenti nella RNN.

LoRA

#language
#generativeAI

Abbreviazione di Low-Rank Adaptability.

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.

aggregatore di perdite

Un tipo di algoritmo di machine learning che migliora le prestazioni di un modello combinando le previsioni di più modelli e utilizzandole per fare una singola previsione. Di conseguenza, un aggregatore di perdite può ridurre la varianza delle previsioni e migliorare la loro accuratezza.

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:

superficie di perdita

Un grafico dei pesi rispetto alla perdita. L'obiettivo della discesa del gradiente è trovare i pesi per i quali la superficie di perdita è a un minimo locale.

Adattabilità a basso ranking (LoRA)

#language
#generativeAI

Una tecnica di ottimizzazione efficiente dei parametri per la ottimizzazione fine che "blocca" i parametri preaddestrati del modello (in modo che non possano più essere modificati) e poi inserisce un piccolo insieme di parametri addestrabili nel modello. Questo insieme di pesi addestrabili (noti anche come "matrici di aggiornamento") è notevolmente più piccolo del modello di base ed è quindi molto più veloce da addestrare.

LoRa offre i seguenti vantaggi:

  • Migliora la qualità delle previsioni di un modello per il dominio in cui viene applicata la messa a punto fine.
  • Esegue la messa a punto più velocemente rispetto alle tecniche che richiedono la messa a punto di tutti i parametri di un modello.
  • Riduce il costo computazionale dell'inferenza consentendo la pubblicazione simultanea di più modelli specializzati che condividono lo stesso modello di base.

LSTM

#seq

Abbreviazione di memoria a lungo termine.

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.

traduzione automatica

#generativeAI

Utilizzo di software (in genere un modello di machine learning) per convertire il testo da una lingua umana a un'altra, ad esempio dall'inglese al giapponese.

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.

Processo decisionale di Markov (MDP)

#rl

Un grafico che rappresenta il modello decisionale in cui vengono prese decisioni (o azioni) per navigare in una sequenza di stati in base all'ipotesi che la proprietà di Markov sia valida. Nel machine learning con rinforzo, queste transizioni tra stati restituiscono un premio numerico.

Proprietà di Markov

#rl

Una proprietà di determinati ambienti, in cui le transizioni di stato sono interamente determinate dalle informazioni implicite nell'stato corrente e nell'azione dell'agente.

modello linguistico con maschera

#language

Un modello linguistico che prevede la probabilità che i token candidati vengano inseriti negli spazi vuoti di una sequenza. Ad esempio, un modello linguistico mascherato può calcolare le probabilità per le parole candidate per sostituire il tratto sottolineato nella seguente frase:

Il ____ nel cappello è tornato.

La letteratura in genere utilizza la stringa "MASK" anziché un'evidenziazione. Ad esempio:

Il "MASCHERA" nel cappello è tornato.

La maggior parte dei modelli linguistici con mascheramento moderni è bidirezionale.

matplotlib

Una libreria di grafici 2D Python open source. matplotlib ti aiuta a visualizzare diversi aspetti del machine learning.

fattorizzazione matriciale

#recsystems

In matematica, un meccanismo per trovare le matrici il cui prodotto scalare approssima una matrice di destinazione.

Nei sistemi di consigli, la matrice di destinazione spesso contiene le valutazioni degli utenti relative agli elementi. Ad esempio, la matrice di destinazione per un sistema di consigli sui film potrebbe essere simile alla seguente, dove gli interi positivi sono le valutazioni degli utenti e 0 significa che l'utente non ha valutato il film:

  Casablanca La storia di Filadelfia Black Panther Wonder Woman Pulp Fiction
Utente 1 5,0 3,0 0.0 2.0 0.0
Utente 2 4.0 0.0 0.0 1.0 5,0
Utente 3 3,0 1.0 4.0 5,0 0.0

Lo scopo del sistema di consigli sui film è prevedere le valutazioni degli utenti per i film senza classificazione. Ad esempio, all'utente 1 piacerà Black Panther?

Un approccio per i sistemi di suggerimenti è utilizzare la fattorizzazione matriciale per generare le seguenti due matrici:

  • Una matrice utente, formata dal numero di utenti x il numero di dimensioni di embedding.
  • Una matrice di elementi, formata dal numero di dimensioni di embedding x il numero di elementi.

Ad esempio, l'utilizzo della fattorizzazione matriciale sui tre utenti e sui cinque articoli potrebbe generare le seguenti matrici utente e di articolo:

User Matrix                 Item Matrix

1.1   2.3           0.9   0.2   1.4    2.0   1.2
0.6   2.0           1.7   1.2   1.2   -0.1   2.1
2.5   0.5

Il prodotto scalare della matrice utente e della matrice elemento genera una matrice di consigli che contiene non solo le valutazioni originali degli utenti, ma anche le previsioni per i film che ciascun utente non ha visto. Ad esempio, prendi in considerazione la valutazione dell'utente 1 per Casablanca, pari a 5,0. Il prodotto punto corrispondente a quella cella nella matrice di consigli dovrebbe essere di circa 5, 0 e in effetti è:

(1.1 * 0.9) + (2.3 * 1.7) = 4.9

Ancora più importante, all'utente 1 piacerà Black Panther? Il prodotto scalare corrispondente alla prima riga e alla terza colonna genera una valutazione prevista di 4,3:

(1.1 * 1.4) + (2.3 * 1.2) = 4.3

La fattorizzazione matriciale genera in genere una matrice utente e una matrice elemento che, insieme, sono molto più compatte della matrice target.

Errore assoluto medio (MAE)

La perdita media per esempio quando viene utilizzata la perdita L1. Calcola l'errore assoluto medio come segue:

  1. Calcola la perdita L1 per un batch.
  2. Dividi la perdita L1 per il numero di esempi nel batch.

Ad esempio, considera il calcolo della perdita L1 sul seguente batch di cinque esempi:

Valore effettivo dell'esempio Valore previsto del modello Perdita (differenza tra valore effettivo e previsto)
7 6 1
5 4 1
8 11 3
4 6 2
9 8 1
  8 = perdita L1

Pertanto, la perdita L1 è 8 e il numero di esempi è 5. Pertanto, l'errore assoluto medio è:

Mean Absolute Error = L1 loss / Number of Examples
Mean Absolute Error = 8/5 = 1.6

Confronta l'errore assoluto medio con l'errore quadratico medio e con l'errore quadratico medio della radice.

Precisione media a k (mAP@k)

#language
#generativeAI

La media statistica di tutti i punteggi di precisione media a k in un set di dati di convalida. Un utilizzo della precisione media a k è valutare la qualità dei consigli generati da un sistema di consigli.

Anche se la frase "media media" sembra ridondante, il nome della metrica è appropriato. Dopotutto, questa metrica trova la media di più valori di precisione media a k.

Errore quadratico medio (MSE)

La perdita media per esempio quando viene utilizzata la perdita L2. Calcola lo scarto quadratico medio come segue:

  1. Calcola la perdita L2 per un batch.
  2. Dividi la perdita L2 per il numero di esempi nel batch.

Ad esempio, considera la perdita nel seguente batch di cinque esempi:

Valore effettivo Previsione del modello Perdita Perdita quadratica
7 6 1 1
5 4 1 1
8 11 3 9
4 6 2 4
9 8 1 1
16 = perdita L2

Pertanto, l'errore quadratico medio è:

Mean Squared Error = L2 loss / Number of Examples
Mean Squared Error = 16/5 = 3.2

Lo scarto quadratico medio è un ottimizzatore di addestramento molto utilizzato, soprattutto per la regressione lineare.

Confronta l'errore quadratico medio con l'errore assoluto medio e con l'errore quadratico medio della radice.

TensorFlow Playground utilizza lo scarto quadratico medio per calcolare i valori di perdita.

mesh

#TensorFlow
#GoogleCloud

Nella programmazione parallela ML, un termine associato all'assegnazione dei dati e del modello ai chip TPU e alla definizione di come questi valori verranno suddivisi o replicati.

Mesh è un termine sovraccaricato che può significare uno dei seguenti:

  • Un layout fisico dei chip TPU.
  • Un costrutto logico astratto per mappare i dati e il modello ai chip TPU.

In entrambi i casi, un mesh viene specificato come forma.

metaapprendimento

#language

Un sottoinsieme del machine learning che scopre o migliora un algoritmo di apprendimento. Un sistema di metaapprendimento può anche avere lo scopo di addestrare un modello ad apprendere rapidamente una nuova attività da una piccola quantità di dati o dall'esperienza acquisita in attività precedenti. In genere, gli algoritmi di metaapprendimento cercano di ottenere quanto segue:

  • Migliorare o apprendere funzionalità create manualmente (ad esempio un inizializzante o un ottimizzatore).
  • Essere più efficienti in termini di dati e calcolo.
  • Migliorare la generalizzazione.

Il metaapprendimento è correlato all'apprendimento few-shot.

metrica

#TensorFlow

Una statistica che ti interessa.

Un obiettivo è una metrica che un sistema di machine learning tenta di ottimizzare.

API Metrics (tf.metrics)

Un'API TensorFlow per la valutazione dei modelli. Ad esempio, tf.metrics.accuracy determina la frequenza con cui le previsioni di un modello corrispondono alle etichette.

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.

la discesa stocastica del gradiente in mini-batch

Un algoritmo di discesa del gradiente che utilizza mini-batch. In altre parole, la discesa del gradiente stocastica con mini batch stima il gradiente in base a un piccolo sottoinsieme dei dati di addestramento. La discesa stocastica del gradiente standard utilizza un mini-batch di dimensione 1.

perdita minimax

Una funzione di perdita per le reti antagoniste generative, basata sulla entropia di crociera tra la distribuzione dei dati generati e quella dei dati reali.

La perdita minimax viene utilizzata nel primo articolo per descrivere le reti di generazione avversarie.

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.

una combinazione di esperti

#language
#generativeAI

Uno schema per aumentare l'efficienza delle reti neurali utilizzando solo un sottoinsieme dei relativi parametri (noto come esperto) per elaborare un determinato token di input o esempio. Una rete di smistamento inoltra ogni token o esempio di input agli esperti appropriati.

Per maggiori dettagli, consulta uno dei seguenti documenti:

ML

Abbreviazione di machine learning.

MMIT

#language
#image
#generativeAI

Abbreviazione di adattato alle istruzioni multimodali.

MNIST

#image

Un set di dati di dominio pubblico compilato da LeCun, Cortes e Burges contenente 60.000 immagini, ciascuna delle quali mostra come una persona ha scritto manualmente un determinato numero da 0 a 9. Ogni immagine viene memorizzata come un array di numeri interi 28 x 28, dove ogni numero intero è un valore in scala di grigi compreso tra 0 e 255, inclusi.

MNIST è un set di dati canonico per il machine learning, spesso utilizzato per testare nuovi approcci al machine learning. Per maggiori dettagli, consulta Il database MNIST di cifre scritte a mano.

modalità

#language

Una categoria di dati di alto livello. Ad esempio, numeri, testo, immagini, video e audio sono cinque diverse modalità.

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.

capacità del modello

La complessità dei problemi che un modello può apprendere. Più complessi sono i problemi che un modello può apprendere, maggiore è la sua capacità. La capacità di un modello in genere aumenta con il numero di parametri del modello. Per una definizione formale della capacità dello strumento di classificazione, consulta Dimensione VC.

applicazione in cascata del modello

#generativeAI

Un sistema che sceglie il modello ideale per una query di inferenza specifica.

Immagina un gruppo di modelli, da molto grandi (molti parametri) a molto più piccoli (molto meno parametri). I modelli di grandi dimensioni consumano più risorse di calcolo al momento dell'inferenza rispetto ai modelli più piccoli. Tuttavia, i modelli molto grandi possono in genere dedurre richieste più complesse rispetto ai modelli più piccoli. La gerarchia dei modelli determina la complessità della query di inferenza e poi sceglie il modello appropriato per eseguire l'inferenza. Lo scopo principale della gerarchia dei modelli è ridurre i costi di inferenza selezionando in genere modelli più piccoli e solo un modello più grande per query più complesse.

Immagina che un modello di piccole dimensioni venga eseguito su uno smartphone e una versione più grande su un server remoto. Una buona struttura a cascata dei modelli riduce i costi e la latenza consentendo al modello più piccolo di gestire le richieste semplici e chiamando solo il modello remoto per gestire le richieste complesse.

Vedi anche modello router.

parallelismo del modello

#language

Un modo per scalare l'addestramento o l'inferenza che inserisce parti diverse di un modello su dispositivi diversi. Il parallelismo dei modelli consente di utilizzare modelli troppo grandi per un singolo dispositivo.

Per implementare il parallelismo dei modelli, in genere un sistema esegue le seguenti operazioni:

  1. Suddivide il modello in parti più piccole.
  2. Distribuisce l'addestramento di queste parti più piccole su più processori. Ogni processore addestra la propria parte del modello.
  3. Combina i risultati per creare un singolo modello.

Il parallelismo dei modelli rallenta l'addestramento.

Vedi anche parallelismo dei dati.

router modello

#generativeAI

L'algoritmo che determina il modello ideale per la deduzione nella cascading dei modelli. Un router di modelli è in genere un modello di machine learning che apprende gradualmente a scegliere il modello migliore per un determinato input. Tuttavia, a volte un router modello potrebbe essere un algoritmo più semplice e non di machine learning.

addestramento del modello

La procedura di determinazione del modello migliore.

MOE

#language
#image
#generativeAI

Abbreviazione di mescola di esperti.

Momentum

Un sofisticato algoritmo di discesa del gradiente in cui un passaggio di apprendimento dipende non solo dalla derivata nel passaggio corrente, ma anche dalle derivate dei passaggi immediatamente precedenti. L'indicatore Momentum prevede il calcolo di una media mobile ponderata esponenzialmente dei gradienti nel tempo, in modo analogo allo slancio in fisica. A volte lo slancio impedisce all'apprendimento di rimanere bloccato in minimi locali.

MT

#generativeAI

Abbreviazione di traduzione automatica.

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.

regressione logistica multiclasse

Utilizzo della regressione logistica per i problemi di classificazione multiclasse.

auto-attenzione multi-head

#language

Un'estensione dell'attenzione autoreferenziale che applica il meccanismo di attenzione autoreferenziale più volte per ogni posizione nella sequenza di input.

I Transformer hanno introdotto l'autoattenzione multi-head.

multimodal instruction-tuned

#language

Un modello ottimizzato per le istruzioni in grado di elaborare input oltre al testo, come immagini, video e audio.

modello multimodale

#language

Un modello i cui input e/o output includono più di una modalità. Ad esempio, prendi in considerazione un modello che prende sia un'immagine sia una didascalia (due modalità) come caratteristiche e genera un punteggio che indica quanto è appropriata la didascalia per l'immagine. Pertanto, gli input di questo modello sono multimodali e l'output è unimodale.

Classificazione multinomiale

Sinonimo di classificazione multiclasse.

regressione multinomiale

Sinonimo di regressione logistica multiclasse.

multitasking

Una tecnica di machine learning in cui un singolo modello viene addestrato per eseguire più attività.

I modelli multitasking vengono creati con l'addestramento su dati appropriati per ciascuna delle diverse attività. In questo modo, il modello impara a condividere informazioni tra le attività, il che lo aiuta ad apprendere in modo più efficace.

Un modello addestrato per più attività spesso ha capacità di generalizzazione migliorate e può essere più efficace nel gestire diversi tipi di dati.

No

Trappola NaN

Quando un numero nel modello diventa NaN durante l'addestramento, molti o tutti gli altri numeri nel modello diventano eventualmente NaN.

NAN è un'abbreviazione di Not a Number.

elaborazione del linguaggio naturale

#language
Il campo che si occupa di insegnare ai computer a elaborare ciò che un utente ha detto o digitato utilizzando regole linguistiche. Quasi tutta l'elaborazione del linguaggio naturale moderna si basa sul machine learning.

comprensione del linguaggio naturale

#language

Un sottoinsieme dell'elaborazione del linguaggio naturale che determina le intenzioni di ciò che viene detto o digitato. La comprensione del linguaggio naturale può andare oltre l'elaborazione del linguaggio naturale per prendere in considerazione aspetti complessi del linguaggio come contesto, sarcasmo e sentiment.

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.

campionamento per esclusione

Sinonimo di campionamento dei candidati.

Ricerca di architetture neurali (NAS)

Una tecnica per progettare automaticamente l'architettura di una rete neurale. Gli algoritmi NAS possono ridurre il tempo e le risorse necessari per addestrare una rete neurale.

I NAS in genere utilizzano:

  • Uno spazio di ricerca, ovvero un insieme di architetture possibili.
  • Una funzione di idoneità, che è una misura del rendimento di una determinata architettura in una determinata attività.

Gli algoritmi NAS iniziano spesso con un piccolo insieme di architetture possibili e ampliano gradualmente lo spazio di ricerca man mano che l'algoritmo apprende di più sulle architetture efficaci. La funzione di idoneità si basa in genere sul funzionamento dell'architettura su un set di addestramento e l'algoritmo viene solitamente addestrato utilizzando una tecnica di apprendimento per rinforzo.

Gli algoritmi NAS si sono dimostrati efficaci nel trovare architetture ad alte prestazioni per una serie di attività, tra cui la classificazione delle immagini, la classificazione del testo e la traduzione automatica.

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.

N-gramma

#seq
#language

Una sequenza ordinata di N parole. Ad esempio, truly madly è un bigramma. Poiché l'ordine è pertinente, madly truly è un bigramma diverso da truly madly.

No Nome o nomi per questo tipo di n-gramma Esempi
2 bigramma o 2-gramma to go, go to, eat lunch, eat dinner
3 trigramma o 3-gramma ate too much, three blind mice, the bell tolls
4 4 grammi camminare nel parco, polvere nel vento, il ragazzo ha mangiato lenticchie

Molti modelli di comprensione del linguaggio naturale si basano su N-gram per prevedere la parola successiva che l'utente digiterà o dirà. Ad esempio, supponiamo che un utente abbia digitato tre ciechi. Un modello di NLU basato su trigrammi probabilmente prevede che l'utente digiterà topi.

Confronta gli n-grammi con i bag of words, che sono insiemi non ordinati di parole.

NLP

#language

Abbreviazione di elaborazione del linguaggio naturale.

NLU

#language

Abbreviazione di comprensione del linguaggio naturale.

Nodo (albero decisionale)

#df

In un albero decisionale, qualsiasi condizione o foglia.

Un albero decisionale con due condizioni e tre foglie.

Nodo (rete neurale)

#fundamentals

Un neurone in uno strato nascosto.

Nodo (grafico TensorFlow)

#TensorFlow

Un'operazione in un grafo TensorFlow.

rumore

In termini generali, qualsiasi elemento che offusca l'indicatore in un set di dati. Il rumore puoi essere introdotto nei dati in diversi modi. Ad esempio:

  • I valutatori umani commettono errori nell'etichettatura.
  • Gli esseri umani e gli strumenti registrano in modo errato o omettono i valori delle funzionalità.

condizione non binaria

#df

Una condizione contenente più di due possibili risultati. Ad esempio, la seguente condizione non binaria contiene tre possibili risultati:

Una condizione (number_of_legs = ?) che porta a tre possibili risultati. Un risultato (number_of_legs = 8) porta a una foglia
          denominata ragno. Un secondo risultato (number_of_legs = 4) porta a
          una foglia denominata cane. Un terzo risultato (number_of_legs = 2) porta a
          una foglia denominata pinguino.

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.

Bias di non risposta

#fairness

Consulta la sezione relativa al bias di selezione.

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à.

Nessuna risposta esatta (NORA)

#language
#generativeAI

Un prompt con più risposte appropriate. Ad esempio, il seguente prompt non ha una risposta giusta:

Raccontami una barzelletta sugli elefanti.

Valutare i prompt senza una risposta corretta può essere complicato.

NORA

#language
#generativeAI

Abbreviazione di nessuna risposta corretta.

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.

Rilevamento di novità

La procedura per determinare se un nuovo esempio (inedito) proviene dalla stessa distribuzione del set di addestramento. In altre parole, dopo l'addestramento sul set di addestramento, il rilevamento di novità determina se un nuovo esempio (durante l'inferenza o durante un addestramento aggiuntivo) è un outlier.

È diverso dal rilevamento di outlier.

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.

NumPy

Una libreria matematica open source che fornisce operazioni di array efficienti in Python. pandas è basata su NumPy.

O

scopo

Una metrica che l'algoritmo sta cercando di ottimizzare.

funzione obiettivo

La formula matematica o la metrica che un modello mira a ottimizzare. Ad esempio, la funzione obiettivo per la regressione lineare è solitamente la perdita quadratica media. Pertanto, quando si addestra un modello di regressione lineare, l'addestramento mira a minimizzare la perdita quadratica media.

In alcuni casi, l'obiettivo è massimizzare la funzione obiettivo. Ad esempio, se la funzione obiettivo è l'accuratezza, l'obiettivo è massimizzare l'accuratezza.

Vedi anche perdita.

condizione obliqua

#df

In un albero decisionale, una condizione che coinvolge più di un elemento. Ad esempio, se altezza e larghezza sono entrambe caratteristiche, la seguente è una condizione obliqua:

  height > width

È il contrario della condizione allineata all'asse.

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.

apprendimento one-shot

Un approccio di machine learning, spesso utilizzato per la classificazione degli oggetti, progettato per apprendere classificatori efficaci da un singolo esempio di addestramento.

Consulta anche apprendimento few-shot e apprendimento zero-shot.

prompting one-shot

#language
#generativeAI

Un prompt contenente un esempio che mostra come deve rispondere il modello linguistico di grandi dimensioni. Ad esempio, il seguente prompt contiene un esempio che mostra a un modello linguistico di grandi dimensioni come rispondere a una query.

Parti di un prompt Note
Qual è la valuta ufficiale del paese specificato? La domanda a cui vuoi che l'LLM risponda.
Francia: euro Un esempio.
India: La query effettiva.

Confronta e contrapponi i prompt una tantum con i seguenti termini:

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.

operazione (op)

#TensorFlow

In TensorFlow, qualsiasi procedura che crei, manipolare o distrugga un Tensor. Ad esempio, una moltiplicazione matriciale è un'operazione che prende due tensori come input e genera un tensore come output.

Optax

Una libreria di ottimizzazione e elaborazione del gradiente per JAX. Optax semplifica la ricerca fornendo componenti di base che possono essere ricombinati in modi personalizzati per ottimizzare i modelli parametrici come le reti neurali profonde. Altri obiettivi includono:

  • Fornire implementazioni leggibili, ben testate ed efficienti dei componenti di base.
  • Migliorare la produttività rendendo possibile combinare componenti di basso livello in ottimizzatori personalizzati (o altri componenti di elaborazione del gradiente).
  • Accelerare l'adozione di nuove idee semplificando la partecipazione di chiunque.

optimizer

Un'implementazione specifica dell'algoritmo di discesa del gradiente. Gli ottimizzatori più utilizzati includono:

  • AdaGrad, che sta per ADAptive GRADient descent (discesa del gradiente adattiva).
  • Adam, che sta per ADAptive with Momentum.

bias di omogeneità del gruppo esterno

#fairness

La tendenza a considerare i membri del gruppo esterno più simili ai membri del gruppo interno quando si confrontano atteggiamenti, valori, tratti della personalità e altre caratteristiche. Gruppo di appartenenza si riferisce alle persone con cui interagisci regolarmente; gruppo esterno si riferisce alle persone con cui non interagisci regolarmente. Se crei un set di dati chiedendo alle persone di fornire attributi relativi ai gruppi di esclusione, questi attributi potrebbero essere meno sfumati e più stereotipati rispetto agli attributi elencati dai partecipanti per le persone del loro gruppo di appartenenza.

Ad esempio, i lillipuziani potrebbero descrivere le case di altri lillipuziani in modo molto dettagliato, citando piccole differenze in stili architettonici, finestre, porte e dimensioni. Tuttavia, gli stessi lillipuziani potrebbero semplicemente dichiarare che i Brobdingnagiani vivono tutti in case identiche.

Il bias di omogeneità del gruppo esterno è una forma di bias di attribuzione di gruppo.

Vedi anche bias di affinità.

Rilevamento outlier

Il processo di identificazione degli outlier in un set di addestramento.

È diverso dal rilevamento di novità.

le anomalie

Valori lontani dalla maggior parte degli altri valori. Nel machine learning, qualsiasi tra i seguenti è un outlier:

  • Inserisci dati i cui valori sono maggiori di circa 3 deviazioni standard dalla media.
  • Ponderazioni con valori assoluti elevati.
  • Valori previsti relativamente lontani dai valori effettivi.

Ad esempio, supponiamo che widget-price sia una funzionalità di un determinato modello. Supponiamo che la media widget-price sia di 7 euro con una deviazione standard di 1 euro. Gli esempi contenenti un valore widget-price di 12 euro o 2 euro verrebbero quindi considerati valori anomali perché ciascuno di questi prezzi è a cinque deviazioni standard dalla media.

Gli outlier sono spesso causati da errori di battitura o altri errori di inserimento. In altri casi, gli outlier non sono errori. Dopotutto, i valori a cinque deviazioni standard dalla media sono rari, ma non impossibili.

Gli outlier causano spesso problemi nell'addestramento del modello. Il taglio è un modo per gestire gli outlier.

valutazione out-of-bag (OOB)

#df

Un meccanismo per valutare la qualità di una foresta decisionale testando ogni albero decisionale in base ai esempi non utilizzati durante la formazione dell'albero decisionale. Ad esempio, nel diagramma seguente, tieni presente che il sistema addestra ogni albero decisionale su circa due terzi degli esempi e poi esegue la valutazione rispetto al terzo rimanente degli esempi.

Una foresta decisionale composta da tre alberi decisionali.
          Un albero decisionale viene addestrato su due terzi degli esempi
          e poi utilizza il terzo rimanente per la valutazione OOB.
          Un secondo albero decisionale viene addestrato su due terzi
          di esempi diversi rispetto all&#39;albero decisionale precedente e poi
          utilizza un terzo diverso per la valutazione OOB rispetto all&#39;albero
          decisionale precedente.

La valutazione out-of-bag è un'approssimazione conservativa ed efficiente dal punto di vista computazionale del meccanismo di convalida incrociata. Nella convalida incrociata, viene addestrato un modello per ogni ciclo di convalida incrociata (ad esempio, 10 modelli vengono addestrati in una convalida incrociata decupla). Con la valutazione OOB, viene addestrato un singolo modello. Poiché il bagging nasconde alcuni dati di ogni albero durante l'addestramento, la valutazione OOB può utilizzare questi dati per approssimare la convalida incrociata.

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.

oversampling

Riutilizzo degli esempi di una classe di minoranza in un set di dati con sbilanciamento delle classi per creare un set di addestramento più equilibrato.

Ad esempio, considera un problema di classificazione binaria in cui il rapporto tra la classe di maggioranza e la classe di minoranza è 5000:1. Se il set di dati contiene un milione di esempi, contiene solo circa 200 esempi della classe di minoranza, che potrebbero essere troppo pochi per un addestramento efficace. Per superare questa carenza, potresti eseguire un oversampling (riutilizzo) di questi 200 esempi più volte, ottenendo eventualmente esempi sufficienti per un addestramento utile.

Devi fare attenzione a non overfittare eccessivamente il modello quando esegui l'oversampling.

È il contrario del sottocampionamento.

P

dati compressi

Un approccio per archiviare i dati in modo più efficiente.

I dati compressi vengono memorizzati utilizzando un formato compresso o in un altro modo che consente di accedervi in modo più efficiente. I dati compressi riducono al minimo la quantità di memoria e di calcolo necessaria per accedervi, il che consente un addestramento più rapido e un'inferenza del modello più efficiente.

I dati compressi vengono spesso utilizzati con altre tecniche, come la generazione di dati aggiuntivi e la regolarizzazione, migliorando ulteriormente il rendimento dei modelli.

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.

Ottimizzazione efficiente dei parametri

#language
#generativeAI

Un insieme di tecniche per ottimizzare un grande modello linguistico preaddestrato (PLM) in modo più efficiente rispetto all'ottimizzazione completa. L'ottimizzazione in termini di parametri in genere ottimizza molti meno parametri rispetto all'ottimizzazione completa, ma in genere produce un modello linguistico di grandi dimensioni che ha un rendimento uguale (o quasi) a quello di un modello linguistico di grandi dimensioni creato con l'ottimizzazione completa.

Confronta l'ottimizzazione efficiente dei parametri con:

L'ottimizzazione efficiente dei parametri è nota anche come ottimizzazione fine efficiente dei parametri.

Server dei parametri (PS)

#TensorFlow

Un job che tiene traccia dei parametri di un modello in un'impostazione distribuita.

aggiornamento dei parametri

L'operazione di regolazione dei parametri di un modello durante l'addestramento, in genere all'interno di una singola iterazione della discesa del gradiente.

derivata parziale

Una derivata in cui tutte le variabili tranne una sono considerate costanti. Ad esempio, la derivata parziale di f(x, y) rispetto a x è la derivata di f considerata come funzione di x sola (ovvero mantenendo y costante). La derivata parziale di f rispetto a x si concentra solo su come cambia x e ignora tutte le altre variabili nell'equazione.

bias di partecipazione

#fairness

Sinonimo di bias di non risposta. Consulta la sezione relativa al bias di selezione.

strategia di partizionamento

L'algoritmo con cui le variabili vengono suddivise tra server dei parametri.

pass at k (pass@k)

Una metrica per determinare la qualità del codice (ad esempio Python) generato da un modello linguistico di grandi dimensioni. Nello specifico, il passaggio a k indica la probabilità che almeno un blocco di codice generato su k blocchi di codice generati superi tutti i relativi test delle unità.

I modelli linguistici di grandi dimensioni spesso hanno difficoltà a generare codice valido per problemi di programmazione complessi. I software engineer si adattano a questo problema chiedendo al modello linguistico di grandi dimensioni di generare più (k) soluzioni per lo stesso problema. Successivamente, gli ingegneri del software testano ciascuna delle soluzioni in base ai test delle unità. Il calcolo del passaggio a k dipende dal risultato degli unit test:

  • Se una o più di queste soluzioni superano il test di unità, l'LLM supera la sfida di generazione di codice.
  • Se nessuna delle soluzioni supera il test di unità, il modello LLM non supera la sfida di generazione di codice.

La formula per il passaggio a k è la seguente:

$$\text{pass at k} = \frac{\text{total number of passes}} {\text{total number of challenges}}$$

In generale, valori più elevati di k producono un numero maggiore di passaggi con punteggi k; tuttavia, valori più elevati di k richiedono più risorse per i test di unità e i modelli linguistici di grandi dimensioni.

Pax

Un framework di programmazione progettato per l'addestramento su larga scala di modelli di reti neurali così grandi da occupare più TPU chip acceleratore slice o pod.

Pax è basato su Flax, che è basato su JAX.

Diagramma che indica la posizione di Pax nello stack software.
          Pax è basato su JAX. Pax è composto da tre
          livelli. Il livello inferiore contiene TensorStore e Flax.
          Lo strato intermedio contiene Optax e Flaxformer. Il livello superiore contiene la libreria di modelli Praxis. Fiddle è basato su Pax.

Percettrone

Un sistema (hardware o software) che riceve uno o più valori di input, esegue una funzione sulla somma ponderata degli input e calcola un singolo valore di output. Nel machine learning, la funzione è in genere non lineare, ad esempio ReLU, sigmoidea o tanh. Ad esempio, il seguente perceptron si basa sulla funzione sigmoidale per elaborare tre valori di input:

$$f(x_1, x_2, x_3) = \text{sigmoid}(w_1 x_1 + w_2 x_2 + w_3 x_3)$$

Nell'illustrazione seguente, il percettrone riceve tre input, ciascuno dei quali viene modificato da un peso prima di entrare nel percettrone:

Un perceptron che riceve 3 input, ciascuno moltiplicato per coefficienti
          distinti. Il perceptron restituisce un singolo valore.

I perceptron sono i neuroni delle reti neurali.

prestazioni

Termine sovraccaricato con i seguenti significati:

  • Il significato standard nell'ambito dell'ingegneria del software. Nello specifico: quanto è rapida (o efficiente) l'esecuzione di questo software?
  • Il significato nel machine learning. In questo caso, il rendimento risponde alla seguente domanda: quanto è corretto questo modello? In altre parole, quanto sono buone le previsioni del modello?

importanza delle variabili di permutazione

#df

Un tipo di importanza della variabile che valuta l'aumento dell'errore di previsione di un modello dopo la permutazione dei valori della caratteristica. L'importanza della variabile di permutazione è una metrica indipendente dal modello.

perplessità

Una misura del livello di efficacia con cui un modello completa la sua attività. Ad esempio, supponiamo che la tua attività sia leggere le prime lettere di una parola che un utente sta digitando sulla tastiera di uno smartphone e offrire un elenco di possibili parole di completamento. La complessità, P, per questa attività è approssimativamente il numero di ipotesi che devi offrire affinché l'elenco contenga la parola effettiva che l'utente sta cercando di digitare.

La perplessità è correlata all'entropia incrociata come segue:

$$P= 2^{-\text{cross entropy}}$$

pipeline

L'infrastruttura che circonda un algoritmo di machine learning. Una pipeline include la raccolta dei dati, il loro inserimento in file di dati di addestramento, l'addestramento di uno o più modelli ed l'esportazione dei modelli in produzione.

pipeline

#language

Una forma di parallelizzazione del modello in cui l'elaborazione di un modello è suddivisa in fasi consecutive e ogni fase viene eseguita su un dispositivo diverso. Mentre una fase elabora un batch, la fase precedente può lavorare sul batch successivo.

Vedi anche addestramento graduale.

pjit

Una funzione JAX che suddivide il codice da eseguire su più chip di acceleratore. L'utente passa una funzione a pjit, che restituisce una funzione con la semantica equivalente, ma compilata in un calcolo XLA che viene eseguito su più dispositivi (come GPU o core TPU).

pjit consente agli utenti di suddividere i calcoli senza riscriverli utilizzando il partizionatore SPMD.

A partire da marzo 2023, pjit è stato unito a jit. Per ulteriori dettagli, consulta Array distribuiti e parallellizzazione automatica.

PLM

#language
#generativeAI

Abbreviazione di modello linguistico preaddestrato.

pmap

Una funzione JAX che esegue copie di una funzione di input su più dispositivi hardware sottostanti (CPU, GPU o TPU), con valori di input diversi. pmap si basa su SPMD.

policy

#rl

Nell'apprendimento per rinforzo, la mappatura probabilistica di un agente da stati ad azioni.

raggruppamento

#image

Riduzione di una matrice (o di più matrici) creata da un livello di convoluzione precedente in una matrice più piccola. In genere, l'aggregazione comporta l'utilizzo del valore massimo o medio nell'area aggregata. Ad esempio, supponiamo di avere la seguente matrice 3x3:

La matrice 3x3 [[5,3,1], [8,2,5], [9,4,3]].

Un'operazione di pooling, proprio come un'operazione di convoluzione, suddivide la matrice in sezioni e poi fa scorrere l'operazione di convoluzione per passaggi. Ad esempio, supponiamo che l'operazione di pooling divida la matrice di convoluzione in sezioni 2x2 con uno stride 1x1. Come illustrato nel seguente diagramma, vengono eseguite quattro operazioni di raggruppamento. Immagina che ogni operazione di raggruppamento scelga il valore massimo tra i quattro in quella frazione:

La matrice di input è 3x3 con i valori: [[5,3,1], [8,2,5], [9,4,3]].
          La sottomatrice 2x2 in alto a sinistra della matrice di input è [[5, 3], [8, 2]], quindi
          l&#39;operazione di pooling in alto a sinistra restituisce il valore 8 (che è il
          massimo di 5, 3, 8 e 2). La sottomatrice 2x2 in alto a destra della matrice di input è [[3,1], [2,5]], quindi l&#39;operazione di pooling in alto a destra restituisce il valore 5. La sottomatrice 2x2 in basso a sinistra della matrice di input è
          [[8,2], [9,4]], quindi l&#39;operazione di pooling in basso a sinistra restituisce il valore
          9. La sottomatrice 2x2 in basso a destra della matrice di input è
          [[2,5], [4,3]], quindi l&#39;operazione di pooling in basso a destra restituisce il valore
          5. In sintesi, l&#39;operazione di pooling genera la matrice 2x2
          [[8,5], [9,5]].

La sommatoria consente di applicare la invarianza di traslazione nella matrice di input.

Il pooling per le applicazioni di visione è noto più formalmente come pooling spaziale. Le applicazioni di serie temporali in genere fanno riferimento al raggruppamento come raggruppamento temporale. In modo meno formale, il pooling viene spesso chiamato sottocampionamento o downsampling.

codifica posizionale

#language

Una tecnica per aggiungere informazioni sulla posizione di un token in una sequenza all'embedding del token. I modelli di transformer utilizzano l'codifica posizionale per comprendere meglio la relazione tra le diverse parti della sequenza.

Un'implementazione comune della codifica posizionale utilizza una funzione sinusoidale. Nello specifico, la frequenza e l'ampiezza della funzione sinusoidale sono determinate dalla posizione del token nella sequenza. Questa tecnica consente a un modello Transformer di imparare a prestare attenzione a parti diverse della sequenza in base alla loro posizione.

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.

modello post-addestrato

#language
#image
#generativeAI

Termine definito in modo approssimativo che in genere si riferisce a un modello preaddestrato sottoposto a qualche elaborazione post-trattamento, ad esempio una o più delle seguenti:

AUC PR (area sotto la curva PR)

Area sotto la curva di precisione-richiamo interpolata, ottenuta tracciando i punti (richiamo, precisione) per diversi valori della soglia di classificazione.

Praxis

Una libreria ML di base ad alte prestazioni di Pax. Praxis è spesso chiamata "libreria di livelli".

Praxis non contiene solo le definizioni per la classe Layer, ma anche la maggior parte dei suoi componenti di supporto, tra cui:

Praxis fornisce le definizioni per la classe Model.

precisione

Una metrica per i modelli di classificazione che risponde alla seguente domanda:

Quando il modello ha previsto la classe positiva, qual è stata la percentuale di previsioni corrette?

Ecco la formula:

$$\text{Precision} = \frac{\text{true positives}} {\text{true positives} + \text{false positives}}$$

dove:

  • vero positivo indica che il modello ha predetto correttamente la classe positiva.
  • un falso positivo indica che il modello ha erroneamente previsto la classe positiva.

Ad esempio, supponiamo che un modello abbia effettuato 200 previsioni positive. Di queste 200 previsioni positive:

  • 150 erano veri positivi.
  • 50 erano falsi positivi.

In questo caso:

$$\text{Precision} = \frac{\text{150}} {\text{150} + \text{50}} = 0.75$$

È il contrario di accuratezza e richiamo.

Per ulteriori informazioni, consulta Classificazione: accuratezza, richiamo, precisione e metriche correlate.

Precisione a k (precisione@k)

#language

Una metrica per valutare un elenco di elementi classificati (ordinati). La precisione a k identifica la frazione dei primi k elementi nell'elenco che sono "pertinenti". Ossia:

\[\text{precision at k} = \frac{\text{relevant items in first k items of the list}} {\text{k}}\]

Il valore di k deve essere minore o uguale alla lunghezza dell'elenco restituito. Tieni presente che la lunghezza dell'elenco restituito non fa parte del calcolo.

La pertinenza è spesso soggettiva; anche gli esperti valutatori umani spesso non sono d'accordo su quali elementi sono pertinenti.

Confronta con:

curva di precisione-richiamo

Una curva di precisione rispetto al richiamo a diverse soglie di classificazione.

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.

bias di previsione

Un valore che indica la distanza tra la media delle previsioni e la media delle etichette nel set di dati.

Da non confondere con il termine bias nei modelli di machine learning o con i bias in termini di etica ed equità.

ML predittivo

Qualsiasi sistema di machine learning standard ("classico").

Il termine ML predittivo non ha una definizione formale. Il termine distingue piuttosto una categoria di sistemi di ML non basati su IA generativa.

parità predittiva

#fairness

Una metrica di equità che controlla se, per un determinato classificatore, i tassi di precisione sono equivalenti per i sottogruppi presi in considerazione.

Ad esempio, un modello che prevede l'accettazione in un college soddisfa la parità predittiva per la nazionalità se il suo tasso di precisione è lo stesso per i lillipuziani e i brobdingnagiani.

La parità predittiva è talvolta chiamata anche parità di tariffa predittiva.

Per una discussione più dettagliata sulla parità predittiva, consulta la sezione "Definizioni di equità spiegate" (sezione 3.2.1).

parità di tariffa predittiva

#fairness

Un altro nome per la parità predittiva.

pre-elaborazione

#fairness
Elaborazione dei dati prima che vengano utilizzati per addestrare un modello. La preelaborazione può essere semplice come rimuovere le parole da un corpus di testo in inglese che non compaiono nel dizionario inglese oppure complessa come esprimere di nuovo i punti dati in modo da eliminare il maggior numero possibile di attributi correlati agli attributi sensibili. La preelaborazione può contribuire a soddisfare i vincoli di equità.

modello preaddestrato

#language
#image
#generativeAI

In genere, un modello già addestrato. Il termine può anche indicare un vettore di embedding addestrato in precedenza.

Il termine modello linguistico preaddestrato si riferisce in genere a un modello linguistico di grandi dimensioni già addestrato.

preaddestramento

#language
#image
#generativeAI

L'addestramento iniziale di un modello su un set di dati di grandi dimensioni. Alcuni modelli pre-addestrati sono giganti goffi e in genere devono essere perfezionati tramite un addestramento aggiuntivo. Ad esempio, gli esperti di ML potrebbero preaddestrare un modello linguistico di grandi dimensioni su un vasto set di dati di testo, come tutte le pagine in inglese di Wikipedia. Dopo la pre-addestramento, il modello risultante può essere ulteriormente perfezionato tramite una delle seguenti tecniche:

credenza a priori

Le tue convinzioni sui dati prima di iniziare l'addestramento. Ad esempio, la regolarizzazione L2 si basa su un presupposto secondo cui i pesi devono essere piccoli e distribuiti normalmente intorno allo zero.

Modello di regressione probabilistica

Un modello di regressione che utilizza non solo i pesi per ogni caratteristica, ma anche l'incertezza di questi pesi. Un modello di regressione probabilistica genera una previsione e l'incertezza di questa previsione. Ad esempio, un modello di regressione probabilistica potrebbe fornire una previsione di 325 con una deviazione standard di 12. Per ulteriori informazioni sui modelli di regressione probabilistica, consulta questo notebook di Colab su tensorflow.org.

funzione di densità di probabilità

Una funzione che identifica la frequenza degli esempi di dati con esattamente un determinato valore. Quando i valori di un set di dati sono numeri con virgola mobile continui, le corrispondenze esatte si verificano raramente. Tuttavia, l'integrazione di una funzione di densità di probabilità dal valore x al valore y genera la frequenza prevista dei campioni di dati tra x e y.

Ad esempio, prendiamo in considerazione una distribuzione normale con una media di 200 e una deviazione standard di 30. Per determinare la frequenza prevista dei campioni di dati che rientrano nell'intervallo 211,4-218,7, puoi integrare la funzione di probabilità di densità per una distribuzione normale da 211,4 a 218,7.

prompt

#language
#generativeAI

Qualsiasi testo inserito come input in un modello linguistico di grandi dimensioni per condizionare il modello a comportarsi in un determinato modo. I prompt possono essere brevi come una frase o lunghi a piacere (ad esempio l'intero testo di un romanzo). I prompt rientrano in più categorie, tra cui quelle mostrate nella tabella seguente:

Categoria di prompt Esempio Note
Domanda A quale velocità può volare un piccione?
Istruzione Scrivi una poesia divertente sull'arbitraggio. Un prompt che chiede al modello linguistico di grandi dimensioni di fare qualcosa.
Esempio Tradurre il codice Markdown in HTML. Ad esempio:
Markdown: * elemento dell'elenco
HTML: <ul> <li>elemento dell'elenco</li> </ul>
La prima frase di questo prompt di esempio è un'istruzione. Il resto del prompt è l'esempio.
Ruolo Spiegare perché la discesa del gradiente viene utilizzata nell'addestramento del machine learning a un dottore in fisica. La prima parte della frase è un'istruzione; la frase "a un dottorato in fisica" è la parte relativa al ruolo.
Input parziale da completare dal modello Il Primo ministro del Regno Unito abita a Un prompt di input parziale può terminare bruscamente (come in questo esempio) o con un trattino basso.

Un modello di IA generativa può rispondere a un prompt con testo, codice, immagini, embedding, video e quasi tutto.

apprendimento basato su prompt

#language
#generativeAI

Una funzionalità di alcuni modelli che consente loro di adattare il loro comportamento in risposta a input di testo arbitrari (prompt). In un tipico paradigma di apprendimento basato su prompt, un modello linguistico di grandi dimensioni risponde a un prompt generando testo. Ad esempio, supponiamo che un utente inserisca il seguente prompt:

Riassumere la terza legge di moto di Newton.

Un modello in grado di apprendere in base ai prompt non è addestrato specificamente per rispondere al prompt precedente. Piuttosto, il modello "sa" molti fatti sulla fisica, molto sulle regole generali del linguaggio e molto su cosa costituiscono risposte generalmente utili. Queste informazioni sono sufficienti per fornire una risposta (si spera) utile. Ulteriori feedback umani ("Questa risposta era troppo complicata" o "Che cos'è una reazione?") consentono ad alcuni sistemi di apprendimento basati su prompt di migliorare gradualmente l'utilità delle loro risposte.

progettazione dei prompt

#language
#generativeAI

Sinonimo di prompt engineering.

ingegneria del prompt

#language
#generativeAI

L'arte di creare prompt che generano le risposte desiderate da un modello linguistico di grandi dimensioni. Gli esseri umani eseguono il prompt engineering. Scrivere prompt ben strutturati è un aspetto essenziale per garantire risposte utili da un modello linguistico di grandi dimensioni. L'ingegneria dei prompt dipende da molti fattori, tra cui:

  • Il set di dati utilizzato per preaddestrare e possibilmente ottimizzare il modello linguistico di grandi dimensioni.
  • La temperatura e altri parametri di decodifica utilizzati dal modello per generare le risposte.

Per ulteriori dettagli su come scrivere prompt utili, consulta Introduzione alla progettazione dei prompt.

Progettazione del prompt è un sinonimo di prompt engineering.

ottimizzazione dei prompt

#language
#generativeAI

Un meccanismo di ottimizzazione efficiente dei parametri che apprende un "prefisso" che il sistema antepone al prompt effettivo.

Una variante della regolazione del prompt, a volte chiamata regolazione del prefisso, consiste nell'anteporre il prefisso a ogni livello. Al contrario, la maggior parte della regolazione dei prompt aggiunge solo un prefisso al livello di input.

proxy (attributi sensibili)

#fairness
Un attributo utilizzato come sostituto di un attributo sensibile. Ad esempio, il codice postale di un individuo potrebbe essere utilizzato come sostituto del suo reddito, della sua etnia o della sua razza.

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.

funzione pura

Una funzione i cui risultati si basano solo sui suoi input e che non ha effetti collaterali. Nello specifico, una funzione pura non utilizza né modifica alcun stato globale, come i contenuti di un file o il valore di una variabile al di fuori della funzione.

Le funzioni pure possono essere utilizzate per creare codice a prova di thread, il che è utile quando si esegue lo sharding del codice del modello su più chip dell'acceleratore.

I metodi di trasformazione delle funzioni di JAX richiedono che le funzioni di input siano funzioni pure.

Q

Funzione Q

#rl

Nell'apprendimento per rinforzo, la funzione che predice il ritorno previsto dall'adozione di un' azione in un stato e poi seguendo una determinata norma.

La funzione Q è nota anche come funzione di valore stato-azione.

Apprendimento Q

#rl

Nell'apprendimento per rinforzo, un algoritmo che consente a un agente di apprendere la funzione Q ottimale di un processo decisionale di Markov applicando l'equazione di Bellman. Il processo decisionale di Markov modella un ambiente.

quantile

Ogni bucket nella suddivisione in bucket per quantili.

bucketing quantile

Distribuzione dei valori di una caratteristica in bucket in modo che ogni bucket contenga lo stesso (o quasi) numero di esempi. Ad esempio, la figura seguente suddivide 44 punti in 4 bucket, ciascuno contenente 11 punti. Affinché ogni bucket nella figura contenga lo stesso numero di punti, alcuni bucket hanno una larghezza diversa dei valori x.

44 punti dati suddivisi in 4 bucket di 11 punti ciascuno.
          Sebbene ogni bucket contenga lo stesso numero di punti dati, alcuni contengono una gamma più ampia di valori delle funzionalità rispetto ad altri.

quantizzazione

Termine sovraccaricato che può essere utilizzato in uno dei seguenti modi:

  • Implementazione della bucketizzazione dei quantili su una determinata funzionalità.
  • Trasformazione dei dati in zeri e uno per archiviazione, addestramento e inferenza più rapidi. Poiché i dati booleani sono più resistenti al rumore e agli errori rispetto ad altri formati, la quantizzazione può migliorare la correttezza del modello. Le tecniche di quantizzazione includono arrotondamento, troncamento e binning.
  • Riduzione del numero di bit utilizzati per memorizzare i parametri di un modello. Ad esempio, supponiamo che i parametri di un modello siano memorizzati come numeri in virgola mobile a 32 bit. La quantizzazione converte questi parametri da 32 bit a 4, 8 o 16 bit. La quantizzazione riduce quanto segue:

    • Utilizzo di calcolo, memoria, disco e rete
    • Tempo per dedurre una predizione
    • Consumo energetico

    Tuttavia, a volte la quantizzazione riduce la correttezza delle predizioni di un modello.

coda

#TensorFlow

Un'operazione TensorFlow che implementa una struttura di dati della coda. Generalmente utilizzato in I/O.

R

RAG

#fundamentals

Abbreviazione di retrieval-augmented generation.

foresta casuale

#df

Un ensemble di alberi decisionali in cui ogni albero decisionale viene addestrato con un rumore casuale specifico, come il bagging.

Le foreste casuali sono un tipo di foresta decisionale.

criterio casuale

#rl

Nell'apprendimento per rinforzo, un criterio che sceglie un azione in modo casuale.

rank (ordinalità)

La posizione ordinale di una classe in un problema di machine learning che classifica le classi dal più alto al più basso. Ad esempio, un sistema di ranking del comportamento potrebbe classificare i premi di un cane dal più alto (una bistecca) al più basso (cavolo appassito).

rank (Tensor)

#TensorFlow

Il numero di dimensioni in un Tensor. Ad esempio, un scalare ha rango 0, un vettore ha rango 1 e una matrice ha rango 2.

Da non confondere con il ranking (ordinalità).

classifica

Un tipo di apprendimento supervisionato il cui scopo è ordinare un elenco di elementi.

valutatore

#fundamentals

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

richiamo

Una metrica per i modelli di classificazione che risponde alla seguente domanda:

Quando i dati empirici reali erano la classe positiva, quale percentuale di previsioni è stato identificato correttamente dal modello come classe positiva?

Ecco la formula:

\[\text{Recall} = \frac{\text{true positives}} {\text{true positives} + \text{false negatives}} \]

dove:

  • vero positivo indica che il modello ha predetto correttamente la classe positiva.
  • Un falso negativo indica che il modello ha erroneamente previsto la classe negativa.

Ad esempio, supponiamo che il modello abbia effettuato 200 previsioni su esempi per i quali il valore di verità è la classe positiva. Di queste 200 previsioni:

  • 180 erano veri positivi.
  • 20 erano falsi negativi.

In questo caso:

\[\text{Recall} = \frac{\text{180}} {\text{180} + \text{20}} = 0.9 \]

Per ulteriori informazioni, consulta Classificazione: accuratezza, richiamo, precisione e metriche correlate.

Richiamo a k (recall@k)

#language

Una metrica per la valutazione dei sistemi che generano un elenco classificato (ordinato) di elementi. Il richiamo a k identifica la frazione di elementi pertinenti nei primi k elementi in quell'elenco rispetto al numero totale di elementi pertinenti restituiti.

\[\text{recall at k} = \frac{\text{relevant items in first k items of the list}} {\text{total number of relevant items in the list}}\]

Confronta con la precisione a k.

sistema di suggerimenti

#recsystems

Un sistema che seleziona per ogni utente un insieme relativamente piccolo di elementi desiderabili da un corpus di grandi dimensioni. Ad esempio, un sistema di consigli sui video potrebbe consigliare due video da un corpus di 100.000 video, selezionando Casablanca e La storia di Filadelfia per un utente e Wonder Woman e Black Panther per un altro. Un sistema di consigli sui video potrebbe basare i suoi consigli su fattori quali:

  • Film valutati o guardati da utenti simili.
  • Genere, registi, attori, gruppo demografico di destinazione…

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.

rete neurale ricorrente

#seq

Una rete neurale che viene eseguita intenzionalmente più volte, in cui parti di ogni esecuzione vengono inserite in quella successiva. Nello specifico, i livelli nascosti dell'esecuzione precedente forniscono parte dell'input allo stesso livello nascosto nell'esecuzione successiva. Le reti neurali ricorrenti sono particolarmente utili per valutare le sequenze, in modo che gli strati nascosti possano apprendere dalle esecuzioni precedenti della rete neurale sulle parti precedenti della sequenza.

Ad esempio, la figura seguente mostra una rete neurale ricorrente che viene eseguita quattro volte. Tieni presente che i valori appresi nei livelli nascosti della prima esecuzione diventano parte dell'input degli stessi livelli nascosti nella seconda esecuzione. Analogamente, i valori appresi nel livello nascosto nella seconda esecuzione diventano parte dell'input dello stesso livello nascosto nella terza esecuzione. In questo modo, la rete neurale ricorrente si addestra gradualmente e predittivo il significato dell'intera sequenza anziché solo il significato delle singole parole.

Un&#39;RNN che viene eseguita quattro volte per elaborare quattro parole di input.

testo di riferimento

#language
#generativeAI

La risposta di un esperto a un prompt. Ad esempio, se viene visualizzato il seguente prompt:

Traduci la domanda "Come ti chiami?" dall'inglese al francese.

La risposta di un esperto potrebbe essere:

Comment vous appelez-vous?

Diverse metriche (ad esempio ROUGE) misurano il grado di corrispondenza tra il testo di riferimento e il testo generato di un modello di ML.

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.

apprendimento per rinforzo (RL)

#rl

Una famiglia di algoritmi che apprendono un regolamento ottimale, il cui scopo è massimizzare il ritorno durante l'interazione con un ambiente. Ad esempio, il premio finale della maggior parte dei giochi è la vittoria. I sistemi di reinforcement learning possono diventare esperti nel giocare a giochi complessi valutando sequenze di mosse precedenti che hanno portato a vittorie e sequenze che hanno portato a sconfitte.

Apprendimento per rinforzo con feedback umano (RLHF)

#generativeAI
#rl

Utilizzo del feedback di valutatori umani per migliorare la qualità delle risposte di un modello. Ad esempio, un meccanismo RLHF può chiedere agli utenti di valutare la qualità della risposta di un modello con un'emoji 👍 o 👎. Il sistema può quindi modificare le sue risposte future in base a questo feedback.

ReLU

#fundamentals

Abbreviazione di unità lineare rettificata.

replay buffer

#rl

Negli algoritmi simili a DQN, la memoria utilizzata dall'agente per memorizzare le transizioni di stato da utilizzare nella riproduzione dell'esperienza.

Cloud SQL

Una copia del set di addestramento o del modello, solitamente su un'altra macchina. Ad esempio, un sistema potrebbe utilizzare la seguente strategia per implementare il parallismo dei dati:

  1. Posiziona le repliche di un modello esistente su più macchine.
  2. Invia sottoinsiemi diversi del set di addestramento a ogni replica.
  3. Aggrega gli aggiornamenti dei parametri.

bias di segnalazione

#fairness

Il fatto che la frequenza con cui le persone scrivono di azioni, risultati o proprietà non rifletta le relative frequenza nel mondo reale o il grado in cui una proprietà è caratteristica di una classe di individui. Il bias di reporting può influire sulla composizione degli elementi dai quali i sistemi di machine learning apprendono.

Ad esempio, nei libri la parola risate è più prevalente di respira. Un modello di machine learning che stima la frequenza relativa di risate e respiri da un corpus di libri probabilmente determinerebbe che le risate sono più comuni del respiro.

vettoriale prima che arrivassero

La procedura di mappatura dei dati a funzionalità utili.

nuovo ranking

#recsystems

La fase finale di un sistema di consigli, durante la quale gli elementi valutati possono essere rivalutati in base a un altro algoritmo (in genere non di ML). Il ricoinvolgimento valuta l'elenco di elementi generato dalla fase di assegnazione del punteggio, adottando azioni quali:

  • Eliminazione di articoli già acquistati dall'utente.
  • Aumentare il punteggio degli elementi più recenti.

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.

invio

#rl

Nell'apprendimento tramite rinforzo, dati un determinato criterio e uno stato specifico, il rendimento è la somma di tutti i premi che l'agente si aspetta di ricevere quando segue il criterio dal stato alla fine dell'episodio. L'agente tiene conto della natura ritardata dei premi previsti scontandoli in base alle transizioni di stato necessarie per ottenerli.

Pertanto, se il fattore di sconto è \(\gamma\)e \(r_0, \ldots, r_{N}\) indicano i premi fino alla fine della puntata, il calcolo del rendimento è il seguente:

$$\text{Return} = r_0 + \gamma r_1 + \gamma^2 r_2 + \ldots + \gamma^{N-1} r_{N-1}$$

premio

#rl

Nell'apprendimento per rinforzo, il risultato numerico dell'esecuzione di un'azione in uno stato, come definito dall'ambiente.

regolarizzazione dei picchi

Sinonimo di regolarizzazione L2. Il termine regolarizzazione ridge viene utilizzato più di frequente in contesti di statistica pura, mentre la regolarizzazione L2 viene utilizzata più spesso nel machine learning.

RNN

#seq

Abbreviazione di reti neurali ricorrenti.

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.

Prompt del ruolo

#language
#generativeAI

Componente facoltativo di un prompt che identifica un pubblico di destinazione per la risposta di un modello di IA generativa. Senza un prompt per il ruolo, un modello linguistico di grandi dimensioni fornisce una risposta che può essere o meno utile per la persona che pone le domande. Con un prompt sul ruolo, un modello linguistico di grandi dimensioni può rispondere in modo più appropriato e utile per un pubblico di destinazione specifico. Ad esempio, la parte della richiesta relativa al ruolo dei seguenti prompt è in grassetto:

  • Riassumi questo articolo per un dottorato in economia.
  • Descrivere il funzionamento delle maree a un bambino di dieci anni.
  • Spiega la crisi finanziaria del 2008. Parla come faresti con un bambino piccolo o un golden retriever.

root

#df

Il nodo iniziale (la prima condizione) in un albero decisionale. Per convenzione, i diagrammi posizionano il nodo principale nella parte superiore della struttura decisionale. Ad esempio:

Un albero decisionale con due condizioni e tre foglie. La
          condizione iniziale (x > 2) è la radice.

directory principale

#TensorFlow

La directory specificata per l'hosting di sottodirectory dei file di checkpoint e eventi di TensorFlow di più modelli.

Errore quadratico medio (RMSE)

#fundamentals

La radice quadrata dell'errore quadratico medio.

invarianza di rotazione

#image

In un problema di classificazione delle immagini, la capacità di un algoritmo di classificare correttamente le immagini anche quando cambia l'orientamento. Ad esempio, l'algoritmo può comunque identificare una racchetta da tennis se è rivolta verso l'alto, di lato o verso il basso. Tieni presente che l'invarianza di rotazione non è sempre auspicabile. Ad esempio, un 9 capovolto non deve essere classificato come 9.

Vedi anche invarianza di traslazione e invarianza di dimensione.

ROUGE (Recall-Oriented Understudy for Gisting Evaluation)

#language

Una famiglia di metriche che valutano i modelli di sintesi automatica e di traduzione automatica. Le metriche ROUGE determinano il grado in cui un testo di riferimento si sovrappone a un testo generato di un modello di ML. Ogni membro della famiglia di misurazioni ROUGE si sovrappone in modo diverso. Punteggi ROUGE più elevati indicano una maggiore somiglianza tra il testo di riferimento e il testo generato rispetto ai punteggi ROUGE più bassi.

In genere, ogni membro della famiglia ROUGE genera le seguenti metriche:

  • Precisione
  • Richiamo
  • F1

Per dettagli ed esempi, consulta:

ROUGE-L

#language

Un membro della famiglia ROUGE incentrato sulla lunghezza della sottosequenza comune più lunga nel testo di riferimento e nel testo generato. Le seguenti formule calcolano il richiamo e la precisione per ROUGE-L:

$$\text{ROUGE-L recall} = \frac{\text{longest common sequence}} {\text{number of words in the reference text} }$$
$$\text{ROUGE-L precision} = \frac{\text{longest common sequence}} {\text{number of words in the generated text} }$$

Puoi quindi utilizzare F1 per aggregare il recupero ROUGE-L e la precisione ROUGE-L in un'unica metrica:

$$\text{ROUGE-L F} {_1} = \frac{\text{2} * \text{ROUGE-L recall} * \text{ROUGE-L precision}} {\text{ROUGE-L recall} + \text{ROUGE-L precision} }$$

ROUGE-L ignora i ritorni a capo nel testo di riferimento e nel testo generato, pertanto la sottosequenza comune più lunga potrebbe attraversare più frasi. Quando il testo di riferimento e il testo generato includono più frasi, in genere una variante di ROUGE-L chiamata ROUGE-Lsum è una metrica migliore. ROUGE-Lsum determina la sottosequenza comune più lunga per ogni frase in un passaggio e poi calcola la media di queste sottosequenze comuni più lunghe.

ROUGE-N

#language

Un insieme di metriche all'interno della famiglia ROUGE che confronta gli N-gram condivisi di una determinata dimensione nel testo di riferimento e nel testo generato. Ad esempio:

  • ROUGE-1 misura il numero di token condivisi nel testo di riferimento e nel testo generato.
  • ROUGE-2 misura il numero di bigrammi (2-gram) condivisi nel testo di riferimento e nel testo generato.
  • ROUGE-3 misura il numero di trigrammi (3-grammi) condivisi nel testo di riferimento e nel testo generato.

Puoi utilizzare le seguenti formule per calcolare il recupero e la precisione di ROUGE-N per qualsiasi membro della famiglia ROUGE-N:

$$\text{ROUGE-N recall} = \frac{\text{number of matching N-grams}} {\text{number of N-grams in the reference text} }$$
$$\text{ROUGE-N precision} = \frac{\text{number of matching N-grams}} {\text{number of N-grams in the generated text} }$$

Puoi quindi utilizzare F1 per aggregare il recupero di ROUGE-N e la precisione di ROUGE-N in un'unica metrica:

$$\text{ROUGE-N F}{_1} = \frac{\text{2} * \text{ROUGE-N recall} * \text{ROUGE-N precision}} {\text{ROUGE-N recall} + \text{ROUGE-N precision} }$$

ROUGE-S

#language

Una forma tollerante di ROUGE-N che consente la corrispondenza di skip-gram. In altre parole, ROUGE-N conteggia solo n-grammi che corrispondono esattamente, mentre ROUGE-S conteggia anche gli n-grammi separati da una o più parole. Ad esempio, prendi in considerazione quanto indicato di seguito.

Durante il calcolo di ROUGE-N, il bigramma Nuvole bianche non corrisponde Nuvole bianche gonfie. Tuttavia, quando si calcola ROUGE-S, Nuvole bianche corrisponde a Nuvole bianche gonfie.

R al quadrato

Una metrica di regressione che indica la variazione in un etichetta dovuta a una singola caratteristica o a un insieme di caratteristiche. R-squared è un valore compreso tra 0 e 1, che puoi interpretare come segue:

  • Un valore R-quadrato pari a 0 indica che nessuna variazione di un'etichetta è dovuta all'insieme di funzionalità.
  • Un R-quadrato pari a 1 indica che tutta la variazione di un'etichetta è dovuta all'insieme di funzionalità.
  • Un valore R-quadrato compreso tra 0 e 1 indica il grado in cui la variazione dell'etichetta può essere prevista da una determinata caratteristica o dall'insieme di caratteristiche. Ad esempio, un R-quadrato di 0,10 indica che il 10% della varianza nella label è dovuto all'insieme di funzionalità, un R-quadrato di 0,20 indica che il 20% è dovuto all'insieme di funzionalità e così via.

R al quadrato è il quadrato del coefficiente di correlazione Pearson tra i valori previsti da un modello e i dati empirici reali.

S

bias di campionamento

#fairness

Consulta la sezione relativa al bias di selezione.

campionamento con sostituzione

#df

Un metodo per scegliere elementi da un insieme di elementi candidati in cui lo stesso elemento può essere scelto più volte. L'espressione "con sostituzione" significa che dopo ogni selezione, l'elemento selezionato viene restituito al gruppo di elementi candidati. Il metodo inverso, il campionamento senza sostituzione, significa che un elemento candidato può essere scelto una sola volta.

Ad esempio, considera il seguente set di frutta:

fruit = {kiwi, apple, pear, fig, cherry, lime, mango}

Supponiamo che il sistema scelga in modo casuale fig come primo elemento. Se utilizzi il campionamento con sostituzione, il sistema sceglie il secondo elemento dal seguente insieme:

fruit = {kiwi, apple, pear, fig, cherry, lime, mango}

Sì, è lo stesso set di prima, quindi il sistema potrebbe potenzialmente scegliere di nuovo fig.

Se utilizzi il campionamento senza sostituzione, un campione scelto non può essere scelto di nuovo. Ad esempio, se il sistema sceglie in modo casuale fig come primo campione, fig non può essere scelto di nuovo. Pertanto, il sistema sceglie il secondo campione dal seguente insieme (ridotto):

fruit = {kiwi, apple, pear, cherry, lime, mango}

SavedModel

#TensorFlow

Il formato consigliato per salvare e recuperare i modelli TensorFlow. SavedModel è un formato di serializzazione recuperabile e indipendente dal linguaggio che consente a sistemi e strumenti di livello superiore di produrre, consumare e trasformare i modelli TensorFlow.

Per informazioni dettagliate, consulta la sezione Salvataggio e ripristino della Guida per programmatori di TensorFlow.

Economico

#TensorFlow

Un oggetto TensorFlow responsabile del salvataggio dei checkpoint del modello.

scalare

Un singolo numero o una singola stringa che può essere rappresentata come un tensore di rango 0. Ad esempio, le seguenti linee di codice creano ciascuna uno scalare in TensorFlow:

breed = tf.Variable("poodle", tf.string)
temperature = tf.Variable(27, tf.int16)
precision = tf.Variable(0.982375101275, tf.float64)

scalabilità

Qualsiasi tecnica o trasformazione matematica che sposta l'intervallo di un'etichetta e/o del valore di una funzionalità. Alcune forme di ridimensionamento sono molto utili per le trasformazioni come la normalizzazione.

Le forme di scalabilità più comuni utili nel machine learning includono:

  • la scala lineare, che in genere utilizza una combinazione di sottrazione e divisione per sostituire il valore originale con un numero compreso tra -1 e +1 o tra 0 e 1.
  • la scala logaritmica, che sostituisce il valore originale con il suo logaritmo.
  • Normalizzazione dello z-score, che sostituisce il valore originale con un valore in virgola mobile che rappresenta il numero di deviazioni standard dalla media della funzionalità.

scikit-learn

Una popolare piattaforma di machine learning open source. Consulta scikit-learn.org.

calcolo punteggio

#recsystems

La parte di un sistema di consigli che fornisce un valore o un ranking per ogni elemento prodotto dalla fase di generazione di candidati.

bias di selezione

#fairness

Errori nelle conclusioni tratte dai dati campionati a causa di un processo di selezione che genera differenze sistematiche tra i campioni osservati nei dati e quelli non osservati. Esistono le seguenti forme di bias di selezione:

  • Bias di copertura: la popolazione rappresentata nel set di dati non corrisponde alla popolazione per la quale il modello di machine learning fa previsioni.
  • Bias di campionamento: i dati non vengono raccolti in modo casuale dal gruppo di destinazione.
  • Bias di mancata risposta (chiamato anche bias di partecipazione): gli utenti di alcuni gruppi disattivano i sondaggi a tassi diversi rispetto agli utenti di altri gruppi.

Ad esempio, supponiamo che tu stia creando un modello di machine learning che preveda il gradimento di un film da parte delle persone. Per raccogliere i dati di addestramento, distribuisci un sondaggio a tutti coloro che siedono nella prima fila di un cinema dove viene proiettato il film. A prima vista, questo potrebbe sembrare un modo ragionevole per raccogliere un set di dati. Tuttavia, questa forma di raccolta dei dati potrebbe introdurre le seguenti forme di bias di selezione:

  • Bias di copertura: se esegui il campionamento da una popolazione che ha scelto di vedere il film, le previsioni del tuo modello potrebbero non essere generalizzate alle persone che non hanno già espresso quel livello di interesse per il film.
  • Bias di campionamento: anziché eseguire un campionamento casuale della popolazione prevista (tutte le persone che guardano il film), hai campionato solo le persone della prima fila. È possibile che le persone sedute nella prima fila fossero più interessate al film rispetto a quelle sedute nelle altre file.
  • Bias di mancata risposta: in generale, le persone con opinioni forti tendono a rispondere ai sondaggi facoltativi più spesso delle persone con opinioni moderate. Poiché il sondaggio sui film è facoltativo, le risposte hanno maggiori probabilità di formare una distribuzione bimodale rispetto a una distribuzione normale (a forma di campana).

auto-attenzione (chiamato anche livello di auto-attenzione)

#language

Un livello di rete neurale che trasforma una sequenza di embedding (ad esempio, embedding dei token) in un'altra sequenza di embedding. Ogni embedding nella sequenza di output viene costruito integrando le informazioni degli elementi della sequenza di input tramite un meccanismo di attenzione.

La parte self di self-attention si riferisce alla sequenza che si concentra su se stessa anziché su un altro contesto. L'auto-attenzione è uno dei principali componenti di base dei Transformer e utilizza la terminologia di ricerca nel dizionario, come "query", "chiave" e "valore".

Un livello di auto-attenzione inizia con una sequenza di rappresentazioni di input, una per ogni parola. La rappresentazione di input di una parola può essere un semplice embedding. Per ogni parola in una sequenza di input, la rete assegna un punteggio alla pertinenza della parola per ogni elemento dell'intera sequenza di parole. I punteggi di pertinenza determinano quanto la rappresentazione finale della parola incorpora le rappresentazioni di altre parole.

Ad esempio, considera la seguente frase:

L'animale non ha attraversato la strada perché era troppo stanco.

La seguente illustrazione (tratta da Transformer: A Novel Neural Network Architecture for Language Understanding) mostra il pattern di attenzione di un livello di auto-attenzione per il pronome it, con l'oscurità di ogni riga che indica quanto ciascuna parola contribuisce alla representation:

La seguente frase viene visualizzata due volte: L&#39;animale non ha attraversato la
          strada perché era troppo stanco. Le linee collegano il pronome it in
          una frase a cinque token (The, animal, street, it e
          il periodo) nell&#39;altra frase.  La linea di demarcazione tra il pronome it
          e la parola animale è più forte.

Il livello di auto-attenzione mette in evidenza le parole pertinenti a "esso". In questo caso, il livello di attenzione ha imparato a evidenziare le parole a cui esso potrebbe fare riferimento, assegnando il maggiore peso a animale.

Per una sequenza di n token, l'autoattenzione trasforma una sequenza di embedding n volte, una volta per ogni posizione della sequenza.

Consulta anche le sezioni attenzione e auto-attenzione multi-head.

apprendimento auto-supervisionato

Una famiglia di tecniche per convertire un problema di machine learning non supervisionato in un problema di machine learning supervisionato creando etichette sostitutive da esempi non etichettati.

Alcuni modelli basati su Transformer, come BERT, utilizzano il metodo di apprendimento autosupervisionato.

L'addestramento autonomo è un approccio di apprendimento semi-supervisionato.

autoapprendimento

Una variante dell'apprendimento autosupervisionato particolarmente utile quando si verificano tutte le seguenti condizioni:

L'autoaddestramento funziona iterando sui seguenti due passaggi finché il modello non smette di migliorare:

  1. Utilizza il machine learning supervisionato per addestrare un modello sugli esempi etichettati.
  2. Utilizza il modello creato nel passaggio 1 per generare previsioni (etichette) sugli esempi non etichettati, spostando quelli in cui è presente un'elevata affidabilità negli esempi etichettati con l'etichetta prevista.

Tieni presente che ogni iterazione del passaggio 2 aggiunge altri esempi etichettati per l'addestramento del passaggio 1.

apprendimento semi-supervisionato

Addestramento di un modello su dati in cui alcuni esempi di addestramento sono etichettati, ma altri no. Una tecnica per l'apprendimento semi-supervisionato consiste nell'eseguire l'inferenza delle etichette per gli esempi non etichettati e poi nell'addestramento sulle etichette dedotte per creare un nuovo modello. L'apprendimento semi-supervisionato può essere utile se le etichette sono costose da ottenere, ma gli esempi non etichettati sono numerosi.

L'addestramento autonomo è una tecnica di apprendimento semi-supervisionato.

attributo sensibile

#fairness
Un attributo umano a cui può essere data una considerazione speciale per motivi legali, etici, sociali o personali.

analisi del sentiment

#language

Utilizzo di algoritmi statistici o di machine learning per determinare l'atteggiamento complessivo (positivo o negativo) di un gruppo nei confronti di un servizio, un prodotto, un'organizzazione o un argomento. Ad esempio, utilizzando la comprensione del linguaggio naturale, un algoritmo potrebbe eseguire l'analisi del sentiment sul feedback testuale di un corso universitario per determinare il grado in cui il corso è piaciuto o meno agli studenti in generale.

modello di sequenza

#seq

Un modello i cui input hanno una dipendenza sequenziale. Ad esempio, prevedere il prossimo video guardato da una sequenza di video guardati in precedenza.

Attività di sequenza a sequenza

#language

Un'attività che converte una sequenza di input di token in una sequenza di output di token. Ad esempio, due tipi comuni di compiti di sequenza a sequenza sono:

  • Traduttori:
    • Sequenza di input di esempio: "Ti amo".
    • Sequenza di output di esempio: "Je t'aime."
  • Risposta alle domande:
    • Sequenza di input di esempio: "Mi serve la mia auto a New York?"
    • Sequenza di output di esempio: "No. Tieni l'auto a casa."

del modello.

La procedura per rendere disponibile un modello addestrato per fornire previsioni tramite inferenza online o inferenza offline.

shape (Tensor)

Il numero di elementi in ogni dimensione di un tensore. La forma è rappresentata come un elenco di numeri interi. Ad esempio, il seguente tensore bidimensionale ha una forma [3,4]:

[[5, 7, 6, 4],
 [2, 9, 4, 8],
 [3, 6, 5, 1]]

TensorFlow utilizza il formato di riga principale (in stile C) per rappresentare l'ordine delle dimensioni, motivo per cui la forma in TensorFlow è [3,4] anziché [4,3]. In altre parole, in un tensore TensorFlow bidimensionale, la forma è [numero di righe, numero di colonne].

Una forma statica è una forma del tensore nota in fase di compilazione.

Una forma dinamica è sconosciuta in fase di compilazione e dipende quindi dai dati di runtime. Questo tensore potrebbe essere rappresentato con una dimensione segnaposto in TensorFlow, come in [3, ?].

frammento

#TensorFlow
#GoogleCloud

Una suddivisione logica del set di addestramento o del modello. In genere, alcuni processi creano frammenti dividendo gli esempi o i parametri in (di solito) blocchi di dimensioni uguali. Ogni shard viene quindi assegnato a una macchina diversa.

Lo sharding di un modello è chiamato parallismo dei modelli; lo sharding dei dati è chiamato parallismo dei dati.

ritiro

#df

Un iperparametro in boosting per gradiente che controlla l'overfitting. Il calo nell'aumento del gradiente è analogo al tasso di apprendimento nella discesa del gradiente. Il ritiro è un valore decimale compreso tra 0,0 e 1,0. Un valore di riduzione inferiore riduce l'overfitting più di un valore di riduzione maggiore.

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:

misura di somiglianza

#clustering

Negli algoritmi di clustering, la metrica utilizzata per determinare quanto sono simili due esempi.

singolo programma / più dati (SPMD)

Una tecnica di parallelismo in cui lo stesso calcolo viene eseguito su diversi dati di input in parallelo su dispositivi diversi. Lo scopo di SPMD è ottenere risultati più rapidamente. È lo stile di programmazione parallela più comune.

invarianza di dimensione

#image

In un problema di classificazione delle immagini, la capacità di un algoritmo di classificare correttamente le immagini anche quando le dimensioni cambiano. Ad esempio, l'algoritmo può comunque identificare un gatto indipendentemente dal fatto che consumi 2 milioni di pixel o 200.000 pixel. Tieni presente che anche i migliori algoritmi di classificazione delle immagini presentano ancora limiti pratici all'invarianza delle dimensioni. Ad esempio, è improbabile che un algoritmo (o una persona) classifichi correttamente un'immagine di un gatto che occupa solo 20 pixel.

Vedi anche invarianza di traslazione e invarianza di rotazione.

schizzo

#clustering

Nel machine learning non supervisionato, una categoria di algoritmi che eseguono un'analisi preliminare della somiglianza sugli esempi. Gli algoritmi di sketching utilizzano una funzione hash sensibile alla località per identificare i punti che hanno maggiori probabilità di essere simili e poi raggrupparli in bucket.

Lo schizzo riduce il calcolo necessario per i calcoli di somiglianza su set di dati di grandi dimensioni. Invece di calcolare la somiglianza per ogni singola coppia di esempi nel set di dati, calcoliamo la somiglianza solo per ogni coppia di punti all'interno di ogni bucket.

skip-gram

#language

Un n-gramma che può omettere (o "saltare") parole dal contesto originale, il che significa che le N parole potrebbero non essere state originariamente adiacenti. Più precisamente, un "n-gram con salto k" è un n-gram per il quale possono essere state saltate fino a k parole.

Ad esempio, "la volpe marrone veloce" ha i seguenti possibili bigrammi:

  • "the quick"
  • "quick brown"
  • "volpe marrone"

Un "2-gram con 1 salto" è una coppia di parole separate da massimo una parola. Pertanto, "la volpe marrone veloce" ha i seguenti bigrammi con 1 salto:

  • "il marrone"
  • "volpe veloce"

Inoltre, tutti i bigrammi sono anche bigrammi con un salto, poiché è possibile saltare meno di una parola.

Gli skip-gram sono utili per comprendere meglio il contesto circostante di una parola. Nell'esempio, "volpe" è stato associato direttamente a "rapido" nel set di 2-gram con 1 salto, ma non nel set di 2-gram.

Gli skip-gram aiutano ad addestrare i modelli di embedding delle parole.

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.

Ottimizzazione dei prompt flessibili

#language
#generativeAI

Una tecnica per ottimizzare un modello linguistico di grandi dimensioni per una determinata attività, senza bisogno di una ottimizzazione fine che richiede molte risorse. Anziché riaddestrare tutti i pesi del modello, la regolazione del prompt graduale aggiusta automaticamente un prompt per raggiungere lo stesso obiettivo.

Dato un prompt di testo, la regolazione del prompt graduale tipicamente aggiunge al prompt ulteriori embedding di token e utilizza la propagazione inversa per ottimizzare l'input.

Un prompt "duro" contiene token effettivi anziché incorporamenti di token.

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à.

sparsità

Il numero di elementi impostati su zero (o null) in un vettore o una matrice diviso per il numero totale di voci nel vettore o nella matrice. Ad esempio, considera una matrice di 100 elementi in cui 98 celle contengono zero. Il calcolo della sparsità è il seguente:

$$ {\text{sparsity}} = \frac{\text{98}} {\text{100}} = {\text{0.98}} $$

La sparsità delle caratteristiche si riferisce alla sparsità di un vettore di caratteristiche; la sparsità del modello si riferisce alla sparsità dei pesi del modello.

raggruppamento spaziale

#image

Consulta la sezione pooling.

Spalato

#df

In un albero decisionale, un altro nome per una condizione.

Splitter

#df

Durante l'addestramento di un albero decisionale, la routine (e l'algoritmo) responsabile del trovare la migliore condizione in ogni nodo.

SPMD

Abbreviazione di singolo programma / più dati.

perdita della cerniera al quadrato

Il quadrato della perdita di cerniera. La perdita con cerniera al quadrato penalizza gli outlier in modo più severo rispetto alla perdita con cerniera standard.

perdita al quadrato

#fundamentals

Sinonimo di perdita L2.

addestramento graduale

#language

Una tattica per addestrare un modello in una sequenza di fasi distinte. L'obiettivo può essere accelerare il processo di addestramento o ottenere una qualità del modello migliore.

Di seguito è riportata un'illustrazione dell'approccio di impilamento progressivo:

  • La fase 1 contiene 3 livelli nascosti, la fase 2 contiene 6 livelli nascosti e la fase 3 contiene 12 livelli nascosti.
  • La fase 2 inizia l'addestramento con i pesi appresi nei 3 livelli nascosti della fase 1. La fase 3 inizia l'addestramento con i pesi appresi nei 6 livelli nascosti della fase 2.

Tre fasi, contrassegnate come Fase 1, Fase 2 e Fase 3.
          Ogni fase contiene un numero diverso di livelli: la fase 1 contiene
          3 livelli, la fase 2 contiene 6 livelli e la fase 3 contiene 12 livelli.
          I tre livelli della fase 1 diventano i primi tre della fase 2.
          Analogamente, i 6 livelli della fase 2 diventano i primi 6 livelli della fase 3.

Vedi anche pipelining.

stato

#rl

Nell'apprendimento tramite rinforzo, i valori dei parametri che descrivono la configurazione corrente dell'ambiente, che l'agente utilizza per scegliere un'azione.

funzione valore stato-azione

#rl

Sinonimo di funzione Q.

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à.

fase

Un passaggio in avanti e uno all'indietro di un batch.

Per saperne di più sul passaggio in avanti e sul passaggio all'indietro, consulta la sezione sulla retropropagazione.

passo

Sinonimo di tasso di apprendimento.

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.

stride

#image

In un'operazione di convoluzione o pooling, il delta in ogni dimensione della successiva serie di slice di input. Ad esempio, la seguente animazione dimostra uno stride (1,1) durante un'operazione di convoluzione. Pertanto, la frazione di input successiva inizia una posizione a destra della frazione di input precedente. Quando l'operazione raggiunge il bordo destro, il segmento successivo è completamente a sinistra, ma una posizione più in basso.

Una matrice di input 5x5 e un filtro convoluzionale 3x3. Poiché
     lo stride è (1,1), un filtro convoluzionale verrà applicato 9 volte. Il primo
     sezionamento con convoluzione valuta la sottomatrice 3x3 in alto a sinistra della matrice
     di input. Il secondo slice valuta la matrice secondaria 3x3 mediana superiore. Il terzo slice convoluzionale valuta la matrice di sottoinsieme 3x3 in alto a destra.  Il quarto slice valuta la sottomatrice 3x3 centrale sinistra.
     Il quinto slice valuta la sottomatrice centrale 3x3. Il sesto slice
     valuta la sottomatrice 3x3 in alto a destra. Il settimo slice valuta
     la sottomatrice 3x3 in basso a sinistra.  L&#39;ottavo slice valuta la
     sottomatrice 3x3 in basso al centro. Il nono slice valuta la matrice di sotto 3x3 in basso a destra.

L'esempio precedente mostra un passo bidimensionale. Se la matrice di input è tridimensionale, anche lo stride sarà tridimensionale.

Riduzione al minimo del rischio strutturale (SRM)

Un algoritmo che bilancia due obiettivi:

  • La necessità di creare il modello più predittivo (ad esempio, con la perdita più bassa).
  • La necessità di mantenere il modello il più semplice possibile (ad esempio, una forte regolarizzazione).

Ad esempio, una funzione che minimizza la perdita + la regolarizzazione sull'insieme di addestramento è un algoritmo di minimizzazione del rischio strutturale.

È il contrario della minimizzazione empirica del rischio.

sottocampionamento

#image

Consulta la sezione pooling.

token di sottoparola

#language

Nei modelli linguistici, un token è una sottostringa di una parola, che può essere l'intera parola.

Ad esempio, una parola come "elencare" potrebbe essere suddivisa nei pezzi "elemento" (una parola base) e "izzare" (un suffisso), ciascuno dei quali è rappresentato dal proprio token. La suddivisione delle parole non comuni in questi pezzi, chiamati sottoparole, consente ai modelli linguistici di operare sulle parti costitutive più comuni della parola, come prefissi e suffissi.

Al contrario, parole comuni come "andare" potrebbero non essere suddivise e rappresentare un singolo token.

riepilogo

#TensorFlow

In TensorFlow, un valore o un insieme di valori calcolati in un determinato passaggio, in genere utilizzato per monitorare le metriche del modello durante l'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

T5

#language

Un modello di apprendimento tramite trasferimento da testo a testo introdotto dall' AI di Google nel 2020. T5 è un modello encoder-decoder, basato sull'architettura Transformer, addestrato su un set di dati estremamente grande. È efficace per una serie di attività di elaborazione del linguaggio naturale, come la generazione di testo, la traduzione di lingue e la risposta a domande in modo conversazionale.

Il nome T5 deriva dalle cinque T di "Text-to-Text Transfer Transformer".

T5X

#language

Un framework di machine learning open source progettato per creare e addestrare modelli di elaborazione del linguaggio naturale (NLP) su larga scala. T5 è implementato nel codice di base di T5X (che è basato su JAX e Flax).

Apprendimento Q tabulare

#rl

Nel machine learning con rinforzo, implementa il Q-learning utilizzando una tabella per memorizzare le funzioni Q per ogni combinazione di stato e azione.

target

Sinonimo di etichetta.

rete target

#rl

In Deep Q-learning, una rete neurale che è un'approssimazione stabile della rete neurale principale, dove la rete neurale principale implementa una funzione Q o una norma. Poi, puoi addestrare la rete principale sui valori Q previsti dalla rete di destinazione. In questo modo, eviti il loop di feedback che si verifica quando la rete principale viene addestrata sui valori Q previsti da essa stessa. Evitando questo feedback, la stabilità dell'allenamento aumenta.

attività

Un problema che può essere risolto utilizzando tecniche di machine learning, ad esempio:

temperatura

#language
#image
#generativeAI

Un iperparametro che controlla il grado di casualità dell'output di un modello. Temperature più elevate generano un output più casuale, mentre temperature più basse generano un output meno casuale.

La scelta della temperatura migliore dipende dall'applicazione specifica e dalle proprietà preferite dell'output del modello. Ad esempio, probabilmente aumenteresti la temperatura quando crei un'applicazione che genera output creativo. Al contrario, probabilmente abbasserai la temperatura quando crei un modello che classifica immagini o testo per migliorare la accuratezza e la coerenza del modello.

La temperatura viene spesso utilizzata con softmax.

dati temporali

Dati registrati in momenti diversi. Ad esempio, le vendite di cappotti invernali registrate per ogni giorno dell'anno sono dati temporali.

Tensore

#TensorFlow

La struttura di dati principale nei programmi TensorFlow. I tensori sono strutture di dati N-dimensionali (dove N può essere molto grande), in genere scalari, vettori o matrici. Gli elementi di un tensore possono contenere valori interi, con virgola mobile o stringa.

TensorBoard

#TensorFlow

La dashboard che mostra i riepiloghi salvati durante l'esecuzione di uno o più programmi TensorFlow.

TensorFlow

#TensorFlow

Una piattaforma di machine learning distribuita e su larga scala. Il termine si riferisce anche al livello API di base nello stack TensorFlow, che supporta i calcoli generali sui grafici di flusso di dati.

Anche se TensorFlow viene utilizzato principalmente per il machine learning, puoi utilizzarlo anche per attività non ML che richiedono calcoli numerici utilizzando i grafici di flusso di dati.

TensorFlow Playground

#TensorFlow

Un programma che mostra in che modo diversi iperparametri influiscono sull'addestramento del modello (principalmente rete neurale). Vai a http://playground.tensorflow.org per fare esperimenti con TensorFlow Playground.

TensorFlow Serving

#TensorFlow

Una piattaforma per il deployment dei modelli addestrati in produzione.

Tensor Processing Unit (TPU)

#TensorFlow
#GoogleCloud

Un circuito integrato specifico per applicazioni (ASIC) che ottimizza le prestazioni dei carichi di lavoro di machine learning. Questi ASIC vengono implementati come più chip TPU su un dispositivo TPU.

Rango del tensore

#TensorFlow

Vedi rank (Tensor).

Forma del tensore

#TensorFlow

Il numero di elementi contenuti in un Tensor in varie dimensioni. Ad esempio, un tensore [5, 10] ha una forma di 5 in una dimensione e 10 in un'altra.

Dimensioni del tensore

#TensorFlow

Il numero totale di scalari contenuti in un Tensor. Ad esempio, un [5, 10] tensore ha una dimensione di 50.

TensorStore

Una libreria per leggere e scrivere in modo efficiente array multidimensionali di grandi dimensioni.

condizione di interruzione

#rl

Nell'apprendimento per rinforzo, le condizioni che determinano quando termina un'espiazione, ad esempio quando l'agente raggiunge un determinato stato o supera un numero di transizioni di stato di soglia. Ad esempio, nel gioco del tris (noto anche come morra), una partita termina quando un giocatore contrassegna tre caselle consecutive o quando tutte le caselle sono contrassegnate.

test

#df

In un albero decisionale, un altro nome per una condizione.

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.

set di test

Un sottoinsieme del set di dati riservato al test di un modello addestrato.

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

Ogni esempio in un set di dati deve appartenere a un solo sottoinsieme precedente. Ad esempio, un singolo esempio non deve appartenere sia al set di addestramento sia al set di test.

Il set di addestramento e il set di convalida sono entrambi strettamente correlati all'addestramento di un modello. Poiché il set di test è associato all'addestramento solo indirettamente, la perdita di test è una metrica meno distorta e di qualità superiore rispetto a la perdita di addestramento o la perdita di convalida.

intervallo di testo

#language

L'intervallo dell'indice dell'array associato a una sottosezione specifica di una stringa di testo. Ad esempio, la parola good nella stringa Python s="Be good now" occupa l'intervallo di testo da 3 a 6.

tf.Example

#TensorFlow

Un buffer di protocollo standard per descrivere i dati di input per l'addestramento o l'inferenza del modello di machine learning.

tf.keras

#TensorFlow

Un'implementazione di Keras integrata in TensorFlow.

soglia (per gli alberi decisionali)

#df

In una condizione allineata all'asse, il valore rispetto al quale viene confrontata una funzionalità. Ad esempio, 75 è il valore di soglia nella seguente condizione:

grade >= 75

analisi delle serie temporali

#clustering

Un sottocampo del machine learning e della statistica che analizza dati temporali. Molti tipi di problemi di machine learning richiedono l'analisi delle serie temporali, tra cui classificazione, clustering, previsione e rilevamento di anomalie. Ad esempio, potresti utilizzare l'analisi delle serie temporali per prevedere le vendite future di cappotti invernali su base mensile in base ai dati storici sulle vendite.

timestep

#seq

Una cella "srotolata" all'interno di una rete neurale ricorrente. Ad esempio, la figura seguente mostra tre intervalli di tempo (etichettati con i sottoindici t-1, t e t+1):

Tre intervalli di tempo in una rete neurale ricorrente. L&#39;output del
          primo timestep diventa l&#39;input del secondo timestep. L&#39;output
          del secondo timestep diventa l&#39;input del terzo timestep.

token

#language

In un modello linguistico, l'unità atomica su cui il modello viene addestrato e su cui vengono effettuate le previsioni. Un token è in genere uno dei seguenti:

  • una parola: ad esempio, la frase "cani come gatti" è composta da tre token di parola: "cani", "come" e "gatti".
  • un carattere, ad esempio la frase "bicicletta pesce" è composta da nove token di carattere. Tieni presente che lo spazio vuoto viene conteggiato come uno dei token.
  • sottoparole, in cui una singola parola può essere un singolo token o più token. Una parola composta è composta da una parola base, un prefisso o un suffisso. Ad esempio, un modello linguistico che utilizza le sottoparole come token potrebbe considerare la parola "cani" come due token (la parola principale "cane" e il suffisso plurale "i"). Lo stesso modello linguistico potrebbe considerare la singola parola "più alto" come due sottoparole (la parola principale "alto" e il suffisso "er").

In domini diversi dai modelli linguistici, i token possono rappresentare altri tipi di unità atomiche. Ad esempio, nella visione artificiale, un token potrebbe essere un sottoinsieme di un'immagine.

accuratezza top-k

#language

La percentuale di volte in cui un'etichetta target viene visualizzata nelle prime k poz. degli elenchi generati. Gli elenchi possono essere consigli personalizzati o un elenco di articoli ordinati in base alla softmax.

La precisione Top-k è nota anche come precisione a k.

torre

Un componente di una rete neurale profonda che è essa stessa una rete neurale profonda. In alcuni casi, ogni torre legge da un'origine dati indipendente e queste torri rimangono indipendenti finché il loro output non viene combinato in un livello finale. In altri casi, ad esempio nella torre di encoder e decoder di molti trasformatori, le torri sono collegate tra loro.

tossicità

#language

Il grado in cui i contenuti sono offensivi, minacciosi o illeciti. Molti modelli di machine learning possono identificare e misurare la tossicità. La maggior parte di questi modelli identifica la tossicità in base a più parametri, ad esempio il livello di linguaggio offensivo e il livello di linguaggio minaccioso.

TPU

#TensorFlow
#GoogleCloud

Abbreviazione di Tensor Processing Unit.

Chip TPU

#TensorFlow
#GoogleCloud

Un acceleratore di algebra lineare programmabile con memoria on-chip ad alta larghezza di banda ottimizzata per i carichi di lavoro di machine learning. Più chip TPU vengono implementati su un dispositivo TPU.

Dispositivo TPU

#TensorFlow
#GoogleCloud

Una scheda per circuiti stampati (PCB) con più chip TPU, interfacce di rete ad alta larghezza di banda e hardware di raffreddamento del sistema.

TPU master

#TensorFlow
#GoogleCloud

Il processo di coordinamento centrale in esecuzione su una macchina host che invia e riceve dati, risultati, programmi, prestazioni e informazioni sullo stato del sistema ai worker TPU. Il master TPU gestisce anche la configurazione e l'arresto dei dispositivi TPU.

Nodo TPU

#TensorFlow
#GoogleCloud

Una risorsa TPU su Google Cloud con un tipo di TPU specifico. Il nodo TPU si connette alla tua rete VPC da una rete VPC peer. I nodi TPU sono una risorsa definita nell'API Cloud TPU.

pod di TPU

#TensorFlow
#GoogleCloud

Una configurazione specifica di dispositivi TPU in un data center di Google. Tutti i dispositivi di un pod TPU sono collegati tra loro tramite una rete ad alta velocità dedicata. Un pod TPU è la configurazione più grande di dispositivi TPU disponibile per una versione TPU specifica.

Risorsa TPU

#TensorFlow
#GoogleCloud

Un'entità TPU su Google Cloud che crei, gestisci o utilizzi. Ad esempio, i nodi TPU e i tipi di TPU sono risorse TPU.

Sezione TPU

#TensorFlow
#GoogleCloud

Una sezione TPU è una parte frazionaria dei dispositivi TPU in un pod TPU. Tutti i dispositivi di una sezione TPU sono collegati tra loro tramite una rete ad alta velocità dedicata.

Tipo di TPU

#TensorFlow
#GoogleCloud

Una configurazione di uno o più dispositivi TPU con una versione hardware TPU specifica. Seleziona un tipo di TPU quando crei un nodo TPU su Google Cloud. Ad esempio, un tipo di TPU v2-8 è un singolo dispositivo TPU v2 con 8 core. Un tipo di TPU v3-2048 ha 256 dispositivi TPU v3 in rete e un totale di 2048 core. I tipi di TPU sono una risorsa definita nell'API Cloud TPU.

Nodo di lavoro TPU

#TensorFlow
#GoogleCloud

Un processo che viene eseguito su una macchina host ed esegue programmi di machine learning su dispositivi TPU.

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.

traiettoria

#rl

Nell'apprendimento per rinforzo, una sequenza di tuple che rappresentano una sequenza di transizioni di stato dell'agente, dove ogni tupla corrisponde allo stato, all'azione, ricompensa e allo stato successivo per una determinata transizione di stato.

trasferimento dell'apprendimento

Trasferimento di informazioni da un'attività di machine learning all'altra. Ad esempio, nell'apprendimento multi-task, un singolo modello risolve più attività, come un modello di deep learning con nodi di output diversi per attività diverse. Il trasferimento di conoscenza può comportare il trasferimento della conoscenza dalla soluzione di un'attività più semplice a una più complessa oppure il trasferimento della conoscenza da un'attività in cui sono presenti più dati a un'altra in cui sono presenti meno dati.

La maggior parte dei sistemi di machine learning risolve una singola attività. Il trasferimento dell'apprendimento è un primo passo verso l'intelligenza artificiale in cui un singolo programma può risolvere più attività.

Transformer

#language

Un'architettura di reti neurali sviluppata da Google che si basa su meccanismi di auto-attenzione per trasformare una sequenza di embedding di input in una sequenza di embedding di output senza fare affidamento su convoluzioni o su reti neurali ricorrenti. Un Transformer può essere visualizzato come uno stack di livelli di auto-attenzione.

Un trasformatore può includere uno dei seguenti elementi:

Un encoder trasforma una sequenza di embedding in una nuova sequenza della stessa lunghezza. Un codificatore include N livelli identici, ognuno dei quali contiene due livelli secondari. Questi due sottolivelli vengono applicati a ogni posizione della sequenza di embedding di input, trasformando ogni elemento della sequenza in un nuovo embedding. Il primo sottolivello dell'encoder aggrega le informazioni provenienti da tutta la sequenza di input. Il secondo sottolivello del codificatore trasforma le informazioni aggregate in un embedding di output.

Un decodificatore trasforma una sequenza di rappresentazioni distribuite di input in una sequenza di rappresentazioni distribuite di output, eventualmente con una lunghezza diversa. Un decodificatore include anche N livelli identici con tre sottolivelli, due dei quali sono simili ai sottolivelli dell'encoder. Il terzo sottolivello del decodificatore prende l'output dell'elaboratore e applica il meccanismo di auto-attenzione per raccogliere informazioni.

Il post del blog Transformer: A Novel Neural Network Architecture for Language Understanding offre una buona introduzione ai Transformer.

invarianza traslazionale

#image

In un problema di classificazione delle immagini, la capacità di un algoritmo di classificare correttamente le immagini anche quando cambia la posizione degli oggetti al loro interno. Ad esempio, l'algoritmo può comunque identificare un cane, che si trovi al centro o all'estremità sinistra dell'inquadratura.

Consulta anche invarianza di scala e invarianza di rotazione.

trigramma

#seq
#language

Un n-gramma in cui N=3.

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

Mancanza di consapevolezza (di un attributo sensibile)

#fairness

Una situazione in cui sono presenti attributi sensibili, ma non sono inclusi nei dati di addestramento. Poiché gli attributi sensibili sono spesso correlati ad altri attributi dei dati, un modello addestrato senza essere a conoscenza di un attributo sensibile potrebbe comunque avere un impatto diseguale rispetto a quell'attributo o violare altri vincoli di equità.

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:

sottocampionamento

Rimozione di esempi dal gruppo di maggioranza in un set di dati sbilanciato per classe al fine di creare un set di addestramento più equilibrato.

Ad esempio, considera un set di dati in cui il rapporto tra la classe di maggioranza e la classe di minoranza è 20:1. Per superare questo squilibrio tra le classi, potresti creare un set di addestramento costituito da tutti gli esempi della classe di minoranza, ma solo da un decimo degli esempi della classe di maggioranza, il che costituirebbe un rapporto tra le classi del set di addestramento di 2:1. Grazie al sottocampionamento, questo insieme di dati di addestramento più bilanciato potrebbe produrre un modello migliore. In alternativa, questo insieme di dati di addestramento più equilibrato potrebbe contenere esempi insufficienti per addestrare un modello efficace.

È il contrario dell'oversampling.

unidirezionale

#language

Un sistema che valuta solo il testo che precede una sezione di testo target. Al contrario, un sistema bidirezionale valuta sia il testo che precede sia quello che segue una sezione di testo target. Per ulteriori dettagli, consulta bidirezionale.

modello linguistico unidirezionale

#language

Un modello linguistico che basa le sue probabilità solo sui token che compaiono prima, non dopo, dei token target. È diverso dal modello linguistico bidirezionale.

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.

modellazione dell'impatto

Una tecnica di definizione del modello, comunemente utilizzata nel marketing, che modella l'"effetto causale" (noto anche come "impatto incrementale") di un "trattamento" su un "individuo". Di seguito sono riportati due esempi:

  • I medici potrebbero utilizzare la modellazione dell'incremento per prevedere la diminuzione della mortalità (effetto causale) di una procedura medica (trattamento) in base all'età e all'anamnesi medica di un paziente (individuo).
  • I professionisti del marketing potrebbero utilizzare la creazione di modelli di incremento per prevedere l'aumento della probabilità di un acquisto (effetto causale) dovuto a un annuncio (trattamento) su una persona (individuo).

La creazione di modelli di incremento è diversa dalla classificazione o dalla regressione in quanto alcune etichette (ad esempio la metà delle etichette nei trattamenti binari) non sono mai presenti nella creazione di modelli di incremento. Ad esempio, un paziente può ricevere o meno una cura. Pertanto, possiamo osservare se il paziente guarisce o meno solo in una di queste due situazioni (ma mai in entrambe). Il vantaggio principale di un modello di incremento è che può generare previsioni per la situazione non osservata (il controfattuale) e utilizzarla per calcolare l'effetto causale.

aumento del peso

Applicare un peso alla classe downsampled uguale al fattore di riduzione.

matrice di utenti

#recsystems

Nei sistemi di suggerimenti, un vettore di embedding generato dalla fattorizzazzione matriciale che contiene indicatori latenti sulle preferenze degli utenti. Ogni riga della matrice utente contiene informazioni sull'intensità relativa di vari indicatori latenti per un singolo utente. Ad esempio, prendi in considerazione un sistema di consigli sui film. In questo sistema, gli indicatori latenti nella matrice utente potrebbero rappresentare l'interesse di ciascun utente per generi specifici oppure potrebbero essere indicatori più difficili da interpretare che coinvolgono interazioni complesse in più fattori.

La matrice utente ha una colonna per ogni caratteristica latente e una riga per ogni utente. In altre parole, la matrice utente ha lo stesso numero di righe della matrice target che viene fattorizzata. Ad esempio, dato un sistema di consigli sui film per 1.000.000 di utenti, la matrice degli utenti avrà 1.000.000 di righe.

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.

imputazione del valore

La procedura di sostituzione di un valore mancante con un sostituto accettabile. Quando manca un valore, puoi ignorare l'intero esempio o utilizzare l'imputation del valore per recuperarlo.

Ad esempio, prendiamo in considerazione un set di dati contenente una funzionalità temperature che dovrebbe essere registrata ogni ora. Tuttavia, la lettura della temperatura non era disponibile per una determinata ora. Ecco una sezione del set di dati:

Timestamp Temperatura
1680561000 10
1680564600 12
1680568200 mancante
1680571800 20
1680575400 21
1680579000 21

Un sistema potrebbe eliminare l'esempio mancante o imputare la temperatura mancante come 12, 16, 18 o 20, a seconda dell'algoritmo di imputazione.

problema di scomparsa del gradiente

#seq

La tendenza dei gradienti dei primi livelli nascosti di alcune reti neurali profonde a diventare sorprendentemente piatti (bassi). Gradienti sempre più bassi comportano modifiche sempre più piccole ai pesi dei nodi di una rete neurale profonda, con un apprendimento ridotto o nullo. I modelli che presentano il problema di scomparsa del gradiente diventano difficili o impossibili da addestrare. Le celle memoria a lungo termine risolvono questo problema.

Confrontalo con il problema del gradiente esplosivo.

importanza delle variabili

#df

Un insieme di punteggi che indica l'importanza relativa di ogni caratteristica per il modello.

Ad esempio, considera un albero decisionale che stima i prezzi delle case. Supponiamo che questo albero decisionale utilizzi tre caratteristiche: taglia, età e stile. Se un insieme di importanza delle variabili per le tre caratteristiche viene calcolato come {size=5.8, age=2.5, style=4.7}, la dimensione è più importante per l'albero decisionale rispetto all'età o allo stile.

Esistono diverse metriche di importanza delle variabili, che possono fornire informazioni agli esperti di ML su diversi aspetti dei modelli.

autoencoder variazionale (VAE)

#language

Un tipo di autoencoder che sfrutta la discrepanza tra input e output per generare versioni modificate degli input. Gli autoencoder variazionali sono utili per l'IA generativa.

I VAE si basano sull'inferenza bayesiana, una tecnica per stimare i parametri di un modello di probabilità.

vettoriale

Termine molto sovraccaricato il cui significato varia in base ai diversi campi matematici e scientifici. Nel machine learning, un vettore ha due proprietà:

  • Tipo di dati: i vettori nel machine learning di solito contengono numeri in virgola mobile.
  • Numero di elementi: si tratta della lunghezza o della dimensione del vettore.

Ad esempio, prendi in considerazione un vettore di caratteristiche contenente otto numeri in virgola mobile. Questo vettore di caratteristiche ha una lunghezza o una dimensione pari a otto. Tieni presente che i vettori di machine learning hanno spesso un numero enorme di dimensioni.

Puoi rappresentare molti tipi diversi di informazioni come vettore. Ad esempio:

  • Qualsiasi posizione sulla superficie terrestre può essere rappresentata come un vettore bidimensionale, in cui una dimensione è la latitudine e l'altra la longitudine.
  • I prezzi correnti di ciascuna delle 500 azioni possono essere rappresentati come un vettore di 500 dimensioni.
  • Una distribuzione di probabilità su un numero finito di classi può essere rappresentata come vettore. Ad esempio, un sistema di classificazione multiclasse che predice uno dei tre colori di output (rosso, verde o giallo) potrebbe produrre il vettore (0.3, 0.2, 0.5) per indicare P[red]=0.3, P[green]=0.2, P[yellow]=0.5.

I vettori possono essere concatenati; pertanto, una serie di diversi contenuti multimediali può essere rappresentata come un unico vettore. Alcuni modelli operano direttamente sulla concatenazione di molte codici one-hot.

Processori specializzati come le TPU sono ottimizzati per eseguire operazioni matematiche sui vettori.

Un vettore è un tensore di rango 1.

M

Perdita di Wasserstein

Una delle funzioni di perdita comunemente utilizzate nelle reti di generazione di conflitti, baseada sulla distanza di Earth Mover tra la distribuzione dei dati generati e i dati reali.

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.

Minimi quadrati alternati ponderati (WALS)

#recsystems

Un algoritmo per ridurre al minimo la funzione obiettivo durante la fattorizzazzione matriciale nei sistemi di suggerimenti, che consente di ridurre il peso degli esempi mancanti. WALS minimizza l'errore quadratico ponderato tra la matrice originale e la ricostruzione alternando la correzione della fattorizzazione delle righe e della fattorizzazione delle colonne. Ognuna di queste ottimizzazioni può essere risolta mediante la regressione lineare otimizzazione convessa. Per maggiori dettagli, consulta il corso sui sistemi di raccomandazione.

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.

modello wide

Un modello lineare che in genere ha molte caratteristiche di input sparse. Lo chiamiamo "ampio" perché questo modello è un tipo speciale di rete neurale con un gran numero di input che si connettono direttamente al nodo di output. I modelli ampi spesso sono più facili da eseguire il debug e da ispezionare rispetto ai modelli di apprendimento profondo. Sebbene i modelli wide non possano esprimere le non linearità tramite gli strati nascosti, possono utilizzare trasformazioni come l'incrocio delle caratteristiche e la suddivisione in bucket per modellare le non linearità in modi diversi.

È diverso dal modello di deep learning.

larghezza

Il numero di neuroni in un determinato livello di una rete neurale.

saggezza della folla

#df

L'idea che la media delle opinioni o delle stime di un grande gruppo di persone ("la folla") spesso produca risultati sorprendentemente buoni. Ad esempio, prendiamo in considerazione un gioco in cui le persone devono indovinare il numero di gelee beans in un barattolo grande. Anche se la maggior parte delle singole supposizioni sarà imprecisa, la media di tutte le supposizioni è stata empiricamente dimostrata essere sorprendentemente vicina al numero effettivo di gelatine nel barattolo.

Gli ensemble sono un'analogia software della saggezza della folla. Anche se i singoli modelli fanno previsioni molto imprecise, la media delle previsioni di molti modelli genera spesso previsioni sorprendentemente buone. Ad esempio, anche se un singolo albero decisionale potrebbe fare previsioni sbagliate, una foresta di alberi decisionali spesso genera previsioni molto buone.

word embedding

#language

Rappresentazione di ogni parola in un insieme di parole all'interno di un vettore di incorporamento, ovvero rappresentazione di ogni parola come un vettore di valori a virgola mobile compresi tra 0,0 e 1,0. Le parole con significati simili hanno rappresentazioni più simili rispetto alle parole con significati diversi. Ad esempio, carote, sedano e cetrioli avranno rappresentazioni relativamente simili, molto diverse da quelle di aereo, occhiali da sole e dentifricio.

X

XLA (algebra lineare accelerata)

Un compilatore di machine learning open source per GPU, CPU e acceleratori ML.

Il compilatore XLA prende i modelli dai principali framework di ML, come PyTorch, TensorFlow e JAX, e li ottimizza per l'esecuzione ad alte prestazioni su diverse piattaforme hardware, tra cui GPU, CPU e acceleratori di ML.

Z

Apprendimento zero-shot

Un tipo di addestramento del machine learning in cui il modello deducono una previsione per un compito per il quale non è stato già addestrato in modo specifico. In altre parole, al modello non vengono forniti esempi di addestramento specifici per l'attività, ma gli viene chiesto di eseguire inferenza per l'attività.

prompting zero-shot

#language
#generativeAI

Un prompt che non fornisce un esempio di come vuoi che il modello linguistico di grandi dimensioni risponda. Ad esempio:

Parti di un prompt Note
Qual è la valuta ufficiale del paese specificato? La domanda a cui vuoi che l'LLM risponda.
India: La query effettiva.

Il modello linguistico di grandi dimensioni potrebbe rispondere con uno dei seguenti elementi:

  • Rupia
  • INR
  • Rupia indiana
  • La rupia
  • La rupia indiana

Tutte le risposte sono corrette, anche se potresti preferire un determinato formato.

Confronta e contrapponi i prompt senza esempi con i seguenti termini:

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.