# Belge-terim matrisi
Belge-Terim Matrisi (İngilizce: "Document-Term Matrix", kısaltmasıyla DTM), bir belge koleksiyonundaki kelimelerin geçiş sıklığını gösteren matematiksel bir gösterimdir. Bu yapı, özellikle doğal dil işleme (NLP) ve bilgi erişimi (information retrieval) gibi alanlarda temel bir araç olarak kullanılır. Belge-terim matrisinde, her satır bir belgeyi, her sütun ise bir terimi temsil eder. Hücrelerdeki değerler, ilgili terimin söz konusu belgede kaç kez geçtiğini, yani terim sıklığını (frekansını) ifade eder.


## Belge-Terim Matrisi (DTM) Tarihçesi.
Belge-Terim Matrisi (DTM), kökleri 1960'lı yıllara dayanan bilgi erişimi (information retrieval) alanının temel yapı taşlarından biridir. DTM'nin teorik altyapısı, vektör uzay modeli (Vector Space Model) ile ortaya çıkmıştır. Bu model, metinleri ve sorguları çok boyutlu vektörler olarak temsil etme fikrine dayanır ve ilk kez 1975 yılında Gerard Salton tarafından önerilmiştir. Salton'un geliştirdiği bu yaklaşım, belgelerin içerdiği terimlere göre sayısal olarak temsil edilmesini mümkün kılarak, metinlerin karşılaştırılabilir ve işlenebilir hale gelmesini sağlamıştır. Vektör uzay modeli çerçevesinde geliştirilen DTM, her satırın bir belgeyi, her sütunun ise bir terimi temsil ettiği iki boyutlu bir matristir. Başlangıçta bilgi erişim sistemlerinde belgeler arasında benzerlik hesaplamak ve etkili arama sonuçları sunmak amacıyla kullanılan bu yapı, zamanla doğal dil işleme (NLP), makine öğrenmesi ve metin madenciliği gibi alanlarda da yaygın olarak kullanılmaya başlanmıştır. Günümüzde DTM; metin sınıflandırma, konu modelleme, duygu analizi ve otomatik özetleme gibi birçok uygulamada temel bir araç olarak kullanılmaktadır. Ayrıca TF-IDF gibi ağırlıklandırma tekniklerinin geliştirilmesiyle birlikte, DTM daha etkili hale getirilmiş ve belgeler arasındaki anlamsal ilişkileri daha doğru yansıtır bir yapıya ulaşmıştır.


## Belge-Terim Matrisi (DTM) Yapısı.
  - Satırlar: Her satır, belge koleksiyonundaki bir belgeyi temsil eder.
  - Sütunlar: Her sütun, koleksiyonda yer alan bir terimi (kelime ya da kelime öbeğini) temsil eder.
  - Hücreler: Her hücre, ilgili terimin o satıra karşılık gelen belgede kaç kez geçtiğini yani frekansını (sıklığını) gösterir.
Bu yapı sayesinde, metin verileri sayısal bir matris formatında temsil edilerek, analiz ve makine öğrenmesi algoritmaları için uygun hale getirilir.


## Belge-Terim Matrisi (DTM) Oluşturma Süreci.
### 1. Veri Ön İşleme (Preprocessing).
Ham metin verileri, analiz edilebilir ve sayısallaştırılabilir bir forma getirilmeden önce çeşitli temizlik ve dönüştürme işlemlerinden geçirilir. Bu adım, DTM'nin doğruluğunu ve analizlerdeki başarısını doğrudan etkiler.
  - Tokenization (Parçalama): Metin, anlamlı analiz birimlerine (kelimelere veya terimlere) bölünür. Örneğin bir cümle, boşluk veya noktalama işaretlerine göre kelimelere ayrılır.
  - Stopword Removal (Yaygın Kelimelerin Çıkarılması):"ve", "bir", "ile", "ama" gibi sık kullanılan ancak anlam taşımayan kelimeler çıkarılır. Bu işlem, veri setini sadeleştirir ve anlamlı terimlere odaklanmayı sağlar.
  - Stemming: Yüzeysel olarak kelimeleri kök haline indirger örneğin: kitaplar → kitap.
  - Lemmatization: Dil bilgisi kurallarına uygun şekilde doğru kelime kökünü bulur örneğin: koşuyor → koşmak.


