アラカン"BOKU"のITな日常

文系システムエンジニアの”BOKU”が勉強したこと、経験したこと、日々思うことを書いてます。

ソニーのニューラルネットワークコンソールのクラウド版を試しに使ってみる/使い方21

ニューラルネットワークコンソール(Neural Network Console)に、インストールしなくても使えるクラウド版ができたみたいです。

 

こんなメールが来てました。

f:id:arakan_no_boku:20171108211905j:plain

 

本格的なサービスが始まったら有料なんでしょうけど、制限付きで無料で使える期間中みたいですね。

 

データセットは最大10GBまで・・これは良し。

 

使用可能時間 10H?・・累計で10時間なんでしょうね。

 

これは、ちょっとキツイけど、まあお試し版ですから。

 

あと、Neural Networkプロジェクトを10個まで保存できる。

 

というのが、無料の範囲みたいです。

 

まあ、とりあえず試してみましょう。

 

Windows版はPCのスペックがしょぼいと学習にすごい時間がかかるので、ひょっとしたらクラウド版の方がサクッと学習できたりするかもしれませんしね。

 

まずはサインアップから

まず、ここからスタートですね。

dl.sony.com

 

このページの「オープンベータ版ではじめる」ボタンをクリックします。

 

まずは、「新しいアカウントの作成」ですね。

f:id:arakan_no_boku:20171108213341j:plain

 

メールアドレスとパスワードと生年月日くらいの入力でOKなので、特に悩むところはありません。

 

登録して、本人確認のメールで確認ボタンおしたらOKです。

 

ログイン後に表示される初期画面はこんな感じです。

f:id:arakan_no_boku:20171108214237j:plain

 

サンプルプロジェクトをそのまま実行はできません

プロジェクトタブを開いてみると、サンプルプロジェクトの一覧があります。

f:id:arakan_no_boku:20171108215447j:plain

 

名前だけ見てると、Windows版にあるサンプルプロジェクトと同じみたいです。

 

ただ、Windows版だとクリックすると、サンプルプロジェクトが開くのですが、クラウド版だと以下のようなダイアログがでてきます。

f:id:arakan_no_boku:20171108215811j:plain

 

なるほど・・、「このサンプルプロジェクトから新しいプロジェクトを作成することができます」ということは、サンプルを単純に開いて実行するのはNGで、それをベースに新しいプロジェクトを作ってからでないと駄目だよ・・ということですね。

 

適当に、サンプルプロジェクトにMyをつけてOKします。

 

そうすると一覧に追加されて、チェックボックスが表示されます。

 

チェックボックスが付いたプロジェクトには、編集・ダウンロード・削除のアイコンが表示されます。

f:id:arakan_no_boku:20171108220558j:plain

 

一度保存したらプロジェクトが実行可能になります

 

プロジェクトを開くのは、名前のクリックです。

 

鉛筆アイコンは「名前変更」、下向き矢印はプロジェクトのダウンロードです。

 

名前をクリックして開くと、おなじみの画面になりました。

f:id:arakan_no_boku:20171108221119j:plain

 

ここからの使い方は、Windows版とほぼ同じです。

 

なので、特に書きません。

 

この記事を初めて見る方は、別途Windows版の使い方を書いている記事を参照してくださいね。

arakan-pgm-ai.hatenablog.com

 

学習はWindows版より速いなあ

 

学習してみます。

f:id:arakan_no_boku:20171108222035j:plain

 

LeNetのサンプルプロジェクトをそのまま使いました。

 

60000件のMNISTデータをLeNetで10epoch分学習させて、かかった時間は、約9分30秒でした。

 

学習の速度自体は、Windows版を"BOKU"のPCで実行するより速いです。

 

"BOKU"のPCのWindows版だと、同じ条件で学習に約30分20秒くらいかかります。

 

学習時間が約三分の一ですか。

 

これは良いですね。

 

