自己紹介 名前 : 竹田卓也 年齢 : 20 歳 ( 大学生 ) 経歴 : 人工知能歴 1ヶ月プログラミング歴 5 年くらい 言語 : PythonとかJavaとかGoとか 趣味 : オンライン オフラインゲーム 2

Similar documents
Slide 1

ボルツマンマシンの高速化

スライド 1

JIS X :2016 附属書 JB に基づく試験結果表示 ( ウェブページ単位 ) 規格の規格番号及び改正年 JIS X :2016 対象範囲 以下のウェブページ ただし 外の以

WHITE PAPER RNN

nlp1-04a.key

文字コード略歴 よこやままさふみ社内勉強会 2012/05/18 文字コード略歴 Powered by Rabbit 2.0.6

Arduino をドリトルから 制御する教材の試行 鈴木裕貴 1

斎藤参郎 データサイエンス A 2018 年度水曜日 2 限目 (10:40-12:10) 0. イントロダクション 講義の進め方 担当昨年度より 講義の方針 1) 自宅でも学習できる 2) 様々なデータ分析手法を自分でインストールし 実験できる 環境の紹

Introduction to System Identification

PowerPoint プレゼンテーション

概要 単語の分散表現に基づく統計的機械翻訳の素性を提案 既存手法の FFNNLM に CNN と Gate を追加 dependency- to- string デコーダにおいて既存手法を上回る翻訳精度を達成

データサイエンス講座第 3 回機械学習その 2 ロジスティクス回帰 カーネル法とサポートベクターマシン アンサンブル学習

Microsoft PowerPoint - 統計科学研究所_R_重回帰分析_変数選択_2.ppt

1. はじめに 2

スライド 1

マウス操作だけで本格プログラミングを - 世界のナベアツをコンピュータで - プログラムというと普通は英語みたいな言葉で作ることになりますが 今回はマウスの操作だけで作ってみます Baltie, SGP System 操作説明ビデオなどは 高校 情

目次 概要... 2 フォームレイアウトデザイナー機能の設定... 3 設定したフォームレイアウトデザイナーの確認...14 その他スタイルの設定...15 フォームレイアウトデザイナーをエクスポート...17 フォームレイアウトデザイナーをインポート...18 インポート時の制限事項...19 リ

1. 多変量解析の基本的な概念 1. 多変量解析の基本的な概念 1.1 多変量解析の目的 人間のデータは多変量データが多いので多変量解析が有用 特性概括評価特性概括評価 症 例 主 治 医 の 主 観 症 例 主 治 医 の 主 観 単変量解析 客観的規準のある要約多変量解析 要約値 客観的規準のな

Microsoft PowerPoint - chap10_OOP.ppt

PowerPoint Presentation

スライド 1

◎phpapi.indd

