SlideShare ist ein Scribd-Unternehmen logo
1 von 94
Downloaden Sie, um offline zu lesen
© 2017 NTT DATA Mathematical Systems Inc.
ディープラーニング
入門
株式会社NTTデータ数理システム
2017 年度版
大槻 兼資
2© 2017 NTT DATA Mathematical Systems Inc.
2
 イントロ
 ディープラーニングとは
 ディープラーニングの特徴
 ディープラーニングの構成要素
 ディープラーニングのチューニング技法
 ディープラーニングを用いた画像処理
 ディープラーニングを用いた自然言語処理
 ディープラーニングを用いたマルチモーダル学習
内容
3© 2017 NTT DATA Mathematical Systems Inc.
3
 イントロ
 ディープラーニングとは
 ディープラーニングの特徴
 ディープラーニングの構成要素
 ディープラーニングのチューニング技法
 ディープラーニングを用いた画像処理
 ディープラーニングを用いた自然言語処理
 ディープラーニングを用いたマルチモーダル学習
内容
4© 2017 NTT DATA Mathematical Systems Inc.
4
 機械学習の一手法
ディープラーニングとは
機械学習
ディープラーニング
データの背後に潜むパターンを推測
データの理解・未来の予測が目標
脳を模した機械学習手法
画像認識、音声認識、自然言語処理、強化学習
などでブレイクスルーを起こす
5© 2017 NTT DATA Mathematical Systems Inc.
5
 多層のニューラルネットワークを用いて学習
 入力層は入力データを受け取る
 出力層は出力値を出力
ディープラーニングとは
https://www1.doshisha.ac.jp/~mjin/R/Chap_23/23.html
頂点
(ニューロン
のモデル化)
辺
(シナプス
のモデル化)
0.04: クラス 1 への分類確率
0.83: クラス 2 への分類確率
0.09: クラス n への分類確率
典型的な出力形式例:
(n クラス分類の場合)
6© 2017 NTT DATA Mathematical Systems Inc.
6
 画像認識コンペ ILSVRC
 2012年、トロント大学の Hinton らの率いるチームが優勝 (AlexNet)
 AlphaGO
 Google DeepMind による囲碁AI
 2016年、トップ棋士イ・セドルに4:1で勝利
注目のきっかけ
圧倒的改善!
年 1位チームの精度 備考
2010 28.2%
2011 25.8%
2012 16.4% AlexNet
2013 11.7%
2014 6.67% GoogleNet (2位: VGG)
2015 3.56% ResNet, ヒト超え!
ヒト 5.1%
http://www.popularmechanics.com/technology/a19863/
googles-alphago-ai-wins-second-game-go/
7© 2017 NTT DATA Mathematical Systems Inc.
7
 1943年: ニューロン素子モデル登場
 1958年: パーセプトロン登場
 1986年: 誤差逆伝播法
 多層のニューラルネットワークの学習法!
 2006年: 層ごとの事前学習
 高い汎化能力!
ニューラルネットワークのブームと冬の時代
McCulloch--Pitts
Rosenblatt
過学習問題, 勾配消失問題などがあって
再び冬の時代, SVMなどの盛り上がり
Rumelhart
(1層の)単純パーセプトロンは
線形分離不可能なパターンを識別不能問題
いう問題を克服できず…冬の時代へ
Hinton, Bengio, LeCun ら
※ 現在では Dropout といったテクニックや、ReLU といった活性化関数、GPU などのハードウェアの進歩、
また大量のデータから学習ができるようになったことなどもあり、事前学習はあまり使われなくなった
8© 2017 NTT DATA Mathematical Systems Inc.
8
 線形モデル, 線形分離不可能なパターン
 線形モデル: 線形回帰, ロジスティック回帰, SVM
 過学習, 勾配消失問題
キーワード
線形分離可能 線形分離不可能
9© 2017 NTT DATA Mathematical Systems Inc.
9
 ニューロン
 単純パーセプトロン (1層のニューラルネット)
単純パーセプトロンは線形分類のみ
𝒙 𝟏
𝒙 𝟐
𝒙 𝟑
𝒛
𝒘 𝟏
𝒘 𝟐
𝒘 𝟑
𝒛 = 𝒇(𝒘 𝟏 𝒙 𝟏 + 𝒘 𝟐 𝒙 𝟐 + 𝒘 𝟑 𝒙 𝟑 + 𝒃)
𝒇: 活性化関数
𝒙 𝟏
𝒙 𝟐
𝒙 𝟑
𝒛 𝟏
𝒛 𝟐
𝒘 𝟏𝟏
𝒘 𝟏𝟐
𝒘 𝟏𝟑
𝒘 𝟐𝟏
𝒘 𝟐𝟐
𝒘 𝟐𝟑
𝒛 𝟏
𝒛 𝟐
= 𝒇
𝒘 𝟏𝟏 𝒘 𝟏𝟐 𝒘 𝟏𝟑
𝒘 𝟐𝟏 𝒘 𝟐𝟐 𝒘 𝟐𝟑
𝒙 𝟏
𝒙 𝟐
𝒙 𝟑
+
𝒃 𝟏
𝒃 𝟐
𝒇 を softmax として損失関数を categorical cross entropy にとると
ロジスティック回帰 ・・・ 多クラスにも拡張可
𝑧𝑖 = 𝑓 𝑢𝑖 =
exp 𝑤𝑖
T
𝑥 + 𝑏𝑖
exp(𝑤𝑗
T
𝑥 + 𝑏𝑗 )𝑗
softmax
データ 𝑥 がクラス 𝑖
に属する条件付き確
率 𝑝 𝐶𝑖|𝑥 をモデル
化
バイアス
10© 2017 NTT DATA Mathematical Systems Inc.
10
 1層から多層にすると非線形へ
 それどころか万能近似性を有する!
 3層 (隠れ層1層) でも成立
 実際上は隠れ層数を増やしたり、
各隠れ層のニューロン数を増やしたりする
 モデルの表現力の高さは過学習問題と表裏一体
ディープニューラルネットワークへ
線形分離可能
線形分離不可能
𝒙 𝟏
𝒙 𝟐
𝒙 𝟑
𝒛 𝟏
𝒛 𝟐 任意の連続関数に
対して任意の精度
で近似できる
11© 2017 NTT DATA Mathematical Systems Inc.
11
 過学習とは
 学習データには適合するが、未知データに適合しない状況
 複雑なモデルほど、より多くの学習データを必要とする
過学習について
http:/scikit-learn.org/stable/auto_examples/model_selection/plot_underfitting_overfitting.html/
12© 2017 NTT DATA Mathematical Systems Inc.
12
 過学習とは
 学習データには適合するが、未知データに適合しない状況
 複雑なモデルほど、より多くの学習データを必要とする
モデルの表現力と過学習
表現力
低
(単純)
高
(複雑)
線形モデルなど ディープニューラルネットなど
より優れたモデルの可能性を秘めて
いるが、過学習しやすくなる
(対策)
• うまい正則化 (Dropout など)
• 大量のデータで学習
13© 2017 NTT DATA Mathematical Systems Inc.
13
 カーネルSVM
 カーネルトリックを用いて線形モデルな SVM を非線形分類可能に
 低バリアンスで汎化性能高め (過学習を抑えやすい)
 ランダムフォレスト
 メジャーでお手軽
 分散させやすい
 勾配ブースティング
 いわゆる XGBoost
 Kaggle などでデファクトになった強力な分類器
 チューニングコスト低め
その他の非線形分類器たち
14© 2017 NTT DATA Mathematical Systems Inc.
14
 大量のデータを活かせる
 モデルの表現力が高く過学習しやすい一方
大量のデータがあれば活かせる
 特徴量の自動獲得
 画像, 音声, テキストといった生モノに強い
 ex. Googleの猫 (猫に反応するニューロン)
ディープラーニングの強み
https://googleblog.blogspot.jp/2012/06/using
-large-scale-brain-simulations-for.html
https://www.slideshare.net/ExtractConf/a
ndrew-ng-chief-scientist-at-baidu/30
http://www.deeplearningbook.org/contents
/intro.html
15© 2017 NTT DATA Mathematical Systems Inc.
15
 過学習しやすい
 大量の学習データが必要
 機械学習しようとするときにいつも悩む
 膨大な計算機リソースが必要
 チューニングが難しい
 特徴量を自動獲得する反面、ブラックボックスでもあり
人間が持っている知識を組み込みづらい
ディープラーニングの代償
16© 2017 NTT DATA Mathematical Systems Inc.
16
 イントロ
 ディープラーニングとは
 ディープラーニングの特徴
 ディープラーニングの構成要素
 ディープラーニングのチューニング技法
 ディープラーニングを用いた画像処理
 ディープラーニングを用いた自然言語処理
 ディープラーニングを用いたマルチモーダル学習
内容
17© 2017 NTT DATA Mathematical Systems Inc.
17
 モデル
 ニューラルネットワークモデル (ネットワーク構造, 層数, 活性化関数)
 損失関数 (モデルの予測結果が、正解にどれだけ近いかを示すもの)
 学習 (確率的勾配降下法)
 学習率
 ミニバッチサイズ
 Optimizer
ディープラーニングの構成要素
18© 2017 NTT DATA Mathematical Systems Inc.
18
 ニューロン
 (単純)パーセプトロン
ニューロンとパーセプトロン
𝒙 𝟏
𝒙 𝟐
𝒙 𝟑
𝒛
𝒘 𝟏
𝒘 𝟐
𝒘 𝟑 𝒛 = 𝒇(𝒖)
𝒇: 活性化関数
𝒙 𝟏
𝒙 𝟐
𝒙 𝟑
𝒖 𝟏
𝒖 𝟐
𝒘 𝟏𝟏
𝒘 𝟏𝟐
𝒘 𝟏𝟑
𝒘 𝟐𝟏
𝒘 𝟐𝟐
𝒘 𝟐𝟑
𝒛 𝟏
𝒛 𝟐
= 𝒇
𝒖 𝟏
𝒖 𝟐
𝒖 𝟏
𝒖 𝟐
=
𝒘 𝟏𝟏 𝒘 𝟏𝟐 𝒘 𝟏𝟑
𝒘 𝟐𝟏 𝒘 𝟐𝟐 𝒘 𝟐𝟑
𝒙 𝟏
𝒙 𝟐
𝒙 𝟑
+
𝒃 𝟏
𝒃 𝟐
𝒛 𝟏
𝒛 𝟐
𝒖
𝒖 = 𝒘 𝟏 𝒙 𝟏 + 𝒘 𝟐 𝒙 𝟐 + 𝒘 𝟑 𝒙 𝟑 + 𝒃
バイアス
ベクトルと行列を用いて
𝒖 = 𝑾𝒙 + 𝒃
𝒛 = 𝒇(𝒖)
19© 2017 NTT DATA Mathematical Systems Inc.
19
 ReLU
 中間層における活性化関数として現在デファクト
 sigmoid
 勾配消失問題等により中間層では使われなくなった
 出力層では使われる (ロジスティック回帰っぽくなる)
 tanh
 中間層では使われなくなった
中間層の活性化関数
𝒇 𝒖 = 𝐦𝐚𝐱(𝒖, 𝟎)
𝒇 𝒖 =
𝟏
𝟏 + 𝒆−𝒖
https://techblog.yahoo.co.jp/javascript/deep-learning-with-javascript/
𝒇 𝒖 = 𝐭𝐚𝐧𝐡 𝒖
20© 2017 NTT DATA Mathematical Systems Inc.
20
 sigmoid
 出力値は確率を表す (ロジスティック回帰っぽく)
 softmax
 多クラス分類問題でよく使う (多クラスロジスティック回帰っぽく)
 恒等写像
 回帰問題の出力層でよく使う
出力層の活性化関数
𝒇 𝒖 =
𝟏
𝟏 + 𝒆−𝒖
𝒇 𝒖 = 𝒖
𝒖 𝟏
𝒖 𝟐
𝒖 𝟑
𝒛 𝟏 =
𝐞𝐱𝐩 𝒖 𝟏
𝐞𝐱𝐩 𝒖 𝟏 + 𝐞𝐱𝐩 𝒖 𝟐 + 𝐞𝐱𝐩(𝒖 𝟑)
𝐬𝐨𝐟𝐭𝐦𝐚𝐱 𝒛 𝟐 =
𝐞𝐱𝐩 𝒖 𝟐
𝐞𝐱𝐩 𝒖 𝟏 + 𝐞𝐱𝐩 𝒖 𝟐 + 𝐞𝐱𝐩(𝒖 𝟑)
𝒛 𝟑 =
𝐞𝐱𝐩 𝒖 𝟑
𝐞𝐱𝐩 𝒖 𝟏 + 𝐞𝐱𝐩 𝒖 𝟐 + 𝐞𝐱𝐩(𝒖 𝟑)
𝒛 𝟏 + 𝒛 𝟐 + 𝒛 𝟑 = 𝟏, 𝟎 ≤ 𝒛𝒊 ≤ 𝟏
データ 𝑥 がクラス 𝑖 に属する
条件付き確率 𝑝 𝐶𝑖|𝑥 をモデル化
入力 𝒙
21© 2017 NTT DATA Mathematical Systems Inc.
21
 二値分類
 損失関数: binary cross entropy
 多クラス分類
 損失関数: categorical cross entropy
