Initializing Convolutional Filters with Semantic Features for Text Classification arXivtimes 論⽂輪講 2017/11/15 嘉村 準弥
Initializing Convolutional Filters with Semantic Features for Text Classification
arXivtimes 論⽂輪講 2017/11/15 嘉村 準弥
Agenda
• 概要 • ⼿法
• N-gram Selection • Filter Initialization
• 実験/結果 • まとめ
概要
• CNNによる⽂書分類において、畳み込み層のフィルター初期化に意味特徴を⽤いる提案
• ランダムに設定より性能を向上させつつ、計算量を抑える
• 感情分析やトピック分類など様々なタスクに適⽤できる
先⾏研究
• Convolutional Neural Networks for Sentence Classification • ⽂を単語ベクトルの列として表現し、CNNによって特徴を抽出・分類を⾏
なう。事前学習済みの単語ベクトル(Google Newsをword2vecで学習したもの)を使うことで性能が向上
• 先⾏研究のモデルがベースembedding層は1層
• 畳み込み層のフィルターを改良フィルターに意味特徴を含ませる例として極性判定の場合「not bat」に対して活性化させるフィルターとして初期化する。
• N-gram Selection • Filter Initialization
提案⼿法
• 訓練データから分類する各カテゴリの特徴をN-gramとして得る。N-gramの重要度をNaive Bayes(NB) weightingでスコア付けする。
N-gram Selection
positive
negative
1 amazing2 good3 interesting4 nicepositive category
1 bad2 boring3 uninteresting4 tedious
negative category
r���� :NBweightc���� : w : pcw :c wpc 1 :c p!cw �� :c wp!c 1 :c α ��� :������
N-gram Selectionの例
• 分類すべきカテゴリの特徴を表す単語ベクトルを得るN-gram Selectionで得た結果をK-means法でクラスタに分割する。 クラスタ中⼼のベクター(centroid vector)はクラスタの特徴を表す単語ベクトルとなる。
Filter Initialization
interesting
amazing
×:centroid
good
nice
1 amazing2 good3 interesting4 nicepositive category
×
×
Filter Initialization
• centroid vectorを畳み込み層のフィルターの初期値とする。フィルターの中⼼に得られた単語ベクトルを設定する。(図中⿊マス) それ以外の位置(図中⽩マス)はランダム値で設定する。
提案⼿法 全体像
××
N-gram Selection Filter Initialization
実験
• 提案⼿法 事前設定 N-gram Selectionでは上位10%の語句を利⽤。 提案⼿法以外のパラメータはベース⼿法の設定値に揃える。 ・単語ベクトルは300次元 ・フィルターは300枚
• タスクベース論⽂と同様の7つのデータセット。(MR,SST-1,SST-2,Subj,TREC,CR,MPQA)
• 実験⽅法 • 提案⼿法の性能確認実験
N-gramのサイズを変えて性能を確認(uni,bi,tri) • ⽐較実験
ベース⼿法や他の⼿法と⽐較
提案⼿法の性能確認
• いずれのテストデータセットに対してもベース⼿法と同等もしくはそれ以上の性能を⽰す
• MPQAにおいてはNB weightingで性能が上がらないことが他の研究で確認されている(Wang and Mannig, 2012)
※Accuracy
⽐較実験
• 上位グループ(ベースラインの派⽣型)との⽐較では3つのタスクにおいて良い性能を⽰す
• 下位グループ(複数モデルを利⽤する⼿法)と⽐較しても争えるくらいの性能を⽰している。
• 提案⼿法は2クラス・多クラス分類の両者で全般的に良い性能が⽰せており、他の外部知識を利⽤せずに実装できるためNLP全般で利⽤可能
まとめ
• CNNのフィルターに意味特徴を初期値として設定することで、様々な分類タスクに対して良い性能を⽰すことができる
参考⽂献
• Initializing Convolutional Filters with Semantic Features for Text Classification
• Convolutional Neural Networks for Sentence Classification