書式に示すように表示したい文字列をダブルクォーテーション (") の間に書けば良い ダブルクォーテーションで囲まれた文字列は 文字列リテラル と呼ばれる プログラム中では以下のように用いる プログラム例 1 printf(" 情報処理基礎 "); printf("c 言語の練習 "); printf

目次 3 14P Wordpressテンプレートの設定方法 15P 17P livedoorテンプレートの設定方法 18P 21P FC2テンプレートの設定方法

目次 1. フラッシュ型スライド教材を作ってみよう 2 2. 文字が順に消えていくスライド教材を作ってみよう 5 3. 文字が順に現れるスライド教材を作ってみよう 8 4. 音声とともに文字の色が変わるスライド教材を作ってみよう スライド教材を種類別にまとめてみよう 14 * 実践事例集

プログラミング入門1

生命情報学


目次 1. アニメーションの仕組み 3 2. ワードアートでムービーのタイトルを作成 7 3. まとめ 課題にチャレンジ 19 [ アニメーション ] 機能 PowerPoint に搭載されている [ アニメーション ] 機能を使用すると 文字や図形にアニメーション ( さまざまな動きや

オートマトン 形式言語及び演習 1. 有限オートマトンとは 酒井正彦 形式言語 言語とは : 文字列の集合例 : 偶数個の 1 の後に 0 を持つ列からなる集合 {0, 110, 11110,

電子図書館用高速データベース管理システム[稲田]

自然言語は曖昧性だらけ! I saw a girl with a telescope 構文解析 ( パージング ) は構造的な曖昧性を解消 2

【赤外線リモコン 02】 Google Home との連携方法

C#の基本

COMET II のプログラミング ここでは機械語レベルプログラミングを学びます 1

Jupyter Notebook を活用したプログラムライブラリ構築の検討 吹谷芳博 1, 藤澤正樹 1 ( 1 あすか製薬株式会社 ) Examination of the program library construction using Jupyter Notebook ASKA Pharm

スライド 1

P indd

今日からはじめるプロアクティブ

H1_H4_ ai


85

1


1

制御盤BASIC Vol.3

altus_storage_guide

サイボウズ ガルーン 3 管理者マニュアル

1 2 STEP 1 STEP 2 STEP 3


untitled

Fortran 勉強会 第 5 回 辻野智紀

※ ポイント ※

Microsoft Word 基_シラバス.doc

メソッドのまとめ

オートマトン 形式言語及び演習 3. 正規表現 酒井正彦 正規表現とは 正規表現 ( 正則表現, Regular Expression) オートマトン : 言語を定義する機械正規表現 : 言語

【赤外線リモコン 01】 Google Home との連携方法

Microsoft PowerPoint - comprog11.pptx

Microsoft Word - バーチャルクラス(Blackboard)ログイン方法ガイド.docx

Microsoft Word - Scratch編_プログラム見本-Web用.docx

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

Microsoft Word - PHP演習資料.doc




slide5.pptx

TopSE並行システム はじめに

untitled

目次 ペトリネットの概要 適用事例

Code_Aster / Salome-Meca 中級者への道 2015年5月31日

セミオート追尾再生卓 取扱説明書

データ構造

PowerPoint プレゼンテーション

C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ

Microsoft Word - 操作マニュアル(PowerPoint2013)

プログラムのゴールと特徴 プログラムのゴールデータ分析職 ( データサイエンティストでなくとも ) に求められる高度な統計学や機械学習の理論とスキルを体系立てて理解し ビジネス課題に適用できる人材の育成を目指します 具体的には以下のことができるようになることを目指します 高度なデータ分析技術を用いて

Microsoft Word - index.html

人工知能の応用へ向けた筋道を探る

内容 1 はじめに インストールの手順 起動の手順 Enterprise Architect のプロジェクトファイルを開く 内容を参照する プロジェクトブラウザを利用する ダイアグラムを開く 便利な機能.

PowerPoint プレゼンテーション

PowerPoint Presentation

目次 1. はじめに x-servlet の SNMP エージェント設定... 3 ACL ファイルの作成... 3 start.bat の編集 サーバ ID によるサーバ再接続設定... 5 irule の作成... 5 Persistence Profile の作

Origin 2017 と 2018 のプロダクトキーは共通なので 両方のバージョンを合わせてご契約 台数までしかインストールすることができません あらかじめご了承ください Origin を使用する PC を変更したい場合は 元の PC でライセンスを取り外してから 別の PC に同じプロダクトキー

AI AI Artificial Intelligence AI Strategy& Foresight AI AI AI AI 1 AI AI AI AI AI AI AI AI AI AI AI AI AI 2 AI 1 AI AI 3 AI 3 20 AI AI AI AI AI

CubePDF ユーザーズマニュアル

Webセキュリティサービス

Microsoft Word - Mac_InstManual_5.5.0_294.doc

Java Scriptプログラミング入門 3.6~ 茨城大学工学部情報工学科 08T4018Y 小幡智裕

目次 1 VirtualBoot for Hyper-V とは バックアップを実行するマシンの設定 確認すべきこと SPX によるバックアップ VirtualBoot for Hyper-V を実行するマシンの設定 確

スライド 1

概要 プログラミング論 変数のスコープ, 記憶クラス. メモリ動的確保. 変数のスコープ 重要. おそらく簡単. 記憶クラス 自動変数 (auto) と静的変数 (static). スコープほどではないが重要.

【赤外線リモコン 01】 Google Home との連携方法

Slide 1

人工知能による物流改革_損保ジャパン日本興亜

スーパー英語アカデミック版Ver.2

ご利用のコンピュータを設定する方法 このラボの作業を行うには 事前設定された dcloud ラボを使用するか 自身のコンピュータをセットアップします 詳細については イベントの事前準備 [ 英語 ] とラボの設定 [ 英語 ] の両方のモジュールを参照してください Python を使用した Spar

今回のプログラミングの課題 ( 前回の課題で取り上げた )data.txt の要素をソートして sorted.txt というファイルに書出す ソート (sort) とは : 数の場合 小さいものから大きなもの ( 昇順 ) もしくは 大きなものから小さなもの ( 降順 ) になるよう 並び替えること

Microsoft PowerPoint - GLMMexample_ver pptx

Transcription:

リカレントニューラルネットワークの概要と動作原理 竹田卓也 後援 : ドワンゴ 1

自己紹介 名前 : 竹田卓也 年齢 : 20 歳 ( 大学生 ) 経歴 : 人工知能歴 1ヶ月プログラミング歴 5 年くらい 言語 : PythonとかJavaとかGoとか 趣味 : オンライン オフラインゲーム 2

アウトライン Feed forward neural network Recurrent neural network Elman network Echo state network 別のアプローチ Time delay neural network まとめとか 3

アウトライン スライド中では適時用語を略します リカレントニューラルネットワーク RNN エコーステートネットワーク ESN バックプロパゲーション BP などなど ので よろしくお願いします... m( )m 4

アウトライン Feed forward neural network Recurrent neural network Elman network Echo state network 別のアプローチ Time delay neural network まとめとか 3

Feed forward neural network データの長さが決まっている ( 静的な ) 場合に使われるニューラルネットワーク 入力層出力層 バックプロパゲーションで誤差を求め 重みを変更することによって学習を行う 5

バックプロパゲーション 以前の勉強会で説明済みですが おさらいを少しだけ バックプロパゲーションとは リンクが繋がっているニューロンにおいて 後方に誤差を伝播させるという考え方 出力層ニューロンの誤差 = ( 正解 ) - ( 現在の出力値 ) 後方に誤差を伝播させる = バックプロパゲーション 参考 : 第 1 回ディープラーニング勉強会大澤さんのスライド 6

Feed forward neural network 時系列データなど動的なデータを扱うのは困難 例 ) 音声データからの音素の認識や文法解析など 普通の学習データ A B C D E F データがそれぞれ独立している FFNN で学習可能!! 時系列データ データに時間的相関がある FFNN では困難... 7

時系列データへのアプローチ 時系列データ t の時の状態が t+1 の時の状態に影響を及ぼす これまでの状態を保持しながら学習 出力層 1 2 3 t 影響 内部状態をもたせる 8 t+1 入力層

アウトライン Feed forward neural network Recurrent neural network Elman network Echo state network 別のアプローチ Time delay neural network まとめとか 3

Recurrent neural network Recurrent Neural network の登場 既存のニューラルネットワークの方法を拡張して 時系列データを扱えるようにする RNN の種類 Elman network / Jordan network Echo state network / Bi-direction RNN Long short term memory network 等 たくさんある 9

アウトライン Feed forward neural network Recurrent neural network Elman network Echo state network 別のアプローチ Time delay neural network まとめとか 3

Elman network Elman network 内部状態を持ったニューラルネットワークとして提唱 文法解析を行うモデルとして作られた 出力層 の 結合を持つ 出力層 入力層 文脈層 入力層 フィードフォワードニューラルネット 11 エルマンネットワーク

Elman network 時系列を順序通りに反映できる 全体を見ると静的なネットワークとして見ることができる 出力層 出力層 出力層 出力層 入力層 入力層 入力層 入力層 t = 1 t = 2 t = 3 t = T Elman network の時間ごとの発展 12

Elman network FFNN と同じように BP が使えるので パラメータを調節できる ただし FFNN の時は出力 入力に対して誤差が伝播するのに対し Elman network では時間を遡るように誤差が伝播していく このような BP を BPTT(Back propagation through time) と呼ぶ 出力層 出力層 出力層 出力層 入力層入力層入力層入力層 t = 1 t = 2 t = 3 t = T 13

Elman network の学習例 単語予測課題 入力された単語の次にくるのにふさわしい単語を予測する 限られたデータから学習 時制の一致や性 数 主語などで変化する単語も考慮 入力 出力 入力 出力 boy who boys who hears see walks hear 14

Elman network の弱点 出力層 入力層 t = 1 t = 2 t = 3 t = T 重みが時系列の数だけ掛けられるので 誤差逆伝播法の勾配が大きくなりすぎたり 消失したりする なので 長すぎる時系列データには向かない 16

アウトライン Feed forward neural network Recurrent neural network Elman network Echo state network 別のアプローチ Time delay neural network まとめとか 3

Echo state network 生物の脳は 最初は重み付けなどされておらず 学習することで接続が形成される ならば 始めは重み付けをせず データ適用が終わった後に計算を行おうという方法 Step1: データ適用 Step2: 重み計算 入力層 出力層 出力層 21

ESN へのデータの適用 (Step1) ランダムに接続したニューロンをとして用意し 時系列データを適用する 時系列データ 入力層 のニューロンは他ののニューロンと相互に影響を及ぼしながら状態を更新してゆく 時系列が反映されている 22

ESN での重みの計算 (Step2) データの適用で得た各ニューロンの反応状態を教師データと線形回帰して重み付けを行う 出力層 各ニューロンの時系列の 反応データが出力データと 合うように重み付けを行う 23

ESN の学習例 入力が周波数 出力がその周波数を持つサイン波のデータを学習させる 画像 : http://www.scholarpedia.org/article/echo_state_network 24

ESN の特徴 速い!! 25

アウトライン Feed forward neural network Recurrent neural network Elman network Echo state network 別のアプローチ Time delay neural network まとめとか 3

別のアプローチ Elman network や ESN は に前回までの情報を持たせるという方法を取っていた 時系列パターンを FFNN に展開する方法もある データに時系列のパターンを持たせる 26

アウトライン Feed forward neural network Recurrent neural network Elman network Echo state network 別のアプローチ Time delay neural network まとめとか 3

Time delay neural network Time delay による時系列データの学習 ある時間範囲のデータを全て入力する 入力 3 入力 2 入力 1 Elman network の入力構造 27 入力 1 入力 2 入力 3 TDNN の入力構造

Time delay neural network 入力層のみの TDNN の例 入力層に 7 文字の英語文字列を入力し 4 文字目の発音を出力させる 例 )_A_CAT_ から C の発音である [k] を出力 出力層 出力 [k] 普通の FFNN として学習できる _ A _ C A T _ TDNN の入力層への入力 28

Time delay neural network と出力層での TDNN 出力層でも時間的な認識ができる 時間軸にずれがあるような複雑なデータにも対応できる 入力 ( 時系列データ ) ディレー 0 ディレー 1 ディレー 2 ディレー 0 ディレー 1 ディレー 2 29 出力層ディレー 0 ディレー 1 ディレー 2

Time delay neural network 出力層での TDNN の例 日本語の音素 ( 時間軸にずれのあるデータ ) を解析する 例 ) いきおい という発話を i / ki / o / i に分割 学習データや 3 つの i の発話の長さがそれぞれ異なる 解析する発話データ 30

