コンテンツに移動
AI & 機械学習

Wayfair が Vertex AI を使用して特徴量エンジニアリング システムを改善している方法

2024年1月19日
Google Cloud Japan Team

Google Cloud Next is live!

See the latest announcements from Next '24.

Join us

※この投稿は米国時間 2024 年 1 月 20 日に、Google Cloud blog に投稿されたものの抄訳です。

Wayfair では、データ サイエンティストが複数のデータソースを利用してモデル トレーニング用の特徴量を取得しています。特徴量エンジニアリングに場当たり的なアプローチで臨むと、特徴量の定義に複数のバージョンができてしまい、異なるモデル間で特徴量を共有することが困難になっていました。ほとんどの特徴量は、更新頻度、スキーマ、データの保証の監視を最小限に抑えて、保存および使用されていました。その結果、開発環境と本番環境との間でモデルのパフォーマンスに差異が頻繁に生じ、再トレーニングのためのフィードバック ループが煩雑なものになっていました。新しい安定した特徴量を厳選し、モデルの新しいバージョンを開発するプロセスを完了するには、多くの場合、数か月かかっていました。

こうした問題に対処するために、Wayfair のサービス インテリジェンス チームは、一元化された特徴量エンジニアリング システムを構築することに決めました。Wayfair の目標は、特徴量の定義を標準化し、取り込みプロセスを自動化するとともに、メンテナンスを簡素化することでした。Wayfair は Google と連携して、さまざまな Vertex AI サービス、とりわけ Vertex AI Feature StoreVertex AI Pipelines を採用しました。前者は ML で使用する特徴量を整理、保存、提供するための中央リポジトリで、後者は ML ワークフローの自動化、モニタリング、管理を支援するサービスです。この 2 つのサービスは、Wayfair の特徴量エンジニアリング アーキテクチャにおいて主要な位置を占めています。

データ面では、元の特徴量データを BigQuery テーブルに読み込むフローを合理化するワークフローを開発しました。また、特徴量の定義の中央リポジトリを作成し、各特徴量をどのように取得し、処理し、Feature Store に保存するかを指定しました。Wayfair では、Vertex AI Feature Store の API を使用して、指定された定義に基づいて特徴量を自動的に作成しています。また、GitHub の PR 承認プロセスを使用して、ガバナンスを強化し、変更を追跡しています。

https://storage.googleapis.com/gweb-cloudblog-publish/images/Sample_feature_definition.max-1300x1300.png

特徴量の定義例

Wayfair は Vertex AI Pipelines をセットアップし、BigQuery の元データを Feature Store で特徴量に変換しています。Vertex AI Pipelines は SQL クエリを実行してデータを抽出、変換し、Feature Store に取り込みます。特徴量の変更の頻度と、特徴量を使用するモデルが求めるリピート間隔のレベルに応じて、パイプラインはさまざまな頻度で実行されます。また、Vertex AI Pipelines は、Pub/Sub メッセージをリッスンする Cloud Functions によってトリガーされます。こうしたメッセージは Cloud Scheduler の静的なスケジュールに基づいて生成されていますが、他のパイプラインやプロセスから動的に生成されることもあります。

https://storage.googleapis.com/gweb-cloudblog-publish/images/Feature_Engineering_System_Diagram.max-1700x1700.png

特徴量エンジニアリング システムの全体像

Vertex AI Feature Store があれば、トレーニングと推論の両方が可能になります。トレーニングの場合、データ サイエンティストは時間指定ルックアップを使用して、過去の特徴量の値をエクスポートし、モデルを再トレーニングすることができます。推論の場合、リアルタイムで予測を行う本番環境モデルに対して、低レイテンシで特徴量が供給されます。さらに、開発環境と本番環境との間の整合性が確保され、トレーニング サービング スキューが取り除かれます。データ サイエンティストは、データに関連する問題に煩わされることなく、自信をもってモデルの新しいバージョンを反復処理することができます。

新しい特徴量エンジニアリング システムのおかげで、データ サイエンティストによる特徴量の共有と再利用が容易になるとともに、オフラインとオンラインの整合性と特徴量の更新頻度が保証されました。現在はプレビュー版が公開されている Vertex AI Feature Store の新バージョンを採用できる日を楽しみにしています。新バージョンでは、基盤となるデータに対するアクセスの透明性が強化されます。また、Wayfair のプロジェクト専用の BigQuery リソースが使用可能になることで、クラウド関連費用を削減できます。

今回の執筆にあたり、Wayfair の Duncan Renfrow-Symon と Sandeep Kandekar からは技術的な助言を、Google の Neela Chaudhari 氏、Kieran Kavanagh 氏、Brij Dhanda 氏からは Google Cloud に関するご支援をいただきました。心から感謝の意を表したいと思います。

-Wayfair、ML 担当スタッフ エンジニア Anh Do 氏

-Wayfair、ML 担当スタッフ エンジニア Roger Bock 氏

投稿先