### 2. Vektörleştirme (Vectorization).
Ön işleme tamamlandıktan sonra, kelime verileri sayısal forma dönüştürülerek DTM yapısı oluşturulur. Bu aşamada, her belgenin içerdiği terimler ve bu terimlerin sıklıkları belirlenir. Farklı vektörleştirme yöntemleri kullanılabilir:
  - Frekans Temelli (Count):Her terimin ilgili belgede kaç kez geçtiği sayılır ve hücre değeri buna göre belirlenir.
  - Binary (İkili):Bir terim belgede varsa hücreye 1, yoksa 0 değeri yazılır. Bu yöntem, yalnızca varlık bilgisiyle ilgilenir.
  - TF-IDF (Term Frequency – Inverse Document Frequency):Terimin sadece bir belgede kaç kez geçtiği değil, aynı zamanda tüm belgeler arasındaki ayırt ediciliği de hesaba katılarak ağırlıklı bir değer atanır. Bu yöntem, metinlerdeki önemli terimlerin öne çıkarılmasını sağlar.


## Belge-Terim Matrisi (DTM) Türleri.
  - İkili DTM (Binary DTM): Bu tür DTM, belgede bir terimin varlığını veya yokluğunu temsil eder. Matrisin hücrelerinde yalnızca 0 ve 1 değerleri bulunur. Eğer belirli bir terim belgede geçiyorsa hücre değeri 1, geçmiyorsa 0 olarak kaydedilir. Bu yöntem, özellikle kelimenin sadece bulunup bulunmadığına odaklanılan analizlerde tercih edilir.
  - Ağırlıklı DTM (Weighted DTM): Bu tür DTM, bir terimin belgede ne kadar önemli veya ne kadar sık geçtiğini gösterir. Hücrelerdeki değerler, terimlerin belge içindeki frekansını ya da önem düzeyini yansıtır. Bu önem düzeyi  ham frekans, normalize edilmiş değerler veya TF-IDF (Term Frequency - Inverse Document Frequency) gibi çeşitli ağırlıklandırma yöntemleriyle hesaplanabilir. Ağırlıklı DTM, daha hassas ve içerik odaklı analizlerde kullanılır.


## Belge-Terim Matrisi (DTM) Kullanım Alanları.
Metin Sınıflandırma (Text Classification): DTM, makine öğrenmesi algoritmalarında belge içeriklerinin analiz edilerek önceden tanımlanmış kategorilere atanmasında kullanılır. Bu işlemde, belgelerden elde edilen terim frekansları, sınıflandırıcı algoritmalara girdi olarak sunulur. Böylece, her belgenin içeriğine göre hangi sınıfa ait olduğu belirlenebilir. Bu yöntem, denetimli öğrenme teknikleriyle birlikte sıklıkla kullanılmaktadır.
Konu Modelleme (Topic Modeling): DTM, belge koleksiyonlarındaki örtük (gizli) temaların veya konuların keşfedilmesinde önemli rol oynar. Özellikle büyük veri setlerinde, belgeler arasında hangi kelime gruplarının sık tekrarlandığı analiz edilerek ortak temalar ortaya çıkarılır. Bu işlem, genellikle denetimsiz öğrenme algoritmalarıyla birlikte gerçekleştirilir ve belgelerin hangi konular etrafında gruplaştığı hakkında fikir verir.
Bilgi Erişimi (Information Retrieval): DTM, belge ve sorgular arasındaki benzerlikleri ölçmek amacıyla kullanılır. Kullanıcının bir sorgu girmesi durumunda, sorgu içeriği ile belgelerdeki terimlerin frekansları karşılaştırılarak en uygun belgeler belirlenir. Bu sayede, büyük metin koleksiyonları içerisinde istenen bilgiye hızlı ve etkili bir şekilde ulaşmak mümkün hale gelir. DTM bu süreçte, belge ve sorguların vektör temsilleri üzerinden benzerlik hesaplamalarında temel yapı olarak görev alır.


