Chefkoch がテキスト検出ツールで手書きレシピを素早くクラウドに移行
Google Cloud Japan Team
※この投稿は米国時間 2021 年 9 月 14 日に、Google Cloud blog に投稿されたものの抄訳です。
編集者注: ドイツのクッキング プラットフォーム Chefkoch は、代々伝わる貴重なレシピを 21 世紀に残そうと考えました。そのとき出会ったのが、スケーラブルでサポートが適切な Google のデータクラウドによるソリューションでした。その活用方法を紹介します。
たとえばサラダ ドレッシングやチキンスープなど、ほとんどの家庭に何世代も受け継がれてきた定番料理があります。そのレシピは紙切れに走り書きされていることが多く、個人の伝統料理は固く守られています。ドイツのクッキング プラットフォーム Chefkoch は、手書きまたは印字のレシピの重要性を認識し、Google Cloud の拡張アナリティクス機能と機械学習(ML)機能を利用して各家庭に伝わる自慢の味をすばやく簡単に解析、抽出、デジタル化して、これらのレシピをデジタル形式でユーザーが簡単に共有して利用できるようにしたいと考えました。
Chefkoch は、テクノロジーを開発する最善の方法を検討するにあたり、世界の食品市場の大々的な市場調査に着手しました。それにより、業界内のベスト プラクティスを特定し、実際的なビジネスモデルと来るべき食品技術トレンドを考察して、ユーザーのプラットフォーム利用意欲に関する綿密な研究にこれを応用しました。Chefkoch は最終的に Kano Model を作成しました。これは、見込まれるユーザーの満足度に基づいて異なる機能に優先順位を付けるモデルです。
Chefkoch ユーザーはプラットフォーム上に自分の Kochbuch(クックブック)を持っており、ここで Chefkoch レシピの保存、分類、管理ができます。Chefkoch は、調査をベースに、自社の新たな提案に使用する場所としてはこれが最適であると判断しました。オフラインのものも含めてあらゆるレシピを保存できるよう Kochbuch を進化させることにしました。「そのためには、手書きでも印字でもテキストを抽出し、その後、レシピタイトル、材料、作り方を分離する必要がありました」と、Chefkoch の CTO である Tim Adler 氏は語ります。
レシピを読む API
これを実現するために、Chefkoch はさまざまなテキスト インポート ツールの評価を開始しました。2021 年 5 月に、Google Cloud の ML サービスと Google Cloud Functions に絞り込みました。決め手となったのは、サーバー管理なしでコードを実行できる数多くの API とともにスケーラブルな Functions as a Service(FaaS)が提供されることでした。
「手書きのレシピをスキャンしてテキストを認識するために、市場に出ているソリューションを探し回りました」と Adler 氏は述べます。「Google のソリューションには説得力がありました。API とドキュメントを簡単に扱えるだけでなく、Google のチームが弊社の独自のテストデータを使って印象的な概念実証を提示してくれたからです。」
Chefkoch は、Google Cloud が提供する Vision サービスと Natural Language サービスを使用してこのレシピ読み取りツールを構築することにしました。複数のデバイスをまたいだ実行とコスト効率の良いスケーリングが可能であることが、選択の理由となりました。上図に示すように、ドイツ語と英語のテキスト検出向けに最適化させた Cloud Vision API 光学文字認識(OCR)ツールを使用し、手書きまたは印字のページからテキストを抽出します。その後、AutoML Natural Language Entity Extraction Models 1 および 2 と Cloud Natural Language API を応用してレシピの各部分を識別して分離し、結果として以下に示すような画面上のレシピを完成させます。
Chefkoch は Google と密接に協力してソリューションを完成させました。まず Google チームが Chefkoch 向けのデモを作成しました。モデル トレーニング後に希望の結果を最適化するにはデータセットをどのように構成すべきか、などが実地で説明され、Chefkoch チームが連携の仕組みを理解できるようになりました。手書きまたは印字のレシピの画像を取り込んで希望の結果(レシピの各種構成要素が明確に抽出され分離されている)を出力する機能的な API について実際的なエンドツーエンドのデモを提示しました。
現在、このオフラインからオンラインへのレシピ アップロード サービスは、Chefkoch の Kochbuch で試用が始まっています。「ソリューションのテスト、改良、拡張、作成に取り組んでいるところです」と Adler 氏は明かします。
レシピのマイナー チェンジ
初期段階のテストでは OCR 機能が A または B グレードのユーザー評価を受け、この結果が自信になっています。このフィードバックに対応して、ユーザーのニーズに合わせるためのモデル トレーニングの微調整をすでに行っています。非公式に Handwritten Recipe Parser という名前を付けられたこのツールは今、文脈的なスペルミスを拾えるようになっています(たとえば、「meat(肉)」ではなく「meet(会う)」など、単語のスペルが文脈上不適切である場合)。
アナログからデジタルへのサービスでユーザーを増やす
Handwritten Recipe Parser の機能メニューを拡大する計画もあります。Chefkoch は現在、手動レシピ抽出ソリューションを開発中です。これは、ユーザーが自分のレシピの画像をアップロードしてタイトル、材料、作り方を追加できるソリューションです。また、ユーザーが独自のテキストと注記を追加して既存の Chefkoch レシピを修正できるようにする計画もあります。
Cloud AutoML と Vision API の詳細については、Google のサイトをご覧ください。
-Google 機械学習シニア スペシャリスト エンジニア Anant Nawalgaria
-Chefkoch フルスタック デベロッパー Lisa-Philine Tsakiris 氏