TF-IDF Nedir? Tanımı, Nasıl Çalışır ve Kullanım Alanları

TF-IDF, "Term Frequency - Inverse Document Frequency" anlamına gelen ve belgelerde kelimelerin göreceli önemini ölçen matematiksel bir tekniktir. Bir kelimenin bir belgede ne sıklıkta geçtiğini (TF) ve tüm belgeler içinde ne kadar nadir olduğunu (IDF) hesaplayarak değer atanır. Arama motorları, metin sınıflandırması ve bilgi tarama sistemlerinde belgelerin alaka derecesini belirlemek için kullanılır.

5 dk okuma
TF-IDF

TF-IDF, "Term Frequency - Inverse Document Frequency" anlamına gelen ve belgelerdeki kelimelerin göreceli önemini hesaplayan matematiksel bir algoritma ve istatistiksel yöntemdir. İlk olarak 1970'lerin sonunda bilgi tarama sistemleri için geliştirilmiş, günümüzde arama motorları, yapay zeka, metin madenciliği ve SEO optimizasyonunda temel bir araç olarak kullanılmaktadır. TF-IDF, bir kelimenin belirli bir belgede ne kadar önemli olduğunu, tüm belgeler içindeki nadir sayılıp sayılmadığını göz önüne alarak objektif bir puan atanmasını sağlar.

TF-IDF Nasıl Çalışır?

TF-IDF, iki farklı ölçüyü birleştirerek çalışır:

  • Term Frequency (TF) — Terim Frekansı: Bir kelimenin belirli bir belgede kaç kez geçtiğini sayar. Örneğin, "SEO" kelimesi bir makalede 15 kez geçiyorsa, TF değeri yüksektir. Hesaplama: TF = (Kelimenin belgede geçiş sayısı) / (Belgedeki toplam kelime sayısı)
  • Inverse Document Frequency (IDF) — Ters Belge Frekansı: Kelimenin tüm belgelerde ne kadar nadir olduğunu ölçer. Çok az belgede geçen bir kelime daha yüksek IDF değerine sahiptir. "Algoritma" gibi yaygın kelimeler düşük IDF, "makine öğrenmesi" gibi spesifik terimler yüksek IDF değerine sahiptir. Hesaplama: IDF = log(Toplam belge sayısı / Kelimenin bulunduğu belge sayısı)

Son adımda TF ve IDF değerleri çarpılarak TF-IDF puanı elde edilir:

TF-IDF = TF × IDF

Bu formül, belgede sık geçen ve diğer belgelerden farklılık gösteren kelimelere yüksek puanlar verir. "Bu", "ve", "bir" gibi durdurma kelimeleri (stop words) otomatik olarak düşük puanlar alır, çünkü hemen her belgede bulunurlar.

TF-IDF'nin Avantajları

  • Basit ve Hızlı: Matematiksel olarak açık ve anlaşılır, hesaplama işlemi çabuk gerçekleşir.
  • Başarılı Sonuçlar: Metin sınıflandırması, belge benzerliği ve arama sonuçlarında etkin çalışır.
  • Dil Bağımsız: Herhangi bir dilde uygulanabilir, dil yapısına bağlı değildir.
  • Anlaşılabilir: Sonuçlar neden atandığını açıklamak kolaydır — hangi kelimeler önemli olduğu görülür.
  • Hafif Hesaplama: Büyük belge koleksiyonlarında bile işlemci kaynağı az gerektirir.

TF-IDF'nin Dezavantajları

  • Kelimelerin Anlamını Anlamaz: "ayakkabı" ve "bot" kelimelerinin aynı anlamda olabileceğini bilmez; sadece frekansları önemlidir.
  • Bağlam Göz Ardı Eder: Kelimeler arasındaki ilişkiyi, cümlenin mantığını dikkate almaz.
  • Yeni Kelimelere Zayıf: Belgelerde hiç geçmemiş kelimelere sıfır değeri atanır.
  • Dokümanda Uzun Metinler Dezavantajlı: Çok uzun belgeler, kısa belgelerle karşılaştırıldığında otomatik olarak yüksek puanlar alabilir.
  • Güncel Olmayabilir: Kelimelerin zamanla değişen anlamlarını yakalar.

TF-IDF Nerede Kullanılır?

Arama Motorları: Google ve Bing, belgelerin sorguyla ne kadar ilgili olduğunu belirlemek için TF-IDF'yi hala kullanırlar (Modern motorlar bunu çok daha karmaşık algoritmalarla birleştirir).

SEO Optimizasyonu: Bir kelimenin sayfada optimal frekansını belirlemek, başlık ve açıklamaya hangi terimleri ekleyeceğini karar vermek için kullanılır.

