1. GeekOut
  2. コラム
  3. 「ディープラーニング×きゅうり」の可能性に、たったひとりで取り組むエンジニア
ログアウトしました

「ディープラーニング×きゅうり」の可能性に、たったひとりで取り組むエンジニア

AI(人工知能)に関わる技術、なかでもディープラーニングが急速に発達し、社会のさまざまな領域で実際に利用されるようになりました。その背景のひとつには、AI分野での研究開発に多大な投資を行っている大手IT企業が、その成果の一部をオープンソースとして公開し、世界中のエンジニアが自由に使えるようになったことがあります。

こうしたオープンソースのAI関連ライブラリには、Googleの「TensorFlow」やFacebookの「Torch」といった海外のIT企業のものだけでなく、国内にもPreferred Networksの「Chainer」やソニーの「Neural Network Libraries」などがあります。最近では、関連した情報も数多く手に入るようになりました。

また、これらのライブラリの多くには親切なチュートリアルも用意されており、AIの開発経験がないエンジニアでもさほど手間を掛けることなく取り組めるようになっています。実際にこれらのライブラリを使って、AIによる新しいチャレンジを行うエンジニアも出てきました。

初めてのディープラーニングは想像以上に簡単だった

静岡県湖西市で農業を営む小池誠さんも、そんなエンジニアのひとりです。

大学で情報処理を学んだ後、会社に勤め組み込み系エンジニアとして働いていましたが、仕事に満足できずに退職。実家へ戻り、「農業」と「エンジニア」という二足のわらじを履いています。

「新卒で入社してから7年くらい(会社員を)やっていましたが、年を取っていくと現場から離れマネジメントばかりになって、あまり仕事が楽しくなくなったんです。エンジニアのスペシャリストというキャリアパスのない会社だったので、じゃあ何か新しいことを始めようと思った」

小池さんの家の生産物は、きゅうりです。日々の作業は両親と分担して行っていますが、そのなかでも仕分け作業はすべて小池さんの母親の担当。最盛期には1日で数百キロものきゅうりをひとりで仕分けするため、終日その作業にかかりきりになってしまいます。しかし、きゅうりの等級を判定するのはベテランでなければ難しく、誰でも手伝えるというわけではありません。

きゅうりの仕分けについて説明する小池誠さん。以前は名古屋で組み込み系のエンジニアをしていた
きゅうりの仕分けについて説明する小池誠さん。以前は名古屋で組み込み系のエンジニアをしていた

そこで小池さんは、ディープラーニングによる画像認識できゅうりの仕分けが可能になれば、母親の負担を減らすことができるのではないかと考えました。ディープラーニングに着目したのは、Google傘下のDeepMindが開発した囲碁AI「AlphaGo」が、世界トッププロのイ・セドル棋士に勝利したというニュース(2016年3月)がきっかけでした。2015年11月に、Googleからディープラーニングのライブラリ「TensorFlow」がオープンソースとして公開されていたので、小池さんも試してみたのです。

TensorFlowにはチュートリアルとして、手書き文字認識のために構成されたニューラルネットワークと、必要な画像データセットが用意されています。そのため、AIの経験がないエンジニアでも、ディープラーニングによる画像認識を簡単に始めることができるようになっています。小池さんも、実際に触ってみて、その手軽さに驚きました。

「画像認識は大変だと思っていたら、とても簡単にできたので本当にびっくりしました。画像認識って、どう判断するのか自分で考えて、二値化したり、ヒストグラムを作ったりしていましたけど、そんなことを考える必要がなくなった。全部AIにお任せです。まるで、もうひとり優秀なプログラマーがいて、一緒に開発しているみたいな感覚です」

TensorFlowによる画像認識の手軽さと精度の高さに驚いた小池さんは、さっそくきゅうりの仕分けができるかどうか、テストに取り組みました。

テスト段階で約8割の正確さを実現したディープラーニング

