いくつかの理由により、単語の代わりに文字N-gramが使用されます。
1)特定の言語に必要な単語のリストは非常に多く、高速、高速、最速、絶食、断食、断食などをすべての異なる単語と見なすと、おそらく100,000です。80言語の場合、約80倍の単語が必要であり、50メガバイト以上の多くのスペースを占有します。
2)26文字のアルファベットの文字トライグラムの数は26 ** 3または約17,000で、クアッドグラム(N = 4)の場合、そのアルファベットを使用するすべての言語をカバーする約450,000です。30〜100文字の大きなアルファベットのN-gramの場合は、似ているがやや大きい数字。Hanスクリプトに4000以上の文字があるCJK言語の場合、ユニグラム(N = 1)で十分です。一部のUnicodeスクリプトでは、スクリプトごとに1つの言語(ギリシャ語、アルメニア語)しか存在しないため、文字の組み合わせは必要ありません(いわゆるnil-grams N = 0)
3)単語では、辞書にない単語を指定しても情報はまったくありませんが、文字N-gramでは、その単語内に少なくともいくつかの有用な文字の組み合わせがあります。
CLD2は、ラテン語、キリル語、アラビア語を含むほとんどのUnicodeスクリプト(アルファベット)にクアッドグラム、CJKスクリプトにユニグラム、他のスクリプトにnilgramを使用します。また、区別するための限られた数の非常に特徴的でかなり一般的な完全な単語と単語のペアを含みますインドネシア語やマレー語などの統計的に類似した言語の難しいグループ内。文字のバイグラムとトライグラムは、おそらく少数の言語を区別するのに役立ちます(約8つ、https://docs.google.com/document/d/1NtErs467Ub4yklEfK0C9AYef06G_1_9NHL5dPuKIH7k/editを参照してください)、しかし何十もの言語を区別するのに役に立たない。したがって、CLD2はクワッドグラムを使用し、各文字の組み合わせに、その組み合わせを使用する上位3つの最も可能性の高い言語を関連付けます。これにより、80言語を約1.5 MBのテーブルでカバーし、160言語を約5 MBのテーブルでより詳細にカバーできます。