Metin Sınıflandırması: E-postaların spam olup olmadığını, haber metinlerinin hangi kategoriye ait olduğunu otomatik belirlemede kullanılır.

Belge Benzerliği: İki metnin ne kadar benzer olduğunu hesaplamak — plagiarizm tespiti, önerilen yazılar ("Benzer Yazılar").

Bilgi Tarama (Information Retrieval): Kütüphaneler ve çevrimiçi veri tabanlarında aranan belgeler sıralanır.

Doğal Dil İşleme (NLP): Makine öğrenmesi modellerinde metin temsilinin ilk adımı olarak kullanılır — özellikle derin öğrenme öncesinde veri hazırlığında.

Sosyal Medya Analizi: Trendleri, kullanıcı tercihlerini, marka tanınırlığını ölçmek için metin analizi yapılır.

TF-IDF vs. Diğer Yöntemler

Yöntem Nasıl Çalışır Güçlü Yön Zayıf Yön
TF-IDF Kelime frekansı ve nadir sözcükleri ölçer Hızlı, basit, anlaşılır Anlam ve bağlamı göz ardı eder
Word2Vec Kelimeleri vektör olarak temsil eder, anlam yakınlığını öğrenir Anlamsal benzerliği yakalar Daha karmaşık, fazla veri gerektirir
BERT / Transformers Derin sinir ağlarıyla bağlamsal anlam öğrenir Çok yüksek doğruluk, cümle bağlamını anlar Yüksek hesaplama maliyeti, karmaşık
Latent Semantic Analysis (LSA) TF-IDF matrisini matematiksel olarak sıkıştırır Gizli konuları keşfeder Büyük veriye ölçeklenebilirliği sınırlı

TF-IDF Tarihçesi

TF-IDF'nin kökleri, 1970'lerin sonuna dayanır. Elektronik belge depolarının artmasıyla, yüzlerce belge içinde arama yapmanın zorlaştığı dönemde, bilgisayar bilimciler daha hızlı ve verimli arama algoritmaları geliştirmeye başladılar.

1977-1980: Gerard Salton ve ekibi, SMART (System for the Mechanical Analysis and Retrieval of Text) projesi kapsamında TF-IDF fikrini formalize etmiş ve ilk uygulamalarını yapmışlardır.

1980-2000: İnternet çağının başlamasıyla, arama motorları TF-IDF'yi temel algoritma olarak benimsemiştir. Yahoo, Altavista ve ilk Google sürümleri bu yöntemi kullanmıştır.

2000-2010: Makine öğrenmesinin yükselişiyle, TF-IDF metin temsilinin standart ön işlemesi haline gelmiştir.

2010-Günümüz: Derin öğrenme ve sinir ağlarının popülaritesi artmış olsa da, TF-IDF yine de hafif uygulamalarda, spam tespitinde ve SEO'da yaygın olarak kullanılmaya devam etmektedir.

Pratik TF-IDF Örneği

Üç belgeden oluşan basit bir koleksiyonu düşünelim:

  • Belge 1: "Yapay zeka, makine öğrenmesi ve derin öğrenme teknolojileridir."
  • Belge 2: "Makine öğrenmesi algoritmaları veri analizi için kullanılır."
  • Belge 3: "Veri analizi, işletmeler için çok önemlidir."

"Makine öğrenmesi" teriminin TF-IDF'si:

  • Belge 1: TF = 1/9 (9 kelime vardır), IDF = log(3/2) ≈ 0.41
  • Belge 2: TF = 1/7, IDF = 0.41
  • Belge 3: TF = 0 (olmadığı için)

Sonuç: "Makine öğrenmesi" Belge 1 ve 2'de önemli, Belge 3'te irrelevant olarak işaretlenir.

TF-IDF ile SEO arasında nasıl bir ilişki vardır?+
TF-IDF, arama motorlarının belgelerin sorguyla alaka derecesini belirlemesine yardımcı olur. SEO uzmanları, hedef anahtar kelimelerin sayfada optimal sıklıkla ve doğal bir şekilde kullanılmasını sağlamak için TF-IDF anlayışını kullanırlar. Ancak modern arama motorları bunu çok daha karmaşık sinir ağı modelleriyle tamamlarlar.
TF-IDF sıfır döndürdüğü koşullar nelerdir?+
Bir kelimenin belgede hiç geçmemesi durumunda TF değeri sıfır olur ve sonuç olarak TF-IDF sıfır değerini alır. Ayrıca, bir kelime tüm belgelerde yer alıyorsa (IDF = log(1) = 0) TF-IDF de sıfır olur. Durdurma kelimeleri ("ve", "bu", "bir" vb.) bu ikinci kategoriye düşerler.

T harfindeki diğer terimler