N-gram Nedir?
Yayın: · Son güncelleme:
N-gram Nedir? Kısaca
N-gram, bir metindeki ardışık n adet kelime ya da karakterden oluşan dizidir; örneğin iki kelimelik diziye bigram, üç kelimelik diziye trigram denir ve bu diziler dil modellemede ve metin analizinde kullanılır.

N-gram, bir metin içinde art arda gelen n adet öğeden (kelime, karakter ya da token) oluşan dizidir. Basit ama güçlü bir fikirdir ve doğal dil işlemenin klasik yapı taşlarından biridir.
N-gram nedir?
"Bugün hava çok güzel" cümlesini kelime düzeyinde inceleyelim:
- Unigram (n=1): "Bugün", "hava", "çok", "güzel"
- Bigram (n=2): "Bugün hava", "hava çok", "çok güzel"
- Trigram (n=3): "Bugün hava çok", "hava çok güzel"
Aynı fikir karakterlere de uygulanabilir: "kedi" kelimesinin karakter bigramları "ke", "ed", "di" şeklindedir.
N-gram dil modelleri nasıl çalışır?
Bir n-gram dil modeli, bir kelimenin olasılığını yalnızca önceki n-1 kelimeye bakarak tahmin eder. Örneğin bir trigram modeli "hava çok" ifadesinden sonra "güzel" kelimesinin gelme olasılığını, büyük bir metin koleksiyonunda bu üçlünün ne sıklıkla geçtiğini sayarak hesaplar.
Bu yaklaşımın iki temel sınırı vardır:
- Kısa bağlam: Model, n kelimeden daha eski bilgiyi göremez.
- Veri seyrekliği: n büyüdükçe birçok dizi eğitim verisinde hiç geçmez ve olasılığı sıfır çıkar. Bunu hafifletmek için yumuşatma (smoothing) teknikleri kullanılır.
Günümüzün büyük dil modelleri çok daha uzun bağlamı sinir ağlarıyla işler, ancak "sıradaki öğeyi tahmin etme" fikri n-gram modellerinden miras kalmıştır.
Nerelerde kullanılır?
N-gram'lar hâlâ birçok yerde işe yarar: otomatik tamamlama ve yazım önerisi, dil tespiti, kelime torbası gibi metin temsillerinin zenginleştirilmesi, intihal ve tekrar eden içerik tespiti ile BLEU ve ROUGE gibi metin değerlendirme metriklerinin hesaplanması.
Sıkça Sorulan Sorular
Bigram ve trigram ne demek?
Bigram, metinde art arda gelen iki öğeden oluşan dizidir; trigram ise üç öğeden oluşur. Örneğin "yapay zekâ modeli" bir kelime trigramıdır.
N-gram modelleri neden yerini sinir ağlarına bıraktı?
N-gram modelleri yalnızca kısa bir bağlama bakabilir ve görmediği dizilerde zorlanır. Sinir ağı tabanlı modeller ise çok daha uzun bağlamı kullanabilir ve benzer kelimeler arasında genelleme yapabilir.