小池さんの家では、きゅうりを大きさや形などで9つの等級に分けて出荷しています。この等級はあくまでも小池さんの家で考えたもので、農業協同組合や青果市場などが決めたものではありません。ですが、こうして仕分けして出荷することで、等級が上のものは販売金額を高くすることができます。つまり、付加価値を生み出せるので、農家としては必要な作業なのです。

TensorFlowのチュートリアルを終えた小池さんは、次にきゅうりの仕分けの検証に取り掛かりました。32×32ピクセルのきゅうり画像を9つの等級ごとに275枚用意し、ニューラルネットワークに学習させました。構成はTensorFlowに用意されているチュートリアル「Deep MNIST for Experts」、ほぼそのままだったそうです。

学習させたニューラルネットワークに、元のきゅうり画像を判定させたところ、正解率は約80%。この結果は小池さんの予想以上でした。特にチューニングすることなく高い正解率を叩き出したことで、これならすぐに実用化できると考え、仕分け作業機の開発をスタートさせたのです。この時、検証用に組み立てたウェブカメラ+自作スタンド+ノートPCのシステムが、試作1号機です。

最初の実験に使用した試作1号機。アルミパイプと3Dプリンタで作った部品で自作したスタンドにウェブカメラを取り付けたもの
最初の実験に使用した試作1号機。アルミパイプと3Dプリンタで作った部品で自作したスタンドにウェブカメラを取り付けたもの

続く試作2号機では、学習データセットのきゅうり画像を80×80ピクセルに、数も7,000枚までアップさせたところ、正解率が約95%にまで向上。TensorFlowの動作環境も、ノートPCからRaspberry Piに変えました。また、実際にきゅうりを仕分ける作業も、可動式トレーとベルトコンベアー、スイングアームの組み合わせによって、きゅうりをトレーに載せる作業以外は完全自動化を実現しています。

AIによる完全自動化を目指した試作2号機。実用には至らなかったが、大きな反響を呼んだ。写真はMaker Faire Tokyo 2016に展示した際のもの
AIによる完全自動化を目指した試作2号機。実用には至らなかったが、大きな反響を呼んだ。写真はMaker Faire Tokyo 2016に展示した際のもの

この試作2号機は、自身のブログで紹介した他、Maker Faire Tokyo 2016にて展示したこともあって、かなりの反響があったそうです。TensorFlowの開発元であるGoogle日本法人の目に止まり、ドイツで開催されたIT関連の展示会「CeBIT 2017」(国際情報通信技術見本市)へ国内採用事例として招待されました。Raspberry PiでTensorFlowを動かしてリアルタイムで画像認識させるという技術に、多くの人から興味を持ってもらえたそうです。

ところが、この2号機、実際にはきゅうりの仕分け作業には利用されませんでした。それというのも、アームでベルトコンベアーからきゅうりを出荷用の箱に落とすため、きゅうりが傷んでしまうことが判明したからです。きゅうりを傷めることなく機械に仕分けさせるためには、メカ部分の開発にかなり時間が掛かる見込みのため、「AIによる完全自動化」というコンセプトはいったん棚上げされました。

実際のきゅうりの選別に導入した試作3号機、その成果は……

小池さんは「人間が行う作業をAIでサポートする」という新しいコンセプトに基づいて、試作3号機の制作に取り掛かりました。3号機では、以下の手順による形式を採用しました。

  • 液晶ディスプレイを内蔵したテーブルの上にきゅうりを並べる
  • 上部に取り付けられたカメラが撮影する
  • Raspberry Piで動作するAIが等級を判別する
  • ディスプレイ上のきゅうりが置かれた場所に等級を表示する

テーブルにきゅうりを並べるところと、判別されたきゅうりを出荷箱に仕分けるところは人間が行い、AIは等級を判別し人間にとって分かりやすく表示するという分担作業です。

