バンディットアルゴリズム (G検定)

バンディットアルゴリズム

1. 定義と概要

バンディットアルゴリズムとは、複数の選択肢(アーム。バンディット問題で選べる選択肢の1つ1つを、スロットマシンの「腕」に見立てて呼ぶ言葉です)に限られた試行回数を割り振り、得られる報酬の合計を最大化するように選択を行う一連のアルゴリズムです。

この問題設定は多腕バンディット問題と呼ばれ、名称はスロットマシンの通称「一本腕の盗賊」に由来します。複数台のスロットマシンをどれを選んで回せば報酬を最大化できるか、という賭場の状況になぞらえた呼び名です。

具体例としては、オンライン広告でどの広告バナーを表示すれば最もクリックされるか、Webサービスのトップ画面でどのレイアウトが最も反応が良いか、といった状況が該当します。いずれも、試しながら成績の良い選択肢へ寄せていく場面にあたります。

従来のA/Bテスト(複数の案を比較していったん決着をつけてから良い方を選ぶ検証手法)では、まず一定期間だけ複数案を均等に配信して比較する探索を完了させ、その後に最も成績の良い案だけへ切り替える活用に移るという2段階の進め方が一般的でした。

しかし探索期間中は劣った案にも均等にアクセスを割り振るため、その分の機会損失が生じます。バンディットアルゴリズムは探索と活用を同時並行・動的に配分し直すことで、検証を進めながら機会損失を抑える手法として注目されています。

2. 試験対策ポイント

探索と活用のトレードオフは、バンディットアルゴリズムの核心となる関係です。探索とは、まだ試していない選択肢を試して情報を集める行動を指します。活用とは、これまでの実績から最も良いとわかっている選択肢を選ぶ行動を指します。

両者は短期的な報酬と将来の情報獲得の間でトレードオフの関係にあり、探索に偏れば目先の報酬を取り損ね、活用に偏れば未知のより良い選択肢を見逃す恐れがあります。

代表的な方策には3つの名称があります。それぞれ何を手がかりに選ぶかを並べると、次のように整理できます。

方策 選び方の手がかり
ε-greedy方策 一定確率でランダムに探索し、残りは活用する
UCB方策 試行回数が少なく不確実性の高い選択肢を優先する
トンプソンサンプリング 各選択肢の報酬分布の事後分布からサンプリングして選ぶ

言い換えると、ε-greedy方策とは、決めた確率でランダムに探索し、残りは今一番良い選択肢を選ぶ単純な方策です。UCB方策とは、試した回数が少なく当たり外れが読み切れていない選択肢を優先的に試す方策です。トンプソンサンプリングとは、各選択肢の当たりやすさの確率分布から、くじ引きのように選ぶ方策です。これらの具体的な選択手順や更新式は関連記事で個別に扱うため、本記事では名称と特徴の対応関係にとどめます。

性能評価の指標としては、リグレット(後悔)があります。リグレット(後悔)とは、最適な選択肢を選び続けた場合の累積報酬と、実際の方策で得られた累積報酬との差を意味する指標です。

バンディットアルゴリズムの目標は、リグレットをゼロにすることではなく、できるだけ小さく抑えることにあります。この目標設定の背景には、探索を完全にやめることも活用を完全にやめることも最適な戦略にはならない、という関係があります。

3. 関連概念との比較・相違点

A/Bテストとの最大の違いは、探索を完了させてから活用に移る段階的な検証か、探索と活用を動的に並行させ機会損失を抑える継続的な最適化かという点にあります。観点ごとに並べると、両者の性格の違いがはっきりします。

観点 A/Bテスト バンディットアルゴリズム
探索と活用 探索を完了させてから活用に移る 探索と活用を並行させる
配信の割り振り 決めた期間や件数だけ均等配信 実績が集まるたびに配分比率を更新
検証と最適化 比較が済んでから最良の案へ一斉に切り替える 境界がなく継続的に続く

