[論文レビュー] Large-Scale Online Experimentation with Quantile Metrics
本論文は、動的ヒストグラムに基づく分位数推定と、従属サンプルにおける時間的相関を補正する新しい分散推定法を組み合わせることで、p90ページロード時間などの分位数指標を用いたスケーラブルで統計的に妥当なA/Bテスト手法を提示している。この手法はブートストラップ法と比較して500倍以上の高速化を達成しながら、ブートストラップ推定値と98%の一致を維持しており、リンクトインのインダストリアルシステムのような大規模な環境でもリアルタイムでの分位数A/Bテストを可能にしている。
Online experimentation (or A/B testing) has been widely adopted in industry as the gold standard for measuring product impacts. Despite the wide adoption, few literatures discuss A/B testing with quantile metrics. Quantile metrics, such as 90th percentile page load time, are crucial to A/B testing as many key performance metrics including site speed and service latency are defined as quantiles. However, with LinkedIn's data size, quantile metric A/B testing is extremely challenging because there is no statistically valid and scalable variance estimator for the quantile of dependent samples: the bootstrap estimator is statistically valid, but takes days to compute; the standard asymptotic variance estimate is scalable but results in order-of-magnitude underestimation. In this paper, we present a statistically valid and scalable methodology for A/B testing with quantiles that is fully generalizable to other A/B testing platforms. It achieves over 500 times speed up compared to bootstrap and has only $2\%$ chance to differ from bootstrap estimates. Beyond methodology, we also share the implementation of a data pipeline using this methodology and insights on pipeline optimization.
研究の動機と目的
- 大規模なA/Bテストにおいて、分位数指標のためのスケーラブルで統計的に妥当な分散推定法の欠如に取り組むこと。
- ユーザー体験を測定する上で重要なが、計算的・統計的課題のためあまり使われていないp50やp90などの分位数を用いたリアルタイムA/Bテストを可能にすること。
- ブートストラップ法と同等の精度と、ブートストラップ法の500倍以上の高速性を両立した産業規模のオンライン実験手法を開発すること。
- 多様なプラットフォームや実験タイプに対応する低レイテンシ分位数A/Bテストを実装・最適化するデータパイプラインを構築すること。
- リンクトインのエコシステムを超えた他のA/Bテストプラットフォームにも適用可能な汎用的ソリューションを提供すること。
提案手法
- 本手法は、データパーティション内でのページロード時間をビンに集約することで、分布情報の効率的要約を実現するヒストグラムベースの分位数推定技術を用いる。
- パーティション間のヒストグラムをマージすることで、すべての生データを保存せずにp50やp90の正確な推定を可能にする。
- 時間的相関を考慮した新たな分散推定法を提案し、サンプル分位数の周囲の動的インターバル幅を用いて密度推定を改善することで、従属サンプルの相関を補正する。
- データ正規化、memberIdおよびタイムスタンプによるメトリクスと実験追跡の共パーティショニング、メモリ内ビットマップインデックスを活用してジョインを高速化しI/Oを削減する。
- 1回のパスで分位数推定と分散推定の両方をサポートするため、パーティションごとに∑Ji, ∑Pi, ∑Ji², ∑Pi², ∑JiPi, ∑Wiの要約統計量を計算する。
- Sparkを用いた分散処理を活用し、データ圧縮とパーティショニングによりデータ爆発を防ぎ、3000億行の処理を2時間未満で実現する。
実験結果
リサーチクエスチョン
- RQ1時間的相関が存在する状況でも統計的妥当性を保ちつつ、分位数指標のためのスケーラブルな分散推定法を開発できるか?
- RQ2大規模な本番システムにおいて、低レイテンシレポート要件(例:5時間未塔)を満たすために、分位数A/Bテストをどのように高速化できるか?
- RQ3提案手法が、分位数指標の標準誤差推定において、ブートストラップ法とどの程度の精度を達成するか?
- RQ4固定幅インターバルと比較して、動的インターバル幅の分散推定精度への影響は何か?
- RQ5異なるプラットフォーム、地理的領域、日付範囲を含む多様な実験設定において、パイプラインの性能はどの程度か?
主な発見
- 提案手法は、ブートストラップ法と比較して500倍以上の高速化を達成し、3000億行のデータ処理を1日から2時間未塔に短縮した。
- ブートストラップ推定値と7%以上異なる確率はわずか2%であり、高い精度と信頼性を示している。
- 名目上の第一種過誤率が5%の場合、提案手法を用いた実際の第一種過誤率も5%に近く、統計的妥当性が確認された。
- 分散推定法は、i.i.d.漸近近似法を著しく上回り、標準誤差を1桁以上過小評価し、61%の偽陽性を引き起こす原因となっていた。
- パイプラインは、平均して30日分のデータ(3000億行)を2時間未塔で処理でき、リンクトインの5時間未塔のレポート要件を満たした。
- 実験追跡にビットマップを活用することで、効率的なメモリ内ジョインが可能になり、I/Oが削減され、ジョインフェーズの処理速度が桁違いに向上した。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。