Salta al contenuto

Term frequency-inverse document frequency (TF-IDF): definizione e funzionamento

Foto Autore
Contenuto a cura di Roberto Varriale Aggiornato il 28 Ottobre 2026 · Lettura: 11 min

Il term frequency-inverse document frequency (TF-IDF) è un indice statistico che assegna a ogni parola di un documento un peso numerico, ottenuto moltiplicando la frequenza locale del termine per la sua rarità nell’intero corpus di riferimento. Il risultato individua le parole più rappresentative di un testo, distinguendole da quelle comuni e poco informative presenti in tutta la raccolta.

Il punteggio TF-IDF serve soprattutto a individuare i termini su cui lavorare quando si scrivono contenuti ottimizzati per i motori di ricerca, perché mostra quali parole distinguono un testo dai competitor.

In breve

  • Cosa risolve: assegna un peso numerico ai termini di un testo, evidenziando quelli più distintivi rispetto al resto della raccolta di documenti.
  • Quando si applica: nei motori di ricerca, nell’estrazione automatica di parole chiave, nella classificazione dei testi e nell’analisi dei contenuti per la SEO.
  • Condizioni e limiti: il calcolo richiede un corpus sufficientemente ampio; un termine presente in ogni documento della raccolta ottiene una componente inversa pari a zero e perde valore discriminante.
  • Come si verifica: si confronta il punteggio ottenuto da un termine con quello degli altri termini dello stesso documento, oppure con l’output di una libreria come scikit-learn.
  • Cosa fare: normalizzare il testo (minuscolo, rimozione delle stop words, tokenizzazione) prima del calcolo, per ottenere pesi affidabili e confrontabili.

Come funziona il calcolo del TF-IDF

Schema che mostra il flusso di calcolo da frequenza del termine a peso finale TF-IDF
Il peso finale nasce dal prodotto tra la frequenza locale di un termine e la sua rarità nel corpus.

Il punteggio nasce dal prodotto di due misure indipendenti: una calcolata sul singolo documento, l’altra sull’intera raccolta. Ogni parola riceve quindi un valore diverso in ciascun documento in cui compare, perché il secondo fattore dipende dalla distribuzione del termine in tutto il corpus.

Frequenza del termine (TF): quanto una parola è presente nel documento

La frequenza del termine misura quante volte una parola compare in un documento specifico, in genere divisa per il numero totale di parole dello stesso documento, in modo da ottenere un valore proporzionale e confrontabile fra testi di lunghezza diversa. Un termine ripetuto spesso in un solo documento ottiene un valore alto in questa fase, indipendentemente da quanto sia diffuso altrove.

Frequenza inversa di documento (IDF): quanto una parola è rara nel corpus

La componente inversa misura quanto un termine sia raro o diffuso nell’insieme dei documenti analizzati. Si calcola dividendo il numero totale di documenti del corpus per il numero di documenti che contengono quel termine, e applicando il logaritmo al risultato. Più un termine è raro, più il valore logaritmico cresce; un termine presente in ogni documento restituisce invece un rapporto pari a uno, il cui logaritmo è zero. Alcune implementazioni aggiungono 1 al denominatore per evitare la divisione per zero quando un termine non compare in nessun documento del corpus di addestramento.

Il calcolo finale: moltiplicazione tra le due componenti

Il peso complessivo si ottiene moltiplicando il valore di frequenza locale per il valore di rarità nel corpus. Un termine molto frequente in un documento ma raro altrove ottiene il punteggio più alto: è il caso ideale per individuare le parole realmente distintive di quel testo. Al contrario, un termine frequente ovunque, anche se ripetuto molte volte in un documento, riceve un punteggio ridotto perché la componente inversa lo penalizza.

Esempio numerico di calcolo del TF-IDF

Confronto visivo tra il peso di un termine raro e quello di un termine comune in un corpus di documenti
A parità di occorrenze nel documento, il termine più raro nel corpus ottiene un peso finale superiore.

