COLUMN
連載コラム
2018.06.25
ドラッグ&ドロップでディープラーニング!NeuralNetworkConsoleの使い方
※この情報は2018年6月15日(金)のものです。
※Windowsの使い方のみ紹介しています。
はじめに
Qiitaの記事では、Neural Network Consoleの事例を紹介しています。
この記事では、AKB世界選抜総選挙が終了したということもあり、出馬したHTK48のメンバーの一人である宮脇咲良さんの画像を使用して、
本人かそうではないかを判別するモデル作成に挑戦してみました。
ディープラーニングツールNeural Network Consoleとはどんなツールなのか、
インストールからモデル作成の手順を紹介していきたいと思います。
Neural Network Consoleとは?
ソニーが開発した、ディープラーニングツールです。
ディープラニングは大変そうなイメージがあるけれど・・・
ディープラーニングというと、まず開発環境を構築して、Pythonでプログラムを書いて、
過学習させないように気を付けながら学習させて、評価して・・・と、
モデルをつくるまで労力と時間がかかります。
しかし、Neural Network Consoleは、ドラッグ&ドロップで直観的に操作して、簡単にモデルを作ることができます。
それだけではなく、画面がとても綺麗であること、無料で機能が使えるなど、多くの魅力が詰まっています。
しかし、こうした画期的なツールが登場したとしても、データサイエンスの現場では、
まだまだプログラミング技術のPythonやR、SQLは必須ですし、
何より、ディープラーニングはどのように行われているのか、お客様に聞かれることもありますので理論を学んでおくことは必要です。
データサイエンスアカデミーでは、PythonやR、SQLといったプログラミング言語の習得のほか、
ディープラーニングの講義も開講しております。
インストールと起動
それでは早速、以下のサイトで「Windowsアプリではじめる」をクリックしてインストールします。
①お使いの環境で使用できるか確認
②スクロール
③メールアドレス入力
④クリック
入力がすべて完了すると、メールアドレス宛にメールが送られます。
そのあと、以下のボタンをクリックするとインストールが開始されます。
※808MBの容量が必要です。インストール時には10分以上時間がかかりますのでお気をつけください。
クリックすると画面が起動します。
スクロールし、①、②をクリックします。
どんなものを作るか
今回はあまり工数をかけずにNeural Network Consoleにすでに存在する
サンプルプロジェクトをそのまま使って、
宮脇咲良さんか、そうじゃないかを判別するだけのものを作ります。
画像を収集する
必要な画像を収集するため、グーグルクロームエクステンションの
「Image Downloader」をインストールします。
インストールしたら、グーグルクロームで、
「宮脇咲良」と検索。画像ページに移り、右の下矢印ボタンをクリックします。
クリックするとダウンロード先のフォルダに100枚ほどの画像が
取得できていると思います。
続いて、宮脇咲良さん以外の画像も100枚ほど収集します。
こちらを両方、顔だけ切り出して保存します。
画像を縮小する
縮小専用をインストールして、画像を縮小します。
サイズは、28×28に設定します。
画像を格納する
以下のように、neural_network_console_120のディレクトリにnnc_sakuraのフォルダを作ります。
nnc_sakuraフォルダにinput、outputフォルダを作ります。
inputには、sakura、no_sakuraフォルダを作ります。
outputフォルダには、まだ何も作りません。
縮小した宮脇咲良さんの画像を「sakura」フォルダへ、
宮脇咲良さんじゃない画像は「no_sakura」フォルダに入れておきます。
学習させるデータとアウトプット先を指定する
Neural Network Consoleを立ち上げ、DATASET→Create Dataset
宮脇咲良さんの画像とそれ以外の画像を学習させるためディレクトリを指定します。
※この時、ディレクトリをコピーして貼り付けてください。
以下のように設定します。
できましたら「Apply」をクリックしてください。
※お使いの環境によっては、時間が多少かかる場合があります。
学習用と評価用のデータセットが作れました。
ファイル名をクリックすると中身の確認ができます。
プロジェクトを作成する
今回は、宮脇咲良さんか、そうじゃないかを判別するだけのものを作るので
「01_logistic_regression.sdcproj」という既存のサンプルプロジェクトを使います。
PROJECT→「01_logistic_regression.sdcproj」をクリックします。
outputのディレクトリにsakuraと名前をつけて保存します。
EDITでサンプルプロジェクトの設定を変えていきます。
DATASET→Trainingをクリック。右端の黄色の枠線で囲っているところをクリック。
Trainingには、sakura_train、
Validationには、sakura_testのデータをそれぞれ選択します。
そのあとホームボタンをクリックし、ポップアップが表示されたら、「はい」をクリックし戻ります。
以下のように指定したデータがセットされていたら、プロジェクトは完成です。
学習を行う
次に学習と評価をさせていきます。
黄色の枠の「Run training」をクリックします。
outputに保存されているsakura_test.csv
sakura_train.csvのバックアップを取り、文字コードをUTF-8にします。
もう一度、学習を行います。
今度は問題なくできました!
評価を行う
続いて評価を行います。
黄色の枠の「Run Evaluation」をクリックします。
Confusion Matrixをクリック。
精度を表すAccuracyをみると87%でした。
モデル開発後は?
プログラムに組み込んでシステム化することもできます。
エラーでうまく動かない・・・そんなときはコミュニティを活用!
公式サイトに行くと「community」ページがあります。
そこでは基本的な使い方に関してのFAQ及びユーザーが気兼ねなく質問できるグーグルグループがありますので
わからなくなった際は、ぜひ、活用してみてください。
おわりに
いかがでしたでしょうか?
非常に手軽にできる分、楽しみながらモデルを作ることができました。
ディープラーニングが使えるデータサイエンティストになりたい!
データサイエンスアカデミーがその夢をバックアップします。
ディープラーニングは、データサイエンスの分野でも注目を浴びている技術です。
しかし、理論の理解や技術習得は独学では難しく、専門的な教育機関もまだまだ不十分なのが現状です。
データサイエンスアカデミーでは、データサイエンティストに必要な理論と技術の習得のほか、ロールプレイも含めた講座を取り揃えています。
まずはどんなことをやっているのか、お気軽にお問合せください。
お問い合わせはこちら!
データサイエンスアカデミーでは、
無料セミナー・説明会を実施中!