この段階的か継続的かという軸は、両者を区別する試験対策上のポイントとなります。検証と最適化の境界がない点が、バンディットアルゴリズム側の特徴です。

一般の強化学習(マルコフ決定過程に基づき、行動の結果得られる報酬をもとに、より良い行動の選び方を学んでいく機械学習の枠組みです)との違いは、行動が次の状態に影響するかどうかにあります。多腕バンディット問題は状態遷移を持たない1状態のみの単純化された強化学習の一種であり、どの選択肢を選んでも次に直面する状況は変わりません。

一方で一般の強化学習は、ある行動を取った結果として状態そのものが変化し、その後の選択肢や報酬の見え方まで変わる点まで扱います。バンディットアルゴリズムは強化学習の入門として位置づけられる一方、状態遷移の有無という一点で明確に区別されます。

4. ビジネス・実務での活用シナリオ

オンライン広告の分野では、配信する広告クリエイティブの候補を複数用意し、クリック率の実績に応じて配信比率を動的に調整する取り組みが進んでいます。あらかじめ決めた期間で比較を打ち切るA/Bテストと異なり、成績の悪い候補への配信を早い段階で減らせるため、クリック率や収益の最大化につながります。

Web・アプリの推薦やパーソナライズの分野では、トップ画面のレイアウトやサムネイル画像の表示パターンを利用者ごとに動的に出し分け、反応の良い組み合わせへ配信を寄せていく手法が使われます。利用者の反応は日々変化するため、探索を一度で終わらせずに配分を更新し続けられる点が、静的な比較手法にはない強みとなります。

医療の臨床試験の分野でも、バンディットアルゴリズムの考え方は活用されています。複数の治療法・薬剤候補への被験者割り当てを途中経過の効果データに応じて動的に調整することで、劣った治療法への割り当てを早期に減らせます。これは倫理面への配慮と効果検証の両立という、臨床試験特有の課題に対応する意義を持ちます。

5. 要点まとめ

  • バンディットアルゴリズムは、複数の選択肢(アーム)から報酬を最大化する選択を続けるために探索と活用のバランスを取る一連の手法であり、名称はスロットマシン(一本腕の盗賊)に由来する多腕バンディット問題という問題設定に基づいています。
  • 代表的な方策にはε-greedy方策・UCB方策・トンプソンサンプリングがあり、性能は最適な選択との累積報酬の差であるリグレット(後悔)の小ささで評価されます。
  • A/Bテストが探索を完了させてから活用に移るのに対し、バンディットアルゴリズムは探索と活用を並行させて機会損失を抑える点、また状態遷移を持たない単純化された強化学習として位置づけられる点が試験対策のポイントです。

6. 確認問題

問1バンディットアルゴリズムにおける「探索」とは未知の選択肢を試して情報を集める行動を指し、「活用」とは既知の中で最も報酬の高い選択肢を選ぶ行動を指す。

解答・解説をみる

○ 正しい

定義どおりで、この2つのバランスを取ることがバンディットアルゴリズムの核心となります。探索に偏ると目先の報酬を、活用に偏ると未知の良い選択肢を取り損ねてしまいます。

問2A/Bテストは、探索と活用を常に同時並行で動的に配分し続ける点でバンディットアルゴリズムと同じ考え方である。

解答・解説をみる

× 誤り

正しくはA/Bテストは探索期間を完了させてから活用に切り替える段階的な進め方であり、探索と活用を動的に並行させる点がバンディットアルゴリズムとの違いとなります。両者は検証方式の設計思想そのものが異なります。

問3多腕バンディット問題における「リグレット(後悔)」は、最適な選択肢を選び続けた場合の累積報酬と実際に得られた累積報酬との差を意味し、この値を小さく抑えることがアルゴリズムの目標となる。

解答・解説をみる

○ 正しい

定義どおりで、リグレットをゼロにすることではなく最小化することが目標です。探索を続ける限りリグレットの発生を完全にゼロにはできない点が特徴です。