Wayfair、MLOps を加速し、大規模に優れたエクスペリエンスを実現する
Google Cloud Japan Team
※この投稿は米国時間 2022 年 6 月 17 日に、Google Cloud blog に投稿されたものの抄訳です。
Wayfair は、当社のウェブサイトを活発に利用する 3,000 万人のお客様一人ひとりをサポートするために、あらゆる場面で機械学習(ML)を活用しています。これにより、Wayfair のビジネスのあらゆる側面において、コンテキストアウェアで、リアルタイムかつインテリジェントな意思決定を行うことができます。Wayfair は、お客様が探しているものにすぐにアクセスできるように、ML モデルを使用して世界中のプロダクトの需要を予測しています。自然言語処理(NLP)モデルは、Wayfair のウェブサイト上のチャット メッセージを分析するために使用されます。これにより、お客様は人間によるサポートが利用可能になるのを待つことなく、できるだけ早く適切なカスタマー サポート チームにリダイレクトされるようになります。
ML は、ビジネスとして競争力を維持するために戦略上不可欠なものです。また、ML は Wayfair の幅広い e コマース エンジニアリング プロセスを支援しています。お客様にできるだけスムーズで便利、そして快適な体験をしていただくためのさまざまな工夫が、家具やホーム用品のオンライン ショップである当社の業績を左右します。このビジョンが Wayfair のテクノロジーに対する方向性を定めます。3,000 人以上の社内エンジニアやデータ サイエンティストがプラットフォームの開発とメンテナンスに従事する、技術会社としての当社の経歴を誇りに思います。
Wayfair は何年も前から ML モデルやその他の自社開発のツールや技術を構築し、その過程で直面した課題の解決に役立ててきました。オンプレミスでスタートしましたが、2019 年に Google Cloud への移行を決定し、リフト&シフト戦略を活用して、複数のワークロードをクラウドに移行するための変更の数を最小限に抑えました。特に、Apache Airflow のクラスタを Google Cloud のインフラストラクチャ上にデプロイし、互換性を確保するために自社開発した技術を後から追加しました。
スケーラビリティの欠如など、すぐに解決できた従来のインフラストラクチャの課題もありました。しかし、データ サイエンティストに残された課題もありました。たとえば、中央のフィーチャー ストアがなく、ワークフローのオーケストレーションも環境を共有した共有クラスタに依存していたため、ノイジー ネイバーの問題が発生しました。
しかし、Google Cloud の顧客である当社は、新しいソリューションが利用可能になったときに、簡単にアクセスできます。2021 年、Google Cloud が Vertex AI を発表したとき、データ サイエンティストの仕事をサポートするエンドツーエンドの ML プラットフォームとして、迷わず Vertex AI を試用しました。
必要な ML ツールを 1 つの AI プラットフォームで実現
オープンソースやプラットフォームに依存しないソフトウェアの大ファンである Wayfair は、Vertex AI Pipelines と、それが Kubeflow のようなオープンソースのフレームワークで動作することに感銘を受けました。これにより、あらゆるインフラストラクチャで動作するソフトウェアを構築することが可能になりました。見た目、操作性、使い勝手の良さも気に入りました。インフラストラクチャを手動で構成していた Wayfair は、6 か月以内に概念実証を実施し、最初の本番環境のリリースにこぎつけました。
次に優先したのは、Vertex AI Feature Store を使って、1 行のコードを使いリアルタイムまたはバッチとして AI 技術を ML 特徴としてサービングし、利用することでした。Vertex AI Feature Store は、ストレージやコンピューティング リソースなど、基盤となるインフラストラクチャを完全に管理し、スケールできます。つまり、データ サイエンティストは、オフラインやオンラインでの利用を想定した特徴の保管の課題に悩まされることなく、特徴計算のロジックに集中できるようになりました。
データ サイエンティストはモデルの構築とトレーニングは得意ですが、インフラストラクチャの設定やモデルの本番環境へのデプロイにはあまり慣れていません。そのため、MLOps の変革に着手した際、データ サイエンティストが基盤となるインフラストラクチャについてすべてを知らなくても、可能な限りシームレスにプラットフォームを活用できるようにすることが重要でした。そのために、Vertex AI の上に抽象化したものを構築することを目標としました。Wayfair のシンプルな Python ベースのライブラリは、Vertex AI Pipeline および Vertex AI Features Store と相互作用します。また、一般的なデータ サイエンティストは、Vertex AI のバックエンドの仕組みを知らなくても、この設定を活用できます。Wayfair はこのビジョンの達成に向けて取り組んでおり、すでにその効果を実感しています。
ハイパーパラメータの調整時間を 2 週間から 1 時間以下に短縮
Apache Airflow のようなオープンソースのツールを活用していますが、その使い方は、Wayfair のデータ サイエンティストに問題をもたらしていました。また、サポートの問題やジョブの失敗など、従来のテクノロジーから引き継いだインフラストラクチャの課題も頻繁に発生しました。そこで、Kubeflow をベースにした Vertex AI Pipelines を使用して、CI / CD パイプラインを構築し、モデル メンテナンスの煩雑さを解消しました。
今では、すべてがきちんと整理され、文書化され、スケーラブルで、テストが容易で、ベスト プラクティスに沿ってよく整理されています。そうすることで、標準化された新しい働き方を採用するインセンティブが生まれ、それ自体が利益をもたらしました。その一例が、機械学習モデルの挙動を制御するために不可欠なハイパーパラメータの調整です。
機械学習において、ハイパーパラメータの調整や最適化は、学習アルゴリズムに最適なハイパーパラメータを選択する問題となります。ハイパーパラメータとは、値によって学習プロセスを制御するためのパラメータです。機械学習モデルにはそれぞれ異なるハイパーパラメータがあり、その値は学習プロセスを開始する前に設定されます。そして、ハイパーパラメータをうまく選択することで、アルゴリズムを最適に動作させることができます。
ハイパーパラメータの調整はデータ サイエンスにおいて非常に一般的なプロセスですが、それをどのように行うべきかという標準がありません。従来のインフラストラクチャを使用して Python で行う場合、データ サイエンティストが 1 人の場合、平均 2 週間かかると言われています。Wayfair には 100 名以上のデータ サイエンティストがいるため、この業務を標準化し、より効率的にすることが優先事項でした。
Vertex AI での作業方法が標準化されたことで、Wayfair のすべてのデータ サイエンティストは、当社のコードを活用して CI / CD、モニタリング、分析にすぐにアクセスし、たった 1 日でハイパーパラメータの調整ができるようになりました。
より多くの ML ベースの機能によって、すばらしいカスタマー エクスペリエンスを実現する
次に、データ サイエンティストたちは、稼働中の「hello world」Vertex AI パイプラインをデプロイできるようにするための Docker コンテナ テンプレートに取り組んでいます。データ サイエンス チームが ML モデルを完全に稼働させるまでには、平均で 2 か月以上かかります。Vertex AI では、その時間を 2 週間程度に短縮できる見込みです。Wayfair が行う他の作業と同じように、このことはカスタマー エクスペリエンスに直接影響を与えます。
ここで重要なのは、ML モデルにはより複雑なものがあるということです。商品がいつ届くのかなど、お客様がウェブサイトを閲覧中にすぐにわかるようなアウトプットがあるものは、より複雑です。この予測は、ML モデルによって行われ、Vertex AI によって自動化されています。正確であることはもちろん、お客様がウェブサイトを閲覧している間に、迅速に画面に表示する必要があります。つまり、これらのモデルは最も要求が高く、本番環境で公開するのが最も難しいのです。
Wayfair は本番環境のデータやモデルを効率化し、継続的にモニタリングできるツールの構築と導入に積極的に取り組んでおり、それを Vertex AI と統合することを望んでいます。Wayfair は、モデルをより速く構築するための AutoML の力を信じています。これらの GCP サービスをすべて評価し、社内で活用する方法を見い出すことを目標としています。
そして、Vertex AI が可能にする新しい働き方が、データ サイエンティストの仕事を楽にするだけでなく、Wayfair のウェブサイトを一日に訪れる何百万人ものお客様の体験に直接影響を与える波及効果をもたらすことは、すでに明らかです。お客様には、より良い技術とより多くの機能を、より早く体験していただいています。
当社のデータ サイエンティストが Vertex AI をどのように活用しているかについては、近日中に公開されるこのブログのパート 2 をご覧ください。
- Wayfair、ML エンジニアリング責任者、Vinay Narayana 氏
- Wayfair、リード ML エンジニア、Bas Geerdink 氏