インターネットで買い物やお店選びをするとき、こんな場面に遭遇したことはありませんか?
- 商品A: レビュー件数が 1件 で、評価は ★5.0(満点)
- 商品B: レビュー件数が 1,000件 で、評価は ★4.7
普通に考えれば、誰もが「商品Bのほうが信頼できる(本当に良いものだ)」と判断するはずです。
しかし、単純に「評価の平均値」だけでランキングを作ってしまうと、レビューが1件しかない商品Aが1位になってしまいます。 これではランキングの信頼性はガタガタになり、ユーザーにとって使いにくいものになってしまいます。
この「評価件数の少なさによるブレ」を数学的にきれいに解決してくれるのが、「ベイズ平均(Bayesian Average)」という計算手法です。
1. そもそも「ベイズ」とは?

この「ベイズ」という名前は、18世紀(江戸時代の中頃)に生きたイギリスの数学者であり牧師でもあった、トーマス・ベイズ(Thomas Bayes) という人物の名前に由来しています。
数学者としては一風変わった経歴を持つベイズですが、彼が遺したノートに書かれていた「ある定理」が、のちに世界のあり方を変えることになります。
ベイズが考えたこと:「新しい証拠で、古い常識をアップデートする」
当時の数学では、「1枚のコインを投げたら、表が出る確率は1/2(50%)である」というように、あらかじめルールが決まっているものから未来を予測するのが主流でした。
しかしベイズは逆のことを考えました。
「あらかじめルール(正解)がわからない状況で、次々に得られる『新しい証拠』をもとに、最初の予想をだんだん正解に近づけていくにはどうすればいいか?」
この「新しいデータが入るたびに、手持ちの予測をアップデートしていく」というアプローチが、のちに「ベイズの定理(ベイズ推定)」と呼ばれるようになり、現代のAIやプログラムに受け継がれています。
2. たとえ話:ラーメン屋の「新人アルバイト」

ベイズの「古い常識を新しい証拠でアップデートする」という仕組みを、ラーメン屋の評価にたとえて考えてみましょう。
ある人気ラーメン店に、新人アルバイトの「田中くん」が入ってきました。
この店のアルバイト全体の接客レベル(古い常識/全体平均)は、100点満点中 「70点」 だとします。
シナリオ①:田中くんの初めての接客(新しい証拠:1件目)
田中くんが初めて接客したお客様(1人目)が、大満足して「100点!」と評価してくれました。
- 単純な平均: 1件の評価が100点なので、田中くんの評価は 100点 になります。
- ベイズ的な考え方: 「最初の常識(みんなの平均は70点)」に、「新しい証拠(1人目が100点と言った)」を混ぜて予想をアップデートします。
「まだ証拠が1つだけだし、最初の常識(70点)を少しだけ上げて、72.7点くらいにアップデートしておこう」
シナリオ②:田中くんが100人の接客をした(新しい証拠:100件目)
田中くんがその後、100人のお客様を接客し、それでも平均 「95点」 を維持し続けました。
- 単純な平均: 95点
- ベイズ的な考え方: 「これだけたくさんの『新しい証拠』が集まったなら、最初の常識(70点)はもう忘れていい。アップデートを重ねた結果、田中くんの実力は 92.7点 でほぼ間違いない!」
このように、「最初のうちは古い常識(全体平均)を信じ、証拠が集まるにつれて証拠(データ)の方を信用していく」 というベイズのアップデート思想そのものが、この計算の名前に使われている理由です。
3. プログラムでの計算式(イメージ)
実際のプログラムでは、以下のようなイメージで計算を行います。
| ベイズ平均 = | (個人の評価の合計) + (全体の平均値 × C) |
| (個人の評価件数) + C |
この数式に出てくる 「C」 は、先ほどのたとえ話でいう「常識の重み(架空のお客様の人数)」にあたるもので、「おもりの強さ(信頼度)」と呼ばれます。
- C を「5件」に設定すると:
5件以上のデータ(新しい証拠)が集まったあたりから、最初の常識の影響が薄れて本人の実力が発揮されやすくなります。 - C を「50件」と大きくすると:
より慎重に(50件以上のデータが集まるまで、最初の常識からなかなか数値を動かさないように)様子見をします。
4. なぜプログラミングで重宝されるのか?

この技術が多くのシステムで採用されるのには、明確なメリットがあるからです。
- サクラ・極端な評価に強い
1件だけ身内に「星5」をつけさせたような不正なデータが、ランキングの1位に急浮上するのを自動的に防ぎます。 - 新着データが不利にならない
「評価件数が少ないものは除外する」という単純な足切りをしてしまうと、新しく入ってきた優秀なデータがいつまでも日の目を見ません。ベイズ平均を使えば、最初は「中堅(全体平均)」からスタートし、徐々に上(あるいは下)に滑らかに移動させることができます。 - ユーザーに「納得感」のある並び順を提供できる
件数と評価のバランスを考慮した、人間が直感的に「妥当だ」と感じる並び順(ランキング)を自動で作ることができます。