## Belge-Terim Matrisi (DTM) Avantajları.
  - Basit ve anlaşılır yapı: DTM, temel düzeyde metin verisini sayısallaştırmak için oldukça kolay ve doğrudan bir yöntem sunar.
  - Makine öğrenmesi algoritmalarına uyumlu: Sayısal matris yapısı sayesinde DTM, denetimli ve denetimsiz birçok makine öğrenmesi algoritmasıyla doğrudan kullanılabilir.
  - Yorumlanabilirlik: Matrisin her hücresi açık bir şekilde belirli bir kelimenin bir belgede ne kadar geçtiğini ifade ettiğinden, sonuçlar insan gözüyle de kolayca incelenebilir.
  - Yaygın kullanım ve araç desteği: Python, R, RapidMiner gibi platformlarda DTM oluşturmak için birçok hazır araç ve kütüphane bulunmaktadır (örneğin: CountVectorizer, TfidfVectorizer, tm paketi, vb.).
  - Özellik mühendisliği için temel oluşturur: Daha gelişmiş analizlerde (TF-IDF, LSA, LDA, Word2Vec gibi) kullanılmak üzere ilk adımdır.


## Belge-Terim Matrisi (DTM) Sınırlılıkları.
  - Anlamsal bağlamı göz ardı eder: DTM, kelimeleri bağımsız ögeler olarak değerlendirir ve aralarındaki bağlamı ya da anlam ilişkisini hesaba katmaz. Örneğin, "iyi değil" ve "kötü" ifadeleri farklı şekillerde temsil edilirken, anlam bakımından benzer oldukları dikkate alınmaz.
  - Sıralama ve yapısal bilgi kaybı: Cümledeki kelimelerin diziliş sırası, sözdizimsel ilişkiler ve dilbilgisel yapılar tamamen ihmal edilir. Bu durum, özellikle duygu analizi veya karmaşık anlamsal çıkarım gerektiren uygulamalarda sınırlayıcı olabilir.
  - Yüksek boyutluluk ve seyrek yapı (sparse matrix): Geniş belge koleksiyonlarında çok sayıda benzersiz kelime bulunur, bu da matrisin boyutunu ciddi şekilde artırır. Bu matrisin büyük kısmı sıfırlardan oluşur (seyrektir), bu da depolama ve işlem süresinde maliyet oluşturur.
  - Nesnel ölçüm eksikliği: Terimlerin metin içerisindeki konumu ya da bağlamdaki önem sıralaması dikkate alınmaz  sadece basit frekanslara dayalı bir yapı sunar.
  - Gürültüye açıklık: Ön işleme adımlarında yeterince filtreleme yapılmadığında, anlamsız veya nadir kullanılan kelimeler DTM'ye dahil olabilir ve bu da modelin performansını olumsuz etkileyebilir.


## Belge-Terim Matrisi (DTM) ile Word Embedding Temsillerinin Karşılaştırılması.
Doğal dil işleme alanında metinleri sayısal forma dönüştürmek için kullanılan iki temel yaklaşım vardır: Belge-Terim Matrisi (DTM) ve Word Embedding (Kelime Gömme) yöntemleri. Bu iki yöntem arasında hem yapısal hem de işlevsel farklar bulunur:
  - DTM, metni yalnızca frekanslar üzerinden sayısallaştırır. Avantajı basitliği ve yorumlanabilirliğidir  ancak anlamsal derinlikten yoksundur.
  - Word Embedding yöntemleri ise kelimeleri çok boyutlu anlam uzayında konumlandırarak "kraliçe - kadın + erkek = kral" gibi anlamsal çıkarımlar yapmayı mümkün kılar.
  - Gelişmiş görevler için artık genellikle embedding temelli yöntemler tercih edilse de, DTM hâlâ konu modelleme, TF-IDF analizleri ve temel sınıflandırma görevlerinde kullanılmaya devam etmektedir.