連載
» 2019年04月16日 05時00分 公開

“おいしいデータ”で、成果が出るAIモデルを育てる(2):「データセットの準備を丸投げしない」――健康管理アプリ「FiNC」AI開発5つの教訓 (1/2)

ヘルスケアプラットフォームアプリ「FiNC」を開発するFiNC Technologiesで代表取締役CTOを務める南野充則氏は、AI研究開発プロジェクトを通じて得た「5つの教訓」を紹介した。その教訓とは。

[石川俊明,@IT]

 「FiNC」は、パーソナルトレーナーAI(人工知能)が、利用者一人一人の興味関心や悩みに適した健康メニューを推薦するヘルスケアスマートフォンアプリだ。FiNCでは、「撮影した料理の写真から栄養素とカロリーを自動計算する」機能に、深層学習で生成されたAIモデルを活用しているという。

 連載「“おいしいデータ”で、成果が出るAIモデルを育てる」第2回は、2019年3月4〜5日に開催された「SIX 2019」において、FiNCを開発、運営するFiNC Technologiesで代表取締役CTO(最高技術責任者)を務める南野充則氏が講演した内容から、「どのような形でプロジェクトを進めたのか」「どのような教訓を得たのか」などについてお伝えする。

画像から「栄養素」や「カロリー」を推定――人々の健康を支えるアプリの裏側

 FiNCでは、「アプリ利用者の入力をいかに簡単にするか」と「利用者の入力を基に、どのような情報を推薦するか」の2つで機械学習や深層学習を活用している。

 FiNC開発陣はアプリを改善する中で、「食事を手入力で毎日記録する煩わしさからユーザーが継続して食事を記録できていない」課題を発見。そこで「食事の画像を撮影するだけで食事内容を記録できる」コンセプトを基に、深層学習を活用する研究開発プロジェクトをある企業と共同で開始した。

 FiNC Technologies 代表取締役CTO 南野充則氏 FiNC Technologies 代表取締役CTO 南野充則氏

 「FiNCでは画像から食事を推定することは実現済みだったが、画像から栄養素やカロリーを推定することはできていなかった。さらに食事を推定する画像認識の精度にも課題を感じていた。そこで企業から『栄養素やカロリーを推定する機能をAPIで活用したい』と打診があり、協力すれば学習データを増やしたり、AIモデルの精度を向上させたりできると考え、ある企業と共同で研究開発を開始した」

 研究開発では、画像からカロリーを推定する手法から検討を開始。撮影画像から「麦ごはん」「焼き魚」のような料理名の「カテゴリー」を推定するAIモデルと、撮影画像から「豚バラ」「120g」のような食材と量を推定するAIモデルの2つを開発して、そのアウトプットと「カテゴリー」ごとのデータベースを合わせて栄養素やカロリーを算出することにした。データベースを作成するために、料理本や料理検索サイトを活用して『2000種類の料理の栄養成分量』と『400種類の食材量(1人分)』といった標準化を行った。

研究開発の内容 研究開発の内容
豚バラ 検出した食材の量を推定する

 「AIモデルの開発では、オフィスにあるキッチンで2カ月かけて2000種類分の料理を調理し、3視点分の料理画像と、1人前の食材量(調理前、調理後)を評価用データセットとして用意した。技術顧問を務めるAI研究者の松尾豊さんから『これほどやる企業はなかなかいない』といわれるくらい、手間をかけてデータセットを作成した」

料理画像収集の流れ 料理画像収集の流れ

 この仕組みによって、管理栄養士による計算との誤差を約3%まで縮められているという。

AI開発5つの教訓

 講演後半は、この研究開発プロジェクトを振り返り、AIモデル開発をどのように進めるべきか5つの教訓を挙げた。それぞれ見ていこう。

  1. AI開発プロジェクトは「アジャイル開発」で進める
  2. 評価方法を定めてからAI開発プロジェクトを始める
  3. AIプロジェクトのゴールを「AIモデルの実装」にしない
  4. データセットの準備やアノテーションを丸投げしない
  5. AI/ML人材はソフトウェアエンジニアから輩出する

AI開発プロジェクトは「アジャイル開発」で進める

 1つ目の教訓は、アジャイル開発を標準にすべしということだ。FiNCのAI開発プロジェクトでは、もともとアジャイル開発で進めるのが一般的だったものの、今回の研究開発プロジェクトの場合、共同研究企業側に「半年で成果を出さなければならない」制約があったため、ウオーターフォール開発で綿密にスケジュールを組んで研究開発することにした。しかしウオーターフォールで組んだスケジュール通りにAIモデルを開発できず、スケジュールに遅れが発生してしまったという。

研究開発のスケジュール 研究開発のスケジュール

 「深層学習の理論を理解しても大部分はブラックボックスになってしまうため、精度の評価が難しい。今回の研究開発プロジェクトでも、精度が80%のところから研究開発を始めてゴールまでのスケジュールを組んだ。しかし、モデルの精度が改善せず、画像のラベリングからやり直した結果、1カ月分スケジュールが遅延した。ブラックボックスがあるAIモデルの精度改善では、綿密にスケジュールを組むのは難しく、改善を繰り返しやすいアジャイル開発で進めるのが好ましい。ウオーターフォールで行う場合は、余裕の持ったスケジュールを組まない限り、途中でプロジェクトが成り立たなくなる可能性があるだろう」

       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。