投稿

ディープラーニングのお勉強体験記”30:番外編「XP」の各sin波コード”(リカレントニューラルネットワーク”RNN”を中心にバックプロパゲーション”BPTT”を数式を使って理解したい!)

イメージ
「ゼロから作るDeep Learning 2 ―自然言語処理編」のRNNコード、P216、第5章「5.5.3 RNNLMの学習コード」から作ったWindows XPの各sin波コード 前回「Windows xp」でAnacondaを使えるようにしたと紹介しました。でもって、ここではそこで動く「sin波学習コード」紹介します。わざわざ紹介する内容でもないかもしれませんが、、、、、、 「Jupyter Notebook」を使うということと(普段は「Jupyter Lab」を使ってます)、コードの先頭部分に「%matplotlib inline」を追加する、グラフの表示部分をちょっと書き換えるだけ(1波形1コマンドラインにする)と、簡単ですから、、、、、 でもまあ、一応書かせてもらいます!(簡単なことでも、それなりに苦労はしていますので) 目次 1:xp用のRNNのSIN波コード 2:xp用のLSTMのSIN波コード 3:xp用のGRUのSIN波コード 1:xp用のRNNのSIN波コード # 完成版 Windows xp用 RNNコード # ゼロから作る Deep Learning2のP216、第5章「5.5.3 RNNLMの学習コード」でコード全体が見えるようにできるだけ「import」を外した # プログラムの動作検証用にSINカーブを学習させるため変更したコード # coding: utf-8 # import sys # sys.path.append('C:\\kojin\\資料\\AI関連\\ゼロから作る Deep Learning\\ゼロから作る Deep Learning2\\deep-learning-from-scratch-2-master\\') %matplotlib inline import matplotlib.pyplot as plt import numpy as np # from common.optimizer import SGD # from dataset import ptb # このimportを有効にするには上記パス設定「sys.path.append('C:\\kojin\\AI関連\\・・・」が必要! # from simple_r...

ディープラーニングのお勉強体験記”29:番外編「XP」でAnaconda”(リカレントニューラルネットワーク”RNN”を中心にバックプロパゲーション”BPTT”を数式を使って理解したい!)

イメージ
「ゼロから作るDeep Learning 2 ―自然言語処理編」のRNNコード、P216、第5章「5.5.3 RNNLMの学習コード」から作った各コードをWindows XPで動かしてみる 私が持っているノートPCの1つに「Dell Inspiron Mini 10」があります。 これです。 もう古くて、メモリは最大で2GBまでしか増やせず、OSもWindows XPです。遅いし、古いし、セキュリティも怪しいので、処分するべきなんでしょうけど、、、、、、、、、(ちなみに、このPCはネットアクセスはできますが、基本的にしていません [このPCのWifiを切っている] 、ダウンロードファイルは別のPCで行って、そこからUSBでコピーするという使い方です。) 愛着があって手放せません、、、、、、 以前、メモリを1GBから2GBに増やして、ストレージもHDからSSDに変えたら、かなり動作速度が改善されました(それでも「遅い」ですけど、、、、、私的にはギリOKなんです!) ということで、まだまだ現役でいて欲しいこのXPマシンで、コードを動かしてみたくなりました。 ネットを検索したところ、このサイトにたどり着きました。以前のバージョンのAnacondaでないとxpマシンでは動作できないようです。(下記サイトを作って頂いた方には感謝!感謝!です) [メモ][Python] AnacondaをWindows xpにインストールしようとすると失敗する ここから 「Anaconda3-2.2.0-Windows-x86.exe」 をダウンロードして、xpのPCにインストールしました。 なお、私がダウンロードしたファイルは ここ にも置いてありますので、こちらからも入手できるようにしておきますね。 これでxpのPCでもPythonが使えるようになりました。 ちなみに、私はAnacondaデビューがわりと最近だったため、いままで「Jupyter Lab」を使ってきました、でも、今回のAnacondaは古いバージョンなので、「Jupyter Notebook」しかありませんでした。というわけで、xpのPCでは「Jupyter Notebook」を使っています。 いままで紹介してきたコードは「ゼロつく」のコードを「いじった」ものですが、フレームワークなどを使っていないせいなのか、古いAnaco...

ディープラーニングのお勉強体験記”28:GRUの2進数足算学習2層化”(リカレントニューラルネットワーク”RNN”を中心にバックプロパゲーション”BPTT”を数式を使って理解したい!)

