業務の効率化や自動化をしたいと思っていても設備やシステム開発に費用がかかり、このようなことは大手の企業がするものと思われがちではないでしょうか、静岡県湖西市できゅうり農家を営む小池さんは自ら開発、きゅうりの選別を自動化する仕組みをたった一人で開発、実用化をしていらっしゃいます。
今回は実際に小池さんのきゅうり畑に伺い、実際の選別の様子やどのように開発されたのかのお話を伺いました。
農業にディープラーニングを取り入れたきっかけ
きゅうりの選別にディープラーニングを取り入れようと思われたきっかけは何だったのでしょうか。
会社勤めをしていて実家に戻ってきたとき繁忙期には母親は1日中きゅうりの選別に追われていました。元々、エンジニアだったところから人工知能にも興味があり形、見た目で判断しているのならできるのでは無いかなという興味本位でした。
AIといえば大手の企業が多額の開発費を投じて優秀な技術者を何人も抱えているイメージがあるのですが、そこにはハードルはなかったのですか?
検討していたソフトウェアがオープンソースになったこともあり、最新のものがタダで試せてお金がかからないからいいな、くらいの感じでした。
きゅうりの等級を判断する学習データの蓄積
具体的に等級の判別はどのように行われているのですか?
きゅうりの等級は見た目での判断ですが全国で統一されているものではなく農家や組合、出荷先などそれぞれの基準で決まっています。そのデータベースは我が家では母が持っていました。ディープラーニングでの学習データを作るためには最初は母に聞きながら、このきゅうりは何等級、これは何等級という感じでした。最初はWebカメラを定点で設置しスペースキーを押すとシャッターが押され、目視で等級判断して入力。スペースキーを押すとデータ保存といったようなプログラムを自分で組みひたすら学習データを蓄積していきました。
最初は7000データくらいでしたが今では3万6000データくらいになっています。学習データが集まれば集まるほど判別の精度が上がっていきます。
学習データはクラウド化していてGCP(Google Cloud Platform)を使用しています。5層畳み込みニューラルネットワーク※というアルゴリズムを使って画像と等級の紐付けを行っています。
学習済みデータはオープンソースのソフトウェアライブラリTensorFlow上で動かしています。
※畳み込みニューラルネットワーク…畳み込み処理(画像の特徴を抽出する処理方法の一つ)を用いて画像を人間の脳の仕組みに近い形で分類する仕組み
きゅうりの等級を判別する手順
作業場での判別の手順はどのようになっているのでしょうか。
判別用のPCはシングルボードPC(Raspberry Pi 3)を使用してローカル環境にしています。ネットにも繋がっていません。判別する時にも畳み込み処理を行いますがこちらはGCPではなくシングルボードPC内で行なっています。
判別の手順としては下記のとおりです。
1.液晶ディスプレイを内蔵したテーブルにきゅうりを並べる
2.Webカメラで撮影
3.等級を判別
4.ディスプレイ上に 等級、判定確率、長さを表示
膨大なデータを扱うAIでは判別の処理のデータもクラウド化されていると思ったのですが。
クラウド化したことはあったのですが、やはり処理速度がコンマ何秒かではあるのですが遅くなるのがネックでした。
また農業ということもあって作業場にはネット環境がないのが基本で、環境の設備にお金がかかることもありました。判断するだけならローカル環境でも全く問題ないです。
画像認識に必要な設備や環境について
どれくらいの費用がかかりましたか。
ハードウェア…約2万円*、ソフトウェア…全てオープンソースの為タダ!ノートパソコン
あとはランニングコストとしてクラウド化している上記の学習データ部分の費用くらいですね。
*パソコンは除く
これ全部が2万円とはすごい低予算ですね。
そうですね、必要な部品はホームセンターでアクリル板を買ってきたり、3Dプリンタを活用したりして自分で手作りしたものもあります。
開発用のPCは元々持っていたものでノートPCを使用しています。
現在の環境から「もっとこうだったら快適に動くのに」など困っている事などはありますか?
学習用PCは、GPUを搭載しているPCがあればより便利になるかな。今のクラウド環境でも全く問題ないのですけどね。判別用の環境に関して言えば、ディープラーニングでは計算処理速度が命。もっと計算速度を上げたいのでローカルで動かせるシングルボードのパソコンがあればいいと思います。
小池さんはディープラーニングの知識は元々なかったとのことでしたが他に何か必要な知識とかありますか?
そうですね、プログラムの勉強は必要かもしれませんね。以前はC言語を使っていたのですがディープラーニングをするようになってからはPythonを使っています。これも2ヶ月くらいやっていれば大体わかるようになりますよ。あとはTensorFlowには画像認識のMNIST(Mixed National Institute of Standards and Technology database)がチュートリアルとしてセットされています。画像認識の入門用として使用され,これを使って画像認識のやり方を学びました。言わば漢字ドリルですね。MNISTは小学校1年生レベル、きゅうりの識別は中学1年生レベルと言ったところでしょうか。
開発されている時は、ご両親は何かおっしゃっていましたか?
パソコン使って遊んでいると言われていました。今も言われてますけどね(笑)特に母は自分で選別する方が早いですから。
小池さんご自身が選別される時には、この仕組みを実際に選別の作業に使われているのですか?
それが、僕も学習データ集めや判別機の実機テストをしているうちに大体できるようになってきたんですよね。今では迷った時にだけ使っている感じです。でも、繁忙期にはパートさんやアルバイトさんがこれを使ってもらえれば初心者の人でもすぐに等級別に仕分けができますよね。
中小企業のシステム担当の方などであれば応用できそうですか?
できると思いますよ。例えば工場の不良品の検知とかは同じ要領で出来そうです。プラスチック製品などの目視でチェックして不良かどうかを人が判断しているものを学習データを蓄積してOK品とNG品を判別させるとか。
農業でディープラーニングは今後発展していくと思われますか?
もっと活用できればいいと思います。県内のイチゴ農家さんに興味を持っていただいて、イチゴの等級の判別に使いたいという事で開発をされて頑張っていらっしゃる方がいます。わからない事などを教えあったり、情報共有したりしてお互いに切磋琢磨できる環境が出来て、農業がもっと活性化して品質の高い美味しいものを作る事が出来るといいなと思います。
ディープラーニングを実用まで落とし込む
最初は「きゅうり」と「ディープラーニング」の組み合わせが意外で、技術が先行した取り組みだと思っていましたが、実際に伺ってお話を聞いてみると、小池さんが実際の目の当たりにされた現状を起点に、元々の経歴を活かした取り組みであり、さらにそれを実情に合わせて「使える」レベルまで落とし込まれるという、本当に現場で生まれている課題と、個人でもその気になれば導入できる技術とが非常にうまく組み合わさって生まれた事例なのだと感じられました。
別の農家さんとの連携も語られていましたが、こういった現場から生まれる新たな取組が広がっていくことに期待が高まるお話でした。
小池さん、ありがとうございました!
小池 誠さん プロフィール:
静岡県湖西市のきゅうり農家の長男として生まれ、大学で情報処理を学んだ後、会社に勤め組み込み系エンジニアとして働いていましたが、現在は両親と共にきゅうりの農家を営んでいます。長年の経験と勘が多い農業の世界でエンジニアという新たな目線で作業効率のUPとよりよい品質のきゅうり作りに励んでいる。
[ネクスマグ] 編集部
パソコンでできるこんなことやあんなこと、便利な使い方など、様々なパソコン活用方法が「わかる!」「みつかる!」記事を書いています。