winner's_interview_ひろしまQuest2020:画像データを使ったレモンの外観分類(ステージ2)_2nd_SuperString

レモンの生産量日本一を誇る広島県では、レモン栽培が重要産業のひとつとなっている。一方で高齢化が進み、レモン農地が急傾斜地に作られることもあって、農家の負担が大きくなっている課題を抱えていた。そこで、出荷における選別工数を削減することで、少しでも負荷を減らすことを目的に、画像データを用いてレモン等級を自動分類するアルゴリズムをコンペティションで募集する運びとなった。 本コンペティションで2位に入賞したSuperStringさんに、参加を決めた経緯や、取り組みにおける工夫、参加で得られた学びについて話を伺った。

就活に役立ちそう、との軽い気持ちでAIコンペの参加を決意。

少し打算的な話になってしまうのですが、AIに興味を持った理由は就職活動で役に立ちそうだから。資格や経歴だけでなく、何か実績があった方が自分をPRしやすいと思ったのです。どんな実績を作ろうかと考えたときに、思い当たったのがAIコンペでした。コードを書くのは自分のPCでできますし、コンペなら参加費もかからない。お金をかけずに取り組めそうだなというのが素直な理由です。 今回のレモンコンペを選んだのは、タイミングとテーマが当時の自分に合っていたから。ちょうどコンペを探していたタイミングで開催していて、初心者でも取り組みやすそうなテーマだなと思いました。同時期に他のコンペもいくつか開催されていましたが、その多くはマシンスペックで差がつきそうなテーマで、専用の環境が整っていない私でも対等に競えそうだと思えたこのコンペを選びました。 未経験から、いきなりコンペに参加するなんてすごいねと言われることもあるのですが、私としてはそれほど不安や抵抗はありませんでした。Pythonは大学院での研究の過程で触っていましたし、OpenCVというライブラリも知っていました。ディープラーニングの書籍を買って読んでみたら、自分でもできそうだと素直に思えたのです。大袈裟に構えずに、気軽な気持ちで参加してみて良かったと思いますね。

[015]Winners-Interview-1

ノウハウやスキルで叶わないなら、視点で差別化すると決めた。

参加を決めたときに、もうひとつ自分の中で決めたことがありました。それは、きちんと実用化を意識してモデルを作ること。もちろん、コンペのレギュレーションを守ることは前提ですが、ルール的にOKかと考えるだけでなく、実際に使用する際に機能するかを強く意識しました。なぜなら、単に精度や結果を競うだけだと、専門的に学んできた方には敵わないと思ったからです。評価ポイントには含まれなくとも、主催してくれた方の役に立つものを作る。その視点で差別化できればと考えました。 今回サブミットしたモデルでは、前処理の時点で背景を黒色に統一することで、レモンが写っている部分の画素値のみを考慮するという形をとっているのですが、これも実際に運用する場面を想像した上での処置でした。固定カメラを設置して、ベルトコンベアで様々なレモンが流れていくのを撮影するシーンをイメージしたのです。 きっと、光の当たり方で色の濃淡も変わるだろうし、画像内でのレモンの位置や大きさも微妙に変わってくるはず。学習用データとは異なる環境で撮影されたレモンであっても安定した判別を行うにはどうすれば良いのだろう、という視点でアルゴリズムを考えました。コンペで勝つだけなら、もしかしたらこうした処理は必要なかったのかもしれませんが、結果的に精度の向上にも繋がったと思っています。

[015]Winners-Interview-2

精度を競うコンペでも、一番精度の高いモデルを選ばないという選択。

実用性を意識したのは、モデルの作成時だけではありません。作成したモデルの中から内1つを最終提出物として選ぶ際にも、同じく実用性という観点を設けました。 分析コンペでは、暫定評価と最終評価という2種類の評価があります。最終的な順位は最終評価によって決まるのですが、参加者が開催期間中に知ることができるのは、暫定評価のみです。当然、暫定評価が最も高いモデルを最終提出物とすることが一般的だと思うのですが、私はあえて評価が劣るモデルを選びました。これも、「モデルのサイズが実用に耐え得るか」「今回提供されたデータだけではなく、汎用的に精度を担保できるか」といった実用面を考慮した上での決断です。 最終的に私が提出したモデルはおおよそ5MBほどですが、他の入賞者の方のモデルと比較しても、かなり軽い部類に入ると思います。その他にも、処理速度や汎用性も実用的なモデルになったと思うので、実際に運用してみた結果が見てみたいですね。ある意味、コンペの順位以上にこだわった部分ですから。

[015]Winners-Interview-3

苦労した分だけ、大きな学びと刺激が得られたコンペだった。

最終的には、自分がこだわった実用性の部分にも納得できましたし、結果的に2位に入賞することもできたので、成果には満足しています。ただ、思い返してみると、ここまでたどり着くのは結構大変だったなというのが正直な感想です。 まず、本業の研究との両立が大変でしたね。他の方とは違い、専門の研究がAIではないので、全然違う領域の作業を同時並行で進めるのは工数の観点でも、頭の使い方の観点でも一苦労でした。 その上で、モデル構築で苦労したのは、ブラッシュアップの部分です。今回は転移学習を使ったのですが、完全に流用するのではなく、試行錯誤を重ねた上で一部に自分なりの調整を加えています。論文を読んで活用できそうな部分を試したり、様々なチュートリアルを参考にしたり、手探りで地道に調整を続けました。 かなり大変な作業でしたが、その分得るものも多かったように思います。コンペ入賞で、当初の目的だった実績も残すことができました。表彰式やコンペ期間中の掲示板からは、他の方の考え方やモデルの作り方を知ることができて、刺激になりました。中には、実際に自前のエッジコンピュータ上でモデルが動くということを実際に確認している方もいて、自分も動かしてみたいなと思いましたね。本業とは違う刺激が得られる貴重な経験ができたので、今後もこうしたコンペには参加し続けられたらと思っています。

[015]Winners-Interview-4

今後の目標

物理学で学んできたことを、コンペにも活かしていきたいです。偏微分などの数学的な基礎知識や、論文を探すスキル、課題を見極める嗅覚といった部分はコンペにも十分活かせると今回わかりました。これからも、培ってきた経験を活かして、自分ならではの視点でモデルを作れたらいいなと思います。 <ひろしまQuest2020:画像データを使ったレモンの外観分類(ステージ1)> <ひろしまQuest2020:画像データを使ったレモンの外観分類(ステージ2)>

この記事をシェアする