書籍2 8章

8.1 Attention の仕組み
8.2 Attention 付きseq2seq の実装
8.3 Attention の評価
8.4 Attention に関する残りのテーマ
8.5 Attention の応用
8.6 まとめ

注意機構(Attention Mechanism)必要な情報にだけ「注意」を向ける技術

・seq2seq の問題点 Encoder の出力が、固定長のベクトルである

・Encoder の改良 Encoder の LSTMレイヤの隠れ情報を全て利用させる
          双方向RNN双方向LSTM を使用する

・Decoder の改良① Encoder の LSTMレイヤの隠れ情報を利用する

アライメント(Alignment)単語の対応関係を表す情報
 Attention では自動化

・選ぶ作業(微分不可)の解決 重みを付けて全て選ぶ(微分可能)

・重み付き和の計算 プログラム

・Decoder の改良② 重要度を表す重みを、類似度として考え内積で求める

・Attention の重み計算 プログラム

・Attention クラス
 TimeAttention クラス
 AttentionEncoder クラス
 AttentionDecoder クラス
 AttentionSeq2seq クラス

・Attention 付き seq2seq の学習 train.py

・Attention の可視化 visualize_attention.py

・TimeBiLSTM クラス

・seq2seq の深層化と skipコネクション 層をまたぐ接続、接続部では加算
 層を深くしても、勾配の消失・爆発がなく良い学習が可能

・グーグルの人口知能機械翻訳
GNMT:Google Neural Machine Translation)
 ベースは、Attention 付き seq2seq(Encoder + Decoder)、LSTM多層化
 双方向LSTM(1層目のみ)、skipコネクション、複数のGPUによる分散学習

ニューラル翻訳(Neural Machine Translation) seq2seq 使用の機械翻訳

・翻訳の歴史 ルールベース→用例ベース→統計ベース→ニューラル翻訳

・Transformer 学習時間の短縮、翻訳精度の向上を実現、
 脱RNN(LSTM)、並列処理が可能
 使用技術:
 Self-Attention、Skipコネクション、Layer Normalization、並行Attention、
 Positional Encoding(時系列データの位置情報のエンコーディング)

Self-Attention 自分自身に対してのAttention

・Neural Turing Machine(NTM) 外部メモリによる記憶領域の拡張
 Encoder によるメモリ書き込み・Decoder によるメモリ読み込み
 Deep Mind による有名な研究→DNC(Differentiable Neural Computer)
 Attention 重みのシャープ化、前時刻の Attention の重みを足す

・データからのプログラム学習(アルゴリズム自体の学習が可能)
 Write Head レイヤ、Read Head レイヤ
 コンテンツベースの Attention クエリベクトルに似たベクトル探査
 位置ベースの Attention 前時刻に注目したメモリ位置に対して

更新日:

Copyright© 深層・機械学習/人工知能学習の記録 , 2024 All Rights Reserved Powered by STINGER.