N-gram

Hesaplamalı dilbilim ve olasılık alanlarında, bir n-gram (bazen Q-gram olarak da adlandırılır), belirli bir metin veya konuşma örneğinden n öğenin bitişik bir dizisidir. Öğeler uygulamaya göre fonemler, heceler, harfler, kelimeler veya baz çiftleri olabilir. n-gramlar tipik olarak bir metinden veya konuşma korpusundan toplanır. Öğeler kelimeler olduğunda, -gramlar zona olarak da adlandırılabilir.

Latin sayısal önekleri kullanıldığında, 1 boyutundaki bir n-gram "unigram" olarak adlandırılır; boyut 2 bir "bigram"dır (veya daha az yaygın olarak bir "digram"); boyut 3 bir "trigram" dır. İngilizce ana sayılar bazen kullanılır, örneğin "dört gram", "beş gram" vb. Hesaplamalı biyolojide, bilinen boyuttaki bir polimer veya oligomer, "monomer", "dimer", "trimer", "tetramer", "pentamer" vb. veya İngilizce ana sayılar, "one-mer", "two-mer", "three-mer" vb.

Uygulamalar 
Bir n-gram modeli, (n − 1) düzeyli Markov modeli biçiminde böyle bir dizideki bir sonraki öğeyi tahmin etmeye yönelik bir tür olasılıksal dil modelidir. n-gram modelleri artık olasılık, iletişim teorisi, hesaplamalı dilbilim (Örneğin, istatistiksel doğal dil işleme ), hesaplamalı biyoloji (örneğin, biyolojik dizi analizi) ve veri sıkıştırmada yaygın olarak kullanılmaktadır. n-gram modellerinin (ve bunları kullanan algoritmaların) iki avantajı basitlik ve ölçeklenebilirliktir - daha büyük n ile bir model, iyi anlaşılmış bir uzay-zaman dengesi ile daha fazla bağlam depolayabilir ve küçük deneylerin verimli bir şekilde ölçeklenmesini sağlar.

Örnekler 

Şekil 1 birkaç örnek diziyi ve karşılık gelen 1-gram, 2-gram ve 3-gram dizilerini göstermektedir.

İşte diğer örnekler; bunlar Google n-gram korpusundan kelime düzeyinde 3 gram ve 4 gramdır (ve göründükleri sayı sayılarıdır).

3 gram

 seramik koleksiyon parçaları (55)
 seramik koleksiyon parçaları para cezası (130)
 (52) tarafından toplanan seramikler
 seramik koleksiyon çömlekleri (50)
 seramik koleksiyon yemek pişirme (45)

4 gram

 gelen olarak hizmet et (92)
 kuluçka makinesi olarak hizmet et (99)
 bağımsız olarak hizmet et (794)
 indeks olarak hizmet et (223)
 gösterge görevi görür (72)
 gösterge görevi görür (120)

n-gram modelleri 
Bir n-gram modeli dizileri, özellikle doğal diller, n-gramların istatistiksel özelliklerini kullanarak modeller.

Bu fikrin izini Claude Shannon'ın bilgi teorisindeki çalışmasıyla bir deneye kadar takip etmek mümkündür. Shannon şu soruyu sordu: bir harf dizisi verildiğinde (örneğin, "eski için" dizisi), bir sonraki harfin olasılığı nedir? Eğitim verilerinden, büyüklük geçmişi verilen bir sonraki harf için bir olasılık dağılımı elde edilebilir. : a = 0.4, b = 0.00001, c = 0, ....; tüm olası "sonraki harflerin" olasılıklarının toplamı 1.0'dır.

Daha kısaca, bir n-gram modeli tahmin eder  dayalı  . Olasılık açısından, bu  . Dil modelleme için kullanıldığında, bağımsızlık varsayımları yapılır, böylece her kelime yalnızca son n'ye bağlıdır. - 1 kelime. Bu Markov modeli, gerçek temel dilin bir yaklaşımı olarak kullanılır. Bu varsayım önemlidir, çünkü dil modelini verilerden tahmin etme problemini büyük ölçüde basitleştirir. Ek olarak, dilin açık doğası nedeniyle, dil modelinin bilmediği kelimeleri birlikte gruplamak yaygındır.

