cs中間報告

10
CS 中中中中 中中中中中中中中中中中 1 中 中中中中

Upload: tomoki-itou

Post on 20-Jan-2017

126 views

Category:

Engineering


1 download

TRANSCRIPT

Page 1: Cs中間報告

CS 中間報告システム創成学専攻修士 1 年伊藤友貴

Page 2: Cs中間報告

CS の目標• 目標– Chainer (python のフレームワーク ) を用いたディープラーニングの実装技術の習得 – 個人的には論文の追試をサクッとできるようになりたい

• 教科書– 深層学習(岡谷貴之、講談社)

• 最近進めたこと– Reccurent Neural Network ( 教科書第 7 章 ) を用いた翻訳機の実装

Page 3: Cs中間報告

RNNChainer での実装model = FunctionSet( w_xh = EmbedID(VOCAB_SIZE, HIDDEN_SIZE), # 入力層 (one-hot) -> 隠れ層 w_hh = Linear(HIDDEN_SIZE, HIDDEN_SIZE), # 隠れ層 -> 隠れ層 w_hy = Linear(HIDDEN_SIZE, VOCAB_SIZE), # 隠れ層 -> 出力層)

隠れ層のフィードバックが追加されたモデル

http://qiita.com/odashi_t/items/a1be7c4964fbea6a116e

系列データの予測 , (前の単語から次の単語を予測) , などに利用可能 上の 3 つの層を横に並べるイメージ

Page 4: Cs中間報告

RNN( 系列データ )

• RNN を時間方向に展開• 前の時間の中間層の情報を保持しながら進む(系列の最後まで行ったら逆伝播)• 重みの消失 , 爆発( 1 系列あたりの掛け算が多い)

( http://www.slideshare.net/beam2d/pfi-seminar-20141030rnn より引用 )

Page 5: Cs中間報告

Encoder-Decoder 翻訳モデル(Learning Phrase Representations using RNN Encoder–Decoder for Statistical Machine Translation, Cho, 2014)

• ニューラルネットを使った機械翻訳の手法• 入力言語側 (encoder) と出力言語側

(decoder) の 2 個の RNN を用意• 中間ノードで繋ぐ

Page 6: Cs中間報告

Encoder-Decoder 翻訳モデル

• 中間層で LSTM を利用( http://qiita.com/odashi_t/items/a1be7c4964fbea6a116e)

Page 7: Cs中間報告

LSTM

(RECURRENT NEURAL NETWORK REGULARIZATION, Wojciech Zaremba, Ilya Sutskever, Oriol Vinyals 、 , 2015 より引用 )

• 入力ゲート , 出力ゲート , 忘却ゲート , 記憶を維持するセルを設置• 長期にわたる記憶を実現

Page 8: Cs中間報告

Encoder-Decoder 翻訳モデルの実装• モデル

model = FunctionSet(w_xi = EmbedID(SRC_VOCAB_SIZE, SRC_EMBED_SIZE), # 入力層 (one-

hot) -> 入力埋め込み層w_ip = Linear(SRC_EMBED_SIZE, 4 * HIDDEN_SIZE), # 入力埋め込み層

-> 入力隠れ層w_pp = Linear(HIDDEN_SIZE, 4 * HIDDEN_SIZE), # 入力隠れ層 -> 入力隠れ層w_pq = Linear(HIDDEN_SIZE, 4 * HIDDEN_SIZE), # 入力隠れ層 -> 出力隠れ層w_yq = EmbedID(TRG_VOCAB_SIZE, 4 * HIDDEN_SIZE), # 出力層 (one-

hot) -> 出力隠れ層w_qq = Linear(HIDDEN_SIZE, 4 * HIDDEN_SIZE), # 出力隠れ層 -> 出力隠れ層w_qj = Linear(HIDDEN_SIZE, TRG_EMBED_SIZE), # 出力隠れ層 -> 出力埋め込み層w_jy = Linear(TRG_EMBED_SIZE, TRG_VOCAB_SIZE), # 出力隠れ層 -> 出力隠れ層

)

Page 9: Cs中間報告

実験• https://drive.google.com/open?id=

0B3O7bgd3mym6VG9OVHRmRlBLbkkの日英翻訳のサンプルを利用• 文の例 : 日本語: あなたの部屋を掃除しましたか。英語 : did you clean your room ?• 5000 文使用• 学習の様子

– (コンソール上で)• 感想

– だんだん頭よくなってる…

Page 10: Cs中間報告

今後の方針• 現在の状況– Chainer の扱いに多少慣れた気はする

• 今後の方針– Recursive NeuralNet も触っておきたい• かかり受け解析が必要 ( Cabocha )

– 2 月の発表まで何を作るか決める• 文書の自動生成?• 判別器の作成?

– いい案募集中(自然言語処理で)!