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.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.İş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).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.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 #".Christopher D. Manning, Hinrich Schütze, İstatistiksel Doğal Dil İşlemenin Temelleri, MIT Press: 1999.ISBN'si 0-262-13360-1 .425 milyon kelime Corpus of Contemporary American English'ten en sık kullanılan 2,3,4,5 gram 1.000.000