『ニューラルネットワーク自作入門』サポートサイト | マイナビブックス

「ニューラルネットワーク自作入門」サポートサイト

このページは2017年4月発行、マイナビ出版刊『ニューラルネットワーク自作入門』(ISBN978-4-8399-6225-8)』のサポートページです。

 公開日:2017年4月7日
 更新日:2019年2月7日
 3刷発行:2017年7月7日
発行:マイナビ出版

商品紹介ページへ戻る

関連サイト情報

 : Anacodaのダウンロード(2017/04現在)
 : 原著のGitHub
 : 原著のサポートサイト

https://github.com/makeyourownneuralnetwork/makeyourownneuralnetworkにアクセスし[Clone or download]をクリックし[Download ZIP]をクリックすることでプロジェクト全体のコードをZIP圧縮したファイルをダウンロードできます。

gitをインストール済みの場合は
git clone https://github.com/makeyourownneuralnetwork/makeyourownneuralnetwork.git
でコマンド実行フォルダにダウンロード可能です。

 

プログラムコードの提供

●コード、データのダウンロード

Part 2:

172ページ:「2.4.8 完成版ニューラルネットワークコード」
https://github.com/makeyourownneuralnetwork/makeyourownneuralnetwork/blob/master/part2_neural_network.ipynb
176ページ:MNISTデータベースのCSVファイル
http://pjreddie.com/projects/mnist-in-csv/
176、265ページ: 訓練データ
http://www.pjreddie.com/media/files/mnist_train.csv
176、265ページ: テストデータ
http://www.pjreddie.com/media/files/mnist_test.csv
178ページ:MNIST テストデータからの10データ
https://raw.githubusercontent.com/makeyourownneuralnetwork/makeyourownneuralnetwork/master/mnist_dataset/mnist_test_10.csv
179ページ:MNIST 訓練データからの100データ
https://raw.githubusercontent.com/makeyourownneuralnetwork/makeyourownneuralnetwork/master/mnist_dataset/mnist_train_100.csv
188ページ:「2.5.2 MNIST 訓練データの準備」のコード
https://github.com/makeyourownneuralnetwork/makeyourownneuralnetwork/blob/master/part2_neural_network_mnist_data.ipynb
199ページ:「2.5.4 完全データセットによる学習とテスト」のコード
https://github.com/makeyourownneuralnetwork/makeyourownneuralnetwork/blob/master/part2_neural_network_mnist_data.ipynb
189、199ページ:以前のバージョンのコードの履歴ビュー
https://github.com/makeyourownneuralnetwork/makeyourownneuralnetwork/commits/master/part2_neural_network_mnist_data.ipynb

Part 3

215ページ:著者の手書き画像
https://github.com/makeyourownneuralnetwork/makeyourownneuralnetwork/tree/master/my_own_images
216ページ:PNGファイルを読み込むサンプルコード
https://github.com/makeyourownneuralnetwork/makeyourownneuralnetwork/blob/master/part3_load_own_images.ipynb
220ページ:「3.1 自身の手書き文字」のコード
https://github.com/makeyourownneuralnetwork/makeyourownneuralnetwork/blob/master/part3_neural_network_mnist_and_own_data.ipynb
220ページ:「3.2 ニューラルネットワークの心の中」のコード
https://github.com/makeyourownneuralnetwork/makeyourownneuralnetwork/blob/master/part3_neural_network_mnist_backquery.ipynb
226ページ:「3.3 回転による新しい訓練データの作成」のコード
https://github.com/makeyourownneuralnetwork/makeyourownneuralnetwork/blob/master/part3_neural_network_mnist_data_with_rotations.ipynb

 

●参照ページ

158ページ 関数numpy.random.rand() について|http://docs.scipy.org/doc/numpy-1.10.1/reference/generated/numpy.random.rand.html
160ページ 関数numpy.random.normal() について|http://docs.scipy.org/doc/numpy-1.10.1/reference/generated/numpy.random.normal.html
176、199、204、207ページ ニューラルネットワークの研究者 Yann LeCun のウェブサイト|http://yann.lecun.com/exdb/mnist/
197ページ 関数numpy.argmax() について|http://docs.scipy.org/doc/numpy-1.10.1/reference/generated/numpy.argmax.html
224ページ 関数ndimage.interpolation.rotate() について|http://docs.scipy.org/doc/scipy-0.16.0/reference/generated/scipy.ndimage.interpolation.rotate.html
256ページ Raspberry Pi Zero|https://www.raspberrypi.org/blog/raspberry-pi-zero/
257ページ Raspian|https://www.raspberrypi.org/downloads/raspbian/

 

正誤情報

 以下の正誤がありお詫びして訂正します。見つかり次第更新します。

 
161、165、172、190、208ページ:コードの修正, GitHub上では修正されています
誤) self.wih = numpy.random.normal(0.0, pow(self.hnodes, -0.5), (self.hnodes, self.inodes))
self.who = numpy.random.normal(0.0, pow(self.onodes, -0.5), (self.onodes, self.hnodes))
正) self.wih = numpy.random.normal(0.0, pow(self.inodes, -0.5), (self.hnodes, self.inodes))
self.who = numpy.random.normal(0.0, pow(self.hnodes, -0.5), (self.onodes, self.hnodes))

▼1,2,3刷

67ページ:中央付近
誤)1番目の行列の行数と2番目の行列の列数とが等しくなければなりません。
正)1番目の行列の列数と2番目の行列の行数とが等しくなければなりません。
112ページ:下より5行目
誤)正の勾配を持つときは重みを増加させたく、また負の勾配を持つときは重みを減少させたい
正)正の勾配を持つときは重みを減少させたく、また負の勾配を持つときは重みを増加させたい

▼1,2刷

71,74,76~78,86~89,107,115ページ:"3層のネットワーク"図
誤)出力層 第1層
正)入力層 第1層
142ページ:3行目
誤)0からから始まります
正)0から始まります
142ページ:4-5行目
誤)右下は[2,1]ではなく[3,2]です。
正)右下は[2,1]であって[3,2]ではありません。
156ページ:下より8行目(コード間の本文の2行目)
誤)0.5 の学習率を持つ
正)0.3 の学習率を持つ
 

▼1刷

3ページ:はじめに, 6行目
誤)初心者側の本で内容には
正)初心者側の本で内容は
32ページ:下より2行目
誤)これはここので例
正)これはここでの例
116ページ:6行目
誤)1/(1 + e-2.3) = 0.909 を得ます
正)1/(1 + e-2.3) = 0.909 を得ます
116ページ:下より6行目
誤)学習率が 0.1 の場合、変化量は -(0.1 * - 0.04969) = 0.002650
正)学習率が 0.1 の場合、変化量は - 0.1 * (- 0.02650) = 0.002650
226ページ:Notebookのファイル名
誤)part2_neural_network_mnist_data_with_rotations.ipynb
正)part3_neural_network_mnist_data_with_rotations.ipynb
256ページ:下より2行目
誤)右ページのの写真
正)右ページの写真