試作3号機。アクリルパネルとアルミ引き抜き材で組んだフレームに、中古の液晶ディスプレイとウェブカメラ、Raspberry Piなどを組み込んでいる
試作3号機。アクリルパネルとアルミ引き抜き材で組んだフレームに、中古の液晶ディスプレイとウェブカメラ、Raspberry Piなどを組み込んでいる

2017年夏に完成した3号機は、Maker Faire Tokyo 2017にて展示した後、出荷の実戦に投入されました。

組み込まれたRaspberry Pi 3と、キャリブレーション(きゅうりの太さに合わせて判定基準を調節する)ためのボリュームスイッチ
組み込まれたRaspberry Pi 3と、キャリブレーション(きゅうりの太さに合わせて判定基準を調節する)ためのボリュームスイッチ
テーブルにきゅうりを置くと、2~3秒でその下に等級が表示される。複数のきゅうりを同時に判別できる
テーブルにきゅうりを置くと、2~3秒でその下に等級が表示される。複数のきゅうりを同時に判別できる

その成果は、小池さんが自分の目と手だけで判別するより、およそ4割の速度向上を実現しました。

「母の仕分け作業を手伝ったり、AI開発をしたりしているうちに、僕自身のきゅうりの判別能力が上がったのもあるのですが、どちらの等級か悩む場面で母に聞かずに済むことが大きいですね」

そもそもこの仕分け機のディープラーニングに利用した学習データセットは、小池さんの母親が仕分けした結果に基づいています。つまり、小池さんの母親と同じ基準で、誰でも仕分けできるという点もメリットになっています。この3号機によって、仕分け速度の向上だけでなく、仕分け基準が一貫されるようになったのです。

実際の作業の様子。小池さんの右手側の箱からきゅうりを取り出してテーブルに置き、判定されたきゅうりを左手側や後方に置いた出荷用の箱に仕分けていく
実際の作業の様子。小池さんの右手側の箱からきゅうりを取り出してテーブルに置き、判定されたきゅうりを左手側や後方に置いた出荷用の箱に仕分けていく

実際の仕分け作業を行うなかで、課題も見えてきました。そのもっとも大きなものが、ディープラーニングによる判定に時間が掛かることです。ベテランの人間ならばきゅうりを手に取った瞬間に判別できるところが、試作3号機の場合はテーブルにきゅうりを置いてから判別までに2~3秒掛かってしまいます。この差は案外と大きく、仕分け作業全体の速度向上において、大きなボトルネックになっています。

しかし、その対策はすでにめどを付けているそう。インテルのUSB接続対応のディープラーニングアクセラレータ「Movidius」を使うことです。Movidiusは、ディープラーニング専用のプロセッサを搭載しており、PCやRaspberry Piに接続して利用すると、CPUだけで処理するのに比べて数倍から数十倍の速度でディープラーニングの処理を行えます。ディープラーニングでは、NVIDIA製GPU搭載PCを利用することが多いのですが、MovidiusならばGPUを搭載していないRaspberry Piでもディープラーニングを高速化できます。

「品薄で入手困難だったんですが、たまたま譲ってくれた人がいたんです。テストしてみたところ、Raspberry Piだけの場合より約10倍、速くなりました」

これまで2~3秒掛かるところが、ゼロコンマ数秒で判定できるようになる。これはかなりのブレイクスルーとなります。小池さんは、近いうちに試作3号機にMovidiusを組み込む予定です。
 

ディープラーニング×農業のアイデアはまだまだ尽きない

ディープラーニングを応用したきゅうり仕分け機は、試作3号機でようやく実戦投入を果たしました。しかし、小池さんは、すでにこのコンセプトにも限界を感じているそうです。なぜなら、「きゅうりを一度置く」という動作に掛かる時間はディープラーニングで短縮できないからです。この解決のため、小池さんには考えていることがあります。そのひとつはMRデバイスの使用です。