損失関数 part1
𝒖 𝐬𝐢𝐠𝐦𝐨𝐢𝐝 𝒛 =
𝟏
𝟏 + 𝒆−𝒖
𝒖 𝟏
𝒖 𝟐
𝒖 𝟑
𝒛 𝟏 =
𝐞𝐱𝐩 𝒖 𝟏
𝐞𝐱𝐩 𝒖 𝟏 + 𝐞𝐱𝐩 𝒖 𝟐 + 𝐞𝐱𝐩(𝒖 𝟑)
𝐬𝐨𝐟𝐭𝐦𝐚𝐱 𝒛 𝟐 =
𝐞𝐱𝐩 𝒖 𝟐
𝐞𝐱𝐩 𝒖 𝟏 + 𝐞𝐱𝐩 𝒖 𝟐 + 𝐞𝐱𝐩(𝒖 𝟑)
𝒛 𝟑 =
𝐞𝐱𝐩 𝒖 𝟑
𝐞𝐱𝐩 𝒖 𝟏 + 𝐞𝐱𝐩 𝒖 𝟐 + 𝐞𝐱𝐩(𝒖 𝟑)
入力 𝒙
入力 𝒙
𝑥𝑖, 𝑦𝑖 𝑖=1,…,𝑛 : 学習データ
𝑙 𝑤 : 損失関数
𝑦 = 1 のとき 𝒍 𝒘 = 𝐥𝐨𝐠 𝒛(𝒙; 𝒘)
𝑦 = 0 のとき
𝒍 𝒘 = 𝐥𝐨𝐠(𝟏 − 𝒛(𝒙; 𝒘))
これを各 𝑥𝑖, 𝑦𝑖 𝑖=1,…,𝑛 に対して総和
𝑦 = 𝑘 のとき 𝒍 𝒘 = 𝐥𝐨𝐠 𝒛 𝒌(𝒙; 𝒘)
これを各 𝑥𝑖, 𝑦𝑖 𝑖=1,…,𝑛 に対して総和
22© 2017 NTT DATA Mathematical Systems Inc.
22
 回帰
 損失関数: 二乗誤差
損失関数 part2
𝒖 活性化 𝒛入力 𝒙
𝑥𝑖, 𝑦𝑖 𝑖=1,…,𝑛 : 学習データ
𝑙 𝑤 : 損失関数
𝒍 𝒘 = (𝒚 − 𝒛(𝒙; 𝒘)) 𝟐
これを各 𝑥𝑖, 𝑦𝑖 𝑖=1,…,𝑛 に対して総和
23© 2017 NTT DATA Mathematical Systems Inc.
23
 モデル
 ニューラルネットワークモデル (ネットワーク構造, 層数, 活性化関数)
 損失関数 (モデルの予測結果が、正解にどれだけ近いかを示すもの
 学習 (確率的勾配降下法)
 学習率
 ミニバッチサイズ
 Optimizer
ディープラーニングの構成要素 (再掲)
24© 2017 NTT DATA Mathematical Systems Inc.
24
 損失関数は例えば回帰問題では
 勾配降下法: 関数の最小値を求める一般的なテク
勾配降下法
𝑥𝑖, 𝑦𝑖 𝑖=1,…,𝑛 : 学習データ
𝑙𝑖 𝑤 : 損失関数
𝐌𝐢𝐧𝐢𝐦𝐢𝐳𝐞 𝒘: 𝑳 𝒘 = 𝒍𝒊(𝒘)
𝒏
𝒊=𝟏
= 𝒚𝒊 − 𝒛𝒊 𝒙; 𝒘 𝟐
𝒏
𝒊=𝟏
• 初期値 𝒘 𝟎 を用意
• 更新式 𝒘 𝒕+𝟏
= 𝒘 𝒕
− 𝝐 𝛁𝑳(𝒘 𝒕
) に従って
重みを更新していく
学習率
25© 2017 NTT DATA Mathematical Systems Inc.
25
 勾配降下法の更新式を書き直すと
 確率的勾配降下法
 毎回 𝑛 個のデータのうちの 𝐾 個をサンプリング (𝑖1, 𝑖2, … , 𝑖 𝐾)
 望まない局所極小解から抜け出せなくなるリスクを軽減
 学習途中でデータを追加できる
確率的勾配降下法 (SGD)
𝒘 𝒕+𝟏 = 𝒘 𝒕 − 𝝐 𝜵𝒍𝒊(𝒘)
𝒏
𝒊=𝟏
𝑥𝑖, 𝑦𝑖 𝑖=1,…,𝑛 : 学習データ
𝑙𝑖 𝑤 : 損失関数
1回の更新で
𝑛 個の全データ必要
ミニバッチサイズ
𝒘 𝒕+𝟏 = 𝒘 𝒕 − 𝝐 𝜵𝒍𝒊 𝒌
(𝒘)
𝑲
𝒌=𝟏
1回の更新では
𝑛 個のデータのうち、 𝑘
個のみを使用
26© 2017 NTT DATA Mathematical Systems Inc.
26
 学習率
 小さすぎると学習に時間がかかる
 大きすぎると loss が下がりにくくなる
 ミニバッチサイズ
 10~100程度とすることが多い
 多クラス分類問題の場合、クラス数より多くしたい
 ただし、クラス数が多すぎる場合は10~100程度に
 Optimizer: SGDの亜種たち
 AdaGrad
 AdaDelta
 Adam
 RMSprop
チューニングパラメータ
𝒘 𝒕+𝟏
= 𝒘 𝒕
− 𝝐 𝜵𝒍𝒊 𝒌
(𝒘)
𝑲
𝒌=𝟏
ミニバッチサイズ
学習率
27© 2017 NTT DATA Mathematical Systems Inc.
27
 イントロ
 ディープラーニングとは
 ディープラーニングの特徴
 ディープラーニングの構成要素
 ディープラーニングのチューニング技法
 ディープラーニングを用いた画像処理
 ディープラーニングを用いた自然言語処理
 ディープラーニングを用いたマルチモーダル学習
内容
28© 2017 NTT DATA Mathematical Systems Inc.
28
 データを分割 (7 : 3 くらいに)
 学習用データ: モデルの学習
 テスト用データ: 実際にうまく分類できるかなどの評価
 ハイパーパラメータチューニング
 テスト用データに対する精度が最も高くなるようにパラメータ調整した
くなる (反則!!!)
 チューニングのために validation データを確保することも
 学習データ
 Validationデータ
 テストデータ
データの扱い
29© 2017 NTT DATA Mathematical Systems Inc.
29
 2 つの誤差
 経験損失: 学習データに対する推論の正解とのズレ
 期待損失: 未知のデータに対する推論の正解とのズレ (の期待値)
 経験損失を小さくする ことで期待損失を小さくしたい
 期待損失は実際は計算できないので、テスト誤差を近
似的に期待損失と考える
機械学習の目的: 期待損失の最小化
過学習とは、経験損失は小さいが
期待損失が大きい状態
30© 2017 NTT DATA Mathematical Systems Inc.
30
 上手くいっていない状況を把握
 Underfit? / Overfit? / そもそもデータの限界?
 学習データに対してもダメなとき
 とにかくまずは過学習させちゃう!
 Optimizer, 学習率, ミニバッチサイズ, モデルをより複雑に
 学習データに対してはOKでテストデータはダメなとき
 正則化
 学習データの増やし方
 モデルそのものの改善
 モデル規模の適性化
ディープラーニングのチューニング
31© 2017 NTT DATA Mathematical Systems Inc.
31
 Underfit?
 Overfit (過学習)?
 データがそもそも悪い? (ノイズが大きい)
状況把握
https://www.coursera.org/learn/machine-learning/lecture/yCAup/diagnosing-bias-vs-variance
32© 2017 NTT DATA Mathematical Systems Inc.
32
 学習データに対してフィットしないと何も始まらない
 この状況で学習データ増やしても改善しない
 過学習させてでもフィットさせよう!
 学習率の調整!!!
 Optimizers を変えてみる
 モデルをもっと複雑にしてみる
 ミニバッチサイズを変えてみる
Underfit
 経験損失 (学習データとのズレ) が小さくなっていない
 学習データに対しても正しく推定できない
33© 2017 NTT DATA Mathematical Systems Inc.
33
 Early Stopping
 各種正則化
 モデルの規模の適性化
 モデルの改善
 学習データを増やす
 学習データを正規化
 学習データの水増し
 学習データの質を疑う
Overfit (過学習)
 経験損失 (学習データとのズレ) は十分に小さい
 期待損失 (未知データとのズレ) は大きい
https://www.altus5.co.jp/blog/machine-learning/2016/11/28/over-learning/
34© 2017 NTT DATA Mathematical Systems Inc.
34
 過学習する前に学習を打ち切る
 テスト誤差が最小になる点を
Early Stopping
https://www.altus5.co.jp/blog/machine-learning/2016/11/28/over-learning/
35© 2017 NTT DATA Mathematical Systems Inc.
35
 重みの L2 / L1 正則化
 Dropout
 Batch Normalization
 2015年あたりに提案された強力な正規化層
各種正則化
model = Sequential()
model.add( Conv2D(32, kernel_size = (3, 3), activation = ‘relu’, input_shape = input_shape) )
model.add( MaxPooling2D(pool_size = (2, 2)) )
model.add( Dropout(0.25) )
model.add( Flatten() )
model.add( Dense(128, activation = ‘relu’, W_regularizer = l2(0.0001)) )
model.add( Dense(num_classes, activation = ‘softmax’) )
Keras での例
36© 2017 NTT DATA Mathematical Systems Inc.
36
 モデルをシンプルにする
 層数を減らすなど
 モデル圧縮技術
 一度あるモデルで学習したあと、ネットワークの削ってもいい箇所を見
出し、削ったネットワークを用いて再学習
 ネットワークが小さくなるだけでなく精度も上がったり
モデルの規模の適性化
37© 2017 NTT DATA Mathematical Systems Inc.
37
 現在最先端の研究でしのぎを削っている 「よりよい
ネットワークを考えました」 選手権そのもの
 より性能がよいと知られているモデルを使う
 ResNet
 より性能が出ると知られている機構を取り入れる
 Attention
 Bi-directional LSTM
 Batch Normalization
 Pointer Networks
モデルの改善
38© 2017 NTT DATA Mathematical Systems Inc.
38
 単純に精度が上がることが期待できる
とはいえ...
 学習データを新たに収集するのは大きな負担
 モデルの改善や、学習データの水増しなどの方が重要
であることも多い
学習データを増やす
39© 2017 NTT DATA Mathematical Systems Inc.
39
画像での例
 入力セルの値の平均が0、分散が1になるように
テキストでの例
 固有名詞など、低頻出単語は unk などのマクロ置換
 文中の数値などは num などのマクロ置換する
 顔文字などノイズは削る、()などの記号の書式を統一
学習データの正規化
けんちょんは(精神年齢)17歳なの~~ん(⋈◍>◡<◍)。✧♡
unkは(精神年齢)num歳なのーん
40© 2017 NTT DATA Mathematical Systems Inc.
40
 画像にノイズを加えたものを新たなデータに
 画像を少し変形をしたものを新たなデータに
 左右反転
 平行移動
 拡大縮小
 回転
 濃淡を変える
 色を少し変える
 GAN などで生成した画像を新たなデータに
 進行中の研究課題
学習データの水増し (画像編)
41© 2017 NTT DATA Mathematical Systems Inc.
41
 同じ意味の似た言い回しの文を新たに作る
 文章要約タスクでは、(元文章, 要約文) のペアに対し
て (要約文, 要約文) のペアを新たなデータに
学習データの水増し (テキスト編)
何歳ですか? / 17歳です
何歳なの? / 17歳です
何歳? / 17歳です
何歳でしょうか? / 17歳です
42© 2017 NTT DATA Mathematical Systems Inc.
42
 特に人手で頑張って作ったデータでは誤りも多くある
 データに偏りがある場合も多い
 場合によってはノイズの大きいデータは省いたり、デー
タの正規化を頑張ったりする
学習データの質を疑う
43© 2017 NTT DATA Mathematical Systems Inc.
43
 イントロ
 ディープラーニングとは
 ディープラーニングの特徴
 ディープラーニングの構成要素
 ディープラーニングのチューニング技法
 ディープラーニングを用いた画像処理
 ディープラーニングを用いた自然言語処理
 ディープラーニングを用いたマルチモーダル学習
内容
44© 2017 NTT DATA Mathematical Systems Inc.
44
 画像処理: CNN (Convolutional Neural Networks)
 自然言語処理: RNN (Recurrent Neural Networks)
 マルチモーダル: これらを組み合わせたり
定番手法
45© 2017 NTT DATA Mathematical Systems Inc.
45
 イントロ
 ディープラーニングとは
 ディープラーニングの特徴
 ディープラーニングの構成要素
 ディープラーニングのチューニング技法
 ディープラーニングを用いた画像処理
 ディープラーニングを用いた自然言語処理
 ディープラーニングを用いたマルチモーダル学習
内容
46© 2017 NTT DATA Mathematical Systems Inc.
46
 1958年、猫の視覚野に特定の傾きをもつ線分を見せ
たときにだけ反応する細胞の発見 (単純型細胞)
 単純型細胞で検知した情報を取りまとめて、線分の位
置がずれたりしたものも検出 (複雑型細胞)
 さらにこれらの細胞が多層に
なって複雑なパターン検出
 この階層仮説がヒントに
なって CNN が誕生!
Hubel--Wiesel の階層仮説
瀧雅人「これならわかる深層学習入門」より
単純型 複雑型
47© 2017 NTT DATA Mathematical Systems Inc.
47
 1958年: Hubel--Wiesel の階層仮説
 1979年: Fukushima のネオコグニトロン
 単純型細胞と複雑型細胞に対応したユニットを導入
 1989年: LeCun らの CNN
 現在の CNN とほとんど同じもの
 CNN に誤差逆伝播法を適応して高い性能を実現!
 2012年: Hinton らが CNN を用いてコンペ優勝
 画像認識コンペ ILSVRC
Convolutional Neural Networks の歴史
48© 2017 NTT DATA Mathematical Systems Inc.
48
 Convolutional Layer: 単純型細胞に対応
 局所的なパターンを抽出
 Pooling Layer: 複雑型細胞に対応 (Subsampling)
 微小な平行移動に対して不変な特徴を得る
Convolutional Neural Networks
LeCun et al., Gradient-Based Learning Applied to Document Recognition, 1998.
49© 2017 NTT DATA Mathematical Systems Inc.
49
Keras での例
model = Sequential()
model.add( Conv2D(6, kernel_size = (5, 5), activation = ‘relu’, input_shape = (1, 32, 32)) )
model.add( MaxPooling2D(pool_size = (2, 2)) )
model.add( Conv2D(16, kernel_size = (5, 5), activation = ‘relu’) )
model.add( MaxPooling2D(pool_size = (2, 2)) )
model.add( Dropout(0.25) )
model.add( Flatten() )
model.add( Dense(120, activation = ‘relu’)) )
model.add( Dense(84, activation = ‘relu’)) )
model.add( Dropout(0.5) )
model.add( Dense(10, activation = ‘softmax’) )
LeCun et al., Gradient-Based Learning Applied to Document Recognition, 1998.
50© 2017 NTT DATA Mathematical Systems Inc.
50
 画像認識コンペ ILSVRC
 2012年、トロント大学の Hinton らの率いるチームが優勝 (AlexNet)
 AlphaGO
 Google DeepMind による囲碁AI
 2016年、トップ棋士イ・セドルに4:1で勝利