Un termine che compare 3 volte in un documento di 100 parole ha una frequenza locale di 0,03. Se quel termine è presente in 1.000 documenti su un corpus di 10 milioni, la componente inversa vale log(10.000.000/1.000) = 4, e il peso finale risulta 0,03 × 4 = 0,12.

Una parola comune come una congiunzione, ripetuta 20 volte nello stesso documento di 100 parole, ha una frequenza locale più alta, pari a 0,2. Ma se compare in 1 milione di documenti su 10 milioni, la componente inversa vale log(10.000.000/1.000.000) = 1, e il peso finale è 0,2 × 1 = 0,2. Nonostante la frequenza locale maggiore, la differenza tra i due punteggi si riduce drasticamente rispetto al rapporto di frequenza di partenza, perché la rarità nel corpus pesa in senso opposto alla ripetizione locale.

Confronto tra due termini con frequenza locale e rarità diverse
Termine Occorrenze nel documento TF Documenti su 10 milioni che lo contengono IDF TF-IDF
Termine raro (es. sostantivo tecnico) 3 0,03 1.000 4 0,12
Termine comune (es. congiunzione) 20 0,2 1.000.000 1 0,2

Un caso limite ricorrente riguarda i termini presenti in ogni documento della raccolta: in quella condizione la componente inversa è zero e l’intero peso finale si azzera, anche se la frequenza locale è elevata. È il motivo per cui parole molto comuni non emergono mai come termini rilevanti in questo tipo di analisi.

A cosa serve il TF-IDF: applicazioni principali

Il punteggio calcolato con questo metodo serve a trasformare un testo in valori numerici utilizzabili da sistemi automatici, con applicazioni concentrate in quattro ambiti principali.

Recupero delle informazioni e motori di ricerca

Nei sistemi di information retrieval, il punteggio aiuta a stabilire quali documenti sono più pertinenti rispetto a una query, confrontando il peso dei termini cercati nei vari documenti dell’indice. Un documento in cui un termine ricercato ha un peso elevato viene considerato più rilevante per quella ricerca.

Estrazione delle parole chiave da un testo

Ordinando i termini di un documento per punteggio decrescente, è possibile individuare le parole che meglio ne descrivono il contenuto, escludendo automaticamente quelle troppo comuni per essere significative. Questo procedimento è alla base di molti strumenti di riepilogo automatico e di categorizzazione dei testi.

Analisi dei contenuti per la SEO

In ambito di ottimizzazione dei contenuti, il confronto tra il peso dei termini in una pagina e quello nelle pagine concorrenti aiuta a valutare se il vocabolario usato è bilanciato rispetto all’argomento trattato, individuando termini sottoutilizzati o assenti rispetto alla media della concorrenza analizzata.

Machine learning, elaborazione del linguaggio e classificazione

Nei modelli di classificazione automatica dei testi, di clustering e di analisi del sentiment, ogni documento viene rappresentato come un vettore di pesi calcolati con questo metodo, permettendo agli algoritmi di elaborare il testo in forma numerica. Questa rappresentazione, nota anche come modello bag-of-words pesato, resta una delle basi più diffuse per l’addestramento di modelli di elaborazione del linguaggio naturale.

Procedura per calcolare il TF-IDF passo dopo passo

Il calcolo manuale segue una sequenza fissa di operazioni, applicabile sia a mano su un corpus piccolo sia come base logica per un’implementazione automatica.

  1. Raccogliere il corpus di documenti e definire l’insieme unico di parole presenti in tutta la raccolta.
  2. Suddividere ogni documento in singoli termini (tokenizzazione), rimuovendo la punteggiatura e uniformando le maiuscole.
  3. Contare, per ogni documento, quante volte compare ciascun termine e dividere il conteggio per il numero totale di parole del documento, ottenendo il valore di frequenza locale.
  4. Contare, per ogni termine, in quanti documenti distinti del corpus compare almeno una volta.
  5. Calcolare il logaritmo del rapporto tra il numero totale di documenti e il numero di documenti che contengono il termine, ottenendo il valore di rarità nel corpus.
  6. Moltiplicare, per ogni coppia termine-documento, il valore di frequenza locale per il valore di rarità nel corpus.
  7. Ordinare i termini di ciascun documento per punteggio decrescente per individuare quelli più rappresentativi.

