【问题标题】:How to calculate bayes in TrueSkill如何在 TrueSkill 中计算贝叶斯
【发布时间】:2020-02-24 13:18:24
【问题描述】:

你好!

我正在尝试了解 TrueSkill 主要适用于最简单的 1vs1 情况。我主要使用原始论文和“Computing Your Skill”。但是,当因子图出现时,我会感到困惑。我想我首先需要了解所有这些的逻辑,然后看看如何使用数学来降低计算成本。 因此,首先,需要确认,因子图只是一种工具,可以减少数学计算成本涉及 o TrueSkill?

然后,我有一个均值为 s1 且方差为 o1 的高斯分布,玩家 2 也是如此。然后我们还创建了一个均值相同但具有游戏 beta 方差的高斯分布。我们也知道比赛的结果。 所以理论上不使用消息或求和积,这里的贝叶斯如何?我如何计算我的先验、可能性和证据?高斯的求和或乘法有最终表达式吗?我还想念别的东西?我问的有道理吗?

我的想法是这样的:假设玩家 1 的技能大于玩家 2,玩家 1 获胜。所以后验=具有​​新方差的技能的新高斯。贝叶斯就是可能性*先验/证据。其中先验是具有平均技能及其方差的第一个高斯。后验是玩家 1 与 2 的高斯表现的减法。证据是玩家 1 与玩家 2 的实际获胜百分比。我所说的是否属实?

【问题讨论】:

    标签: algorithm


    【解决方案1】:

    这是您可能更熟悉的语言的基本概念。

    我们对每个玩家的先验是,他们的真实技能具有已知均值和标准差的钟形曲线的先验。我们对比赛的先验是一名球员的技能独立于另一名球员的技能。我们对比赛结果的先验是每个技能差异的特定赢/平/输概率。

    您进行比赛并记录结果。

    鉴于该观察结果和我们对技能差异的先验分布,我们有技能差异的后验分布。沿着链条往回走,我们得到了每个玩家技能的后钟形曲线。因此,我们得到了每个新的均值和标准差。

    现在请注意,在数学中,玩家的后验分布现在是相关的。但是,如果我们试图跟踪这些相关性,我们将更新贝叶斯网络,这是一个 NP 完全问题。所以我们撒谎并假装它们现在不相关。这个谎言被称为朴素贝叶斯,在实践中,相关性往往会相互抵消,效果很好。

    这有帮助吗?

    【讨论】:

    • 毫米或多或少。我试图得到这个概率的乘法或求和(或减法)的最终表达式(我不知道它是否可能)。就像玩家 1 赢得玩家 to 的新技能概率是 p(s1|s2,win)= 获胜概率*prob Skill1 并且可能获胜概率是 [N(s1,std1)*N(performance1) -N(st2,std2)*N(performance2)].
    【解决方案2】:

    您可以只专注于一名球员,以真正简化事情。正如您所提到的,该模型使用贝叶斯定理,posterior = likelihood*prior/evidence。设A 为玩家技能的随机变量(在论文中为均值为s_i 的正态分布),B 为游戏结果的随机变量。

    P(A) = probability of skill (prior)
    P(B|A) = game outcome probability based on skill (likelihood)
    P(B) = probability of outcome (marginal likelihood or evidence)
    P(A|B) = probability of skill, given the outcome (posterior)
    

    论文中的模型要复杂得多,因为有多个玩家和不同规模的团队,但这种简化显示了使用贝叶斯定理的地方。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-05
      • 2010-10-19
      • 2012-12-06
      • 2014-09-18
      • 2020-06-12
      • 2013-07-18
      • 2016-02-07
      • 2011-01-09
      相关资源
      最近更新 更多