CNN の活躍
圧倒的改善!
年 1位チームの精度 備考
2010 28.2%
2011 25.8%
2012 16.4% AlexNet
2013 11.7%
2014 6.67% GoogleNet (2位: VGG)
2015 3.56% ResNet, ヒト超え!
ヒト 5.1%
http://www.popularmechanics.com/technology/a19863/
googles-alphago-ai-wins-second-game-go/
51© 2017 NTT DATA Mathematical Systems Inc.
51
 2012年度 ILSVRC 優勝、16.4%
 8層、ディープラーニングブームの火付け役
AlexNet (トロント大学, Hintonら)
52© 2017 NTT DATA Mathematical Systems Inc.
52
 2014年度 ILSVRC 優勝、6.67%
 22層
GoogleNet
Inception
53© 2017 NTT DATA Mathematical Systems Inc.
53
 2014年度 ILSVRC 準優勝、7.32%
 19層
VGG (オックスフォード大)
54© 2017 NTT DATA Mathematical Systems Inc.
54
 2015年度 ILSVRC 優勝、3.56%
 152層!!!
 層をまたぐスキップ構造が特徴
ResNet (Microsoft Research)
55© 2017 NTT DATA Mathematical Systems Inc.
55
 物体認識 (ここまで)
 画像が表すものは何か
 物体検出
 画像から物体の位置も特定
 セグメンテーション
 画像のピクセルごとにどのクラスに属するかを出力
最近は...
 画像生成、画像ドメイン変換
 GAN の爆発的流行
画像処理タスク
56© 2017 NTT DATA Mathematical Systems Inc.
56
物体認識
Krizhevsky et al., ImageNet Classification with Deep Convolutional Neural Networks, 2012.
57© 2017 NTT DATA Mathematical Systems Inc.
57
物体検出
He et al., Mask R-CNN, 2017.
 画像から物体の位置も特定
58© 2017 NTT DATA Mathematical Systems Inc.
58
テキスト検出
Wang et al., End-to-End Text Recognition with Convolutional Neural Networks, 2012.
Alsharif and Pineau., End-to-End Text Recognition with Hybrid HMM Maxout Models, 2013.
59© 2017 NTT DATA Mathematical Systems Inc.
59
セグメンテーション
Badrinarayanan et al., SegNet: A Deep Convolutional Encoder-Decoder Architecture for
Robust Semantic Pixel-Wise Labelling, 2015.
 画像のピクセルごとにどのクラスに属するかを出力
60© 2017 NTT DATA Mathematical Systems Inc.
60
 2014年、GAN (Goodfellow et al., Generative Adversarial
Networks) が発表されて以来爆発的流行
 Generator と Discriminator を戦わせて学習
 本物と見分けられない偽札作りと、取締り警察との戦いに例えられる
画像生成
Radford et al., Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks, 2015.
DCGAN
による画像生成
61© 2017 NTT DATA Mathematical Systems Inc.
61
GAN を利用して画像変換
 人の顔をアニメ絵っぽく変換
 VAE-GAN など、GAN を利用したドメイン変換は流行
中のホットトピック
Tagiman et al., UNSUPERVISED CROSS-DOMAIN IMAGE GENERATION, 2016.
62© 2017 NTT DATA Mathematical Systems Inc.
62
CycleGAN
 「馬をシマウマに、シマウマを馬に」 といった変換
Zhu et al., Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks, 2017.
63© 2017 NTT DATA Mathematical Systems Inc.
63
pix2pix
 ピクセルごとに画像変換する GAN
 一世を風靡した PaintsChainer は少し改変したもの
Isola et al., Image-to-Image Translation with Conditional Adversarial Networks, 2016.
Paint Chainer (https://qiita.com/taizan/items/cf77fd37ec3a0bef5d9d)
64© 2017 NTT DATA Mathematical Systems Inc.
64
超高解像度な画像生成
 そして2017年、高解像度な画像生成が飛躍的進化
 画像ラベルマップから高解像度の画像合成!!!
Wang et al., High-Resolution Image Synthesis and Semantic Manipulation with Conditional GANs, 2017.
65© 2017 NTT DATA Mathematical Systems Inc.
65
 イントロ
 ディープラーニングとは
 ディープラーニングの特徴
 ディープラーニングの構成要素
 ディープラーニングのチューニング技法
 ディープラーニングを用いた画像処理
 ディープラーニングを用いた自然言語処理
 ディープラーニングを用いたマルチモーダル学習
内容
66© 2017 NTT DATA Mathematical Systems Inc.
66
 長さ 𝑇 の時系列データ 𝑥1, 𝑥2, … , 𝑥 𝑇 を扱う
 代表例はテキスト
 This is an apple.
 𝑥1 = “This”, 𝑥2 = “is”, 𝑥3 = “an”, 𝑥4 = “apple
 文脈をとらえたい
 This is an と来たら、次は形容詞か名詞
 RNN (Recurrent Neural Networks) がよく使われる
 CNN を使うこともある
テキストは系列データ
67© 2017 NTT DATA Mathematical Systems Inc.
67
 ループを持つニューラルネット
 𝑧 𝑡 = 𝑓 𝑊in 𝑥 𝑡 + 𝑊𝑠 𝑡−1 , 𝑦 𝑡 = 𝑊out 𝑠 𝑡
Recurrent Neural Networks
𝑊in
𝑥𝑡
𝑦𝑡
𝑠𝑡−1
出力
入力
中間出力
𝑠𝑡
𝑊
𝑊out
68© 2017 NTT DATA Mathematical Systems Inc.
68
 ループを展開
 𝑧 𝑡 = 𝑓 𝑊in 𝑥 𝑡 + 𝑊𝑠 𝑡−1 , 𝑦 𝑡 = 𝑊out 𝑠 𝑡
Recurrent Neural Networks
𝑊in 𝑊in 𝑊in
𝑦𝑡−1 𝑦𝑡 𝑦𝑡+1
𝑊in
𝑥𝑡
𝑦𝑡
𝑠𝑡−1
出力
入力
中間出力
𝑠𝑡
𝑊
𝑊out 𝑊out𝑊out𝑊out
𝑊
is an apple.
69© 2017 NTT DATA Mathematical Systems Inc.
69
 RNN の大きな弱点
 文章が長いと、最初の方のことを忘れたり、最初の方のことの情報が
強すぎて後の方のことが頭に入ってこなかったり
改良された亜種たち
 LSTM (Long Short-Term Memory)
 GRU (Gated Recurrent Unit)
RNN の亜種たち
70© 2017 NTT DATA Mathematical Systems Inc.
70
 忘却ゲートを用意して情報伝達量を調整する
 短期記憶メモリのようなものを用意する
LSTM
Graves, Generating Sequence with Recurrent Neural Networks, 2014.
71© 2017 NTT DATA Mathematical Systems Inc.
71
 最後のベクトル 𝑦fin に softmax かけて文書分類など
RNN の初期の使い方の一例
𝑊in 𝑊in 𝑊in
𝑦𝑡−1 𝑦𝑡 𝑦𝑡+1
𝑊in
𝑥𝑡
𝑦𝑡
𝑠𝑡−1
出力
入力
中間出力
𝑠𝑡
𝑊
𝑊out 𝑊out𝑊out𝑊out
𝑊
is an
𝑦fin
𝑥fin
𝑊in
𝑊out
apple. <eos>
入力文の終わりを表す
72© 2017 NTT DATA Mathematical Systems Inc.
72
 記事のトピック分類など
 {政治, 技術, 国内} の 3 クラス分類を判別
Keras での例
EMBEDDING_DIM = 256 # 埋め込みベクトルサイズ
MAX_LENGTH = 100 # 入力される文章の長さ (の最大値)
NUM_VOCAB = 1000 # 語彙数
# 2 層の GRU
model = Sequential()
model.add( Embedding(NUM_VOCAB, EMBEDDING_DIM, input_shape = (MAX_LENGTH,)) )
model.add( GRU(EMBEDDING_DIM, return_sequences = True) ) # y_1, y_2, ..., y_fin を次の層へ
model.add( GRU(EMBEDDING_DIM, return_sequences = False) ) # y_fin のみを取り出す
model.add( Dropout(0.25) )
model.add( Dense(3, activation = ‘softmax’) )
73© 2017 NTT DATA Mathematical Systems Inc.
73
 文章の特徴抽出
 履歴情報を用いたレコメンデーション
 音声認識
 古くから深層学習が成功していた分野で、RNN が基盤技術として用いら
れることも多いです
 曲生成、演奏
 最新の Deep Voice 3 については CNN ベース
 文章生成
 言語モデル構築から小説生成まで
 参考記事: http://karpathy.github.io/2015/05/21/rnn-effectiveness/
 お絵描き、演奏
 Sketch RNN https://experiments.withgoogle.com/ai/sketch-rnn-demo
 Performance RNN https://magenta.tensorflow.org/performance-rnn
その他の RNN の使い道
74© 2017 NTT DATA Mathematical Systems Inc.
74
 分類だけでない!系列データから系列データへの学習
 さらに踏み込んで 「なんらかのデータをベクトルに埋め込んだもの」 か
ら系列データへの学習も (マルチモーダルへの道)
 機械翻訳 (日本語から英語へ)
 対話 (言われたことから発話へ)
 文章要約 (オリジナル文から要約文へ)
 Question Answering (質問文から応答文へ)
 画像キャプション生成 (画像から画像キャプションへ)
 Visual Question Answering (画像を見て応答)
 人間の話し言葉を理解して対話
さらなる RNN の現代的な使い方
75© 2017 NTT DATA Mathematical Systems Inc.
75
 まず RNN を用いて元の文章をベクトルに埋め込む
 埋め込まれたベクトルをコンテキストに持ちながら再び
RNN を回して 「次の単語を予測する」 を繰り返す
Sequence to Sequence 学習
Sutskever et al., Sequence to Sequence Learning with Neural Networks, 2014.
76© 2017 NTT DATA Mathematical Systems Inc.
76
 seq2seq を機械翻訳に応用
 昨年末 Google 翻訳がこれになって話題に
機械翻訳
Google’s Neural Machine Translation System: Bridging the Gap between Human and Machine Translation, 2016.
77© 2017 NTT DATA Mathematical Systems Inc.
77
 seq2seq を対話に応用
 Microsoft の女子高生AI りんななども
対話
Vinyals et al., A Neural Conversational Model, 2015.
http://www.itmedia.co.jp/mobile/articles/1606/12/news005.html
78© 2017 NTT DATA Mathematical Systems Inc.
78
 seq2seq を文章要約に応用
 機械翻訳が成熟し始めた今、かなりのホットトピック
文章要約
Nallapati et al., Abstractive Text Summarization Using Sequence-to-Sequence RNNs and Beyond, 2015.
79© 2017 NTT DATA Mathematical Systems Inc.
79
 seq2seq はコンテキストベクトルがあればいいので、
元系列が文章でなくてもいい
画像キャプション生成 (マルチモーダル)
Vinyals et al., Show and Tell: A Neural Image Caption Generator, 2014.
80© 2017 NTT DATA Mathematical Systems Inc.
80
画像キャプション生成 (マルチモーダル)
Vinyals et al., Show and Tell: A Neural Image Caption Generator, 2014.
81© 2017 NTT DATA Mathematical Systems Inc.
81
比較的最近の自然言語処理のトレンド
Attention
Bahdana, ICLR 2015
Memory Networks
Sukhbaatar et al., NIPS 2015
Pointer Networks
Vinyals et al., NIPS 2015
QA 系 組合せ最適化系
これらを基にした自然言語処理系
研究が爆発的流行
Seq2Seq
Sutskever, NIPS 2014
82© 2017 NTT DATA Mathematical Systems Inc.
82
Attention
…
質問文
Before
…
回答文 (途中)
次
の
単
語
個
私は20
君の年齢は幾つですか?
After
Bahdanau et al., Neural Machine Translation by Jointly Learning to Align and Translate, 2014.
83© 2017 NTT DATA Mathematical Systems Inc.
83
Attention
…
質問文
Before
…
回答文 (途中)
次
の
単
語
個
私は20
君の年齢は幾つですか?
…
After
…
回答文 (途中)
次
の
単
語
歳
私は20
質問文
君の年齢は幾つですか?
Bahdanau et al., Neural Machine Translation by Jointly Learning to Align and Translate, 2014.
・ 質問文の強く着目する箇所を学習
・ 回答文の流れで時間変化
84© 2017 NTT DATA Mathematical Systems Inc.
84
比較的最近の自然言語処理のトレンド
Attention
Bahdana, ICLR 2015
Memory Networks
Sukhbaatar et al., NIPS 2015
Pointer Networks
Vinyals et al., NIPS 2015
QA 系 組合せ最適化系
これらを基にした自然言語処理系
研究が爆発的流行
Seq2Seq
Sutskever, NIPS 2014
85© 2017 NTT DATA Mathematical Systems Inc.
85
 Memory Networks 研究の源流
 外部メモリ的 (Attention は内部メモリ的)
 ソートアルゴリズムなどが学習できた
Neural Turing Machine
メモリ全体から attention
𝒓 𝒕 ← 𝒘 𝒕 𝒊 𝑴𝒕(𝒊)
𝑵
𝒊=𝟏
チューリングマシンのテープ
𝑴 𝒕(𝒊): 𝑵 個の 𝑴 次元ベクトル
※通常のチューリングマシンでは
読み込むテープの箇所は1か所
なんらかのニューラルネットワーク
で重み 𝒘 𝒕 𝒊 を生成
書き込み (LSTM を模倣)
𝑴 𝒕 𝒊 ← 𝑴 𝒕−𝟏 𝒊 𝟏 − 𝒘 𝒕 𝒊 𝒆 𝒕
+ 𝒘 𝒕 𝒊 𝒂 𝒕
※ 𝑴𝒕−𝟏 𝒊 𝟏 − 𝒘 𝒕 𝒊 𝒆 𝒕 で前回の記憶
を少し忘れさせて、今回の記憶として
𝒘 𝒕 𝒊 𝒂 𝒕 を加算
※ 実際に出力するのは 𝒘 𝒕 𝒊
を更新するためのベクトル
Graves et al., Neural Turing Machines, 2014.
86© 2017 NTT DATA Mathematical Systems Inc.
86
 ごく簡単な QA がこなせる
 下の図は一層版, 多層化できる
 RNN っぽくなる (広域メモリ付き)
End-To-End Memory Networks
Sukhbaatar et al., End-To-End Memory Networks, 2015.
Input の各列 𝒎𝒊 は
各入力文を情報記憶用
に埋め込んだベクトル
① 質問文 𝒒 を、Input のどの入力
文を重点的に見るべきかを示す
ベクトル 𝒑 へ変換
Input の各列 𝒄𝒊 は
各入力文を答え生成用
に埋め込んだベクトル
② 𝒑 による
attention ③ 𝒐 に埋め込まれた
答え情報を形にする
87© 2017 NTT DATA Mathematical Systems Inc.
87
 Before: 文章は文の集まり
 After : 文章は文の流れ (ヒントになる文章を順次推定)
Dynamic Memory Networks
Kumar et al., Ask Me Anything: Dynamic Memory Networks for Natural Language Processing, 2015.
88© 2017 NTT DATA Mathematical Systems Inc.
88
 今までの Attention: 一方向
 「質問文」 を読んで、「文章」 のどこが大事か
 進化した Co-Attention: 双方向
 「質問文」 を読んで、「文章」 のどこが大事か
 「文章」 を読みながら、「質問文」 の聞き所を掴む
Dynamic Coattention Networks
Xiong et al., Ask Me Anything: Dynamic Memory Networks for Natural Language Processing, 2016.
89© 2017 NTT DATA Mathematical Systems Inc.
89
比較的最近の自然言語処理のトレンド
Attention
Bahdana, ICLR 2015
Memory Networks
Sukhbaatar et al., NIPS 2015
Pointer Networks
Vinyals et al., NIPS 2015
QA 系 組合せ最適化系
これらを基にした自然言語処理系
研究が爆発的流行
Seq2Seq
Sutskever, NIPS 2014
90© 2017 NTT DATA Mathematical Systems Inc.
90
 「入力列の中から、順番に適切なものを Attention し
て選んでいく」 というフレームワーク
 元々は、組合せ最適化問題を解かせるために誕生
 現在では、NLP 系で盛んに使われる技術に!!
Pointer Networks
Vinyals et al., Pointer Networks, 2015.
91© 2017 NTT DATA Mathematical Systems Inc.
91
 「入力列の中から、順番に適切なものを Attention し
て選んでいく」 というフレームワーク
 元々は、組合せ最適化問題を解かせるために誕生
 現在では、NLP 系で盛んに使われる技術に!!
Pointer Networks
Vinyals et al., Pointer Networks, 2015.
92© 2017 NTT DATA Mathematical Systems Inc.
92
 自然言語処理タスクにおいて unk や固有名詞に強く!
 従来の seq2seq (with attention) に元の文章からの単
語抜き出し機構を追加
 もっと一般に 「データベースを参照した対話」 にも
cf. A Neural Knowledge Language Model (Ahn et al., arXiv 2016)
Pointing the Unknown Words
Gulcehre et al., Pointing the Unknown Words, 2016.
93© 2017 NTT DATA Mathematical Systems Inc.
93
 “Pointing the Unknown Words” を先駆けとして、
seq2seq と pointer-networks を組合せるテクが流行
 文章要約において強力
 データベース参照しながらのチャットボットにも使えそう
Pointer-Generator
See et al., Get To The Point: Summarization with Pointer-Generator Networks, 2017.
sigmoid で分岐など
© 2017 NTT DATA Mathematical Systems Inc.

Weitere ähnliche Inhalte

Was ist angesagt?

機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)Kota Matsui
 
