翻訳: junichi.maruyama
ホリデーシーズンが到来し、私たちの体を温め、ウエストラインに挑戦する、豊かでおいしい食べ物がたくさん出てきました。Databricksでは、ホリデーシーズンをより楽しくするために、少し楽しみながら、素晴らしいレシピをお客様と共有したいと思いました。しかし、Databricksである以上、AIを活用してそれを実現する必要がありました。
Databricksを使ったAIのシンプルさを実際に見せるために、私たちは「最高のパンプキンパイを作るにはどうしたらいいか」というトップオブマインドな課題を解決することにしました。このブログ記事では、Databricks Serverless Real-Time Interfaceと強力なオープンソーステクノロジーを使用して、AI駆動の検索アプリを構築した方法を紹介します。
Databricks Holiday Recipe Finderアプリをご紹介します
Databricks Holiday Recipe Finderアプリは、ユーザーが提供した画像または説明テキストに基づいて食品を検索する、シンプルでAI駆動のアプリケーションです。このアプリでは、画像ベースの検索のいずれかを使用して、Epicurious Food Ingredients and Recipesデータセットを検索することができます。お気に入りのホリデーフードの写真をアップロードするか(パンプキンパイの話はしたかな?- または、ランダムに選択された画像のいずれかをクリックすると、選択した画像と外観が似ている食品のレシピを検索することができます。 また、検索ボックスを使って、説明的な単語やフレーズからレシピを探すこともできます。
このアプリケーションの着想は、「料理を見ても、それが何なのかよくわからない」というよくある課題から生まれました。 そこで私たちが思い描いたのは、ダジャレではなく、わかりにくい料理の画像をアップロードすると、Databricksが膨大な食品カタログから似たようなものを探し出すというシンプルな検索方法です。 候補となった料理には、その料理を視覚的に理解するのに役立つ画像と、材料、調理方法が表示されます。私たちはすでに、今年の年末年始の食卓を彩る料理をいくつも見つけています。
どのようにして実現したのか
このアプリでは、Epicuriousのウェブサイトから収集した13K以上のレシピと関連する画像を活用し、このKaggleデータセットの一部として提供されています。私たちが採用した画像ベースの検索は、埋め込みという概念に基づくものです。埋め込みとは、画像やテキストを数学的に短く表現したものであると考えることができます。2つのアイテムに関連する埋め込みを比較すると、その2つの埋め込み間の距離から、2つのアイテムの類似性を知ることができます。
複雑そうに聞こえるかもしれませんが、その必要はありません。このような埋め込みを計算するために必要なロジックやモデルのトレーニングは、すべてオープンソースのコミュニティによって取り組まれています。Databricksを使えば、1行のコードで適切に訓練されたモデルをダウンロードし、それを使って検索したいデータを準備するだけでよいのです。
データを準備した後は、通常、モデルをアプリケーションに統合することが課題となります。しかし、ここでもDatabricksが私たちをサポートしてくれます。Databricksのモデル提供機能を活用すれば、シンプルなAPIでモデルをラップし、スケーラブルなRESTエンドポイントにデプロイすることが可能です。数行のコードとDatabricks UIを数回クリックするだけで、すぐに実行することができます。
ホリデーレシピアプリを試してみる
このアプリケーションを書くよりも、パンプキンパイを焼く方が時間がかかるでしょうし、それが本当に重要なポイントです。Databricksの目標は、機械学習と人工知能の使用を簡素化することであり、これまでもそうでした。私たちは、データの処理やモデルのトレーニングを簡単にするだけでなく、そこから得られる洞察をエンタープライズ・アプリケーションに統合できるようにするための機能を備えたプラットフォームを意図的に構築してきました。
2022年のホリデーシーズン中、私たちはこのアプリケーションをホストし、その準備に使用したすべてのコードをGitHubの公開リポジトリからダウンロードできるよう、皆さんに呼びかけます。このホリデーシーズンには、このアプリケーションにインスパイアされたおいしい料理を楽しみながら、来年はアプリケーションにデータとAIを活用する方法を考えてみてください。
すべてのお客様に、幸せな休日をお過ごしいただけますようお祈り申し上げます!そして、アプリをご利用の皆様には、ぜひともお料理をご紹介 いただきたいと思います!ぜひハッシュタグ「#DatabricksRecipes」をつけて、あなたの発見をシェアしてください!