本書は抄訳であり内容の正確性を保証するものではありません。正確な内容に関しては原文を参照ください。
間も無く、ホリデーシーズンと我々の体を温めウェストラインに課題を突きつけるリッチで美味しい食べ物がやってきます。我々Databricksでは、ちょっと遊んでみようと思い、お客様の休日をより素敵なものにするいくつかの素晴らしいレシピを提供しようと考えました。しかし、DatabricksなのでAIを活用してそれらを行う必要がありました。
実際にDatabricksによるAIのシンプルさを示すために、我々は最優先の課題「ベストなパンプキンパイはどのようにつくるのか?」を解決することに決めました。この記事では、AIドリブンのアプリを構築するために、我々がどのようにサーバレスリアルタイム推論とパワフルなオープンソーステクノロジーを活用したのかをウォークスルーします。
Databricksホリデーレシピ検索アプリにようこそ
Databricksのホリデーレシピ検索アプリは、ユーザーによって指定された画像、あるいは説明文のテキストに基づいて食べ物を検索するシンプルかつAIドリブンのアプリです。このアプリを用いて、画像ベースの検索を用いてEpicurious Foodの材料やレシピのデータセットを検索することもできます。お好きなホリデーの食べ物の写真をアップロードして、我々はパンプキンパイと言いましたか?、あるいはランダムに画像を選択し、選択した画像に見た目が似ている食べ物のレシピを検索します。あるいは、単語やフレーズに基づいてレシピを検索するために、検索ボックスを使うことができます。
このアプリケーションのインスピレーションは、料理を見たとしても具体的に何であるのかわからないという一般的な課題でした。そこで、特定しにくい料理の画像をアップロードすることで、Databricksが膨大な食べ物のカタログから似ているものを探し出すというシンプルな検索を思い描きました。提示されたアイテムのそれぞれでは、料理の見た目を把握するのに役立つ画像、材料や準備の手順を確認することができます。すでに今年のホリデーの食卓に追加したいくつかの料理を特定しているので、皆様に同じことをやっていただこうと思い招待しました。
どうやったのか
このアプリにおいては、Epicuriousのウェブサイトからスクレーピングされた13,000以上のレシピと関連づけられた画像を活用し、このKaggleデータセットとして利用できる様にしました。活用した画像ベースの検索はエンべディングのコンセプトをベースとしています。あまり技術に踏み込まずに、エンべディングを画像やテキストのブロックを短い数式表現と考えることができます。2つのアイテムに関連づけられたエンベディングを比較する際、2つのエンベディングの間の距離が、それらの間の類似度に関することを教えてくれます。
これが複雑そうに聞こえたとしても、そうである必要はありません。このようなエンベディングの計算に必要なすべてのロジックとモデルトレーニングは、オープンソースコミュニティによって取り組まれています。Databricksを用いることで、必要なことは1行のコードで適切に事前学習されたモデルをダウンロードし、検索したいと考えるデータの準備に活用することだけです。
データを準備した後は、多くの場合、課題はモデルをアプリケーションに組み込むこととなります。しかし、繰り返しになりますが、Databricksがカバーしてくれます。Databricksのモデルサービングの機能を活用することで、モデルをシンプルなAPIでラッピングし、スケーラブルなRESTエンドポイントにデプロイすることができます。数行のコードを記述し、DatabricksのUIで数クリックした後に起動し稼働し始めます。
ホリデーレシピアプリを試してみる
このアプリケーションを記述するよりもパンプキンパイを焼く方が時間がかかるでしょうが、これが全体的なポイントです。Databricksにおいて、我々のゴールは常に機械学習と人工知能の活用をシンプルにするということであり続けています。我々は意志を持って、データの処理やモデルのトレーニングを容易にするだけではなく、これらを通じて生み出された洞察がエンタープライズのアプリケーションにインテグレーションされることを確実にするように我々のプラットフォームを設計しました。
2022のホリデーシーズンの間ホスティングされるこのアプリケーションを操作する様に皆様をご招待し、我々のパブリックGitHubリポジトリから準備に用いたすべてのコードをダウンロードすることをお勧めします。このホリデーシーズンに美味しい料理を楽しんでいただけたら(このアプリによってインスピレーションを得られたら幸いです)、来年にはお使いのアプリケーションでデータとAIを活用するすべての方法を考えていただけたらと思います。
我々のすべてのお客様に、ハッピーホリデー!そして、このアプリを使った皆様におかれましては、何を料理するかのを楽しみにしています!得られた発見をハッシュタグ #DatabricksRecipes でシェアしていただけたらと思います!