やっぱり、Web版なので画面更新はもっさりした感じになりますから、体感的には遅く感じたのですが、やっぱ、サーバーの速度が違うんでしょうね。

 

結果画面は、ほぼ同じような感じです。

f:id:arakan_no_boku:20171108222523j:plain

 

評価はWindows版より遅いぞ

 

評価もやってみます。

 

10000件のMNISTデータです。

f:id:arakan_no_boku:20171108223804j:plain

 

評価にかかった時間は、9分42秒?!

 

あれ・・学習よりも評価の方に時間がかかってる?

 

これはWindows版より圧倒的に遅いです。

 

"BOKU"のPCでやっても同じ条件で、評価は約1分で終わりますから・・。

 

この辺はサーバーの資源割当の関係なんでしょう。

 

学習のスピード重視のセッティングを意図して、やってる感がありますね。

 

学習済パラメータをWindowsで推論できるのか?

ニューラルネットワークコンソールクラウドで学習済のプロジェクトは、ダウンロードできるみたいです。

f:id:arakan_no_boku:20171108232706j:plain

 

このボタンを押すと、sdcprjファイルを保存するダイアログが表示されます。

f:id:arakan_no_boku:20171108233007j:plain

 

なるほど・・。

 

ここまでの情報から考えて、こういうことなんだろうなと推測してみます。

 

まず、こちらのサイトには「クラウド上で学習した結果は、ダウンロードしてNeural Network Librariesで実行できます。」って書いてあります。

dl.sony.com

 

これは、ニューラルネットワークコンソールクラウドで設計したニューラルネットワークモデルと学習済パラメータを保存したプロジェクト(nnpファイル)を使って、任意のプラットフォームで実行できますよという意味だと思います。

 

NNabla(Neural Network Libraries)には、nnabla_cli.exeってツールがあります。

 

ニューラルネットワークコンソールの学習・評価の時に裏で動いているcli.pyと同じような働きをするみたいです。

 

nnabla_cliは、train(学習)、forward(推論)などを、ニューラルネットワークコンソールのモデルとかパラメータ・データを使って実行できるという説明があります。

 

例えば、forwardだと、引数は以下の説明がついてます。

usage: nnabla_cli forward [-h] -c CONFIG [-p PARAM] [-d DATASET] -o OUTDIR

optional arguments:
     -h, --help     :  show this help message and exit
     -c CONFIG, --config       :CONFIG    path to nntxt
     -p PARAM, --param PARAM   path to parameter file
     -d DATASET, --dataset DATASET   path to CSV dataset
     -o OUTDIR, --outdir OUTDIR          output directory

 

ニューラルネットワークコンソールに付属の cli.py forward のオプションが、以下ですから、ほぼ、まんまですね。

  • -c 学習結果フォルダのネットワーク定義ファイル(net.nntxt)
  • -p 学習結果フォルダのパラメータファイル(parameters.h5)
  • -d 評価データセットCSVファイル
  • -o 評価結果ファイルの出力フォルダ

 

これが使える・・ということなんじゃないか・・と思って、こちらで試してみてます。

arakan-pgm-ai.hatenablog.com

 

2017/11/11追記

実験してみましたが、現在のnnabla_cliのバージョンだと、うまくいかないかな?という結果でした・・詳しくはこちらです。

 

2017/12/02追記

 >NNablaをバージョンアップして再挑戦しました。

>でも、いまだにエラーを克服できておらず、Googleグループで質問中です。

>残念ですが・・。

 

まあ、でも面白いですよね。

 

せっかくなので、しばらく遊んでみようと思います。

 

とりあえず、まだまだ10時間のリミットには余裕があるし(笑)。

f:id:arakan_no_boku:20171109000033j:plain

 

関連情報

ニューラルネットワークコンソールの記事一覧はこちらです。

arakan-pgm-ai.hatenablog.com

 

NNabla関連の記事一覧はこちらです。

arakan-pgm-ai.hatenablog.com