Time delay neural network 時間的な差異があるパターンを学習するため で差異を吸収する仕組みを作る では ディレーを増やすことによって反応できるニューロンを増やし 長さが違うパターンでも反応できるようにする 音声データ 第 1 ディレー 0 ディレー 1 ディレー 2 第 2 ディレー 0 ディレー 1 ディレー 2 ディレー 3 ディレー 4 要約 パターンの引き伸ばし 31 出力層ディレー 0 ディレー 1 ディレー 2 ディレー 3 ディレー 4 ディレー 9

アウトライン Feed forward neural network Recurrent neural network Elman network Echo state network 別のアプローチ Time delay neural network まとめとか 3

まとめ 時系列データをニューラルネットワークに適用するために RNNでは内部状態を持たせて過去のデータを反映 TDNNでは時間軸を展開してFFNNに適用するアプローチが取られてきた RNN では を拡張することで 既存の NN に時系列データを適用する試みが行われている しかし 絶対にこれって言えるような学習方法は存在しないので いろいろな方法を知っていると良い 32

ご清聴ありがとうございました

Hopfield network Hopfield network 連想記憶のモデルに使われる 具体的に ノイズの入った画像から元画像を出力 ( 連想 ) するなどの用途に使われている 想起の回数が増えれば元の画像に近くなる 入力層 出力層がなく のみ では 各ニューロンが全てのニューロンと結合している 各ニューロンの状態は2 値 17

Hopfield network Hopfield network の学習 データをに入れてから 各ニューロンへの重みを計算する他のニューロンとの関係を重みとして学習する -1 1-1 1-1 -1 学習データ -1 1-1 18

Hopfield network Hopfield network での連想 何かデータが入力された場合 次の手順を繰り返すことで学習したデータを連想させることができる 任意のニューロンを選択する その他のニューロンについて 重みや状態から学習したパターンとの差異を計算する 計算結果によって 選択したニューロンを調節する 青 白 青 +1 青 入力パターン -1-3 しきい値 =0 +1 学習データとの差異を計算 19 >-0 : 青に =-0 : そのまま <-0 : 白に 青 白 白 青 学習データを連想

Hopfield network Hopfield network の学習例 学習して 入力 すると 5,000 回想起 10,000 回想起 100,000 回想起 参考 : http://rishida.hatenablog.com/entry/2014/03/03/174331 20