SlideShare a Scribd company logo
1 of 25
7.3
リカレントニューラルネット
ワーク
池田裕哉
2018年5月11日
ゼミナールⅠ
DNNのモデル
• 多層パーセプトロン(MLP)
• 畳み込みニューラルネットワーク(CNN)
• リカレントニューラルネットワーク(RNN)
2
リカレントニューラルネットワーク(RNN)
• 音声認識や言語翻訳に利用されている
• 過去と現在の情報を両方用いた状態変化に関する学習
• 次の状態の予測など、状態遷移の認識が可能
従来のDNN:時系列データなど動的なデータを扱うのは難しい
例)音声データの認識や文法解析
RNN:前の時刻の中間層を次の時刻の入力と合わせて学習に用
いる
前後の時系列情報を取り扱う
3
リカレントニューラルネットワーク(RNN)
• RNNの中間層の出力が
再び中間層へ(回帰)
• 過去の情報を記憶(保持)
することが可能
http://hiro2o2.hatenablog.jp/entry/2016/06/17/232429
どうやって?
4
Long-Short Term Memory(LSTM)
• LSTMは短期記憶を長期に渡って活用することが可能
Short-Term memory:短期記憶 Long-term memory:長期記憶
• 階層設計
• セルと呼ばれるモジュールで構成
• 多層パーセプトロンと同様にセルを結合させてDNNsモデル
を作成
5
LSTMセルはどのように結合しているのか
Figure 7.10 LSTM cells connected together
入力
(翻訳したい英語)
出力
(翻訳されたスペイン語)
6
LSTMセルはどのように結合しているのか
Figure 7.10からわかること
• 英語からスペイン語への翻訳
• セルは左(入力側)から右(出力側)に接続される
• セルは時間の経過とともに上位から下位へ展開
• ループ毎に単語は入力される
• 長期的な記憶情報と短期的な記憶情報は上位から下位へやり取
りされる
7
LSTMセルはどのように結合しているのか
Figure 7.10からわかること
• 入力が終了するまで出力は遅らせる
• 入力した順番とは逆に翻訳する
• 翻訳された最新の単語を次の入力として使用する
• 「now is the time」が「ahora es el momento」となる
8
長期的?短期的?
言語モデルが以前の単語に基づいて、次の単語の予測を行う場合
例) Q.「the clouds are in the sky,」の最後の単語は?
A. sky
「the clouds are in the までの文章で答えは明白
関連する情報とそれを必要とする場所のギャップが小さい
→短期的(Short Term)
9
長期的?短期的?
言語モデルが以前の単語に基づいて、次の単語の予測を行う場合
例) Q. 「I grew up in France… I speak fluent French. 」の最後
の単語は?
直近の情報は言語の名前を示唆している
↳言語を絞り込むには France が必要
関連する情報とそれを必要とする場所のギャップが非常に大きい
→長期的(Long Term)
10
簡略化したモデルを参考に
• 英語の単語列と、それを翻訳したスペイン語の単語列を与えて
変換できるモデルを学習する
翻訳元の単語列を入力し、<end_input>を入力することで翻訳
文を得るモードにする
now is the time <end_input>
出力
入力
時間
11
簡略化したモデルを参考に
• 逆順での翻訳が行われる
• 翻訳文が1単語ずつ出力されてくるため、入力に戻すと次の単
語が出てくる
<end_input>が出力されるまで繰り返し、それまでの出力をつなげたも
のが翻訳文となる
momento
<end_input> momento
el es
el es
ahora
ahora
<end_output>
12
LSTMセルの中身
Figure 7.11 The contents of an LSTM cell
入力
出力
Long Term Memory Short Term Memory
Long Term Memory Short Term Memory 13
入力ゲート、出力ゲート、忘却ゲートの働き
情報量を制限する働きを持つゲート
• 入力ゲート
• 出力ゲート
→入力したくない、出力したくないデータを除去
• 忘却ゲート
→長期記憶情報に沿って何を忘れるかを決定する
入出力をフィルタリング
14
重みと演算数を計算する
多層パーセプトロン(MLP)の場合は…
n層の次元数:出力ベクトルの次元数
n-1層目の次元数:入力ベクトルの次元数
重みの数:出力ベクトルの次元数×入力ベクトルの次元数
演算数:2×重み数
演算数/重み数:2
15
重みと演算数を計算する
入出力ペアの次元数(Dim)は同じであるとする
• 3つの入力は連結しているため
↳ゲートのベクトルは3×Dim
• InputとSTMemoryinは連結しているため
↳入力のベクトルは2×Dim
• 出力であるため
↳最も右に位置する乗算は1×Dim
16
重みと演算数を計算する
セル1つあたりの重みの数
↳ 3×(3×Dim×Dim)+(2×Dim×Dim)+(1×Dim×Dim)=12×Di𝑚2
セル1つあたりの5つのベクトル - 行列乗算の演算数
↳ 2×セル1つあたりの重みの数=24×Di𝑚2
3つの乗算と1つ加算の演算数
↳ 4×Dim
セル1つあたりの総演算数
↳ 24×Di𝑚2
+4×Dim
演算数/重さ数:演算強度
↳ ~2
17
重みと演算数を計算する
セクション7.9のLSTMセルを例に
次元数Dim=1024だとすると…
重さ数=12×10242
=12,582,912
演算数=24×10242
+4×1024=25,169,920
演算数/重さ数=2.0003
LSTMはCNNに比べて小さい演算強度を有することからMLPに似てい
ると言える→精度が出にくい
18
DNNsのパフォーマンスの最適化を目指して
重みがメモリから取り出されて再利用される
→演算強度を向上させることができる
例)画像処理DNN
一連の画像データに対して学習を行う際、コストを32倍軽減さ
せることが可能
バッチ学習による効果
19
バッチ学習
ある教師データを読み込ませた学習について
-ニューラルネットワークの重み:wi
-誤差関数: E
重みの更新は wi+1= wi−ρ
𝜕E
𝜕wi
となる ※ρ:学習率 <1
学習データ(入力)がN個あるときに、N≧ 𝑛個のデータを用いて、それぞれの
データでの誤差 𝑒の平均を計算し、それをデータ全体の誤差Eと考え
E=
1
𝑛
σ1
𝑛
𝑒
を誤差関数と定義し、学習を行う
バッチサイズ
20
バッチサイズの大きさ
• 小さいとき(1とか)
-すべての画像データについて学習を1回ずつ行う
→重みの更新回数の増加
• 大きいとき
-バッチサイズごとに学習を行う
→重みの更新回数の減少
学習コスト:大
学習コスト:小
21
計算効率の向上
Figure 7.7のMLPとFigure7.11のLSTMも
入出力ベクトルをそれぞれ独立した1次元配列のベクト
ルとしてではなく行列として計算してやる
𝒙 =(𝑥1,𝑥2, 𝑥3,…,𝑥𝑖)
𝒚 =(𝑦1,𝑦2, 𝑦3,…,𝑦𝑖)
𝒛 =(𝑧1,𝑧2, 𝑧3,…,𝑧𝑖)
バッチサイズ:1
:
:
𝑥1 𝑥2 𝑥3 … 𝑥𝑖
𝑦1
𝑦2 𝑦3 … 𝑦𝑖
𝑧1
𝑧2 𝑧3 … 𝑧𝑖
:
:
バッチサイズ: n ≧ 1
22
量子化
量子化:アナログな量を離散的な値で近似的に表現すること
DNNsはパラメータの数が多いので、モデルサイズが大きくなっ
てしまう
→量子化を行うことで計算の高速化や省メモリ化など
64bitもしくは32bit精度の浮動小数点の配列で表現されていた
パラメータを少ないビット数で表現する
-倍精度浮動小数点演算(64bit)は行わない
というよりも…
23
量子化
数値精度の柔軟性を生かして
-推論で浮動小数点のかわりに固定小数点(8bit or 16bit)を利用し乗
算-加算を行う
-学習はほとんどの場合、浮動小数点を利用する
量子化は学習後に行われ、DNNsの精度を数パーセント低下させ
る
24
まとめ
• DNNsは行列指向の演算を行う必要がある
-ベクトル行列積、行列-行列積、およびステンシル計算
-ReLU関数、シグモイド関数、tanhを含む非線形関数が必要と
なる
次のセクションで検討していきます
25

