2017年4月30日日曜日

深層学習で岩石名判定

The GWに入り時間ができましたので、Deep Learning を利用した岩判定について手を動かすことにしました。

この分野、ここ1年ほどで一般化・普及したような印象を受けます。開発環境にしてもソースにしてもネットを見ればゴロゴロ転がっていますし、利用する側も多様なアイデアで望んでいるように伺えます。土木分野でも、これからは1つの重要なツールになるでしょう。

最初は画像認識をベースにしている最新のソースを拾いにいこうかと考えました。が、それ以前に学習させる材料が乏しい状況。こちらのデータを十分に整備する方が、全体として精度向上に効果的です。判別機は刻々プロによって改良されていますので、年々、公開済みの最新版を利用すれば、1度作って使い続けるより良い結果が出ると思われます。

ということで、まずは公開されている画像判別機を検索。

すぐに引っかかりました。今回はコチラ。京セラさんの web サービスです。
Labellio
http://www.kccs.co.jp/release/2016/0113/
https://www.labell.io/

webで画像を集める機能も実装されており、手ぶらでも向かって行けます。

試しに、軟岩、中硬岩を検索。

残念ながら、まともなデータは集まりませんでした。

で、土軟硬は早々にあきらめ、岩石名判定に移行。

火成岩を9種類検索してみますと、簡単に1種100枚以上の画像データが集まります。
これは便利。PCに画像を集めさせ、それを学習して判別できるようになる。良い設計ですね。

残念ながら、収集時点でいくつかおかしなデータを集めてきており、それをもとにした学習結果も accuracy 45% 程度。いえ、画像の選別をさせてもらえません?パラメータ調整させてもらえません?状態でしたが、その辺はタッチできないようです。

で、画像を自分で用意することに。
といっても、別のソフトでWebで集めさせた6種の岩石画像から、おかしなものを除くだけです。結果、basalt は50枚強、他は100~150枚集まりました。
で、画像を UP すること1時間程度(時間かかりすぎ)。
学習すること1000 epochで10分程度(調整したい)。
結果は accuracy 60%。orz
用意した画像のスケールを合わせたり、背景をトリムしたりするなど、提供画像の質を上げると、もっと向上するでしょう。


このようなサービスは今後増えていくものと思われます。提供側にとってもニーズの把握やデータ収集が容易になる利点があるのかもしれません。
公開されている写真を集めてAIに見せて学習させるような形態であり、集めた画像を公表するものではないので著作権上の問題はないと思われます。が、サービス側での利用形態によっては OUT になる場合が出てくると思います。今後、配慮すべき事項でしょう。
また、自分でデータを集めて育つAIというのも、近い将来、使いモノになるレベルで台頭することになるでしょう。ま、その場合でも、良いデータセットを持っている人の方が有利になるとは思われますが(長期的には分かりません)。
技術の伝承、企業存続という観点を含め、個人知をデータとして整理しておくとが、より重要になりそうです。


0 件のコメント:

コメントを投稿