Se il corpus è ampio, questi passaggi si automatizzano con librerie dedicate al calcolo vettoriale del testo, che restituiscono direttamente una matrice documenti-termini con i pesi già calcolati.

Qual è la differenza tra TF e TF-IDF

La frequenza del termine da sola misura solo quanto una parola ricorre all’interno di un singolo documento, senza considerare il resto della raccolta; il punteggio completo aggiunge invece la componente di rarità calcolata sull’intero corpus, correggendo la distorsione introdotta dalle parole comuni a tutti i testi.

Usare la sola frequenza locale porta a sovrastimare parole molto diffuse come articoli e congiunzioni, che ricorrono spesso in ogni documento senza aggiungere informazione distintiva. La combinazione con la componente di rarità riequilibra il punteggio, premiando i termini che caratterizzano realmente un documento rispetto agli altri della stessa raccolta.

Se serve solo la frequenza interna al documento

Quando l’analisi riguarda un unico testo isolato, senza un corpus di confronto, la sola frequenza del termine resta l’unica misura disponibile, perché la componente inversa richiede necessariamente più documenti per essere calcolata.

Se è disponibile un corpus di riferimento

Quando esiste una raccolta di documenti comparabili, il punteggio completo è preferibile perché individua i termini distintivi di ciascun testo rispetto agli altri, un’informazione che la sola frequenza locale non può fornire.

TF-IDF a confronto con Word2Vec e gli embedding

Il punteggio calcolato con questo metodo rappresenta ogni parola in modo indipendente dal significato, basandosi solo su frequenza e rarità statistica; le tecniche di embedding, come Word2Vec, rappresentano invece ogni parola come un vettore denso che ne cattura il contesto d’uso e le relazioni semantiche con altre parole.

Differenze principali tra rappresentazione statistica e rappresentazione semantica del testo
Aspetto TF-IDF Embedding (es. Word2Vec)
Base del calcolo Frequenza e rarità statistica dei termini Contesto d’uso appreso da un modello addestrato
Tipo di vettore Sparso, una dimensione per ogni termine del vocabolario Denso, dimensione fissa e ridotta per ogni parola
Cattura la semantica No, tratta le parole come simboli indipendenti Sì, parole con significato simile hanno vettori vicini
Costo computazionale Basso, calcolo diretto senza addestramento Più alto, richiede addestramento su grandi volumi di testo
Uso tipico Information retrieval, estrazione di parole chiave, SEO Comprensione del linguaggio, generazione di testo, similarità semantica

Le due tecniche non sono alternative esclusive: alcuni sistemi combinano un primo filtro basato su pesi statistici con una fase successiva di rappresentazione semantica, per unire velocità di calcolo e comprensione del contesto.

Limiti del TF-IDF

Il punteggio calcolato con questo metodo tratta ogni parola come un simbolo isolato, senza considerare l’ordine delle parole né il loro significato contestuale: due frasi con le stesse parole in ordine diverso, o con sinonimi diversi, ottengono rappresentazioni numeriche molto distanti anche quando il significato è simile.

Un secondo limite riguarda la dimensione del vettore prodotto: su un corpus ampio, il numero di termini unici cresce rapidamente, generando rappresentazioni sparse con moltissimi valori pari a zero, difficili da gestire per alcuni modelli di apprendimento automatico senza tecniche di riduzione della dimensionalità.

Infine, il punteggio dipende interamente dal corpus scelto come riferimento: cambiando la raccolta di documenti di confronto, il peso attribuito allo stesso termine nello stesso documento può variare in modo significativo, il che richiede coerenza nella scelta del corpus quando si confrontano risultati ottenuti in momenti diversi.

Casi limite ed errori frequenti nel calcolo