More Related Content

Similar to Chap.7 pp.553~556

NIPS2019 Amazon「think globally, act locally : a deep neural network approach...
NIPS2019  Amazon「think globally, act locally : a deep neural network approach...NIPS2019  Amazon「think globally, act locally : a deep neural network approach...
NIPS2019 Amazon「think globally, act locally : a deep neural network approach...SaeruYamamuro
 
Convolutional Neural Netwoks で自然言語処理をする
Convolutional Neural Netwoks で自然言語処理をするConvolutional Neural Netwoks で自然言語処理をする
Convolutional Neural Netwoks で自然言語処理をするDaiki Shimada
 
LSTM (Long short-term memory) 概要
LSTM (Long short-term memory) 概要LSTM (Long short-term memory) 概要
LSTM (Long short-term memory) 概要Kenji Urai
 
20230516 @Mix Leap Hirohiko_Suwa
20230516 @Mix Leap Hirohiko_Suwa20230516 @Mix Leap Hirohiko_Suwa
20230516 @Mix Leap Hirohiko_SuwaMasashi Nakagawa
 
ICASSP2017読み会(関東編)・AASP_L3(北村担当分)
ICASSP2017読み会(関東編)・AASP_L3(北村担当分)ICASSP2017読み会(関東編)・AASP_L3(北村担当分)
ICASSP2017読み会(関東編)・AASP_L3(北村担当分)Daichi Kitamura
 

Similar to Chap.7 pp.553~556 (6)

NIPS2019 Amazon「think globally, act locally : a deep neural network approach...
NIPS2019  Amazon「think globally, act locally : a deep neural network approach...NIPS2019  Amazon「think globally, act locally : a deep neural network approach...
NIPS2019 Amazon「think globally, act locally : a deep neural network approach...
 
Convolutional Neural Netwoks で自然言語処理をする
Convolutional Neural Netwoks で自然言語処理をするConvolutional Neural Netwoks で自然言語処理をする
Convolutional Neural Netwoks で自然言語処理をする
 
LSTM (Long short-term memory) 概要
LSTM (Long short-term memory) 概要LSTM (Long short-term memory) 概要
LSTM (Long short-term memory) 概要
 
20230516 @Mix Leap Hirohiko_Suwa
20230516 @Mix Leap Hirohiko_Suwa20230516 @Mix Leap Hirohiko_Suwa
20230516 @Mix Leap Hirohiko_Suwa
 
ICASSP2017読み会(関東編)・AASP_L3(北村担当分)
ICASSP2017読み会(関東編)・AASP_L3(北村担当分)ICASSP2017読み会(関東編)・AASP_L3(北村担当分)
ICASSP2017読み会(関東編)・AASP_L3(北村担当分)
 
音声認識と深層学習
音声認識と深層学習音声認識と深層学習
音声認識と深層学習
 

Recently uploaded

知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 

Recently uploaded (10)

知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 

Chap.7 pp.553~556