深層学習の数理
深層学習の数理深層学習の数理
深層学習の数理Taiji Suzuki
 
大規模な組合せ最適化問題に対する発見的解法
大規模な組合せ最適化問題に対する発見的解法大規模な組合せ最適化問題に対する発見的解法
大規模な組合せ最適化問題に対する発見的解法Shunji Umetani
 
幾何を使った統計のはなし
幾何を使った統計のはなし幾何を使った統計のはなし
幾何を使った統計のはなしToru Imai
 
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説弘毅 露崎
 
Graph Neural Networks
Graph Neural NetworksGraph Neural Networks
Graph Neural Networkstm1966
 
区間分割の仕方を最適化する動的計画法 (JOI 2021 夏季セミナー)
区間分割の仕方を最適化する動的計画法 (JOI 2021 夏季セミナー)区間分割の仕方を最適化する動的計画法 (JOI 2021 夏季セミナー)
区間分割の仕方を最適化する動的計画法 (JOI 2021 夏季セミナー)Kensuke Otsuki
 
死にたくない
死にたくない死にたくない
死にたくないjoisino
 
深層学習の不確実性 - Uncertainty in Deep Neural Networks -
深層学習の不確実性 - Uncertainty in Deep Neural Networks -深層学習の不確実性 - Uncertainty in Deep Neural Networks -
深層学習の不確実性 - Uncertainty in Deep Neural Networks -tmtm otm
 
ブラックボックス最適化とその応用
ブラックボックス最適化とその応用ブラックボックス最適化とその応用
ブラックボックス最適化とその応用gree_tech
 
生成モデルの Deep Learning
生成モデルの Deep Learning生成モデルの Deep Learning
生成モデルの Deep LearningSeiya Tokui
 
計算論的学習理論入門 -PAC学習とかVC次元とか-
計算論的学習理論入門 -PAC学習とかVC次元とか-計算論的学習理論入門 -PAC学習とかVC次元とか-
計算論的学習理論入門 -PAC学習とかVC次元とか-sleepy_yoshi
 
DSIRNLP#1 ランキング学習ことはじめ
DSIRNLP#1 ランキング学習ことはじめDSIRNLP#1 ランキング学習ことはじめ
DSIRNLP#1 ランキング学習ことはじめsleepy_yoshi
 
[DL輪読会]Focal Loss for Dense Object Detection
[DL輪読会]Focal Loss for Dense Object Detection[DL輪読会]Focal Loss for Dense Object Detection
[DL輪読会]Focal Loss for Dense Object DetectionDeep Learning JP
 
組合せ最適化入門:線形計画から整数計画まで
組合せ最適化入門:線形計画から整数計画まで組合せ最適化入門:線形計画から整数計画まで
組合せ最適化入門:線形計画から整数計画までShunji Umetani
 

Was ist angesagt? (20)

機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)
 
深層学習の数理
深層学習の数理深層学習の数理
深層学習の数理
 
双対性
双対性双対性
双対性
 
大規模な組合せ最適化問題に対する発見的解法
大規模な組合せ最適化問題に対する発見的解法大規模な組合せ最適化問題に対する発見的解法
大規模な組合せ最適化問題に対する発見的解法
 
グラフネットワーク〜フロー&カット〜
グラフネットワーク〜フロー&カット〜グラフネットワーク〜フロー&カット〜
グラフネットワーク〜フロー&カット〜
 
幾何を使った統計のはなし
幾何を使った統計のはなし幾何を使った統計のはなし
幾何を使った統計のはなし
 
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
 
Rolling hash
Rolling hashRolling hash
Rolling hash
 
Graph Neural Networks
Graph Neural NetworksGraph Neural Networks
Graph Neural Networks
 
線形計画法入門
線形計画法入門線形計画法入門
線形計画法入門
 
区間分割の仕方を最適化する動的計画法 (JOI 2021 夏季セミナー)
区間分割の仕方を最適化する動的計画法 (JOI 2021 夏季セミナー)区間分割の仕方を最適化する動的計画法 (JOI 2021 夏季セミナー)
区間分割の仕方を最適化する動的計画法 (JOI 2021 夏季セミナー)
 
死にたくない
死にたくない死にたくない
死にたくない
 
深層学習の不確実性 - Uncertainty in Deep Neural Networks -
深層学習の不確実性 - Uncertainty in Deep Neural Networks -深層学習の不確実性 - Uncertainty in Deep Neural Networks -
深層学習の不確実性 - Uncertainty in Deep Neural Networks -
 
ブラックボックス最適化とその応用
ブラックボックス最適化とその応用ブラックボックス最適化とその応用
ブラックボックス最適化とその応用
 
生成モデルの Deep Learning
生成モデルの Deep Learning生成モデルの Deep Learning
生成モデルの Deep Learning
 
計算論的学習理論入門 -PAC学習とかVC次元とか-
計算論的学習理論入門 -PAC学習とかVC次元とか-計算論的学習理論入門 -PAC学習とかVC次元とか-
計算論的学習理論入門 -PAC学習とかVC次元とか-
 
DSIRNLP#1 ランキング学習ことはじめ
DSIRNLP#1 ランキング学習ことはじめDSIRNLP#1 ランキング学習ことはじめ
DSIRNLP#1 ランキング学習ことはじめ
 
[DL輪読会]Focal Loss for Dense Object Detection
[DL輪読会]Focal Loss for Dense Object Detection[DL輪読会]Focal Loss for Dense Object Detection
[DL輪読会]Focal Loss for Dense Object Detection
 
組合せ最適化入門:線形計画から整数計画まで
組合せ最適化入門:線形計画から整数計画まで組合せ最適化入門:線形計画から整数計画まで
組合せ最適化入門:線形計画から整数計画まで
 
ACPC 2018 Day3 G: 回文部分列 (Palindromic Subsequences)
ACPC 2018 Day3 G: 回文部分列 (Palindromic Subsequences)ACPC 2018 Day3 G: 回文部分列 (Palindromic Subsequences)
ACPC 2018 Day3 G: 回文部分列 (Palindromic Subsequences)
 

Ähnlich wie ディープラーニング入門 ~ 画像処理・自然言語処理について ~

データサイエンティスト協会 木曜勉強会 #09 『意志の力が拓くシステム~最適化の適用事例から見たデータ活用システムの現在と未来~』
データサイエンティスト協会 木曜勉強会 #09 『意志の力が拓くシステム~最適化の適用事例から見たデータ活用システムの現在と未来~』データサイエンティスト協会 木曜勉強会 #09 『意志の力が拓くシステム~最適化の適用事例から見たデータ活用システムの現在と未来~』
データサイエンティスト協会 木曜勉強会 #09 『意志の力が拓くシステム~最適化の適用事例から見たデータ活用システムの現在と未来~』The Japan DataScientist Society
 
パターン認識モデル初歩の初歩
パターン認識モデル初歩の初歩パターン認識モデル初歩の初歩
パターン認識モデル初歩の初歩t_ichioka_sg
 
Pythonとdeep learningで手書き文字認識
Pythonとdeep learningで手書き文字認識Pythonとdeep learningで手書き文字認識
Pythonとdeep learningで手書き文字認識Ken Morishita
 
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V e-1
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V e-1データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V e-1
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V e-1Shunsuke Nakamura
 
20181219_全部見せます、データサイエンティストの仕事
20181219_全部見せます、データサイエンティストの仕事20181219_全部見せます、データサイエンティストの仕事
20181219_全部見せます、データサイエンティストの仕事Shunsuke Nakamura
 
深層学習とTensorFlow入門
深層学習とTensorFlow入門深層学習とTensorFlow入門
深層学習とTensorFlow入門tak9029
 
SSII2018TS: 大規模深層学習
SSII2018TS: 大規模深層学習SSII2018TS: 大規模深層学習
SSII2018TS: 大規模深層学習SSII
 
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V7
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V7データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V7
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V7Shunsuke Nakamura
 
An Introduction of DNN Compression Technology and Hardware Acceleration on FPGA
An Introduction of DNN Compression Technology and Hardware Acceleration on FPGAAn Introduction of DNN Compression Technology and Hardware Acceleration on FPGA
An Introduction of DNN Compression Technology and Hardware Acceleration on FPGALeapMind Inc
 
確率的深層学習における中間層の改良と高性能学習法の提案
確率的深層学習における中間層の改良と高性能学習法の提案確率的深層学習における中間層の改良と高性能学習法の提案
確率的深層学習における中間層の改良と高性能学習法の提案__106__
 
Triplet Lossによる Person Re-identification
Triplet Lossによる Person Re-identificationTriplet Lossによる Person Re-identification
Triplet Lossによる Person Re-identificationtancoro
 
MP Joinを使った類似データ抽出
MP Joinを使った類似データ抽出MP Joinを使った類似データ抽出
MP Joinを使った類似データ抽出JAVA DM
 
(文献紹介)深層学習による動被写体ロバストなカメラの動き推定
(文献紹介)深層学習による動被写体ロバストなカメラの動き推定(文献紹介)深層学習による動被写体ロバストなカメラの動き推定
(文献紹介)深層学習による動被写体ロバストなカメラの動き推定Morpho, Inc.
 
[DL輪読会]SoftTriple Loss: Deep Metric Learning Without Triplet Sampling (ICCV2019)
[DL輪読会]SoftTriple Loss: Deep Metric Learning Without Triplet Sampling (ICCV2019)[DL輪読会]SoftTriple Loss: Deep Metric Learning Without Triplet Sampling (ICCV2019)
[DL輪読会]SoftTriple Loss: Deep Metric Learning Without Triplet Sampling (ICCV2019)Deep Learning JP
 
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで Vm 1
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで Vm 1データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで Vm 1
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで Vm 1Shunsuke Nakamura
 
ADVENTUREの他のモジュール・関連プロジェクトの紹介
ADVENTUREの他のモジュール・関連プロジェクトの紹介ADVENTUREの他のモジュール・関連プロジェクトの紹介
ADVENTUREの他のモジュール・関連プロジェクトの紹介ADVENTURE Project
 
【技術情報協会】人工知能を使ったR&D業務効率化・生産性向上のシステム作り
【技術情報協会】人工知能を使ったR&D業務効率化・生産性向上のシステム作り【技術情報協会】人工知能を使ったR&D業務効率化・生産性向上のシステム作り
【技術情報協会】人工知能を使ったR&D業務効率化・生産性向上のシステム作りHajime Fujita
 