イメージ
「ゼロから作るDeep Learning 2 ―自然言語処理編」のRNNコード、P216、第5章「5.5.3 RNNLMの学習コード」を使って作ったGRUの「2進数足し算の学習コード」を2層化する。 前回、 「ゼロから作るDeep Learning 2 ―自然言語処理編」のRNNコード、P216、第5章「5.5.3 RNNLMの学習コード」を使って作った「2進数足し算の学習コード」をGRUにしました 、そして今回はさらにそのコードを2層化します。 それがこれ! P216、第5章「5.5.3 RNNLMの学習コード」を使ったGRUの「2進数足し算の学習コード」の中間層を2層化したコード # ゼロから作る Deep Learning2のP216、第5章「5.5.3 RNNLMの学習コード」でコード全体が見えるようにできるだけ「import」を外した # 2進数の計算をするGRUコード (入力データ、テストデータ共にコードでクラスから作成している) # 中間層を1層追加して中間層を2層としたコード # coding: utf-8 # import sys # sys.path.append('C:\\kojin\\資料\\AI関連\\ゼロから作る Deep Learning\\ゼロから作る Deep Learning2\\deep-learning-from-scratch-2-master\\') import matplotlib.pyplot as plt import numpy as np # from common.optimizer import SGD # from dataset import ptb # このimportを有効にするには上記パス設定「sys.path.append('C:\\kojin\\AI関連\\・・・」が必要! # from simple_rnnlm import SimpleRnnlm # np.random.seed(seed=100) # 発生する乱数を固定する() # ハイパーパラメータの設定 batch_size = 10 time_size = 10 # Truncated BPTTの展開する時間サイズ n_in...

ディープラーニングのお勉強体験記”27:GRUの2進数足算学習”(リカレントニューラルネットワーク”RNN”を中心にバックプロパゲーション”BPTT”を数式を使って理解したい!)

イメージ
「ゼロから作るDeep Learning 2 ―自然言語処理編」のRNNコード、P216、第5章「5.5.3 RNNLMの学習コード」を使って作った「2進数足し算の学習コード」をGRUにする。 RNNのところで、P216、第5章「5.5.3 RNNLMの学習コード」に手を加えて、それを「2進数足し算の学習コード」にしましたが、それをGRUコードに作り替えました。 それがこれ! P216、第5章「5.5.3 RNNLMの学習コード」を使った「2進数足し算の学習コード」をGRUに作り変えたコード # ゼロから作る Deep Learning2のP216、第5章「5.5.3 RNNLMの学習コード」でコード全体が見えるようにできるだけ「import」を外した # 2進数の計算をするコード (入力データ、テストデータ共にコードでクラスから作成している) # 中間層を1層追加して中間層を2層としたコード # coding: utf-8 # import sys # sys.path.append('C:\\kojin\\資料\\AI関連\\ゼロから作る Deep Learning\\ゼロから作る Deep Learning2\\deep-learning-from-scratch-2-master\\') import matplotlib.pyplot as plt import numpy as np # from common.optimizer import SGD # from dataset import ptb # このimportを有効にするには上記パス設定「sys.path.append('C:\\kojin\\AI関連\\・・・」が必要! # from simple_rnnlm import SimpleRnnlm # np.random.seed(seed=100) # 発生する乱数を固定する() # ハイパーパラメータの設定 batch_size = 10 time_size = 10 # Truncated BPTTの展開する時間サイズ n_in = 2 # 入力層のニューロン数 n_mid = 32 # 中間層のニューロン数 n_ou...

ディープラーニングのお勉強体験記”26:GRUのSIN波学習”(リカレントニューラルネットワーク”RNN”を中心にバックプロパゲーション”BPTT”を数式を使って理解したい!)

イメージ
「ゼロから作るDeep Learning 2 ―自然言語処理編」のRNNコード、P216、第5章「5.5.3 RNNLMの学習コード」を使って作ったSIN波の学習コードをGRUにする。 RNNのところで、P216、第5章「5.5.3 RNNLMの学習コード」に手を加えて、それを 「SIN波の学習コード」 にしましたが、それをGRUコードに作り替えました。 それがこれ。 P216、第5章「5.5.3 RNNLMの学習コード」を使ったSIN波の学習コードのGRUに作り変えたコード # ゼロから作る Deep Learning2のP216、第5章「5.5.3 RNNLMの学習コード」でコード全体が見えるようにできるだけ「import」を外した # SINカーブを学習させるため変更したコード # coding: utf-8 # import sys # sys.path.append('C:\\kojin\\資料\\AI関連\\ゼロから作る Deep Learning\\ゼロから作る Deep Learning2\\deep-learning-from-scratch-2-master\\') import matplotlib.pyplot as plt import numpy as np # from common.optimizer import SGD # from dataset import ptb # このimportを有効にするには上記パス設定「sys.path.append('C:\\kojin\\AI関連\\・・・」が必要! # from simple_rnnlm import SimpleRnnlm np.random.seed(seed=7724) # 発生する乱数を固定する(7724) # ハイパーパラメータの設定 batch_size = 10 time_size = 10 # Truncated BPTTの展開する時間サイズ n_in = 1 # 入力層のニューロン数 n_mid = 45 # 中間層のニューロン数 n_out = 1 # 出力層のニューロン数 # できるだけオリジナルのコードに変更を加えないため、既存の変数に代...

このブログの人気の投稿

ディープラーニングのお勉強体験記”17:LSTM数式導出”(リカレントニューラルネットワーク”RNN”を中心にバックプロパゲーション”BPTT”を数式を使って理解したい!)

ディープラーニングのお勉強体験記”30:番外編「XP」の各sin波コード”(リカレントニューラルネットワーク”RNN”を中心にバックプロパゲーション”BPTT”を数式を使って理解したい!)

ディープラーニングのお勉強体験記”18:LSTMコードと数式”(リカレントニューラルネットワーク”RNN”を中心にバックプロパゲーション”BPTT”を数式を使って理解したい!)