**********************************************************************
セッションS4-a
テーマ:農業における深層学習の活用
〜Raspberry Piで実装するキュウリ選別システム〜
講師:小池 誠 氏(きゅうり農家)
日時:2018/8/31 11:30〜12:20
参加人数:約35名(終了時)
**********************************************************************

■自己紹介
現在は静岡県でキュウリ農家を営んでいる。
4年前まで愛知で約7年間自動車関連の組み込み系の仕事をしていた。
農業のかたわら、前職の経験を生かして、様々な活動を行なっている。
本セッションでは、AIを使ったきゅうりの選別システムを作った開発の話をしていく。

■開発に至った経緯
トマトやキュウリなどの果菜類は、コメなどと違って、人間の眼や手を使うことが多く
、機械化できずに手間と時間がかかり、大規模化できない。
その中でもキュウリ栽培の労働時間をあげると、野菜を選別して市場に持っていく出荷
作業が作業時間の2割ほどを占めている。
出荷作業は頑張っても売り上げが増えるわけではないので、この時間をなるべく短縮し
たく開発を始めた。

9つの等級に仕分けて出荷するのだが、定量的な判断基準を定めづらく、各農家の主観
で選別して出荷している。
その判断基準を覚えるまでに時間がかかる。
作業者間の仕分け基準を同じにすることが重要。

そこで注目したのがディープラーニング、画像認識の分野であった。

■実際の開発
畳み込みニューラルネットワークを用いている。手書きの数字を正しく判定するのと同
じ原理で、きゅうりの画像から等級を判定したい。
畳み込み層という、画像からフィルターをかけてある特徴を抜き出してくる層を何層も
繰り返して、抽象的な特徴を抽出する。
例えばきゅうりのエッジや緑色の部分を特徴として抜き出す。

〇1号機
ディープラーニングに必要な教師データをはじめは2500枚くらいで約1週間で試作、正
解率はおよそ80%。
割といい結果だったのでこれはいけそうだと、次々に試作を行っていく。

〇2号機
人間がキュウリを選別するときは360度からキュウリを見ている。
機械にもカメラを増やして同じようにあらゆる方向から撮影するように改良したのが2号
機。きゅうり1本につき、3枚の画像を撮る。
教師データは約8500枚にして、撮影環境を統一することで、正答率90%を超えた。

〇2号機+α
判定したキュウリを各等級の箱に自動的に仕分けたいということでベルトコンベアー部
分を開発。
ラズパイに画像を取り込み判定して結果からベルトコンベアーで各等級の箱に運んでい
く仕組み。一番処理のかかるAIの計算はクラウドにやってもらって出力された等級を返
してもらう。

〜実際の選別している映像が流れる〜
映像のように、キュウリが1本ずつしか判定されず、遅い。

またベルトコンベアーがキュウリを傷つける可能性があり、実用化には至らず。

〇現場で動かして見つかった課題
・クラウドだとネットワーク環境が安定しない。レイテンシが大きい。
・外光の影響を受けてしまう、朝と夜で判定が変わってしまうこともある。
・装置が汚れてくると、精度が落ちてくる。
・成長時期によって出来方が変わり、それによっても精度が変わってしまう。

〇課題を踏まえて3号機
コンセプトの大きな見直し。
元々は完全自動化を目論んでいたが、キュウリを傷つけずに運ぶのが非常に難しかった
のでキュウリを扱うのは人間の手で扱うようにする。
そして,人間が眼で見て判断が難しいものを機械が見て判断するように役割を変えた。

5層の畳み込みニューラルネットワークを用いる。画像の特徴量だけでなく,長さ、表面積のように
数値データを合わせて等級を推測している。
数値データを入れることで、キャリブレーション
(季節によって評価基準を変えること)ができる。
判定は画像、長さ、太さから、「今の時期はこのキュウリはB等級」というような出力が
される。

学習は36000本のデータで行なっている。クラウドに渡さず、ラズパイの処理だけで行う
のを目標にしたため、解像度を下げている。

実環境での評価、正答率は70~75%
B等級のキュウリをA等級と判定してしまうのは、信用問題に関わるのでそれを解決しな
ければならない。

仕分けるスピードでは、初心者や経験の浅い人の1.4倍の速度で判定できる。しかしまだ
熟練者のスピードには敵わない。
本来なら初心者が等級の判断に慣れるまで非常に時間がかかるのだが、このシステムを
使うことで、初心者でも熟練者と変わらない基準で選別することができる。

他の品種にも適用しようとすると、また教師データをどれだけ集めないといけないか怖
いと最近思う。

ディープラーニングの技術は,100%の正答率は不可能であるが、たまに間違えてもいい前提で活用できる場所を探して
いけば色々なところで活躍できると思われる。
キュウリの選別はたまに間違えても滅多に怒られないので、そういう意味ではこのシス
テムと非常にマッチしている。

〇全体の開発を通してわかってきたこと
認識精度を保証することが難しく、運用しながら改善していくしかない。
品質はどうやって保証するのか?という問いに対しては、大量のテストデータを集める
しかないのかなと考えている。
例えば、1年間のキュウリで判断した時にだいたい80%だったという言い方しかできない
のかなと。

機械学習は使えば使うほど賢くなるかというとそうでもなくて、データを追加すること
で、急に正答率が下がるなど思わぬ破綻をまねく可能性もある。
データをただ集めればいいわけではなく、精度を上げるためにどういうデータを集めれ
ばいいのかということも考えなければならない。

開発の終わりの判断が難しく、アップデートしなければいいというのも一つの考え方だ
が、そうすると、育て方が変わった時や、温暖化による状況変化に対応できない。

深層学習は強力なアルゴリズムなのでどんどん活用していきたい。
例えば、農家はなるべくこれまでの過去のやり方を変えたくないという傾向がある。
仕分け基準を、機械で判断しやすいように単純に長さと重さだけにしては,納得できないところがある。
そういうところで深層学習の人間の認知能力再現が非常に嬉しい。

最近では、ハウスの中の生い茂ったところからキュウリを見つけることもやっている。
人間の収穫忘れを減らせる。ゆくゆくは自動収穫ロボットにつなげて行けるかも。

エッジ側で並列計算しようとするとマシンリソースが足りないとよく言われるが、
例えば、ラズパイにもGPUが実装されていて、それを使い高速に判断できるようなソフト
ウェアを開発している会社もある。
そういった技術を活用することで、ラズパイでディープラーニングのプロダクトを個人でも作って、
自分の仕事に生かすというのが簡単にできる世界になってきていると感じる。

■質疑応答
Q1.選別の素人がこの機械を使っていくと選別のプロになれるのか?
A1.なれると思います。人間も仕分けの基準がわかってくるので慣れてくるとあまり必要
はなくなる。だから初心者が学ぶための学習ツールにもなりうると思っている。

Q2.学習データを増やして行く以外に例えば中間層を増やすことは考えていないのか?
A2.現在はとりあえず、ラズパイで動かすためになるべく中間層は少なくしている。
新しいデバイスを用いることになれば中間層を増やすアプローチも考えるようになる。

■まとめ
人間の仕分けのノウハウをコンピュータに置き換えて保存し、伝えていくツールとして
このキュウリ選別システムは役に立っていく。
また、専門知識がなくてもディープラーニングが使える時代になってきたのでどんどん
活用していけばいいと思う。

安価なデバイスで自分の問題を解決するのが広がればいいと思う。
選別システムの課題としては、運用をうまくやっていく、品質を担保するといったこと
が挙げられる。