エンジニアのための機械学習の基礎
エンジニアのための機械学習の基礎エンジニアのための機械学習の基礎
エンジニアのための機械学習の基礎Daiyu Hatakeyama
 

Ähnlich wie ディープラーニング入門 ~ 画像処理・自然言語処理について ~ (20)

データサイエンティスト協会 木曜勉強会 #09 『意志の力が拓くシステム~最適化の適用事例から見たデータ活用システムの現在と未来~』
データサイエンティスト協会 木曜勉強会 #09 『意志の力が拓くシステム~最適化の適用事例から見たデータ活用システムの現在と未来~』データサイエンティスト協会 木曜勉強会 #09 『意志の力が拓くシステム~最適化の適用事例から見たデータ活用システムの現在と未来~』
データサイエンティスト協会 木曜勉強会 #09 『意志の力が拓くシステム~最適化の適用事例から見たデータ活用システムの現在と未来~』
 
パターン認識モデル初歩の初歩
パターン認識モデル初歩の初歩パターン認識モデル初歩の初歩
パターン認識モデル初歩の初歩
 
Pythonとdeep learningで手書き文字認識
Pythonとdeep learningで手書き文字認識Pythonとdeep learningで手書き文字認識
Pythonとdeep learningで手書き文字認識
 
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V e-1
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V e-1データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V e-1
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V e-1
 
Deep learning入門
Deep learning入門Deep learning入門
Deep learning入門
 
20181219_全部見せます、データサイエンティストの仕事
20181219_全部見せます、データサイエンティストの仕事20181219_全部見せます、データサイエンティストの仕事
20181219_全部見せます、データサイエンティストの仕事
 
深層学習とTensorFlow入門
深層学習とTensorFlow入門深層学習とTensorFlow入門
深層学習とTensorFlow入門
 
SSII2018TS: 大規模深層学習
SSII2018TS: 大規模深層学習SSII2018TS: 大規模深層学習
SSII2018TS: 大規模深層学習
 
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V7
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V7データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V7
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V7
 
An Introduction of DNN Compression Technology and Hardware Acceleration on FPGA
An Introduction of DNN Compression Technology and Hardware Acceleration on FPGAAn Introduction of DNN Compression Technology and Hardware Acceleration on FPGA
An Introduction of DNN Compression Technology and Hardware Acceleration on FPGA
 
確率的深層学習における中間層の改良と高性能学習法の提案
確率的深層学習における中間層の改良と高性能学習法の提案確率的深層学習における中間層の改良と高性能学習法の提案
確率的深層学習における中間層の改良と高性能学習法の提案
 
Triplet Lossによる Person Re-identification
Triplet Lossによる Person Re-identificationTriplet Lossによる Person Re-identification
Triplet Lossによる Person Re-identification
 
MP Joinを使った類似データ抽出
MP Joinを使った類似データ抽出MP Joinを使った類似データ抽出
MP Joinを使った類似データ抽出
 
(文献紹介)深層学習による動被写体ロバストなカメラの動き推定
(文献紹介)深層学習による動被写体ロバストなカメラの動き推定(文献紹介)深層学習による動被写体ロバストなカメラの動き推定
(文献紹介)深層学習による動被写体ロバストなカメラの動き推定
 
[DL輪読会]SoftTriple Loss: Deep Metric Learning Without Triplet Sampling (ICCV2019)
[DL輪読会]SoftTriple Loss: Deep Metric Learning Without Triplet Sampling (ICCV2019)[DL輪読会]SoftTriple Loss: Deep Metric Learning Without Triplet Sampling (ICCV2019)
[DL輪読会]SoftTriple Loss: Deep Metric Learning Without Triplet Sampling (ICCV2019)
 
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで Vm 1
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで Vm 1データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで Vm 1
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで Vm 1
 
はじめての「R」
はじめての「R」はじめての「R」
はじめての「R」
 
ADVENTUREの他のモジュール・関連プロジェクトの紹介
ADVENTUREの他のモジュール・関連プロジェクトの紹介ADVENTUREの他のモジュール・関連プロジェクトの紹介
ADVENTUREの他のモジュール・関連プロジェクトの紹介
 
【技術情報協会】人工知能を使ったR&D業務効率化・生産性向上のシステム作り
【技術情報協会】人工知能を使ったR&D業務効率化・生産性向上のシステム作り【技術情報協会】人工知能を使ったR&D業務効率化・生産性向上のシステム作り
【技術情報協会】人工知能を使ったR&D業務効率化・生産性向上のシステム作り
 
エンジニアのための機械学習の基礎
エンジニアのための機械学習の基礎エンジニアのための機械学習の基礎
エンジニアのための機械学習の基礎
 

Mehr von Kensuke Otsuki

ものづくりに活かす数学 (2024 年 1 月 26 日 N/S 高等学校での数学の授業)
ものづくりに活かす数学 (2024 年 1 月 26 日 N/S 高等学校での数学の授業)ものづくりに活かす数学 (2024 年 1 月 26 日 N/S 高等学校での数学の授業)
ものづくりに活かす数学 (2024 年 1 月 26 日 N/S 高等学校での数学の授業)Kensuke Otsuki
 
競プロは人生の役に立つ!
競プロは人生の役に立つ!競プロは人生の役に立つ!
競プロは人生の役に立つ!Kensuke Otsuki
 
人それぞれの競プロとの向き合い方
人それぞれの競プロとの向き合い方人それぞれの競プロとの向き合い方
人それぞれの競プロとの向き合い方Kensuke Otsuki
 
アルゴリズムを楽しく!@PiyogrammerConference
アルゴリズムを楽しく!@PiyogrammerConferenceアルゴリズムを楽しく!@PiyogrammerConference
アルゴリズムを楽しく!@PiyogrammerConferenceKensuke Otsuki
 
「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)
「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)
「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)Kensuke Otsuki
 
JOI春季ステップアップセミナー 2021 講義スライド
JOI春季ステップアップセミナー 2021 講義スライドJOI春季ステップアップセミナー 2021 講義スライド
JOI春季ステップアップセミナー 2021 講義スライドKensuke Otsuki
 
IT エンジニア本大賞 2021 講演資料
IT エンジニア本大賞 2021 講演資料IT エンジニア本大賞 2021 講演資料
IT エンジニア本大賞 2021 講演資料Kensuke Otsuki
 
Optimization night 4_dp
Optimization night 4_dpOptimization night 4_dp
Optimization night 4_dpKensuke Otsuki
 
『問題解決力を鍛える!アルゴリズムとデータ構造』出版記念講演
『問題解決力を鍛える!アルゴリズムとデータ構造』出版記念講演『問題解決力を鍛える!アルゴリズムとデータ構造』出版記念講演
『問題解決力を鍛える!アルゴリズムとデータ構造』出版記念講演Kensuke Otsuki
 
虫食算に学ぶ、深さ優先探索アルゴリズム (combmof, 2018/12/23)
虫食算に学ぶ、深さ優先探索アルゴリズム (combmof, 2018/12/23)虫食算に学ぶ、深さ優先探索アルゴリズム (combmof, 2018/12/23)
虫食算に学ぶ、深さ優先探索アルゴリズム (combmof, 2018/12/23)Kensuke Otsuki
 
二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方
二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方
二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方Kensuke Otsuki
 
2部グラフの最小点被覆の求め方
2部グラフの最小点被覆の求め方2部グラフの最小点被覆の求め方
2部グラフの最小点被覆の求め方Kensuke Otsuki
 
虫食算を作るアルゴリズム 公表Ver
虫食算を作るアルゴリズム 公表Ver虫食算を作るアルゴリズム 公表Ver
虫食算を作るアルゴリズム 公表VerKensuke Otsuki
 

Mehr von Kensuke Otsuki (14)

ものづくりに活かす数学 (2024 年 1 月 26 日 N/S 高等学校での数学の授業)
ものづくりに活かす数学 (2024 年 1 月 26 日 N/S 高等学校での数学の授業)ものづくりに活かす数学 (2024 年 1 月 26 日 N/S 高等学校での数学の授業)
ものづくりに活かす数学 (2024 年 1 月 26 日 N/S 高等学校での数学の授業)
 
競プロは人生の役に立つ!
競プロは人生の役に立つ!競プロは人生の役に立つ!
競プロは人生の役に立つ!
 
人それぞれの競プロとの向き合い方
人それぞれの競プロとの向き合い方人それぞれの競プロとの向き合い方
人それぞれの競プロとの向き合い方
 
アルゴリズムを楽しく!@PiyogrammerConference
アルゴリズムを楽しく!@PiyogrammerConferenceアルゴリズムを楽しく!@PiyogrammerConference
アルゴリズムを楽しく!@PiyogrammerConference
 
「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)
「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)
「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)
 
JOI春季ステップアップセミナー 2021 講義スライド
JOI春季ステップアップセミナー 2021 講義スライドJOI春季ステップアップセミナー 2021 講義スライド
JOI春季ステップアップセミナー 2021 講義スライド
 
IT エンジニア本大賞 2021 講演資料
IT エンジニア本大賞 2021 講演資料IT エンジニア本大賞 2021 講演資料
IT エンジニア本大賞 2021 講演資料
 
210122 msi dp
210122 msi dp210122 msi dp
210122 msi dp
 
Optimization night 4_dp
Optimization night 4_dpOptimization night 4_dp
Optimization night 4_dp
 
『問題解決力を鍛える!アルゴリズムとデータ構造』出版記念講演
『問題解決力を鍛える!アルゴリズムとデータ構造』出版記念講演『問題解決力を鍛える!アルゴリズムとデータ構造』出版記念講演
『問題解決力を鍛える!アルゴリズムとデータ構造』出版記念講演
 
虫食算に学ぶ、深さ優先探索アルゴリズム (combmof, 2018/12/23)
虫食算に学ぶ、深さ優先探索アルゴリズム (combmof, 2018/12/23)虫食算に学ぶ、深さ優先探索アルゴリズム (combmof, 2018/12/23)
虫食算に学ぶ、深さ優先探索アルゴリズム (combmof, 2018/12/23)
 
二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方
二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方
二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方
 
2部グラフの最小点被覆の求め方
2部グラフの最小点被覆の求め方2部グラフの最小点被覆の求め方
2部グラフの最小点被覆の求め方
 
虫食算を作るアルゴリズム 公表Ver
虫食算を作るアルゴリズム 公表Ver虫食算を作るアルゴリズム 公表Ver
虫食算を作るアルゴリズム 公表Ver
 

Kürzlich hochgeladen

スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 

Kürzlich hochgeladen (7)

スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 