Se un termine compare in tutti i documenti del corpus

Il rapporto tra documenti totali e documenti contenenti il termine diventa 1, il cui logaritmo è zero: il peso finale si azzera indipendentemente da quanto il termine sia ripetuto all’interno del singolo documento.

Se un termine non compare in nessun documento del corpus di addestramento

Il denominatore del rapporto diventerebbe zero, rendendo il calcolo indefinito: per questo motivo molte implementazioni aggiungono 1 al numero di documenti che contengono il termine, garantendo un risultato sempre calcolabile anche in fase di applicazione su testi nuovi.

Se il corpus contiene documenti di lunghezza molto diversa

Senza la normalizzazione della frequenza locale sul totale delle parole del documento, i testi più lunghi otterrebbero punteggi sistematicamente più alti solo per la maggiore quantità di parole, non per una reale rilevanza del termine: dividere sempre per il numero totale di parole del documento evita questa distorsione.

Un errore comune consiste nel confrontare i punteggi calcolati su corpus diversi come se fossero equivalenti: poiché la componente di rarità dipende dalla composizione specifica della raccolta usata, lo stesso termine può ottenere pesi differenti in corpus differenti, e il confronto ha senso solo all’interno dello stesso corpus di riferimento.

Domande frequenti

Cosa significa la sigla TF-IDF?

La sigla indica term frequency-inverse document frequency, ovvero frequenza del termine e frequenza inversa di documento: le due misure che, moltiplicate tra loro, producono il peso finale attribuito a ogni parola di un documento.

Il TF-IDF fa parte dell’elaborazione del linguaggio naturale?

Sì, è una delle tecniche di base dell’elaborazione del linguaggio naturale e dell’information retrieval, usata per trasformare un testo in una rappresentazione numerica utilizzabile da algoritmi di ricerca, classificazione e clustering dei documenti.

Perché si usa il TF-IDF invece della sola frequenza dei termini?

Perché la sola frequenza sovrastima le parole comuni a tutti i documenti, come articoli e congiunzioni; aggiungendo la componente di rarità calcolata sul corpus, il punteggio finale premia i termini realmente distintivi di ciascun testo.

Qual è la formula della frequenza del termine?

La frequenza del termine si calcola dividendo il numero di occorrenze di una parola in un documento per il numero totale di parole dello stesso documento, ottenendo un valore proporzionale confrontabile tra testi di lunghezza diversa.

Come si calcola la frequenza inversa di documento?

Si divide il numero totale di documenti del corpus per il numero di documenti che contengono il termine cercato, e si applica il logaritmo al risultato ottenuto; alcune implementazioni aggiungono 1 al denominatore per evitare divisioni per zero.

Quali sono i limiti principali del TF-IDF?

Non considera l’ordine delle parole né il significato contestuale, produce vettori sparsi su corpus ampi e dipende interamente dalla composizione del corpus scelto come riferimento, rendendo i confronti validi solo all’interno della stessa raccolta di documenti.

In cosa differisce il TF-IDF dagli embedding come Word2Vec?

Il TF-IDF si basa solo su frequenza e rarità statistica dei termini, mentre gli embedding rappresentano ogni parola con un vettore denso che ne cattura il contesto d’uso e le relazioni semantiche con le altre parole del testo.

Questo contenuto ti ha aiutato?

Ti è stato utile questo articolo?

Aiuta altri professionisti a crescere. Condividi questo contenuto con il tuo network.

Iscriviti alla Newsletter

Ricevi una sola mail a settimana con strategie, casi studio e consigli pratici per scalare la tua impresa. Zero spam, promesso.

Quanto fa + ?

Roberto
Varriale

In quasi 20 anni ho aiutato oltre 700 Micro Imprese a migliorare il ROI aumentando Vendite e clienti con il Traffico Organico.

Chi Sono

"Se questa risorsa ti è stata utile, valuta se seguirmi anche nei social sia l'investimento di tempo migliore che tu possa fare adesso."

Roberto Varriale