TF-IDF (TF-IDF (Terim Frekansı-Ters Belge Frekansı))

Bir kelimenin bir belgede ne kadar önemli olduğunu ölçen, metin madenciliğinde kullanılan istatistiksel bir ağırlıklandırma yöntemi.

TF-IDF (Term Frequency-Inverse Document Frequency — Terim Frekansı-Ters Belge Frekansı), metin madenciliği ve bilgi erişiminde bir kelimenin bir belge koleksiyonuna göre o belgede ne kadar önemli olduğunu sayısal olarak temsil eden temel bir yöntemdir. İki bileşenin çarpımından oluşur. TF (Terim Frekansı), hedef kelimenin incelenen belgede kaç kez geçtiğini gösterir. Genellikle toplam kelime sayısına bölünerek normalleştirilir; böylece uzun belgeler haksız avantaj elde etmez. IDF (Ters Belge Frekansı), kelimenin belge koleksiyonunda ne kadar nadir olduğunu ölçer. Koleksiyondaki toplam belge sayısının kelimenin geçtiği belge sayısına oranının logaritması alınarak hesaplanır. Bu sayede "ve", "ile", "bu" gibi anlam taşımayan yaygın kelimeler çok düşük ağırlık alırken belgeye özgü teknik terimler ön plana çıkar. 1972'de Karen Spärck Jones tarafından geliştirilen bu yöntem, onlarca yıldır arama motorlarında belge sıralama, metin sınıflandırma, anahtar kelime çıkarma, belge özeti ve benzerlik hesaplama gibi görevlerde kullanılmaktadır. Elasticsearch ve Apache Solr, arama skorlamasında TF-IDF türevli BM25 algoritmasına dayanır. Python ekosisteminde scikit-learn'ün TfidfVectorizer sınıfı, ham metin koleksiyonunu seyrek TF-IDF matrisine dönüştürür; bu matris makine öğrenmesi modellerine doğrudan girdi olarak verilir. Modern büyük dil modelleri (LLM) ve semantik gömme (embedding) yöntemlerinin yaygınlaşmasıyla birlikte TF-IDF'nin önemi sorgulanmış olsa da, yorumlanabilirlik, düşük bellek ayak izi ve hesaplama verimliliği bu yöntemi uygulamada hâlâ geçerli kılmaktadır. Özellikle BM25 ile hibrit arama sistemleri ve RAG (Retrieval-Augmented Generation) ardışık düzenlerinde TF-IDF temelli geri çağırma katmanı yaygın biçimde kullanılmaktadır. Türkçe doğal dil işleme çalışmalarında TF-IDF, haber sınıflandırma, ürün yorumu analizi ve arama ön işleme katmanlarında kullanılmaktadır. Türkçe'nin zengin çekimli yapısı nedeniyle zemberek veya snowball stemmer ile ön işleme yapılması önerilir. Büyük dil modelleri embedding katmanında TF-IDF'yi geçmiş olsa da, hızlı prototipleme ve küçük veri kümelerinde hâlâ tercih edilmektedir.