Bluemo's Brain

Search

Search IconIcon to open search

言語モデル

Last updated Unknown Edit Source

    情報科学の達人.icon 自然言語処理の講義

    • 言語モデルの定義の一つ: 文の「もっともらしさ」を評価する

      • 音声認識とかのいくつかの認識結果候補から一つを選ぶのにも使える
    • 確率的言語モデル

      • 「[[文]]」の数学的表現
        • 文s = hello world
          • は、文頭/文末を表す単語的存在
      • ↑を用いて、文らしさを評価
        • P(a|b)は、bが来たあとのaの単語出現確率
        • P() * P(hello | ) * P(world | hello) * P( | hello world)
        • 各単語について、それ以前の文章から考えてその単語がどのくらいありうるかを評価
        • P(a|b)をどうするか
          • 最尤推定
            • コーパスの出現頻度で簡単に計算できる
            • 低頻度な現象には弱い
            • 0を返されるとP(a|b)の総乗が0になってしまう
          • n-gramによる近似
            • 単語以前の全てではなく、単語以前のn単語のみを用いて最尤推定
            • nが小さいほど、低頻度な物に強くなる
            • nが多いほど長い文脈を考慮できる
          • ニューラルネットワークによる推定
            • RNNに突っ込む
    • 言語モデルは、尤もらしさ等を測る上で単語間の繋がりの情報を保持している

      • つまり、言語モデルは文章等をベクトルにエンコード/デコードする物とも定義できる?
    • ニューラルネットワークによる言語モデル

      • RNNに突っ込んでembedding (エンコード)
      • Attention機構
        • 長い文になると、各単語が出力ベクトルに与える影響が小さくなってしまう
          • 出力ベクトルのサイズは固定
        • アテンションの重みを計算して、重要な単語を強く反映させる
      • Transformer
        • RNN再帰を無くして、注意機構のみでエンコード/デコード
      • ベクトルへのエンコードと、その別言語によるデコードができれば機械翻訳が出来る
    • GPT-3, BERTなどはTransformerの応用

    • Pre-trained言語モデル

      • 様々なタスクに適応できる言語モデル
      • 大規模モデルはメンテナンス等にコストかかり、扱いにくい
        • 専用の小さいモデルと比べて、この点がデメリット
      • 軽量なモデル(DistillBERTとか)も作られている
    • 人間の言語能力が強い言語モデルよりすごい理由