AI用語集・ディープラーニングの応用例

n-gramとは

エヌグラム

別名:Nグラム、N-gram

  • シラバス 技術27
  • ◯×チェック3問
  • 練習問題3問

最終更新日:作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合)人による確認:未出典

1行定義

n-gramとは、文章中で連続するn個の文字や単語の並びと、その並びを単位として文章を扱う考え方のことです。

くわしく

n-gramは、文章を「連続するn個の要素」に区切って扱う考え方です。要素は文字のことも、単語のこともあります。nが1ならuni-gram、2ならbi-gram、3ならtri-gramと呼びます。

たとえば「猫/が/魚/を/食べる」と単語に区切った文の単語bi-gramは、「猫/が」「が/魚」「魚/を」「を/食べる」の4つです。

n-gram言語モデル

文章がどれくらい自然かを確率で表すのが言語モデルです。n-gram言語モデルは、「次の単語は直前のn−1語だけで決まる」と単純化します。この単純化をマルコフ性の仮定と呼びます。bi-gramならP(食べる | を)のように直前の1語だけを条件にし、その確率をコーパスでの出現回数から求めます。文全体の確率は、これらの確率の積で近似します。

統計的機械翻訳や音声認識では、訳文や認識結果の候補がどれだけ自然かを評価するのに、長く使われてきました。古くは1948年に、Shannonが文字や単語のn-gramを使って英語らしい文を作る例を示しています。

弱点

nを大きくすると長い文脈を見られます。しかし、ありうる並びの数は語彙の数のn乗で増えます。学習データに一度も現れない並びの確率が0と推定される問題が起きやすく、確率を少しずつ割り振り直すスムージングで対処します。また、n−1語より前の情報は使えません。この限界を超えるために、RNNやTransformerによるニューラル言語モデルが発展しました。

言語モデル以外の使い道

  • 特徴量:BoWで数える単位をbi-gramなどに広げ、近くの語順を一部とり込みます。
  • 文字n-gram:単語に区切らずに文字の並びのまま扱えるため、全文検索の索引に使われます。fastTextは、単語を文字n-gramの集まりとして表し、未知語にもベクトルを与えます。

覚え方

「n個ずつ、1つずらしで切り出す」と覚えます。

G検定での出題

出題のされ方

nの値とuni-gram・bi-gram・tri-gramの対応、直前のn−1語から次の語の確率を求めるn-gram言語モデルの考え方、nを大きくすると学習データが足りなくなる問題、文字n-gramと単語n-gramの違いが問われます。

混同しやすい用語

用語意味
n-gramこのページの用語文章中で連続するn個の文字や単語の並びと、その並びを単位として文章を扱う考え方
スキップグラムword2vecの2つのモデルのうち、中心の単語から周辺の単語を予測するように学習して、単語の分散表現を得るモデル

◯×チェック

3問

次の文が正しいか、誤りかを選んでください。

  1. n-gram言語モデルでは、次の単語の確率を、文の先頭から直前までのすべての単語を条件として求める。

    答えを見る

    答え × 誤り

    条件にするのは直前のn−1語だけです。たとえばtri-gramなら直前の2語です。それより前の語の影響は扱えず、この限界はRNNやTransformerによる言語モデルで補われました。

  2. 語彙が1万語のとき、単語のtri-gramとしてありうる並びの数は、bi-gramの1万倍になる。

    答えを見る

    答え ◯ 正しい

    bi-gramは1万の2乗で1億通り、tri-gramは1万の3乗で1兆通りです。nを大きくするほど組み合わせが急増し、学習データに一度も現れない並びが増えます。

  3. 「人工知能」を文字単位のbi-gramに分けると、「人工」「工知」「知能」の3つになる。

    答えを見る

    答え ◯ 正しい

    1文字ずつずらしながら、連続する2文字を取り出します。4文字の語からは3つ、一般にm文字からはm−1個のbi-gramができます。

この用語の練習問題

3問
  1. #0308統計的機械翻訳の訳文選択難易度 標準・単一選択未回答
  2. #0217bi-gram言語モデルの確率難易度 標準・単一選択未回答
  3. #0412全文検索の索引の単位難易度 標準・単一選択未回答

出典

作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合)人による確認:未 最終確認日: 対応シラバス:シラバス第1.4版 技術27

誤りを報告

表示設定

テーマ
文字の大きさ
問題演習