About This Article
This article was created using an automated generation workflow utilizing generative AI. We reviewed research papers on filter bubbles and created a simple educational simulation in PowerShell to understand the concept.Verification Status: 📘 Papers Reviewed · Educational Model Implemented · Not a Reproduction of Actual SNS Algorithms
How Do Filter Bubbles Form? — Running a Simple Model of “Narrowing Recommendations” in PowerShell
The filter bubble is a term used to describe the phenomenon where the information a person encounters becomes biased within a personalized information environment. However, real-world information environments involve a mix of searches, follows, friendships, personal choices, and recommendations, meaning they cannot be explained by a single simple formula.
Therefore, to touch upon and understand the concept, we will intentionally simplify it in this article.
Educational Rules
Represent content as positions from -100 to 100.
The recommender estimates the user’s interest position.
Display candidates close to that position.
The user clicks on 1 item.
Shift the estimated value toward the clicked item.
For educational purposes, narrow the number of displayed items from 7 to 2 as confidence in the estimate increases.
The final rule is intentionally added for educational purposes. It does not mean that actual YouTube or X operate on the exact same logic.
# Arrange content into fictitious positions from -100 to 100.
# This is a number line for learning purposes, not actual political or SNS classification values.
$content = -100,-80,-60,-40,-20,0,20,40,60,80,100
# Set up this virtual user to prefer values around 45.
$hiddenInterest = 45.0
# Initially, the recommender does not know the user's interest, so it starts estimating from 0.
$estimate = 0.0
for ($round = 1; $round -le 12; $round++) {
# For educational purposes, as the rounds progress, narrow the number of candidate items from 7 to 2.
# This does not mean actual services use this formula.
$take = [math]::Max(2, 7 - [math]::Floor(($round - 1) / 2))
# Sort content starting from those closest to the current estimate, and recommend only the top ones.
$recommended = $content |
Sort-Object { [math]::Abs($_ - $estimate) } |
Select-Object -First $take
# Assume the user clicked the 1 item among the displayed candidates
# that is closest to their true interest.
$clicked = $recommended |
Sort-Object { [math]::Abs($_ - $hiddenInterest) } |
Select-Object -First 1
"Round $round : count=$take shown=$($recommended -join ',') clicked=$clicked"
# Update the new estimate using 70% of the previous estimate + 30% of the current click.
# A simple smoothing technique that doesn't shift 100% at once, retaining past estimates.
$estimate = 0.7 * $estimate + 0.3 * $clicked
}
As the rounds progress, the number of educational candidates decreases, and the estimated position shifts closer to the clicks.
Difference from Echo Chambers
It is easier to understand if you distinguish them by defining filter bubbles as “bias in visible information” and echo chambers as “a state where identical ideas resonate and are reinforced among people or information with similar opinions.”
However, research findings are not monolithic. Aspects where search engines or social media increase contact with opposing views have also been reported, so we should avoid concluding that “recommendations always narrow things down.”}

コメント