多値分類における階層構造を利用したマルチタスク学習とその解釈性 / Multi-task Learning for solving hierarchical multilabel classification and its interpretability

13d936e697fe0f4fa96f926d0a712f6c?s=47 Sansan
April 24, 2019

多値分類における階層構造を利用したマルチタスク学習とその解釈性 / Multi-task Learning for solving hierarchical multilabel classification and its interpretability

■イベント
【Sansan×エムスリー】自然言語処理勉強会(ライブ配信あり)
https://sansan.connpass.com/event/125652/

■登壇概要
タイトル:多値分類における階層構造を利用したマルチタスク学習とその解釈性

登壇者:DSOC R&D Group 奥田裕樹

▼Sansan Builders Box
https://buildersbox.corp-sansan.com/

13d936e697fe0f4fa96f926d0a712f6c?s=128

Sansan

April 24, 2019
Tweet

Transcript

  1. 多値分類における階層構造を利用した マルチタスク学習とその解釈性 【Sansan×エムスリー】自然言語処理勉強会 奥田 裕樹 2019/04/24

  2. None
  3. 話すこと・話さないこと - 話すこと:経験的な話 - いくつかのニューラルネットの構造を試してみた実験結果 - マルチタスク学習のモデルを解釈してみた結果 - 話さないこと:理論的な話や既存研究 -

    マルチタスク学習の網羅的なサーベイや理論的な背景 > 研究者の方々には頑張っていただきたい(私には無理でした) 2
  4. 多値分類のマルチタスク学習

  5. 対象とするタスク - ラベルが階層構造を持つ多値分類 - 下位のラベルを集約する上位のラベルが存在する - 上位のラベル数は少なく、下位のラベル数は多いという想定 > 下位のラベルを直接推定するのは難しいとする 4

    銀行 証券 保険 通信サービス IT ソフトウェア 金融 情報・通信 建築 不動産 建築 ニュース記事の大分類と小分類
  6. マルチタスク学習 MTL - ラベルのメタ情報を上手く活用したい - 上位構造を推定することで、目的とする下位構造の推定が容易になるのでは - ニューラルネットの構造を工夫することで拡張可能 - 単純には出力層を2つ用意する

    - 様々なNNの構造が提案されている > 詳細はSebastian Ruderのサーベイを参考 5 関連する複数のタスクを同時に学習させることで,これらのタスクに共通の 要因を獲得させ,タスクの予測精度を向上させる http://ibisforest.org/index.php?マルチタスク学習
  7. 6 from http://ruder.io/multi-task/index.html MTLの愉快な仲間たち (闇)

  8. 今回のタスクで採用するMTLの構造 - Hard Parameter Sharing - 共有の隠れ層を持ち、タスク固有の層から 出力層につながる > 共通の隠れ層でタスク共通の特徴を抽出し

    てほしい > タスク固有の層でタスク固有の特徴を抽出 してほしい 7 from http://ruder.io/multi-task/index.html ではShared LayersとTask-specific Layersはどう設計すれば良いか?
  9. 今回検討するニューラルネット3種 Embedding Input BiLSTM Output Output 下位ラベル 上位ラベル Embedding Input

    BiLSTM Maxpooling Output Output Maxpooling Maxpooling BiLSTM Embedding Input BiLSTM Maxpooling Output Output Maxpooling BiLSTM Concat 下位ラベル 上位ラベル 下位ラベル 上位ラベル MTL-Simple MTL-Stack MTL-Stack-Concat
  10. 今回検討するニューラルネット3種 Embedding Input BiLSTM Output Output 下位ラベル 上位ラベル Embedding Input

    BiLSTM Maxpooling Output Output Maxpooling Maxpooling BiLSTM Embedding Input BiLSTM Maxpooling Output Output Maxpooling BiLSTM Concat 下位ラベル 上位ラベル 下位ラベル 上位ラベル MTL-Simple MTL-Stack MTL-Stack-Concat Shared Layerの出力から直接 上位ラベルと下位ラベルを 予測 するモデル MTL-Simpleに対して Task-specific Layerをより  複雑にしたモデル Task-specific Layerの入力を Shared Layerの出力に加えて 単 語ベクトルも連結させたモデル
  11. 比較モデル - シングルタスク学習(下位ラベルを直接推定) - SVC > TF-IDF特徴量に対してSVC - BiLSTM >

    マルチタスク学習で利用するBiLSTMを用いたモデル - マルチタスク学習 - MTL-Simple - MTL-Stack - MTL-Stack-concat 10
  12. 実験データセット - 20 newsgroups - 多値分類でよく使われるベンチマークデータ (scikit-learnにも入っている) - 全20ラベル、上位ラベルは7ラベル >

    いくつか階層があるが今回は7/20のみ利用 - 約1.8万件 - 67 news-jp - 日本語ニュース記事に付与されたカテゴリ情報 - 全67ラベル、上位ラベルは15ラベル - 約12万件 11 20 newsgroupsのラベル例
  13. 結果 12 20 newsgroups 67 news-jp Accuracy F1 Accuracy F1

    SVC BiLSTM MTL-Simple MTL-Stack Model Single-task Multi-task MTL-Stack-Concat 76.4 83.1 76.4 82.4 37.8 50.1 28.5 40.3 83.2 83.4 82.3 82.6 49.6 50.7 38.9 40.5 84.4 83.6 51.0 42.6 - 2つのタスクでMTLが最も良い精度となった - タスク固有の層にBiLSTMの出力と単語ベクトルを連結したMLT
  14. マルチタスク学習モデルの解釈

  15. 機械学習モデルの解釈 - 解釈性 Interpretability - 最近流行りのトピック (な気がする) - 詳しくはChristoph Molnar,

    “Interpretable Machine Learning”を参照 - 何のための解釈か? - 1) モデルの挙動が正しいと人を説得するため > 予測値を出すに至る判断根拠(モデル/データ) > 納得感のある形での自然現象の理解 - 2) モデルのデバッグのため > 誤った入力/出力をしていないか、Leakageはないか > モデルが潜在的に持つバイアスを検知 14
  16. 私たちは何を解釈したいか? - 私たち = 機械学習エンジニア - (今のところ) 人に対して説明したいわけではない - Question:

    “なぜ精度を上げられたのか?” - 捉えられなかった特徴が捉えられるようになったから? - パラメータ数が多くなりモデルが複雑になったから? - たまたま?(乱数のシード値やデータの特性の影響) 15 https://xkcd.com/1838/
  17. どうやってモデルを解釈するか? - Leave-one-out (Feature Erase) - 入力文から単語を一つずつ順番に抜いていって、出力確率の変化から単語の重要 度を測る - 単語単位でPos/Negの差分をヒートマップで可視化する

    16 Li, Jiwei, Will Monroe, and Dan Jurafsky. "Understanding neural networks through representation erasure." arXiv preprint arXiv:1612.08220 (2016). This is a pen This is a pen This is a pen This is a pen This is a pen Model 0.90 0.85 : This 0.94 : is 0.90 : a 0.68 : pen Predict Value Input
  18. シングルタスク→マルチタスクで正解した例 (1) 17 エアロエッジ、航空機エンジン部品増産 10億円投資航空機エンジン部品製造の AeroEdge(エアロエッジ、 栃木県足利市)は主力のタービンブレード(羽根)を増産する。 10億円を投じて本社工場に切削・研磨など の工作機械や検査ラインを新たに導入し、月産枚数を 3年後をめどに5倍に引き上げる。航空機市場は中

    型機に人気が集まり、搭載 エンジンの需要が拡大している。積極投資で増産体制を整える。 エアロエッジ、航空機エンジン部品増産 10億円投資航空機エンジン部品製造の AeroEdge(エアロエッジ、 栃木県足利市)は主力のタービンブレード(羽根)を増産する。 10億円を投じて本社工場に切削・研磨など の工作機械や検査ラインを新たに導入し、月産枚数を 3年後をめどに5倍に引き上げる。航空機市場は中 型機に人気が集まり、搭載 エンジンの需要が拡大している。積極 投資で増産体制を整える。 エアロエッジ、航空機エンジン部品増産 10億円投資航空機エンジン部品製造の AeroEdge(エアロエッジ、 栃木県足利市)は主力のタービンブレード(羽根)を増産する。 10億円を投じて本社工場に切削・研磨など の工作機械や検査ラインを新たに導入し、月産枚数を 3年後をめどに5倍に引き上げる。航空機市場は中 型機に人気が集まり、搭載エンジンの需要が拡大している。積極 投資で増産体制を整える。 シングルタスク マルチタスク Positive Effect Negative Effect ✕ 自動車部品 (輸送機器) ◯ 輸送用機械 ◯ 製造業 https://www.nikkei.com/article/DGXMZO30175630X00C18A5L60000/
  19. シングルタスク→マルチタスクで正解した例 (2) 18 オハラ、車載カメラ専用ガラス、温度変化に強く画像鮮明保つ光学ガラス製造のオハラは車載カメラのレ ンズ専用ガラスを開発した。このガラスを使ったレンズと通常のガラスレンズを併用することで、直射日光 や雨、雪などによる温度変化があっても屈折率がほとんど変わらず、鮮明な画像が常に得られるのが特 長。車載カメラ専用に設計したガラスは世界初という。自動 運転技術の普及をにらみ、車載カメラメーカー に売り込む。 オハラ、車載カメラ専用ガラス、温度変化に強く画像鮮明保つ

    光学ガラス製造のオハラは車載カメラのレ ンズ専用ガラスを開発した。このガラスを使ったレンズと通常のガラスレンズを併用することで、直射日光 や雨、雪などによる温度変化があっても屈折率がほとんど変わらず、鮮明な画像が常に得られるのが特 長。車載カメラ専用に設計したガラスは世界初という。 自動運転技術の普及をにらみ、 車載カメラメーカー に売り込む。 オハラ、車載カメラ専用ガラス、温度変化に強く画像鮮明保つ 光学ガラス製造のオハラは車載カメラの レ ンズ専用ガラスを開発した。このガラスを使ったレンズと通常のガラスレンズを併用することで、直射日光 や雨、雪などによる温度変化があっても屈折率がほとんど変わらず、鮮明な画像が常に得られるのが特 長。車載カメラ専用に設計した ガラスは世界初という。自動運転技術の普及をにらみ、車載 カメラメーカー に売り込む。 シングルタスク マルチタスク Positive Effect Negative Effect ✕ 半導体・電子部品 (機械・エレクトロニク ス) ◯ 窯業・土石製品 ◯ 製造業 https://www.nikkei.com/article/DGXLASFB13H3J_T10C17A6L82000/
  20. まとめ - 多値分類における階層構造を利用したマルチタスク学習 - ニューラルネットの出力層を2つにすることで容易に拡張できる > 共通のレイヤーと固有のレイヤーを持たせる&入力を工夫する - 精度が数%ではあるが向上した >

    微々たる向上程度…… - マルチタスク学習におけるモデルの解釈 - Leave-one-outを用いて解釈を行った > モデル構造やパラメータの解釈が難しいので、モデルの挙動から解釈していく - タスクにより予測結果に寄与する単語は異なっていた > マルチタスク学習としての効果はあるように見える > 解釈に恣意的な余地があり、検討は慎重にする必要がある(とくに因果関係) 19