
Definizione in una frase
Ejecución de un modelo ya entrenado para producir una predicción, representación o contenido a partir de una entrada.
Che cosa significa inferenza nel machine learning
Nel machine learning, l’inferenza è il processo con cui si usa un modello addestrato per calcolare un output a partire da un input. L’input può essere, per esempio, il testo di una richiesta, un’immagine o una sequenza di parole. L’output dipende dal compito e dalla progettazione del modello: può essere una categoria, un punteggio, una rappresentazione numerica o un contenuto generato. Per questo è meglio non definire l’inferenza come se consistesse sempre nel produrre un’unica previsione o una risposta testuale.
Per capire il concetto in modo semplice, si può pensare al modello come a una funzione con parametri regolati durante l’apprendimento. Nell’inferenza, si fornisce un dato al modello, che applica i propri calcoli per produrre un output. In condizioni usuali, usare il modello in questo modo non equivale ad addestrarlo di nuovo né a modificarne i parametri. È però necessaria una precisazione: alcuni sistemi vengono aggiornati durante l’uso o combinano più fasi. In quei casi è meglio descrivere l’operazione effettiva, invece di presumere che l’intero sistema rispetti una separazione assoluta.
Nella documentazione tecnica, «inferenza» può anche indicare l’esecuzione del modello all’interno di un sistema. Tale sistema può comprendere un’interfaccia, un software di servizio, hardware e configurazione, oltre al modello stesso. L’inferenza, quindi, non è necessariamente una schermata che mostra una risposta: può essere un’operazione interna i cui risultati vengono utilizzati da un altro programma.
Come funziona: input, calcolo e output
A livello concettuale, il percorso ha tre parti. Per prima cosa, un sistema riceve un input e lo prepara nel formato che il modello è in grado di elaborare. Poi il modello esegue i propri calcoli su quell’input, usando i parametri acquisiti durante l’addestramento. Infine, il sistema interpreta o restituisce l’output. In un modello testuale, per esempio, la preparazione può comportare l’organizzazione del testo in unità elaborabili; nella visione artificiale, può essere necessario adattare un’immagine al formato previsto. I dettagli dipendono dal sistema specifico.
La preparazione e la presentazione dei risultati sono importanti, ma non vanno automaticamente confuse con il calcolo del modello. Un’applicazione può aggiungere regole prima o dopo averlo richiamato, combinare i suoi risultati con altri dati oppure mostrarne soltanto una parte. Per capire che cosa ha fatto esattamente un servizio, occorre distinguere le operazioni del modello da quelle del software che lo circonda.
Questo schema non significa neppure che ogni input produca sempre un output unico e identico. In alcuni sistemi, la configurazione determina come l’output viene selezionato o organizzato; nella generazione testuale, una chiamata può produrre una sequenza di token. «Inferenza» indica l’uso del modello, non garantisce che il risultato sia deterministico o descriva correttamente il mondo.
Flusso concettuale di un’inferenza
- 01Ricevere l’input e verificare che abbia un formato elaborabile dal sistema.
- 02Applicare il calcolo del modello a quell’input usando i parametri correnti.
- 03Interpretare, trasformare o restituire l’output in base al compito e al sistema che ospita il modello.
- 04Esaminare l’output secondo criteri adeguati prima di usarlo per una decisione importante.
Quali tipi di output può produrre
Un output frequente è una previsione di classe, per esempio l’assegnazione di una richiesta a una categoria. Può anche essere un punteggio associato a un’opzione o a un esempio. Non si deve interpretare automaticamente quel punteggio come una probabilità: per farlo occorre sapere che cosa rappresenta, come è stato calcolato e se è calibrato per l’uso previsto.
Altri modelli producono rappresentazioni numeriche dei dati, spesso chiamate embedding. Una rappresentazione di questo tipo può essere utilizzata in attività successive, come confrontare elementi o recuperare contenuti simili, ma non è necessariamente una risposta leggibile da una persona. Il termine «inferenza» può includere il calcolo di quella rappresentazione, anche se l’applicazione concreta prevede ulteriori passaggi.
Nel caso di un modello generativo, l’output può essere un contenuto nuovo rispetto all’input, come una continuazione di testo. Qui «nuovo» descrive il fatto che il sistema genera una sequenza di output; non dimostra che il contenuto sia originale in senso giuridico, fattuale o storico. Non dice neppure, di per sé, se il risultato sia veritiero, utile o appropriato.
Possibili output e come interpretarli con prudenza
| Tipo di output | Esempio generale | Che cosa non bisogna presumere |
|---|---|---|
| Classe o categoria | Una richiesta viene assegnata alla categoria «fatturazione». | Che la categoria sia corretta o che non siano pertinenti altre opzioni. |
| Punteggio | Il sistema assegna valori a diverse opzioni. | Che il valore sia una probabilità affidabile o confrontabile tra modelli. |
| Rappresentazione | Il modello trasforma un testo o un’immagine in un vettore. | Che il vettore sia interpretabile da solo o equivalga a una risposta finale. |
| Contenuto generato | Un modello produce una continuazione testuale. | Che il testo sia vero, originale o adatto a qualsiasi uso. |
Esempio: classificare una richiesta di assistenza clienti
Immaginiamo che un’organizzazione riceva messaggi e voglia indirizzarli al team più adatto. Il testo «Non riconosco questo addebito sulla mia fattura» viene fornito a un classificatore addestrato per assegnare categorie. Durante l’inferenza, il modello elabora il testo e può restituire un’etichetta, per esempio «fatturazione», magari accompagnata da punteggi per altre categorie. L’etichetta può servire a suggerire un percorso di assistenza, ma non è necessariamente la decisione finale.
In un servizio reale, il flusso potrebbe prima verificare che il messaggio contenga testo utilizzabile e poi applicare regole di inoltro. Se il messaggio è ambiguo, se la categoria prevista non esiste o se il sistema non è preparato per quella lingua, l’output potrebbe non risolvere il caso. L’esempio illustra un possibile uso della classificazione: non afferma che qualsiasi modello linguistico o sistema di assistenza clienti disponga di questa capacità.
Esempio: individuare un oggetto o un difetto in un’immagine
In un’applicazione di visione artificiale industriale, si potrebbe fornire a un modello un’immagine di un componente per rilevare eventuali difetti. L’output potrebbe limitarsi a una classificazione, come «difettoso» o «senza difetti», oppure includere la posizione delle aree considerate rilevanti dal modello. Ciò che il modello può restituire dipende dal compito per cui è stato progettato e addestrato: non tutti i modelli di visione localizzano oggetti e non tutti i sistemi che classificano immagini identificano la posizione di un difetto.
In questo esempio, l’inferenza è il calcolo eseguito quando si elabora una specifica immagine. La fotocamera, il controllo dell’illuminazione, il pretrattamento e la decisione di scartare un componente possono appartenere a parti diverse del sistema. L’output del modello non dimostra da solo che il componente sia difettoso. È utile conoscere le condizioni di acquisizione, le categorie previste e le prestazioni misurate in situazioni simili a quelle d’uso.
Esempio: generare una continuazione di testo
Nella generazione di testo, una persona può fornire un’istruzione e un contesto, e il modello può produrre una continuazione. Per esempio, di fronte alla richiesta «Riassumi questo avviso in due frasi:», il sistema può generare una proposta di riassunto. In questo caso l’output non deve essere per forza un’unica etichetta: può essere una sequenza di token che forma un testo. L’inferenza descrive l’esecuzione del modello con il contesto disponibile, non una ricerca automatica della risposta vera.
Una chiamata di inferenza a un modello linguistico non equivale necessariamente ad aggiornarlo usando la conversazione. Nella descrizione dell’inferenza dei modelli linguistici si distingue la generazione a partire da nuove istruzioni dalla modifica dei parametri. Il contesto inviato può comunque influenzare la risposta e un’applicazione può gestire o archiviare dati tramite componenti estranei al calcolo del modello. Non bisogna confondere «il modello non viene aggiornato in questa chiamata» con «il sistema non conserva alcun dato»: la seconda questione dipende dal servizio e dalle sue politiche.
Inferenza, addestramento, valutazione e previsione a confronto
Addestrare significa regolare i parametri del modello a partire da dati e da una procedura di apprendimento. Nel significato abituale del machine learning, inferire significa usare il modello ottenuto per calcolare output su determinati input. Nella descrizione dell’apprendimento supervisionato, il modello può essere inteso come una funzione con parametri ottimizzati da un algoritmo durante l’addestramento. La distinzione è utile, anche se alcuni sistemi includono adattamento o apprendimento online e richiedono di precisare quando il modello viene aggiornato.
Valutare significa misurare il comportamento di un modello o di un sistema usando dati e criteri definiti. La misurazione può avvenire durante lo sviluppo o in seguito, ma non è sinonimo di eseguire un’inferenza. Una previsione è un possibile output del processo; «inferenza» indica il processo con cui si ottengono output usando il modello. Nella pratica i termini possono essere usati in modo ampio, quindi è utile verificare quale operazione descrive la documentazione.
In statistica e in logica, «inferenza» ha significati più ampi: di solito indica il ricavare conclusioni da dati, premesse o da un modello di incertezza. L’inferenza bayesiana è un esempio di uso statistico collegato al machine learning. Non bisogna presumere che ogni occorrenza del termine indichi l’esecuzione di un modello addestrato su un nuovo input. Il significato dipende dal campo e dal compito descritto.
Distinzioni pratiche
| Termine | Domanda a cui aiuta a rispondere | Differenza principale |
|---|---|---|
| Addestramento | Come sono stati regolati i parametri? | Descrive l’apprendimento o la regolazione del modello. |
| Inferenza nel machine learning | Che cosa calcola il modello per questo input? | Descrive l’uso del modello per produrre un output. |
| Valutazione | Come viene misurato il comportamento del sistema? | Richiede criteri e dati di valutazione; non è semplicemente una previsione. |
| Inferenza statistica | Quali conclusioni si ricavano all’interno di un quadro statistico? | È un uso più ampio del termine e può implicare metodi diversi dall’esecuzione di un modello su un input. |
Che cosa non dimostra un output
Il fatto che un modello abbia prodotto un output non dimostra che sia corretto. Un classificatore può sbagliare, una localizzazione può non corrispondere all’oggetto cercato e un testo generato può contenere affermazioni false. La qualità dipende, tra gli altri fattori, dai dati e dagli obiettivi dell’addestramento, dall’input specifico, dalla configurazione e dall’adeguatezza del modello rispetto al compito. Nessuna di queste considerazioni permette di dedurre, senza una valutazione, che un risultato concreto sia affidabile.
Non bisogna neppure equiparare un punteggio a una probabilità calibrata, a meno che la documentazione e la convalida non giustifichino tale interpretazione. Un punteggio può essere un segnale utile per ordinare opzioni, ma la sua scala e il suo significato possono variare da un sistema all’altro. Analogamente, una previsione non è una spiegazione causale né un’osservazione diretta della realtà: è un output calcolato dal modello.
La rappresentatività è importante. Se un’immagine, un testo o una richiesta si discostano dai dati e dalle condizioni per cui il sistema è stato verificato, il comportamento può cambiare. Nelle applicazioni ad alto impatto, l’output può richiedere una revisione umana, prove nell’ambiente d’uso e procedure per gestire gli errori. L’inferenza descrive un processo computazionale; non certifica sicurezza, imparzialità o validità.
Servizio di inferenza, latenza e costo
Con «servizio di inferenza» si indica spesso l’infrastruttura che consente di inviare input a un modello e riceverne gli output. Può essere eseguito su un server remoto, su un dispositivo locale o in un’altra configurazione. Il servizio non coincide con il modello, anche se entrambi fanno parte dell’esperienza d’uso. Per capire una descrizione tecnica, può essere necessario sapere dove viene eseguito il modello, quali dati riceve e quali componenti trasformano l’input o l’output.
Latenza, costo e uso della memoria possono essere aspetti importanti quando si distribuisce un sistema di inferenza, ma non hanno valori universali. Dipendono, tra le altre condizioni, dal modello, dall’hardware, dalle dimensioni degli input e degli output, dalla configurazione e dal carico di lavoro. Il fatto che una documentazione menzioni queste difficoltà non permette di concludere che tutti i modelli abbiano lo stesso costo o che una modalità di distribuzione sia sempre più veloce. Per fare un confronto, bisogna specificare il caso d’uso e misurare le prestazioni in condizioni pertinenti.
Che cosa chiarire quando si legge la documentazione sull’inferenza
| Aspetto | Domanda specifica |
|---|---|
| Modello | Quale modello e quale versione calcolano l’output? |
| Input e output | Quali formati sono supportati e che cosa significa ciascun output? |
| Aggiornamento | La chiamata si limita a eseguire il modello o modifica anche parametri o stato? |
| Distribuzione | Dove viene eseguito il modello e quale servizio lo collega all’applicazione? |
| Prestazioni | Su quali hardware, configurazione e carico sono stati misurati latenza e costo? |
| Convalida | Con quali dati e criteri è stato verificato che il risultato sia adatto al compito? |
Concetti correlati e criteri pratici
La previsione è un possibile tipo di output; la generazione descrive la produzione di contenuti; un embedding è una rappresentazione che può alimentare altri processi. L’addestramento indica la regolazione del modello, mentre la valutazione misura il suo comportamento. La latenza è il tempo impiegato da un’operazione per rispondere in determinate condizioni; un servizio di inferenza è l’ambiente che riceve le richieste ed esegue o coordina il calcolo. Questi concetti possono comparire insieme, ma non sono intercambiabili.
Quando si legge una scheda tecnica, un’API o la descrizione di un modello, conviene iniziare identificando quale sia l’input e quale output venga effettivamente restituito. Verifica se il sistema esegue un modello fisso o se lo aggiorna durante l’uso; controlla che cosa significano i punteggi e se il modello è stato valutato per il compito e la popolazione pertinenti. Se si parla di generazione, non scambiare la fluidità per una prova di veridicità. Se si parla di classificazione, non dare per scontato che il modello sappia spiegare o localizzare ciò che classifica.
La parola «inferenza» può avere anche un significato tecnico specifico in statistica, logica o nei metodi bayesiani. Se il testo non chiarisce quale accezione intenda, è utile consultare il contesto, il metodo e la documentazione pertinente. La documentazione esaminata consente di descrivere l’idea generale di usare un modello addestrato e riconosce usi specialistici, ma non stabilisce una definizione unica che copra tutti i campi né risolve ogni caso di sistema adattivo.
Breve lista di controllo per interpretare un caso
- 01Identifica l’input specifico che viene elaborato.
- 02Chiediti quale output calcola il modello e che cosa rappresenta.
- 03Distingui l’esecuzione del modello dalla preparazione dei dati, dall’interfaccia e dalle regole applicate in seguito.
- 04Verifica se il modello rimane invariato o viene aggiornato durante l’uso.
- 05Cerca prove di valutazione svolte in condizioni simili a quelle dell’applicazione.
- 06Considera l’output come un risultato del sistema, non come una garanzia di verità.