Novice Blog

死ぬまでずっと途中だ!

【論文紹介】"CHARAGRAM: Embedding Words and Sentences via Character n-grams"

EMNLP 2016にacceptされていた論文
"CHARAGRAM : Embedding Words and Sentences via Character n-grams"
を読んだのでまとめた.

paper : https://arxiv.org/abs/1607.02789
github : https://github.com/jwieting/charagram


CHARAGRAM : Embedding Words and Sentences via Character n-grams

  • EMNLP 2016

どんなもの?

文字レベルのn-gramを用いてtextual sequencesを
低次元のembeddingへと変換するCHARAGRAMという手法を提案

これができるとどう嬉しいの?

  • word embedding modelにsubword information(部分文字列)もモデルに組み込みたい

    • knowledge-based morphological features
      (Alexandrescu and Kirchhoff, 2006; El-Desoky Mousa et al.,2013)
    • learned embeddings jointly for subword units and words
      (Lazaridou et al., 2013; Botha and Blunsom, 2014; Qiu et al., 2014; Chen et al., 2015)
  • 近年は,character sequencesを組み込むのがトレンドに

    • Bidirectional long short-term memory (Bi-LSTM) on characters to embed arbitrary word types,
      showing strong performance for language modeling and POS tagging.

 → subword information + character sequences = CHARAGRAM

先行研究と比べてどこがすごい?

自然言語処理タスクにおいては「単語」が最小の単位として扱われ,
そのword embeddingを用いた研究がほとんど.
いくつかの先行研究では文字ベースの特徴を扱う Recurrent Neural Network (RNN) や Convolutional Neural Network (CNN) などが存在.

本研究では CHARAGRAM という,文字レベルのn-gramをシンプルな非線形関数に入力することで低次元のembeddingを獲得し,
単語や文の類似度算出,品詞タグ付けといったタスクに応用している.

【利点】
文字レベルのn-gramを用いているため,

  • 語の順序といった性質が保存
  • 辞書の語彙内に存在しない単語についても対処可能

技術や手法のキモはどこ?

  • 文字レベルのn-gramの使用
  • シンプルな非線形関数を用いて低次元のembeddingを獲得

どうやって有効だと検証した?

  1. word similarity
  2. sentence similarity
  3. part-of-speech tagging
    の3つのタスクで評価

【比較手法】

  • Character level LSTM based model
  • Character level CNN based model

CHARAGRAM が比較手法をout-perform

議論はある?

  • 文字ベースn-gramの畳み込みフィルタと文字ベースn-gramCHARAGRAM は似たものとなってはいるが,
    CNNではすべての文に影響を与える一方で CHARAGRAM は対象となるベクトル表現にのみ影響を与える.

  • CHARAGRAM は学習の収束がとても速い

  • Character level LSTM based model, Character level CNN based modelはとても多くのパラメータを有しているが,
    CHARAGRAM はとても少ないパラメータで優位な結果

  • 単語ベースの特徴を用いる PARAGRAM-PHRASE では辞書の語彙内に存在しないような単語やスペルミスなどが含まれている場合性能が落ちるが,
    文字ベースの特徴を用いているCHARAGRAMでは性能の低下が抑制

  • CHARAGRAM は単語ベースの PARAGRAM-PHRASE と違い単語の順番を保存する性質があるため,
    ある単語についてNearest neighborで近いベクトルを探したところより特徴を掴んだ語を得ることが可能

次に読むべき論文は?