この記事について
この記事は、生成AIを活用した自動生成フローで作成しています。フィルターバブル研究の論文を確認し、概念を理解するための単純な教育用シミュレーションをPowerShellで作成しています。検証ステータス:📘 論文確認済み・教育用モデル実装済み・実際のSNSアルゴリズムを再現するものではありません
フィルターバブルはどう生まれる? ― PowerShellで「おすすめが狭まる」単純モデルを動かす
フィルターバブルは、パーソナライズされた情報環境の中で、接触する情報が偏る現象を説明するときに使われる言葉です。ただし、現実の情報環境は検索、フォロー、友人関係、本人の選択、推薦などが混ざるため、単純な1つの式で説明できるものではありません。
そこで今回は、概念を触って理解するために、あえて単純化します。
教育用ルール
コンテンツを -100〜100 の位置で表す
推薦側がユーザーの興味位置を推定する
近い候補を表示する
ユーザーが1件クリックする
推定値をクリック側へ寄せる
教材上、推定に自信が付くほど表示件数を7件から2件へ絞る
最後のルールは教材が意図的に追加したものです。実際のYouTubeやXが同じロジックで動いているという意味ではありません。
# コンテンツを-100〜100の架空の位置に並べます。
# 実際の政治・SNS分類を意味する値ではなく、学習用の数直線です。
$content = -100,-80,-60,-40,-20,0,20,40,60,80,100
# この仮想ユーザーは45付近を好む、という設定です。
$hiddenInterest = 45.0
# 推薦側は最初、興味を知らないので0から推定を始めます。
$estimate = 0.0
for ($round = 1; $round -le 12; $round++) {
# 教材上、Roundが進むほど表示候補数を7件→2件へ絞ります。
# 実サービスがこの式を使っているという意味ではありません。
$take = [math]::Max(2, 7 - [math]::Floor(($round - 1) / 2))
# 現在の推定値に近いコンテンツから並べ、上位だけ推薦します。
$recommended = $content |
Sort-Object { [math]::Abs($_ - $estimate) } |
Select-Object -First $take
# 表示された候補の中から、ユーザーの本来の興味に最も近い1件を
# クリックしたと仮定します。
$clicked = $recommended |
Sort-Object { [math]::Abs($_ - $hiddenInterest) } |
Select-Object -First 1
"Round $round : count=$take shown=$($recommended -join ',') clicked=$clicked"
# 新しい推定値を、以前70% + 今回クリック30%で更新します。
# いきなり100%移動せず、過去の推定も残す単純な平滑化です。
$estimate = 0.7 * $estimate + 0.3 * $clicked
}
Roundが進むと、教材上の候補数が減り、推定位置もクリックへ寄っていきます。
エコーチェンバーとの違い
フィルターバブルは「見える情報の偏り」、エコーチェンバーは「似た意見の人や情報の中で同じ考えが反響・強化される状態」と分けて考えると理解しやすいです。
ただし研究結果は一枚岩ではありません。検索やSNS経由が反対意見との接触を増やす面も報告されており、「推薦がある=必ず狭まる」と断定するのは避けます。

コメント