サイドバー

目次

機械学習とは

プログラミング無しで機械学習

機械学習プログラミング入門

初めてのKeras2.0

初めてのTensorflow(YouTube)

初めてのChainer2.0

初めてのビットコイン

ビットコイン用語集

初めてのSolidityプログラミング

初めての医療統計

初めてのエクセルで医療統計

初めてのEZRで医療統計

初めてのRStudioでレポート作成

スマホアプリ作成ソフトIonic3

スマホアプリ作成ソフトIonic4

Ionicのためのjavascript tips

その他

NiftyCloudMobileBackend

税金など

Dokuwiki

h2o.aiで手書き数字mnist分類

以前のリビジョンの文書です


H2O.aiで手書き数字MNIST分類

機械学習ソフトH2O.aiの続きです。

開発環境

Windows 8.1 Pro 64-bit(Windows 7やMacでも可能だと思われます)
Java 1.8.0_151-b12
H2O.ai 3.14.0.7

大まかな流れ

チュートリアルの写経を行います。

前回の終了時は、以下のような画面になっているので、画面右側の、view example Flowsをクリック。

以下のような画面になるので、DeepLearning_MNIST.flow をクリック。

Load Notebookをクリック。

画面左側に出てくるチュートリアル(英語)を実行してみる。

一番上の行の右側の「すべて実行」ボタンをクリックすると、以下のように学習が始まる

何分か待つ。待っている間に寝てしまったので、何分かかったかは不明です。

終了後の画面です。

https://s3.amazonaws.com/h2o-public-test-data/bigdata/laptop/mnist/test.csv.gz

というところから、MNISTのtestデータセットをダウンロードしたようです。

ダウンロードしたデータのC785を、Enumに変更したようです。元画像が28×28=784のグレースケール画像なので、最後の785にラベルがあり それをEnumに変更したのだと予想します。Enumが何を示しているのかはなんとなくしか分かりません。おそらく、整数なのかなと予想します。

こちらも、

https://s3.amazonaws.com/h2o-public-test-data/bigdata/laptop/mnist/train.csv.gz

というところから、MNISTのtrainデータセットをダウンロードしたようです。

詳細不明ですが、testデータと同様、C785を、Enumに変更したようです。Separateの意味はよく分かりませんでした。

とりあえず、train.hex(trainのデータ?)のsummeryを表示したみたいです。60000行、785列となっています。28×28の0から255までのグレースケール画像の値と、そのラベルで785であり、画像とラベルのセットが60000個並んだ行列ということだと思います。

モデルの構築ということで、“Deep Learning”を選択した後、ごちゃごちゃいろいろやっているようです。おそらく、隠れ層は2層で、L1が128ノード、L2が64ノードなのだと思うのですが、間違っていたらすみません。モデルの可視化もしてくれると便利なのですが、そのような機能があるのかどうかはまだ調べて切れておりません。

こちらは結果の出力、保存のようです。

training_logloss, validation_loglossのグラフが表示されています。横軸がEpoch数、縦軸が損失関数の値となっています。

このグラフは、今回は、あまり意味がないような気がしますが、”Top-10 Hit Ratios for training and validation”だそうです。

上がtrainデータのConfusion Matrix、下がvalidationデータのConfusion Matrix。縦(行)に、正解のラベルが記載されており、今回の機械学習モデルで判定した結果が横に並んでいます。上のtrainデータでは、本当は“0”である993個の画像のうち、992個を“0”と判定し、1個を“4”と判定しているので、Errorは0.0010となっています。

作成中。

手順

リンク

次: (未定)
目次
前: 機械学習ソフトH2O.ai

h2o.aiで手書き数字mnist分類.1510685607.txt.gz · 最終更新: 2018/10/07 (外部編集)