2015年12月23日水曜日

Deep Learning用のモデルを簡単に作成できるLabellioを使ってみた

本記事は Deep Learning Advent Calendar 2015 22日目の記事です。
AlpacaがリリースしているDeep LeaningのWebサービスにLabellioというのがあります。これを使うと、画像データを与えるだけで、自動的にDeep Learningで学習を行いモデルを作成することができます。モデルはもちろんエクスポート可能であり、著名なDeep LearningフレームワークのひとつであるCaffeに対応した形式でエクスポートすることができます。

学習はすべてLabellioの用意するリソース上で行われるので、自前で用意するのは訓練用の画像データとそのラベルだけでよいという優れものです。
訓練データは自前で用意したものをUploadすることもできますし、とりあえず試したいのであればLabellioが提供するAPIを利用してFlickr/Bingから訓練データを自動的に取得させることもできます。

今回は、Flickrから取得したデータを使ってみました。例としてフルーツの画像分類器を作成してみます。

まずモデル名として"Fruits"と指定します。
そして訓練データをFlickr上から取得するように指定します。

SourceとしてFlickrを指定。
LabelにOrange, Apple, Bananaを入力する。



ラベルの入力が終わったらAddを押す。





ここでNextを押すと学習用の処理がLabellioにenqueueされる。



後はTrainingが終わるのを待つ。
今回の場合は150個程度の訓練データしか使ってないようなので、数分程度で学習が終了した。


学習が終わった後、適当にGoogleで見つけたバナナの画像をこの分類器に与えてみる。




結果が出るまで少し待つ




それ程時間がかからずに結果が出る。
バナナな確率0.6。思ってたより数値が良くないのは訓練データが少ないせいだろうか。
そういえば訓練結果のAccuracyも0.57だった。

もう少しいろいろデータを用意して試してみたいところだ。

使ってみた感触


もはや画像データを渡せばいいだけなので、Deep Learningが何なのかといった知識がまったく不要である。また学習のリソースごと提供してくれているのが非常にポイントが高い。フレームワークはオープンソースで無料なのがいくつも存在するが、学習用のリソースはそうはいかない。

営利目的でしっかりとしたものを作るのならともかく、単に学習を目的としていたり、趣味でちょこっと作りたいときなど、学習リソースの調達はネックになることが多いであろう。

そのなかで学習環境もセットで提供されているLabellioは非常に存在価値が高いといえる。


0 件のコメント:

コメントを投稿