iPad で機械学習を学ぶ
「ゼロから作る Deep Learning」を iPad で
ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装
- 作者: 斎藤康毅
- 出版社/メーカー: オライリージャパン
- 発売日: 2016/09/24
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (18件) を見る
3章 ニューラルネットワーク
章のページ数も多くなり、内容も歯応えが出てきた。
- 活性化関数:入力信号の総和を出力信号に変換する関数
- シグモイド関数:ニューラルネットワークでよく用いられる活性化関数
- NumPy を使った多次元配列の計算。行列の計算。
- 3層ニューラルネットワークの実装。
- 出力層。
- 手書き数字の認識。MNISTデータセットを利用。学習データを使い、推論。
- バッチ処理。
数学面で不安あり
指数関数やシグマなど、機械学習に限らずプログラミングではたまに出てくる数学だが、忘れてしまっているので副読本として下記を追加。
やさしく学ぶ 機械学習を理解するための数学のきほん ~アヤノ&ミオと一緒に学ぶ 機械学習の理論と数学、実装まで~
- 作者: LINE Fukuoka株式会社立石賢吾
- 出版社/メーカー: マイナビ出版
- 発売日: 2017/09/21
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る
- 作者: 石川聡彦
- 出版社/メーカー: KADOKAWA
- 発売日: 2018/02/24
- メディア: 単行本
- この商品を含むブログ (1件) を見る
サンプルプログラムが iPad で動かない?
MNIST画像を扱うサンプルプログラムがそのままでは動かなかった。
Webを探したら、同じ症状に悩まされ自力で解決された方が居たので助かった。
iPadで「ゼロから作るDeep Learning」を勉強するために必要なこと - poipoiです。
そもそもなんでエラーが起きていたかというと、内部で使用している pickle が NumPy 配列に対応していないバージョンだったからっぽいです。
なので、NumPy 配列から一旦標準のリストに変換してあげて pickle.dump, pickle.load するように変更しました。
また全データを一気に読み込むとメモリ不足で Pythonista3 が落ちてしまったので
各サンプルデータ毎に生成する pickle データを分けてあげることで落ちないようにすることができました。 (ここら辺は環境によるかも。。。)
また、サンプルプログラムの中で参照しているファイル(sample_weight.pkl というファイル)がファイルブラウザからでは Pythonista にインポートできなかったので、「StaSh」という補助プログラム(?)をインストール。