O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

200614 deep learning for_symbolic mathematics

592 visualizações

Publicada em

ICLR2020オンライン読み会で登壇した資料

Publicada em: Dados e análise
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

200614 deep learning for_symbolic mathematics

  1. 1. ICLR2020オンライン読み会 DEEP LEARNING FOR SYMBOLIC MATHEMATICS Kyoto June 14, 2020 発表者 : 株式会社エクサウィザーズ 藤井亮宏
  2. 2. 自己紹介 名前 : 藤井亮宏(アキヒロ) ExaWizardsにおける仕事内容 • Machine Learning Engineer • 画像分類 • 物体検知 • 時系列解析 • 異常検知 • ML系のイベント主催 • CVPR, AAAI等の重要国際会議 • GAN等の⽣成モデルに絞った勉強会 @AkiraTOSEI @akihiro_f ML関係のことを投稿 論⽂の⼀⾔紹介とか
  3. 3. 近年、ML×自然科学がアツい! 化学・物理などの自然科学分野と機械学習(ML)を組み合わせた研究が増えている (気がする) AI Feynman[2] データから物理法則をシンボル 形式で”発⾒”できるモデル。NN のTrain/validデータを使って仮説 検証させることがポイント。 物理 x ML Fermi Net[3] 波動関数の近似計算を機械学習 が担うことで、汎⽤的に精度が ⾼い量⼦化学計算⼿法を提案 化学 x ML
  4. 4. ML×数学@ICLR2020 このスライドでは、ML×数学を取り扱った研究を紹介します。 DEEP LEARNING FOR SYMBOLIC MATHEMATICS 著者: Guillaume Lample, Franc ̧ois Charton 研究機関: Facebook AI Research 論文URL https://openreview.net/forum?id=S1eZYeHFDS
  5. 5. まず、手始めに… この式を積分してください。
  6. 6. 積分/微分方程式をMLで解く! ”DEEP LEARNING FOR SYMBOLIC MATHEMATICS”では、積分や常微分方 程式(ODE)を、シンボル形式のまま解くことができる! ODE Model積分 Model
  7. 7. Method
  8. 8. 技術的なサマリ 積分/微分方程式を解くモデルを作るにあたって、技術的に重要なのは以下3点。 1. 「数式を解く」ことを「翻訳」と解釈し、Seq2Seqモデル を使う 2. 部分積分等を駆使して、問/解のペアデータセットを作る 3. 数学的な評価を入れながら、「数式の翻訳(数式の解)」を 評価する
  9. 9. 「数式を解く」≒「翻訳」 「数式を解く」と「翻訳」は変換前後で対象の本質的な意味は変わらない。 本研究では、「数式を解く」ことを「翻訳」と扱って問題を解いている。 I play tennis today 今⽇テニスをします Seq2Seq Model 同じ意味 Seq2Seq Model 等価 機械翻訳 本研究でやりたいこと ! 𝑑𝑥
  10. 10. 数式は木構造で表せる! 数式は木構造に分解することができるが、この形式のまま扱いにくい 数式を⽊構造へ変換 • 数値/演算⼦の依存関係が明確になる。 • 関数と加算(+)などの演算⼦が同列に扱え る • モデルが複雑になる • 通常のSeq2Seqに⽐べ ると遅い Seq2Seq Model For Tree cos 𝑥 + 3 8𝑥! Seq2Seq4Tree Model
  11. 11. 木構造をそのまま扱うと重いので、Polish Notationを使う。 通常のSeq2Seqで扱えるPolish Notationに木構造を変換することで、 木構造のメリットを保ったまま扱いやすくする Seq2Seq Model (Transformer Model[4]) Polish Nota+on Polish Notation ⽊構造からPolish Notationへ • 通常のSeq2Seqモデルで扱える。 • ⽊構造と⼀対⼀対応している。 • 数値/演算⼦の依存関係が明確になる。 • 関数と加算(+)などの演算⼦が同列に扱 える Polish NotaConでSeq2Seqに ⼊れて数式を”翻訳”する 問題 解 + 2 × 3 + 5 2 _ スペースを使って、被演算⼦の区切りを表現
  12. 12. データセットの作成①積分問題 積分のデータセット(問題/解のペア)を以下3つの方法で作成する。 • ランダムに式を生成して、汎用ライブラリで積分してペアを作る • ランダムに式を生成して微分する • 部分積分を利用する 𝑓 𝐹( 𝑑𝑥 積分 𝑓, 𝐹 𝐹 𝑓 𝑑 𝑑𝑥 微分 𝑓, 𝐹 ※積分できなかったものは使⽤しない 問題、解 問題、解 (次項で詳述)
  13. 13. データセットの作成①部分積分を利用した積分データセット作成 ランダムに関数を生成し、未知部分がデータセットにあるか問い合わせながら データセットを作る 𝐺 𝑔 𝐹 𝑓𝑑 𝑑𝑥 Dataset 問 解 𝑓𝐺 𝐻 … … … … fGの積分が既にデータ セット内にあるか参照 する 𝐻 fGの積分がデータセットにあれば、 FGと合わせて“解”とする 問 解 ランダムに数式F,Gを⽣成 し、微分してf,gを作る Fg(fG)の積分式を”問”にし、解の未知部 分であるfG(Fg)の積分式をデータセット 内から探す fG(Fg)がデータセット内にあれば、(問,解)ペアが 出来るので、新たにデータセットに追加する。 無ければ次のループへ 既知 未知問
  14. 14. データセットの作成②常微分方程式問題 微分方程式のデータセット(問題/解のペア)を、「定数Cを使った関数をラン ダムに作って、それについて解く」ことで作成する。 問題 解 ※2階常微分⽅程式のデータセットも作っている が、同じような⼿法なので割愛
  15. 15. 数学的な評価指標も使いながらモデルを評価する 翻訳モデルで良く使われるBLEUスコアに加えて、数学的に正しいかどうかを 評価する指標も加えながら評価する。 • BLEUスコア • 数学的に正解か(表現が異なっていても等価なら正解にする) 問題 解 解と等価な式1 (表現が異なるだけで等価) 解と等価な式2 (定数Cの選び⽅が異なる) SymPyライブラリで⼀致 を確認 yとして代⼊して⼀致を 確認 機械翻訳でよく⽤いられる評価指標。正解⽂と⽣成⽂の各要素の ⼀致度で評価する
  16. 16. 数式の表記揺れに対応した評価方法 Beam-Searchを利用して、複数の候補を同時評価することで表記揺れに対応する 予測時は、考えられる全パターン(単語の 最後まで)の確率を算出しているが、メモ リ効率が⾮常に悪いため、励起確率が低い ものは探索範囲からのぞく技術。 Beam-Search 今⽇は良い天気ですね 0.01 今⽇はお⽇柄も良く… 0.002 今⽇ に 0.2 ん 0.001 は 0.5 が 0.01 ・・・・・・ ・・・ お⽇柄 0.3 ・・・・・・ 良い 0.2 Beam-Searchを利⽤した 複数候補の同時評価 問題 解 Beam-Search数に応じた複数候補出⼒ 1つでも正解したらOK。ちょっとズルい気もする…
  17. 17. Result
  18. 18. 高精度で積分/常微分方程式を解ける 2階常微分方程式では90%程度、それ以外で100%に近い高精度で問題を解ける。 積分 常微分⽅程式 FWD : ソフトを使って積分したペアを使⽤ BWD : 微分を利⽤したデータセット IBP : 部分積分を利⽤したデータセット 1階常微分⽅程式 2階常微分⽅程式
  19. 19. 汎用ソフトウェアより性能が良い ビームサーチの幅が広い(多くの正解候補を出す)水準ではMathematicaなど の汎用ソフトより良い性能を出している。
  20. 20. 解いた問題の例 積分/微分方程式ともに、難しそうな問題も解くことができている。
  21. 21. Summary このスライドでは、ML×数学を取り扱った”DEEP LEARNING FOR SYMBOLIC MATHEMATICS”という研究を紹介した。要点は以下4つ。 1. 「数式を解く」ことを「翻訳」と解釈し、Seq2Seq モデルを使う 2. 部分積分等を駆使して、問/解のペアデータセットを 作る 3. 数学的な評価を⼊れながら、「翻訳(数式を解く)」 を評価する 4. Mathematica等より良い精度で積分/常微分⽅程式を 解くことができる。
  22. 22. 参考資料
  23. 23. STRICTLY CONFIDENTIAL | 23 2階の常微分方程式データセットの作り方
  24. 24. Reference
  25. 25. STRICTLY CONFIDENTIAL | 25 Reference 1. Guillaume Lample, François Charton, Deep Learning For Symbolic Mathematics, ICLR2020 2. Silviu-Marian Udrescu, Max Tegmark, AI Feynman: a Physics-Inspired Method for Symbolic Regression, arXiv:1905.11481 (2019) 3. David Pfau et al.Ab-Initio Solution of the Many-Electron Schrödinger Equation with Deep Neural Networks, arXiv:1909.02487 (2019) 4. Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, Illia Polosukhin, Attention Is All You Need, arXiv:1706.03762 (2017)

×