「マイクロソフトのMRヘッドセットHoloLensなら、装着した状態できゅうりを手に取ったら瞬時に判別して等級をARで表示できるので、かなり速度がアップできそう。もしかしたら、収穫の段階でHoloLensを使って、摘み取りながら仕分けもできるかもしれません」

ただ、HoloLensはかなり高価なため(2017年11月時点で税込333,800円、販売対象は開発者のみ)、このアイデアはまだ試せないでいるそうです。「せめて今の半額くらいになればいいのに」と笑いながら小池さんは話してくれました。

もうひとつのアイデアは、試作2号機でのコンセプト「AIによる完全自動化」をより進化させる方向です。それは、きゅうりの仕分けにロボットアームを使うというもの。

製造業で利用されているロボットアームは現在、工業製品だけでなく、食品や植物など柔らかいものを扱うことができるほど高度な性能を備えています。そのため、きゅうりを傷めることなく扱うことは造作もないそうです。ただし、工業用の高性能なものは、数百万円にもなるため、HoloLensどころではありません。

でも小池さんは、ロボットアームの自作に可能性を感じているそうです。

「そこはチャレンジできると思っています。アイデアは考えていて、アームを作ってみるなどテスト中です」

また、きゅうりの仕分け以外にも、農作業へのディープラーニングの応用を考えているといいます。そのひとつは、栽培用ビニールハウスの暖房用ボイラーの制御です。

「次にやろうとしているのは、ボイラーの制御・管理をAIにさせることですかね。ハウスの温度などをセンシングして、うまい具合にボイラーを炊いたり、止めたり」

きゅうりを栽培するハウスの様子。撮影時、このハウスでは、まだきゅうりは実っていなかった
きゅうりを栽培するハウスの様子。撮影時、このハウスでは、まだきゅうりは実っていなかった

現在は人間が気温を確認し、それに合わせてボイラーを炊く、止めるなどしているため、どうしても細やかで素早いコントロールができないそうです。それをAIで自動化すれば、かなりの効率化が可能になり、ボイラーの燃料を節約できる可能性も生まれ、もしかしたらきゅうりの品質も上がるかもしれません。

そのためにはさまざまなセンサーを用意し、それらのデータを集めるという、IoTの領域にまで踏み込む必要があります。ですが、小池さんは「ITでおいしいきゅうりが作れれば、それが売りになるかも」と明るく語り、新たな取り組みへの可能性に喜びを隠せない様子でした。

* * *

組み込みエンジニアから農業へと転身した小池さんは、エンジニアとしての技術を用いて自分のできる範囲から農業のIT化に取り組み始めています。そのなかで、ディープラーニングは強力な武器として、小池さんのアイデアを実現する右腕となっています。

AI、そしてディープラーニングは、アイデア次第でさまざまな領域で活用できる技術です。日本ではまだまだIT化、デジタル化が進んでいない分野が数多くあり、そうしたところには、AIの強力な使い道が隠れているはず。小池さんの取り組む姿勢は、そうしたイノベーションの可能性がまだまだ広がっていることを強く感じさせてくれるものでした。

執筆者プロフィール

青山 祐輔(あおやま・ゆうすけ)

青山祐輔

ITジャーナリスト。インプレスにて「Impress Watch」「月刊iNTERNET magazine」などの編集記者、リクルート「R25」のウェブディレクターなどを経て独立。現在は主に、AIによる社会のデジタルトランスフォーメーションと、メイカームーブメントによる企業のイノベーションの現場を追いかけている。B.M.Factory – Nothing but a text.

 

 

  • このエントリーをはてなブックマークに追加

関連記事

「ディープラーニング×きゅうり」の可能性に、たったひとりで取り組むエンジニア
最初から完璧な人はいない――DATUM STUDIOが唱えるデータサイエンティストの「採り方」「育て方」とは
GeekOut×DATUM STUDIO「AI時代におけるエンジニアの生存戦略」 Developers Summit 2018 Summer 登壇レポート