推薦システムの開発に使っているツール
推薦チームでは、モデルの開発・改善や、デプロイを簡単に行うための様々なツールを用意しています。以下はそのなかでも自分たちで内製しているツールの一覧です。
機械学習モデルの開発に使うツール
feature store
モデルの学習に使う特徴量を定期的に計算し、それをBigQuery上にエクスポートして管理しています。
recomx
モデルの学習パイプラインの中の共通部分をまとめたライブラリです。
recommendation-evaluator
オンラインテストに出す前のランキングの性能を、過去データを使って低コストでシミュレーションするツールです。カスタマイズして様々な指標を簡単に実装することも可能で、施策でやりたいことを実現できそうなのかを評価することが可能です。
SARA (Seamless Accessible Resource Allocator)
ローカルのPCに大量のコンピューターリソースが存在するかのような開発体験を提供するツールです。これにより、エンジニアは本番運用時とほとんど同じ環境で開発を行うことができます。
servicex-python
マイクロサービス共通ライブラリであるservicexのPython実装です。servicexについては マイクロサービス共通ライブラリ "servicex" の紹介 を参照してください。
vrec-ranking-comparator
変更前後のコードで作成されるランキングで、結果が変わらないことを確認するためのツールです。これはコードのリファクタやライブラリアップデートを行うときなどに、GitHub Actionsのジョブとして利用されます。
機械学習モデルのリリースに使うツール
visit-recommendation-project
Wantedly Visit の募集の集合からクエリに対して適切なフィルタリング・オーダリングを行ってユーザーに返すサービスです。作成したランキングを本番環境にリリースしたり、オンラインテストを行ったりする際に利用します。
visit-recommendation-scout
Wantedly Visit上にいるユーザの集合からクエリに対して適切なフィルタリング・オーダリングを行ってリクルーターに返すサービスです。作成したランキングを本番環境にリリースしたり、オンラインテストを行ったりする際に利用します。
上記2つについてはWantedlyのPodcastや発表資料でも触れられています。
その他の外部ツール
上に挙げた以外にも、推薦チームでは開発時に様々なツールを使用しています。
Argo workflow
BigQuery
Looker
Repro
話を聞きに行きたい
Slack: #visit_recommendation
最終更新