Más contenido relacionado La actualidad más candente (20) Similar a ディープラーニング最近の発展とビジネス応用への課題 (20) ディープラーニング最近の発展とビジネス応用への課題14. 定量量的構造活性相関 (QSAR)
この化合物は「薬」になるか?
• Quantitative Structure-Activity Relationship
• 化合物の構造と薬効・毒性の関係を解析
• 体内酵素に代謝されやすいか?
• 受容体を阻害しやすいか?
• 製薬⼤大⼿手MerckがQSARのデータマイニングコンペ
ティションを主催 (2012)
• ヒントングループがマルチタスク深層学習ベースの
⼿手法で勝利利 **
14
CYP3A4 *
⾼高精度度なQSAR
↓
⾼高精度度なHTS
(化合物スクリーニング)
↓
薬効を持つ化合物
発⾒見見確率率率上昇
* hERG potassium channels and cardiac arrhythmia, Michael C.
Sanguinetti & Martin Tristani-Firouzi, Nature 440, 463-469(23 March
2006) (doi:10.1038/nature04710) Fig. 5
** Dahl, George E., Navdeep Jaitly, and Ruslan Salakhutdinov. "Multi-
task Neural Networks for QSAR Predictions." arXiv preprint
arXiv:1406.1231 (2014).
*** http://blog.kaggle.com/2012/10/31/merck-competition-results-
deep-nn-and-gpus-come-out-to-play/
↑ コンペティション結果
アナウンス記事***
16. 結果詳細 *
アッセイID シングルタスク マルチタスク 差
1851 (1a2) 0.926 0.938 0.012
1851 (2c19) 0.897 0.903 0.006
1851 (2c9) 0.889 0.907 0.018
1851 (2d6) 0.863 0.861 -0.002
1851 (3a4) 0.895 0.897 0.002
1915 0.756 0.752 -0.004
2358 0.738 0.751 0.013
463213 0.651 0.676 0.025
463215 0.613 0.654 0.041
488912 0.664 0.816 0.152
488915 0.723 0.873 0.15
488917 0.835 0.894 0.059
488918 0.784 0.842 0.058
アッセイID シングルタスク マルチタスク 差
492992 0.803 0.829 0.026
504607 0.684 0.67 -0.014
624504 0.871 0.889 0.018
651739 0.79 0.825 0.035
651744 0.886 0.9 0.014
652065 0.793 0.792 -0.001
• 15/19アッセイ(78.9%) で精度度向上(AUCで計測)
• タスク集合内に⾃自分と似たアッセイがあると精度度向
上の効果⼤大
16
* Dahl, George E., Navdeep Jaitly, and Ruslan Salakhutdinov.
"Multi-task Neural Networks for QSAR Predictions." arXiv preprint
Table 2から作成
18. 分散深層学習:マルチGPUとマルチノード
• 1ノード内での並列列計算
• マルチスレッド・マルチGPU
• ⼀一部の深層学習フレームはマルチGPU対応(FAIRなど)
• 複数ノード(マルチノード)での 並列列計算
• CPU上で分散機械学習:DistBelief, Project Adam, H2O
• GPU上で分散深層学習:COTS HPC, Minerva+Parameter Server
GPU GPU GPU
CPU
マルチGPU
G G G
C
G G G
C
G G G
C
マルチノード
18
「分散機械学習」と⾔言ったら
通常マルチノードの意味
19. 分散深層学習:Model ParallelとData Parallel
• Model Parallel:NNを分割。各ノードはNNの各担当パーツを最適化。
• Data Parallel:訓練データセットを分割。各ノードはコピーしたNNを割り振られた訓練データ
で最適化。ノード間で学習結果を適宜共有する。
Model Parallelと
Data Parallelの
組み合わせも可能
Model Parallel Data Parallel
学習結果の共有
19
20. 分散深層学習
既存⼿手法の主流流
「パラメータ取得 + 勾配計算 + パラメータ更更新」の分散
問題点
• 「全NNが同⼀一アーキテクチャ」の制限がつく
• スケーラビリティに限界
100台でも12倍
程度度の速度度向上
タスクによって
は全くスケール
しない
20
パラメータを交換せずに分散深層学習できないか?
↓
Dean, Jeffrey, et al. "Large scale distributed deep networks.”
Advances in Neural Information Processing Systems. 2012. Figure 2(左), Figure 3(右)
22. Communication Learning
蒸留留技術を⽤用いた分散深層学習 • 各NNを正解ラベル(Hard Target)と⾃自分以
外のNNの分類結果(を焼きなましたもの)
(Soft Target)を⽤用いて学習する
メリット
• 以下の条件でノード間通信量量を削減
• 訓練データがノード間で共有
• NNのパラメータ >>分類結果
• 複数のアーキテクチャのNNを混ぜて分散学
習可能(⼊入出⼒力力の形式が⼀一致すれば良良い)
NN1 NN2 NN3
0.90 0.89 0.80
0.05 0.10 0.15
0.05 0.01 0.05
Label
⾞車車 1
トラック 0
⾃自転⾞車車 0
Hard Target
Soft Targets
0.80 0.65 0.50
0.10 0.25 0.30
0.10 0.10 0.20
予測結果
焼きなまし
22
訓練イメージ
25. 結果:Community Learningによる精度度向上
• 全5アッセイでCommunity Learningにより精度度向上を達成
25
アッセイID シングルタスク マルチタスク Community
Learning
1851 (1a2) 0.926 0.938 0.9387
1851 (2c19) 0.897 0.903 0.9413
1851 (2c9) 0.889 0.907 0.9274
1851 (2d6) 0.863 0.861 0.8913
1851 (3a4) 0.895 0.897 0.9214
27. 今後の課題
• Community Learningの⼤大規模化
• スケーラビリティーをどこまで保つことができるか?
• 何個のアッセイの活性予測をマルチタスクで扱えるか?
• ヘテロジニアスなCommunity Learning
• 様々なアーキテクチャーを持つNN達を⽤用いてCommunity Learningできるか?
• 特定のアッセイの予測に特化したNNの構築できるか?
27
32. 深層学習のビジネス応⽤用への課題
1. ⼤大量量のデータが必要
• 訓練データ例例
• ImageNet*:1400万枚の画像
• Sports1M**:100万本の動画
• ⼤大量量データを継続的に収集・管理理する仕組みが必要
32
* Deng, Jia, et al. "Imagenet: A large-scale hierarchical image database."
Computer Vision and Pattern Recognition, 2009. CVPR 2009. IEEE Conference on.
IEEE, 2009. (左図)
** Karpathy, Andrej, et al. "Large-scale video classification with convolutional
neural networks." Computer Vision and Pattern Recognition (CVPR), 2014 IEEE
Conference on. IEEE, 2014. (右図)
33. 深層学習のビジネス応⽤用への課題
2. 「常識識」が何度度も覆る → 技術が枯れにくい
• 1980年年代:LeCunら「画像認識識にはCNNが極めて有効」
• CNNの要素技術(MaxPoolingなど)を使わず同等の精度度を達成する⼿手法が登場
• 2006年年:Bengioら「事前学習を使えば深いNNを学習できる」
• NNの最適化技術が発達 → 事前学習なしでも同等の精度度を達成できるタスクも増えている
• これまでの情報科学にない速度度感での発展
• 「取材して2週間経つと新しい技術が現れる」
• 論論⽂文が公開されると1, 2ヶ⽉月でフレームワークに取り込まれる
33
34. 深層学習のビジネス応⽤用への課題
3. 予測精度度は常に劣劣化する危険がある
• 外界環境の変化 → ⼊入⼒力力データの傾向変化
• ECサイト:メディアに紹介され、新しい年年齢層の訪問数が増加
• 「学習モデルの賞味期限は3ヶ⽉月から6ヶ⽉月」
• 精度度劣劣化を前提としたシステム設計が必要
• データ分布変化に強い技術の採⽤用(オンライン機械学習など)
• 予測できる変動(季節変動)を組み込んだ予測モデルの設計
• 予測性能劣劣化時のバックアップ・リカバリー⽅方法の準備
↑ 異異常検知でビニールハウス管理理*
(住友精密⼯工業様、ブリスコラ様)
オンライン機械学習(Jubatus)を⽤用いて
季節変動に対応
34
* みかん栽培に機械学習技術、住友精密がPFIのJubatusを採⽤用
http://itpro.nikkeibp.co.jp/article/NEWS/20140212/536349/
36. チェックポイント
• 計画時の課題
• 意思決定者やシステム提案⾞車車がディープラー
ニングの特性を理理解しているか
• ⼗十分な量量のデータを継続的に⼊入⼿手・管理理する
仕組みがあるか
• 技術の枯れ具合を認識識できているか
• 技術検証に時間的・⾦金金銭的な投資ができるか
• 設計・構築時の課題
• 探索索的な設計・構築ができる計画となっているか
• 予測精度度の劣劣化を前提とした設計となっているか
• チューニング技術を持っている⼈人はいるか(機械
学習・深層学習フレームワーク・GPUプログラ
ミング)
• 運⽤用時の課題
• 予測性能を監視する仕組みがあるか
• システムが提供できるサービスの特性を利利⽤用者が
⼗十分に理理解できるか
36
37. まとめ
• 分散深層学習の創薬への応⽤用
• マルチタスク深層学習により化合物活性予測の精度度が向上しました
• 主流流の分散深層学習⼿手法はスケーラビリティとアーキテクチャーへの制限の課題があります
• Community Learningが8ノードでスケールすることと、化合物活性予測での精度度向上を実証
しました
• 今後の課題はCommunity Learningの⼤大規模化、ヘテロジニアス化です
• 深層学習のビジネスへの応⽤用
• 深層学習のビジネス応⽤用には⼤大量量データの管理理、技術の枯れていなさ、予測精度度劣劣化への対
応、原因の切切り分けの困難など様々な課題が存在します
37
39. 深層学習フレームワークの現状
固定⻑⾧長データから可変⻑⾧長データへ
x
1
x
N
h
1
h
H
k
M
k
1
⼊入出⼒力力 応⽤用 機械学習⼿手法 アーキテクチャ
これまでの主流流 固定⻑⾧長 画像・⾳音声 分類・回帰 全結合, CNN
これからの主流流 可変⻑⾧長 映像・⾳音声
⾃自然⾔言語・センサー
強化学習
プログラム実⾏行行
RNN, LSTM,
NTM
CNN(LeNet)*
RNN LSTM **
39
* Deep Learning Tutorials http://deeplearning.net/tutorial/lenet.html
** Graves, Alex, et al. "A novel connectionist system for unconstrained handwriting recognition.
" Pattern Analysis and Machine Intelligence, IEEE Transactions on 31.5 (2009): 855-868. Figure 11
LSTM=Long Short-term Memory
NTM=Neural Turing Machine
40. 深層学習フレームワークの現状
アーキテクチャの複雑化
• 深層学習で扱われるアーキテクチャーの複雑化
• GoogLeNet, NTM, Recursive Net, LSTM …
• 既存フレームワークではネットワーク記述が困難
Chainer Caffe
167⾏行行 2058⾏行行
GoogleNetのアーキテクチャ定義の必要⾏行行数
(2012)AlexNet*, 7層 ↑
(2014) GoogLeNet**, 22層→
40
* ImageNet Classification with Deep Convolutional Neural Networks
http://www.image-net.org/challenges/LSVRC/2012/supervision.pdf
** Szegedy, Christian, et al. "Going deeper with convolutions." arXiv preprint arXiv:1409.4842 (2014).
41. Chainer : 深層学習フレームワーク
ü Python + CUDA (cuDNN対応)
ü 系列列・可変⻑⾧長データの学習固有のアルゴリズムをネイティブにサポート
ü 任意のアーキテクチャを実現可能
ü マルチGPU対応(Model Parallel / Data Parallel)
PFI / PFN開発 新深層学習フレームワーク
6⽉月ごろOSS公開予定
41
42. 既存フレームワークとの⽐比較
主要実装⾔言語 Python C++ Lua Python
主要開発者 Preferred
Networks Inc.
BVLC Idiap Research
Institute, DeepMind
Univ. of Montreal
コミュニティ - ◎ ○ ○
RNN/LSTM対応 ◎ × ○ ○
動的ネットワーク構
築
○ × × ×
拡張性 ○ △ ○ ○
ネットワーク設計 ⾔言語内DSL 設定ファイル
(prototxt)
⾔言語内DSL 設定ファイル
(YAML)
特徴 ネットワーク動的構
築による省省リソース
画像認識識が得意 LuaJITによる⾼高速化 ⾃自動微分機構
42
Pylearn2
47. minibatch j
⽤用語解説(3/3)
:訓練関連
Epoch 1
Epoch N
Epoch 2
Epoch i
Epoch i
全訓練データを
シャッフル
minibatch 1
訓練データ 2
minibatch 2
minibatch M
minibatch j
訓練データ 1
訓練データ B
パラメータ更更新
時刻
• Epoch (Iteration):全訓練データを1巡する事
→ 各訓練データはNetにN回与える
• Solver:Netを訓練するモジュール
• minibatch:少数の訓練データをまとめてNNに
与えた後にパラメータ更更新
47