ディープラーニング入門 ~ 画像処理・自然言語処理について ~

  • 1. © 2017 NTT DATA Mathematical Systems Inc. ディープラーニング 入門 株式会社NTTデータ数理システム 2017 年度版 大槻 兼資
  • 2. 2© 2017 NTT DATA Mathematical Systems Inc. 2  イントロ  ディープラーニングとは  ディープラーニングの特徴  ディープラーニングの構成要素  ディープラーニングのチューニング技法  ディープラーニングを用いた画像処理  ディープラーニングを用いた自然言語処理  ディープラーニングを用いたマルチモーダル学習 内容
  • 3. 3© 2017 NTT DATA Mathematical Systems Inc. 3  イントロ  ディープラーニングとは  ディープラーニングの特徴  ディープラーニングの構成要素  ディープラーニングのチューニング技法  ディープラーニングを用いた画像処理  ディープラーニングを用いた自然言語処理  ディープラーニングを用いたマルチモーダル学習 内容
  • 4. 4© 2017 NTT DATA Mathematical Systems Inc. 4  機械学習の一手法 ディープラーニングとは 機械学習 ディープラーニング データの背後に潜むパターンを推測 データの理解・未来の予測が目標 脳を模した機械学習手法 画像認識、音声認識、自然言語処理、強化学習 などでブレイクスルーを起こす
  • 5. 5© 2017 NTT DATA Mathematical Systems Inc. 5  多層のニューラルネットワークを用いて学習  入力層は入力データを受け取る  出力層は出力値を出力 ディープラーニングとは https://www1.doshisha.ac.jp/~mjin/R/Chap_23/23.html 頂点 (ニューロン のモデル化) 辺 (シナプス のモデル化) 0.04: クラス 1 への分類確率 0.83: クラス 2 への分類確率 0.09: クラス n への分類確率 典型的な出力形式例: (n クラス分類の場合)
  • 6. 6© 2017 NTT DATA Mathematical Systems Inc. 6  画像認識コンペ ILSVRC  2012年、トロント大学の Hinton らの率いるチームが優勝 (AlexNet)  AlphaGO  Google DeepMind による囲碁AI  2016年、トップ棋士イ・セドルに4:1で勝利 注目のきっかけ 圧倒的改善! 年 1位チームの精度 備考 2010 28.2% 2011 25.8% 2012 16.4% AlexNet 2013 11.7% 2014 6.67% GoogleNet (2位: VGG) 2015 3.56% ResNet, ヒト超え! ヒト 5.1% http://www.popularmechanics.com/technology/a19863/ googles-alphago-ai-wins-second-game-go/
  • 7. 7© 2017 NTT DATA Mathematical Systems Inc. 7  1943年: ニューロン素子モデル登場  1958年: パーセプトロン登場  1986年: 誤差逆伝播法  多層のニューラルネットワークの学習法!  2006年: 層ごとの事前学習  高い汎化能力! ニューラルネットワークのブームと冬の時代 McCulloch--Pitts Rosenblatt 過学習問題, 勾配消失問題などがあって 再び冬の時代, SVMなどの盛り上がり Rumelhart (1層の)単純パーセプトロンは 線形分離不可能なパターンを識別不能問題 いう問題を克服できず…冬の時代へ Hinton, Bengio, LeCun ら ※ 現在では Dropout といったテクニックや、ReLU といった活性化関数、GPU などのハードウェアの進歩、 また大量のデータから学習ができるようになったことなどもあり、事前学習はあまり使われなくなった
  • 8. 8© 2017 NTT DATA Mathematical Systems Inc. 8  線形モデル, 線形分離不可能なパターン  線形モデル: 線形回帰, ロジスティック回帰, SVM  過学習, 勾配消失問題 キーワード 線形分離可能 線形分離不可能
  • 9. 9© 2017 NTT DATA Mathematical Systems Inc. 9  ニューロン  単純パーセプトロン (1層のニューラルネット) 単純パーセプトロンは線形分類のみ 𝒙 𝟏 𝒙 𝟐 𝒙 𝟑 𝒛 𝒘 𝟏 𝒘 𝟐 𝒘 𝟑 𝒛 = 𝒇(𝒘 𝟏 𝒙 𝟏 + 𝒘 𝟐 𝒙 𝟐 + 𝒘 𝟑 𝒙 𝟑 + 𝒃) 𝒇: 活性化関数 𝒙 𝟏 𝒙 𝟐 𝒙 𝟑 𝒛 𝟏 𝒛 𝟐 𝒘 𝟏𝟏 𝒘 𝟏𝟐 𝒘 𝟏𝟑 𝒘 𝟐𝟏 𝒘 𝟐𝟐 𝒘 𝟐𝟑 𝒛 𝟏 𝒛 𝟐 = 𝒇 𝒘 𝟏𝟏 𝒘 𝟏𝟐 𝒘 𝟏𝟑 𝒘 𝟐𝟏 𝒘 𝟐𝟐 𝒘 𝟐𝟑 𝒙 𝟏 𝒙 𝟐 𝒙 𝟑 + 𝒃 𝟏 𝒃 𝟐 𝒇 を softmax として損失関数を categorical cross entropy にとると ロジスティック回帰 ・・・ 多クラスにも拡張可 𝑧𝑖 = 𝑓 𝑢𝑖 = exp 𝑤𝑖 T 𝑥 + 𝑏𝑖 exp(𝑤𝑗 T 𝑥 + 𝑏𝑗 )𝑗 softmax データ 𝑥 がクラス 𝑖 に属する条件付き確 率 𝑝 𝐶𝑖|𝑥 をモデル 化 バイアス
  • 10. 10© 2017 NTT DATA Mathematical Systems Inc. 10  1層から多層にすると非線形へ  それどころか万能近似性を有する!  3層 (隠れ層1層) でも成立  実際上は隠れ層数を増やしたり、 各隠れ層のニューロン数を増やしたりする  モデルの表現力の高さは過学習問題と表裏一体 ディープニューラルネットワークへ 線形分離可能 線形分離不可能 𝒙 𝟏 𝒙 𝟐 𝒙 𝟑 𝒛 𝟏 𝒛 𝟐 任意の連続関数に 対して任意の精度 で近似できる
  • 11. 11© 2017 NTT DATA Mathematical Systems Inc. 11  過学習とは  学習データには適合するが、未知データに適合しない状況  複雑なモデルほど、より多くの学習データを必要とする 過学習について http:/scikit-learn.org/stable/auto_examples/model_selection/plot_underfitting_overfitting.html/
  • 12. 12© 2017 NTT DATA Mathematical Systems Inc. 12  過学習とは  学習データには適合するが、未知データに適合しない状況  複雑なモデルほど、より多くの学習データを必要とする モデルの表現力と過学習 表現力 低 (単純) 高 (複雑) 線形モデルなど ディープニューラルネットなど より優れたモデルの可能性を秘めて いるが、過学習しやすくなる (対策) • うまい正則化 (Dropout など) • 大量のデータで学習
  • 13. 13© 2017 NTT DATA Mathematical Systems Inc. 13  カーネルSVM  カーネルトリックを用いて線形モデルな SVM を非線形分類可能に  低バリアンスで汎化性能高め (過学習を抑えやすい)  ランダムフォレスト  メジャーでお手軽  分散させやすい  勾配ブースティング  いわゆる XGBoost  Kaggle などでデファクトになった強力な分類器  チューニングコスト低め その他の非線形分類器たち
  • 14. 14© 2017 NTT DATA Mathematical Systems Inc. 14  大量のデータを活かせる  モデルの表現力が高く過学習しやすい一方 大量のデータがあれば活かせる  特徴量の自動獲得  画像, 音声, テキストといった生モノに強い  ex. Googleの猫 (猫に反応するニューロン) ディープラーニングの強み https://googleblog.blogspot.jp/2012/06/using -large-scale-brain-simulations-for.html https://www.slideshare.net/ExtractConf/a ndrew-ng-chief-scientist-at-baidu/30 http://www.deeplearningbook.org/contents /intro.html
  • 15. 15© 2017 NTT DATA Mathematical Systems Inc. 15  過学習しやすい  大量の学習データが必要  機械学習しようとするときにいつも悩む  膨大な計算機リソースが必要  チューニングが難しい  特徴量を自動獲得する反面、ブラックボックスでもあり 人間が持っている知識を組み込みづらい ディープラーニングの代償
  • 16. 16© 2017 NTT DATA Mathematical Systems Inc. 16  イントロ  ディープラーニングとは  ディープラーニングの特徴  ディープラーニングの構成要素  ディープラーニングのチューニング技法  ディープラーニングを用いた画像処理  ディープラーニングを用いた自然言語処理  ディープラーニングを用いたマルチモーダル学習 内容
  • 17. 17© 2017 NTT DATA Mathematical Systems Inc. 17  モデル  ニューラルネットワークモデル (ネットワーク構造, 層数, 活性化関数)  損失関数 (モデルの予測結果が、正解にどれだけ近いかを示すもの)  学習 (確率的勾配降下法)  学習率  ミニバッチサイズ  Optimizer ディープラーニングの構成要素
  • 18. 18© 2017 NTT DATA Mathematical Systems Inc. 18  ニューロン  (単純)パーセプトロン ニューロンとパーセプトロン 𝒙 𝟏 𝒙 𝟐 𝒙 𝟑 𝒛 𝒘 𝟏 𝒘 𝟐 𝒘 𝟑 𝒛 = 𝒇(𝒖) 𝒇: 活性化関数 𝒙 𝟏 𝒙 𝟐 𝒙 𝟑 𝒖 𝟏 𝒖 𝟐 𝒘 𝟏𝟏 𝒘 𝟏𝟐 𝒘 𝟏𝟑 𝒘 𝟐𝟏 𝒘 𝟐𝟐 𝒘 𝟐𝟑 𝒛 𝟏 𝒛 𝟐 = 𝒇 𝒖 𝟏 𝒖 𝟐 𝒖 𝟏 𝒖 𝟐 = 𝒘 𝟏𝟏 𝒘 𝟏𝟐 𝒘 𝟏𝟑 𝒘 𝟐𝟏 𝒘 𝟐𝟐 𝒘 𝟐𝟑 𝒙 𝟏 𝒙 𝟐 𝒙 𝟑 + 𝒃 𝟏 𝒃 𝟐 𝒛 𝟏 𝒛 𝟐 𝒖 𝒖 = 𝒘 𝟏 𝒙 𝟏 + 𝒘 𝟐 𝒙 𝟐 + 𝒘 𝟑 𝒙 𝟑 + 𝒃 バイアス ベクトルと行列を用いて 𝒖 = 𝑾𝒙 + 𝒃 𝒛 = 𝒇(𝒖)
  • 19. 19© 2017 NTT DATA Mathematical Systems Inc. 19  ReLU  中間層における活性化関数として現在デファクト  sigmoid  勾配消失問題等により中間層では使われなくなった  出力層では使われる (ロジスティック回帰っぽくなる)  tanh  中間層では使われなくなった 中間層の活性化関数 𝒇 𝒖 = 𝐦𝐚𝐱(𝒖, 𝟎) 𝒇 𝒖 = 𝟏 𝟏 + 𝒆−𝒖 https://techblog.yahoo.co.jp/javascript/deep-learning-with-javascript/ 𝒇 𝒖 = 𝐭𝐚𝐧𝐡 𝒖
  • 20. 20© 2017 NTT DATA Mathematical Systems Inc. 20  sigmoid  出力値は確率を表す (ロジスティック回帰っぽく)  softmax  多クラス分類問題でよく使う (多クラスロジスティック回帰っぽく)  恒等写像  回帰問題の出力層でよく使う 出力層の活性化関数 𝒇 𝒖 = 𝟏 𝟏 + 𝒆−𝒖 𝒇 𝒖 = 𝒖 𝒖 𝟏 𝒖 𝟐 𝒖 𝟑 𝒛 𝟏 = 𝐞𝐱𝐩 𝒖 𝟏 𝐞𝐱𝐩 𝒖 𝟏 + 𝐞𝐱𝐩 𝒖 𝟐 + 𝐞𝐱𝐩(𝒖 𝟑) 𝐬𝐨𝐟𝐭𝐦𝐚𝐱 𝒛 𝟐 = 𝐞𝐱𝐩 𝒖 𝟐 𝐞𝐱𝐩 𝒖 𝟏 + 𝐞𝐱𝐩 𝒖 𝟐 + 𝐞𝐱𝐩(𝒖 𝟑) 𝒛 𝟑 = 𝐞𝐱𝐩 𝒖 𝟑 𝐞𝐱𝐩 𝒖 𝟏 + 𝐞𝐱𝐩 𝒖 𝟐 + 𝐞𝐱𝐩(𝒖 𝟑) 𝒛 𝟏 + 𝒛 𝟐 + 𝒛 𝟑 = 𝟏, 𝟎 ≤ 𝒛𝒊 ≤ 𝟏 データ 𝑥 がクラス 𝑖 に属する 条件付き確率 𝑝 𝐶𝑖|𝑥 をモデル化 入力 𝒙
  • 21. 21© 2017 NTT DATA Mathematical Systems Inc. 21  二値分類  損失関数: binary cross entropy  多クラス分類  損失関数: categorical cross entropy 損失関数 part1 𝒖 𝐬𝐢𝐠𝐦𝐨𝐢𝐝 𝒛 = 𝟏 𝟏 + 𝒆−𝒖 𝒖 𝟏 𝒖 𝟐 𝒖 𝟑 𝒛 𝟏 = 𝐞𝐱𝐩 𝒖 𝟏 𝐞𝐱𝐩 𝒖 𝟏 + 𝐞𝐱𝐩 𝒖 𝟐 + 𝐞𝐱𝐩(𝒖 𝟑) 𝐬𝐨𝐟𝐭𝐦𝐚𝐱 𝒛 𝟐 = 𝐞𝐱𝐩 𝒖 𝟐 𝐞𝐱𝐩 𝒖 𝟏 + 𝐞𝐱𝐩 𝒖 𝟐 + 𝐞𝐱𝐩(𝒖 𝟑) 𝒛 𝟑 = 𝐞𝐱𝐩 𝒖 𝟑 𝐞𝐱𝐩 𝒖 𝟏 + 𝐞𝐱𝐩 𝒖 𝟐 + 𝐞𝐱𝐩(𝒖 𝟑) 入力 𝒙 入力 𝒙 𝑥𝑖, 𝑦𝑖 𝑖=1,…,𝑛 : 学習データ 𝑙 𝑤 : 損失関数 𝑦 = 1 のとき 𝒍 𝒘 = 𝐥𝐨𝐠 𝒛(𝒙; 𝒘) 𝑦 = 0 のとき 𝒍 𝒘 = 𝐥𝐨𝐠(𝟏 − 𝒛(𝒙; 𝒘)) これを各 𝑥𝑖, 𝑦𝑖 𝑖=1,…,𝑛 に対して総和 𝑦 = 𝑘 のとき 𝒍 𝒘 = 𝐥𝐨𝐠 𝒛 𝒌(𝒙; 𝒘) これを各 𝑥𝑖, 𝑦𝑖 𝑖=1,…,𝑛 に対して総和
  • 22. 22© 2017 NTT DATA Mathematical Systems Inc. 22  回帰  損失関数: 二乗誤差 損失関数 part2 𝒖 活性化 𝒛入力 𝒙 𝑥𝑖, 𝑦𝑖 𝑖=1,…,𝑛 : 学習データ 𝑙 𝑤 : 損失関数 𝒍 𝒘 = (𝒚 − 𝒛(𝒙; 𝒘)) 𝟐 これを各 𝑥𝑖, 𝑦𝑖 𝑖=1,…,𝑛 に対して総和
  • 23. 23© 2017 NTT DATA Mathematical Systems Inc. 23  モデル  ニューラルネットワークモデル (ネットワーク構造, 層数, 活性化関数)  損失関数 (モデルの予測結果が、正解にどれだけ近いかを示すもの  学習 (確率的勾配降下法)  学習率  ミニバッチサイズ  Optimizer ディープラーニングの構成要素 (再掲)
  • 24. 24© 2017 NTT DATA Mathematical Systems Inc. 24  損失関数は例えば回帰問題では  勾配降下法: 関数の最小値を求める一般的なテク 勾配降下法 𝑥𝑖, 𝑦𝑖 𝑖=1,…,𝑛 : 学習データ 𝑙𝑖 𝑤 : 損失関数 𝐌𝐢𝐧𝐢𝐦𝐢𝐳𝐞 𝒘: 𝑳 𝒘 = 𝒍𝒊(𝒘) 𝒏 𝒊=𝟏 = 𝒚𝒊 − 𝒛𝒊 𝒙; 𝒘 𝟐 𝒏 𝒊=𝟏 • 初期値 𝒘 𝟎 を用意 • 更新式 𝒘 𝒕+𝟏 = 𝒘 𝒕 − 𝝐 𝛁𝑳(𝒘 𝒕 ) に従って 重みを更新していく 学習率
  • 25. 25© 2017 NTT DATA Mathematical Systems Inc. 25  勾配降下法の更新式を書き直すと  確率的勾配降下法  毎回 𝑛 個のデータのうちの 𝐾 個をサンプリング (𝑖1, 𝑖2, … , 𝑖 𝐾)  望まない局所極小解から抜け出せなくなるリスクを軽減  学習途中でデータを追加できる 確率的勾配降下法 (SGD) 𝒘 𝒕+𝟏 = 𝒘 𝒕 − 𝝐 𝜵𝒍𝒊(𝒘) 𝒏 𝒊=𝟏 𝑥𝑖, 𝑦𝑖 𝑖=1,…,𝑛 : 学習データ 𝑙𝑖 𝑤 : 損失関数 1回の更新で 𝑛 個の全データ必要 ミニバッチサイズ 𝒘 𝒕+𝟏 = 𝒘 𝒕 − 𝝐 𝜵𝒍𝒊 𝒌 (𝒘) 𝑲 𝒌=𝟏 1回の更新では 𝑛 個のデータのうち、 𝑘 個のみを使用
  • 26. 26© 2017 NTT DATA Mathematical Systems Inc. 26  学習率  小さすぎると学習に時間がかかる  大きすぎると loss が下がりにくくなる  ミニバッチサイズ  10~100程度とすることが多い  多クラス分類問題の場合、クラス数より多くしたい  ただし、クラス数が多すぎる場合は10~100程度に  Optimizer: SGDの亜種たち  AdaGrad  AdaDelta  Adam  RMSprop チューニングパラメータ 𝒘 𝒕+𝟏 = 𝒘 𝒕 − 𝝐 𝜵𝒍𝒊 𝒌 (𝒘) 𝑲 𝒌=𝟏 ミニバッチサイズ 学習率
  • 27. 27© 2017 NTT DATA Mathematical Systems Inc. 27  イントロ  ディープラーニングとは  ディープラーニングの特徴  ディープラーニングの構成要素  ディープラーニングのチューニング技法  ディープラーニングを用いた画像処理  ディープラーニングを用いた自然言語処理  ディープラーニングを用いたマルチモーダル学習 内容
  • 28. 28© 2017 NTT DATA Mathematical Systems Inc. 28  データを分割 (7 : 3 くらいに)  学習用データ: モデルの学習  テスト用データ: 実際にうまく分類できるかなどの評価  ハイパーパラメータチューニング  テスト用データに対する精度が最も高くなるようにパラメータ調整した くなる (反則!!!)  チューニングのために validation データを確保することも  学習データ  Validationデータ  テストデータ データの扱い
  • 29. 29© 2017 NTT DATA Mathematical Systems Inc. 29  2 つの誤差  経験損失: 学習データに対する推論の正解とのズレ  期待損失: 未知のデータに対する推論の正解とのズレ (の期待値)  経験損失を小さくする ことで期待損失を小さくしたい  期待損失は実際は計算できないので、テスト誤差を近 似的に期待損失と考える 機械学習の目的: 期待損失の最小化 過学習とは、経験損失は小さいが 期待損失が大きい状態
  • 30. 30© 2017 NTT DATA Mathematical Systems Inc. 30  上手くいっていない状況を把握  Underfit? / Overfit? / そもそもデータの限界?  学習データに対してもダメなとき  とにかくまずは過学習させちゃう!  Optimizer, 学習率, ミニバッチサイズ, モデルをより複雑に  学習データに対してはOKでテストデータはダメなとき  正則化  学習データの増やし方  モデルそのものの改善  モデル規模の適性化 ディープラーニングのチューニング
  • 31. 31© 2017 NTT DATA Mathematical Systems Inc. 31  Underfit?  Overfit (過学習)?  データがそもそも悪い? (ノイズが大きい) 状況把握 https://www.coursera.org/learn/machine-learning/lecture/yCAup/diagnosing-bias-vs-variance
  • 32. 32© 2017 NTT DATA Mathematical Systems Inc. 32  学習データに対してフィットしないと何も始まらない  この状況で学習データ増やしても改善しない  過学習させてでもフィットさせよう!  学習率の調整!!!  Optimizers を変えてみる  モデルをもっと複雑にしてみる  ミニバッチサイズを変えてみる Underfit  経験損失 (学習データとのズレ) が小さくなっていない  学習データに対しても正しく推定できない
  • 33. 33© 2017 NTT DATA Mathematical Systems Inc. 33  Early Stopping  各種正則化  モデルの規模の適性化  モデルの改善  学習データを増やす  学習データを正規化  学習データの水増し  学習データの質を疑う Overfit (過学習)  経験損失 (学習データとのズレ) は十分に小さい  期待損失 (未知データとのズレ) は大きい https://www.altus5.co.jp/blog/machine-learning/2016/11/28/over-learning/
  • 34. 34© 2017 NTT DATA Mathematical Systems Inc. 34  過学習する前に学習を打ち切る  テスト誤差が最小になる点を Early Stopping https://www.altus5.co.jp/blog/machine-learning/2016/11/28/over-learning/
  • 35. 35© 2017 NTT DATA Mathematical Systems Inc. 35  重みの L2 / L1 正則化  Dropout  Batch Normalization  2015年あたりに提案された強力な正規化層 各種正則化 model = Sequential() model.add( Conv2D(32, kernel_size = (3, 3), activation = ‘relu’, input_shape = input_shape) ) model.add( MaxPooling2D(pool_size = (2, 2)) ) model.add( Dropout(0.25) ) model.add( Flatten() ) model.add( Dense(128, activation = ‘relu’, W_regularizer = l2(0.0001)) ) model.add( Dense(num_classes, activation = ‘softmax’) ) Keras での例
  • 36. 36© 2017 NTT DATA Mathematical Systems Inc. 36  モデルをシンプルにする  層数を減らすなど  モデル圧縮技術  一度あるモデルで学習したあと、ネットワークの削ってもいい箇所を見 出し、削ったネットワークを用いて再学習  ネットワークが小さくなるだけでなく精度も上がったり モデルの規模の適性化
  • 37. 37© 2017 NTT DATA Mathematical Systems Inc. 37  現在最先端の研究でしのぎを削っている 「よりよい ネットワークを考えました」 選手権そのもの  より性能がよいと知られているモデルを使う  ResNet  より性能が出ると知られている機構を取り入れる  Attention  Bi-directional LSTM  Batch Normalization  Pointer Networks モデルの改善
  • 38. 38© 2017 NTT DATA Mathematical Systems Inc. 38  単純に精度が上がることが期待できる とはいえ...  学習データを新たに収集するのは大きな負担  モデルの改善や、学習データの水増しなどの方が重要 であることも多い 学習データを増やす
  • 39. 39© 2017 NTT DATA Mathematical Systems Inc. 39 画像での例  入力セルの値の平均が0、分散が1になるように テキストでの例  固有名詞など、低頻出単語は unk などのマクロ置換  文中の数値などは num などのマクロ置換する  顔文字などノイズは削る、()などの記号の書式を統一 学習データの正規化 けんちょんは(精神年齢)17歳なの~~ん(⋈◍>◡<◍)。✧♡ unkは(精神年齢)num歳なのーん
  • 40. 40© 2017 NTT DATA Mathematical Systems Inc. 40  画像にノイズを加えたものを新たなデータに  画像を少し変形をしたものを新たなデータに  左右反転  平行移動  拡大縮小  回転  濃淡を変える  色を少し変える  GAN などで生成した画像を新たなデータに  進行中の研究課題 学習データの水増し (画像編)
  • 41. 41© 2017 NTT DATA Mathematical Systems Inc. 41  同じ意味の似た言い回しの文を新たに作る  文章要約タスクでは、(元文章, 要約文) のペアに対し て (要約文, 要約文) のペアを新たなデータに 学習データの水増し (テキスト編) 何歳ですか? / 17歳です 何歳なの? / 17歳です 何歳? / 17歳です 何歳でしょうか? / 17歳です
  • 42. 42© 2017 NTT DATA Mathematical Systems Inc. 42  特に人手で頑張って作ったデータでは誤りも多くある  データに偏りがある場合も多い  場合によってはノイズの大きいデータは省いたり、デー タの正規化を頑張ったりする 学習データの質を疑う
  • 43. 43© 2017 NTT DATA Mathematical Systems Inc. 43  イントロ  ディープラーニングとは  ディープラーニングの特徴  ディープラーニングの構成要素  ディープラーニングのチューニング技法  ディープラーニングを用いた画像処理  ディープラーニングを用いた自然言語処理  ディープラーニングを用いたマルチモーダル学習 内容
  • 44. 44© 2017 NTT DATA Mathematical Systems Inc. 44  画像処理: CNN (Convolutional Neural Networks)  自然言語処理: RNN (Recurrent Neural Networks)  マルチモーダル: これらを組み合わせたり 定番手法
  • 45. 45© 2017 NTT DATA Mathematical Systems Inc. 45  イントロ  ディープラーニングとは  ディープラーニングの特徴  ディープラーニングの構成要素  ディープラーニングのチューニング技法  ディープラーニングを用いた画像処理  ディープラーニングを用いた自然言語処理  ディープラーニングを用いたマルチモーダル学習 内容
  • 46. 46© 2017 NTT DATA Mathematical Systems Inc. 46  1958年、猫の視覚野に特定の傾きをもつ線分を見せ たときにだけ反応する細胞の発見 (単純型細胞)  単純型細胞で検知した情報を取りまとめて、線分の位 置がずれたりしたものも検出 (複雑型細胞)  さらにこれらの細胞が多層に なって複雑なパターン検出  この階層仮説がヒントに なって CNN が誕生! Hubel--Wiesel の階層仮説 瀧雅人「これならわかる深層学習入門」より 単純型 複雑型
  • 47. 47© 2017 NTT DATA Mathematical Systems Inc. 47  1958年: Hubel--Wiesel の階層仮説  1979年: Fukushima のネオコグニトロン  単純型細胞と複雑型細胞に対応したユニットを導入  1989年: LeCun らの CNN  現在の CNN とほとんど同じもの  CNN に誤差逆伝播法を適応して高い性能を実現!  2012年: Hinton らが CNN を用いてコンペ優勝  画像認識コンペ ILSVRC Convolutional Neural Networks の歴史
  • 48. 48© 2017 NTT DATA Mathematical Systems Inc. 48  Convolutional Layer: 単純型細胞に対応  局所的なパターンを抽出  Pooling Layer: 複雑型細胞に対応 (Subsampling)  微小な平行移動に対して不変な特徴を得る Convolutional Neural Networks LeCun et al., Gradient-Based Learning Applied to Document Recognition, 1998.
  • 49. 49© 2017 NTT DATA Mathematical Systems Inc. 49 Keras での例 model = Sequential() model.add( Conv2D(6, kernel_size = (5, 5), activation = ‘relu’, input_shape = (1, 32, 32)) ) model.add( MaxPooling2D(pool_size = (2, 2)) ) model.add( Conv2D(16, kernel_size = (5, 5), activation = ‘relu’) ) model.add( MaxPooling2D(pool_size = (2, 2)) ) model.add( Dropout(0.25) ) model.add( Flatten() ) model.add( Dense(120, activation = ‘relu’)) ) model.add( Dense(84, activation = ‘relu’)) ) model.add( Dropout(0.5) ) model.add( Dense(10, activation = ‘softmax’) ) LeCun et al., Gradient-Based Learning Applied to Document Recognition, 1998.
  • 50. 50© 2017 NTT DATA Mathematical Systems Inc. 50  画像認識コンペ ILSVRC  2012年、トロント大学の Hinton らの率いるチームが優勝 (AlexNet)  AlphaGO  Google DeepMind による囲碁AI  2016年、トップ棋士イ・セドルに4:1で勝利 CNN の活躍 圧倒的改善! 年 1位チームの精度 備考 2010 28.2% 2011 25.8% 2012 16.4% AlexNet 2013 11.7% 2014 6.67% GoogleNet (2位: VGG) 2015 3.56% ResNet, ヒト超え! ヒト 5.1% http://www.popularmechanics.com/technology/a19863/ googles-alphago-ai-wins-second-game-go/
  • 51. 51© 2017 NTT DATA Mathematical Systems Inc. 51  2012年度 ILSVRC 優勝、16.4%  8層、ディープラーニングブームの火付け役 AlexNet (トロント大学, Hintonら)
  • 52. 52© 2017 NTT DATA Mathematical Systems Inc. 52  2014年度 ILSVRC 優勝、6.67%  22層 GoogleNet Inception
  • 53. 53© 2017 NTT DATA Mathematical Systems Inc. 53  2014年度 ILSVRC 準優勝、7.32%  19層 VGG (オックスフォード大)
  • 54. 54© 2017 NTT DATA Mathematical Systems Inc. 54  2015年度 ILSVRC 優勝、3.56%  152層!!!  層をまたぐスキップ構造が特徴 ResNet (Microsoft Research)
  • 55. 55© 2017 NTT DATA Mathematical Systems Inc. 55  物体認識 (ここまで)  画像が表すものは何か  物体検出  画像から物体の位置も特定  セグメンテーション  画像のピクセルごとにどのクラスに属するかを出力 最近は...  画像生成、画像ドメイン変換  GAN の爆発的流行 画像処理タスク
  • 56. 56© 2017 NTT DATA Mathematical Systems Inc. 56 物体認識 Krizhevsky et al., ImageNet Classification with Deep Convolutional Neural Networks, 2012.
  • 57. 57© 2017 NTT DATA Mathematical Systems Inc. 57 物体検出 He et al., Mask R-CNN, 2017.  画像から物体の位置も特定
  • 58. 58© 2017 NTT DATA Mathematical Systems Inc. 58 テキスト検出 Wang et al., End-to-End Text Recognition with Convolutional Neural Networks, 2012. Alsharif and Pineau., End-to-End Text Recognition with Hybrid HMM Maxout Models, 2013.
  • 59. 59© 2017 NTT DATA Mathematical Systems Inc. 59 セグメンテーション Badrinarayanan et al., SegNet: A Deep Convolutional Encoder-Decoder Architecture for Robust Semantic Pixel-Wise Labelling, 2015.  画像のピクセルごとにどのクラスに属するかを出力
  • 60. 60© 2017 NTT DATA Mathematical Systems Inc. 60  2014年、GAN (Goodfellow et al., Generative Adversarial Networks) が発表されて以来爆発的流行  Generator と Discriminator を戦わせて学習  本物と見分けられない偽札作りと、取締り警察との戦いに例えられる 画像生成 Radford et al., Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks, 2015. DCGAN による画像生成
  • 61. 61© 2017 NTT DATA Mathematical Systems Inc. 61 GAN を利用して画像変換  人の顔をアニメ絵っぽく変換  VAE-GAN など、GAN を利用したドメイン変換は流行 中のホットトピック Tagiman et al., UNSUPERVISED CROSS-DOMAIN IMAGE GENERATION, 2016.
  • 62. 62© 2017 NTT DATA Mathematical Systems Inc. 62 CycleGAN  「馬をシマウマに、シマウマを馬に」 といった変換 Zhu et al., Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks, 2017.
  • 63. 63© 2017 NTT DATA Mathematical Systems Inc. 63 pix2pix  ピクセルごとに画像変換する GAN  一世を風靡した PaintsChainer は少し改変したもの Isola et al., Image-to-Image Translation with Conditional Adversarial Networks, 2016. Paint Chainer (https://qiita.com/taizan/items/cf77fd37ec3a0bef5d9d)
  • 64. 64© 2017 NTT DATA Mathematical Systems Inc. 64 超高解像度な画像生成  そして2017年、高解像度な画像生成が飛躍的進化  画像ラベルマップから高解像度の画像合成!!! Wang et al., High-Resolution Image Synthesis and Semantic Manipulation with Conditional GANs, 2017.
  • 65. 65© 2017 NTT DATA Mathematical Systems Inc. 65  イントロ  ディープラーニングとは  ディープラーニングの特徴  ディープラーニングの構成要素  ディープラーニングのチューニング技法  ディープラーニングを用いた画像処理  ディープラーニングを用いた自然言語処理  ディープラーニングを用いたマルチモーダル学習 内容
  • 66. 66© 2017 NTT DATA Mathematical Systems Inc. 66  長さ 𝑇 の時系列データ 𝑥1, 𝑥2, … , 𝑥 𝑇 を扱う  代表例はテキスト  This is an apple.  𝑥1 = “This”, 𝑥2 = “is”, 𝑥3 = “an”, 𝑥4 = “apple  文脈をとらえたい  This is an と来たら、次は形容詞か名詞  RNN (Recurrent Neural Networks) がよく使われる  CNN を使うこともある テキストは系列データ
  • 67. 67© 2017 NTT DATA Mathematical Systems Inc. 67  ループを持つニューラルネット  𝑧 𝑡 = 𝑓 𝑊in 𝑥 𝑡 + 𝑊𝑠 𝑡−1 , 𝑦 𝑡 = 𝑊out 𝑠 𝑡 Recurrent Neural Networks 𝑊in 𝑥𝑡 𝑦𝑡 𝑠𝑡−1 出力 入力 中間出力 𝑠𝑡 𝑊 𝑊out
  • 68. 68© 2017 NTT DATA Mathematical Systems Inc. 68  ループを展開  𝑧 𝑡 = 𝑓 𝑊in 𝑥 𝑡 + 𝑊𝑠 𝑡−1 , 𝑦 𝑡 = 𝑊out 𝑠 𝑡 Recurrent Neural Networks 𝑊in 𝑊in 𝑊in 𝑦𝑡−1 𝑦𝑡 𝑦𝑡+1 𝑊in 𝑥𝑡 𝑦𝑡 𝑠𝑡−1 出力 入力 中間出力 𝑠𝑡 𝑊 𝑊out 𝑊out𝑊out𝑊out 𝑊 is an apple.
  • 69. 69© 2017 NTT DATA Mathematical Systems Inc. 69  RNN の大きな弱点  文章が長いと、最初の方のことを忘れたり、最初の方のことの情報が 強すぎて後の方のことが頭に入ってこなかったり 改良された亜種たち  LSTM (Long Short-Term Memory)  GRU (Gated Recurrent Unit) RNN の亜種たち
  • 70. 70© 2017 NTT DATA Mathematical Systems Inc. 70  忘却ゲートを用意して情報伝達量を調整する  短期記憶メモリのようなものを用意する LSTM Graves, Generating Sequence with Recurrent Neural Networks, 2014.
  • 71. 71© 2017 NTT DATA Mathematical Systems Inc. 71  最後のベクトル 𝑦fin に softmax かけて文書分類など RNN の初期の使い方の一例 𝑊in 𝑊in 𝑊in 𝑦𝑡−1 𝑦𝑡 𝑦𝑡+1 𝑊in 𝑥𝑡 𝑦𝑡 𝑠𝑡−1 出力 入力 中間出力 𝑠𝑡 𝑊 𝑊out 𝑊out𝑊out𝑊out 𝑊 is an 𝑦fin 𝑥fin 𝑊in 𝑊out apple. <eos> 入力文の終わりを表す
  • 72. 72© 2017 NTT DATA Mathematical Systems Inc. 72  記事のトピック分類など  {政治, 技術, 国内} の 3 クラス分類を判別 Keras での例 EMBEDDING_DIM = 256 # 埋め込みベクトルサイズ MAX_LENGTH = 100 # 入力される文章の長さ (の最大値) NUM_VOCAB = 1000 # 語彙数 # 2 層の GRU model = Sequential() model.add( Embedding(NUM_VOCAB, EMBEDDING_DIM, input_shape = (MAX_LENGTH,)) ) model.add( GRU(EMBEDDING_DIM, return_sequences = True) ) # y_1, y_2, ..., y_fin を次の層へ model.add( GRU(EMBEDDING_DIM, return_sequences = False) ) # y_fin のみを取り出す model.add( Dropout(0.25) ) model.add( Dense(3, activation = ‘softmax’) )
  • 73. 73© 2017 NTT DATA Mathematical Systems Inc. 73  文章の特徴抽出  履歴情報を用いたレコメンデーション  音声認識  古くから深層学習が成功していた分野で、RNN が基盤技術として用いら れることも多いです  曲生成、演奏  最新の Deep Voice 3 については CNN ベース  文章生成  言語モデル構築から小説生成まで  参考記事: http://karpathy.github.io/2015/05/21/rnn-effectiveness/  お絵描き、演奏  Sketch RNN https://experiments.withgoogle.com/ai/sketch-rnn-demo  Performance RNN https://magenta.tensorflow.org/performance-rnn その他の RNN の使い道
  • 74. 74© 2017 NTT DATA Mathematical Systems Inc. 74  分類だけでない!系列データから系列データへの学習  さらに踏み込んで 「なんらかのデータをベクトルに埋め込んだもの」 か ら系列データへの学習も (マルチモーダルへの道)  機械翻訳 (日本語から英語へ)  対話 (言われたことから発話へ)  文章要約 (オリジナル文から要約文へ)  Question Answering (質問文から応答文へ)  画像キャプション生成 (画像から画像キャプションへ)  Visual Question Answering (画像を見て応答)  人間の話し言葉を理解して対話 さらなる RNN の現代的な使い方
  • 75. 75© 2017 NTT DATA Mathematical Systems Inc. 75  まず RNN を用いて元の文章をベクトルに埋め込む  埋め込まれたベクトルをコンテキストに持ちながら再び RNN を回して 「次の単語を予測する」 を繰り返す Sequence to Sequence 学習 Sutskever et al., Sequence to Sequence Learning with Neural Networks, 2014.
  • 76. 76© 2017 NTT DATA Mathematical Systems Inc. 76  seq2seq を機械翻訳に応用  昨年末 Google 翻訳がこれになって話題に 機械翻訳 Google’s Neural Machine Translation System: Bridging the Gap between Human and Machine Translation, 2016.
  • 77. 77© 2017 NTT DATA Mathematical Systems Inc. 77  seq2seq を対話に応用  Microsoft の女子高生AI りんななども 対話 Vinyals et al., A Neural Conversational Model, 2015. http://www.itmedia.co.jp/mobile/articles/1606/12/news005.html
  • 78. 78© 2017 NTT DATA Mathematical Systems Inc. 78  seq2seq を文章要約に応用  機械翻訳が成熟し始めた今、かなりのホットトピック 文章要約 Nallapati et al., Abstractive Text Summarization Using Sequence-to-Sequence RNNs and Beyond, 2015.
  • 79. 79© 2017 NTT DATA Mathematical Systems Inc. 79  seq2seq はコンテキストベクトルがあればいいので、 元系列が文章でなくてもいい 画像キャプション生成 (マルチモーダル) Vinyals et al., Show and Tell: A Neural Image Caption Generator, 2014.
  • 80. 80© 2017 NTT DATA Mathematical Systems Inc. 80 画像キャプション生成 (マルチモーダル) Vinyals et al., Show and Tell: A Neural Image Caption Generator, 2014.
  • 81. 81© 2017 NTT DATA Mathematical Systems Inc. 81 比較的最近の自然言語処理のトレンド Attention Bahdana, ICLR 2015 Memory Networks Sukhbaatar et al., NIPS 2015 Pointer Networks Vinyals et al., NIPS 2015 QA 系 組合せ最適化系 これらを基にした自然言語処理系 研究が爆発的流行 Seq2Seq Sutskever, NIPS 2014
  • 82. 82© 2017 NTT DATA Mathematical Systems Inc. 82 Attention … 質問文 Before … 回答文 (途中) 次 の 単 語 個 私は20 君の年齢は幾つですか? After Bahdanau et al., Neural Machine Translation by Jointly Learning to Align and Translate, 2014.
  • 83. 83© 2017 NTT DATA Mathematical Systems Inc. 83 Attention … 質問文 Before … 回答文 (途中) 次 の 単 語 個 私は20 君の年齢は幾つですか? … After … 回答文 (途中) 次 の 単 語 歳 私は20 質問文 君の年齢は幾つですか? Bahdanau et al., Neural Machine Translation by Jointly Learning to Align and Translate, 2014. ・ 質問文の強く着目する箇所を学習 ・ 回答文の流れで時間変化
  • 84. 84© 2017 NTT DATA Mathematical Systems Inc. 84 比較的最近の自然言語処理のトレンド Attention Bahdana, ICLR 2015 Memory Networks Sukhbaatar et al., NIPS 2015 Pointer Networks Vinyals et al., NIPS 2015 QA 系 組合せ最適化系 これらを基にした自然言語処理系 研究が爆発的流行 Seq2Seq Sutskever, NIPS 2014
  • 85. 85© 2017 NTT DATA Mathematical Systems Inc. 85  Memory Networks 研究の源流  外部メモリ的 (Attention は内部メモリ的)  ソートアルゴリズムなどが学習できた Neural Turing Machine メモリ全体から attention 𝒓 𝒕 ← 𝒘 𝒕 𝒊 𝑴𝒕(𝒊) 𝑵 𝒊=𝟏 チューリングマシンのテープ 𝑴 𝒕(𝒊): 𝑵 個の 𝑴 次元ベクトル ※通常のチューリングマシンでは 読み込むテープの箇所は1か所 なんらかのニューラルネットワーク で重み 𝒘 𝒕 𝒊 を生成 書き込み (LSTM を模倣) 𝑴 𝒕 𝒊 ← 𝑴 𝒕−𝟏 𝒊 𝟏 − 𝒘 𝒕 𝒊 𝒆 𝒕 + 𝒘 𝒕 𝒊 𝒂 𝒕 ※ 𝑴𝒕−𝟏 𝒊 𝟏 − 𝒘 𝒕 𝒊 𝒆 𝒕 で前回の記憶 を少し忘れさせて、今回の記憶として 𝒘 𝒕 𝒊 𝒂 𝒕 を加算 ※ 実際に出力するのは 𝒘 𝒕 𝒊 を更新するためのベクトル Graves et al., Neural Turing Machines, 2014.
  • 86. 86© 2017 NTT DATA Mathematical Systems Inc. 86  ごく簡単な QA がこなせる  下の図は一層版, 多層化できる  RNN っぽくなる (広域メモリ付き) End-To-End Memory Networks Sukhbaatar et al., End-To-End Memory Networks, 2015. Input の各列 𝒎𝒊 は 各入力文を情報記憶用 に埋め込んだベクトル ① 質問文 𝒒 を、Input のどの入力 文を重点的に見るべきかを示す ベクトル 𝒑 へ変換 Input の各列 𝒄𝒊 は 各入力文を答え生成用 に埋め込んだベクトル ② 𝒑 による attention ③ 𝒐 に埋め込まれた 答え情報を形にする
  • 87. 87© 2017 NTT DATA Mathematical Systems Inc. 87  Before: 文章は文の集まり  After : 文章は文の流れ (ヒントになる文章を順次推定) Dynamic Memory Networks Kumar et al., Ask Me Anything: Dynamic Memory Networks for Natural Language Processing, 2015.
  • 88. 88© 2017 NTT DATA Mathematical Systems Inc. 88  今までの Attention: 一方向  「質問文」 を読んで、「文章」 のどこが大事か  進化した Co-Attention: 双方向  「質問文」 を読んで、「文章」 のどこが大事か  「文章」 を読みながら、「質問文」 の聞き所を掴む Dynamic Coattention Networks Xiong et al., Ask Me Anything: Dynamic Memory Networks for Natural Language Processing, 2016.
  • 89. 89© 2017 NTT DATA Mathematical Systems Inc. 89 比較的最近の自然言語処理のトレンド Attention Bahdana, ICLR 2015 Memory Networks Sukhbaatar et al., NIPS 2015 Pointer Networks Vinyals et al., NIPS 2015 QA 系 組合せ最適化系 これらを基にした自然言語処理系 研究が爆発的流行 Seq2Seq Sutskever, NIPS 2014
  • 90. 90© 2017 NTT DATA Mathematical Systems Inc. 90  「入力列の中から、順番に適切なものを Attention し て選んでいく」 というフレームワーク  元々は、組合せ最適化問題を解かせるために誕生  現在では、NLP 系で盛んに使われる技術に!! Pointer Networks Vinyals et al., Pointer Networks, 2015.
  • 91. 91© 2017 NTT DATA Mathematical Systems Inc. 91  「入力列の中から、順番に適切なものを Attention し て選んでいく」 というフレームワーク  元々は、組合せ最適化問題を解かせるために誕生  現在では、NLP 系で盛んに使われる技術に!! Pointer Networks Vinyals et al., Pointer Networks, 2015.
  • 92. 92© 2017 NTT DATA Mathematical Systems Inc. 92  自然言語処理タスクにおいて unk や固有名詞に強く!  従来の seq2seq (with attention) に元の文章からの単 語抜き出し機構を追加  もっと一般に 「データベースを参照した対話」 にも cf. A Neural Knowledge Language Model (Ahn et al., arXiv 2016) Pointing the Unknown Words Gulcehre et al., Pointing the Unknown Words, 2016.
  • 93. 93© 2017 NTT DATA Mathematical Systems Inc. 93  “Pointing the Unknown Words” を先駆けとして、 seq2seq と pointer-networks を組合せるテクが流行  文章要約において強力  データベース参照しながらのチャットボットにも使えそう Pointer-Generator See et al., Get To The Point: Summarization with Pointer-Generator Networks, 2017. sigmoid で分岐など
  • 94. © 2017 NTT DATA Mathematical Systems Inc.