Basit bir n-gram dil modelinde, önceki birkaç kelimeye (bigram modelinde bir kelime, trigram modelinde iki kelime, vb.) koşullu bir kelimenin olasılığının, kategorik bir dağılımın ardından tanımlanabileceğini unutmayın. (genellikle kesin olmayan bir şekilde "çok terimli dağılım" olarak adlandırılır).

Pratikte, olasılık dağılımları, görünmeyen kelimelere veya n-gramlara sıfır olmayan olasılıklar atanarak düzeltilir; bkz. yumuşatma teknikleri.

Sözdizimsel n-gramların başka bir türü, metnin konuşma bölümü dizilerinden çıkarılan sabit uzunlukta bitişik örtüşen alt diziler olarak tanımlanan konuşma bölümü n-gramlarıdır. Konuşma bölümü n-gramlarının, en yaygın olarak bilgi almada olmak üzere birkaç uygulaması vardır.

Ayrıca bakınız 

 kollokasyon
 Gizli Markov modeli
 n-tuple
 dize çekirdeği
 MinHash
 Özellik çıkarma
 En uzun ortak alt dize sorunu

Uygulamalar ve düşünceler 
n-gram modelleri istatistiksel doğal dil işlemede yaygın olarak kullanılmaktadır. Konuşma tanımada, sesbirimler ve sesbirim dizileri bir n-gram dağılımı kullanılarak modellenir. Ayrıştırma için kelimeler, her n-gram n kelimeden oluşacak şekilde modellenir. Dil tanımlaması için, farklı diller için karakter/grafem dizileri (örneğin, alfabenin harfleri) modellenmiştir. Karakter dizileri için, "günaydın"dan oluşturulabilen 3 gram (bazen "trigram" olarak anılır) "goo", "ood", "od", "dm", "mo", "mor" şeklindedir. " vb., boşluk karakterini gram olarak sayma (bazen bir metnin başı ve sonu, "_ ⁠_g", "_go", "ng_" ve "g_ ⁠_" eklenerek açıkça modellenir). Kelime dizileri için, "köpek kokarca gibi kokuyordu" dan üretilebilecek trigramlar (zona) "# köpek", "köpek kokuyordu", "köpek kokuyordu", "gibi kokuyordu", "gibi bir kokarca" ve "bir kokarca #".

Ayrıca bakınız 

 kollokasyon
 Gizli Markov modeli
 n-tuple
 dize çekirdeği
 MinHash
 Özellik çıkarma
 En uzun ortak alt dize sorunu

Konuyla ilgili yayınlar 

 Christopher D. Manning, Hinrich Schütze, İstatistiksel Doğal Dil İşlemenin Temelleri, MIT Press: 1999.ISBN'si 0-262-13360-1 .
 
 Frederick J. Damerau, Markov Modelleri ve Dil Teorisi . Mouton. Lahey, 1971.

Dış bağlantılar 

 Google'ın Google Kitaplar n-gram görüntüleyicisi  ve Web n-gram veritabanı  (Eylül 2006)
 Microsoft'un web n -gram hizmeti 
 STATOPERATOR N-gram Alexa Top 1M'deki her alan için Proje Ağırlıklı n -gram görüntüleyici 
 425 milyon kelime Corpus of Contemporary American English'ten en sık kullanılan 2,3,4,5 gram 1.000.000 
 Peachnote'un müzik ngram görüntüleyicisi 
 Stokastik Dil Modelleri ( n-Gram) Belirtimi  (W3C)
 Michael Collins'in n -Gram Dil Modelleri üzerine notları 
 OpenRefine: Derinlemesine Kümeleme 

Bilişimsel dilbilim
Doğal dil işleme