宣布使用Pyro设计最佳实验的新框架

宣布使用Pyro设计最佳实验的新框架

实验是人类学习我们复杂世界的主要工具之一。从医学到心理学的知识进步需要一个严格的、反复的过程,在这个过程中,我们制定假设,并通过收集和分析新的证据来测试它们。例如,在优步,实验在产品开发过程中发挥着重要作用,使我们能够推出新的变体,帮助我们改善用户体验。有时,我们可以依靠专家知识来设计这些类型的实验,但对于有数百个设计参数、高维或噪声数据的实验,或我们需要实时调整设计的地方,这些见解并不一定能胜任任务。

为此,优步的人工智能研究人员正在雷竞技是骗人的研究改进实验设计的新方法。我们最近探索的一个研究领雷竞技是骗人的域利用了最佳实验设计(OED),一个建立原则基于信息理论让我们自动选择用于复杂实验的设计。

最近的论文神经潜艇AISTATS由研究人员在雷竞技是骗人的超级人工智能牛津大学,我们介绍了一种新的算法,用于计算最佳的实验设计,比以前的方法更快,更可扩展。我们也很兴奋,以提供一般的目的我们的OED框架建立在顶部烙黑,在优步创建并托管的开源概率编程语言lf ai基金会

我们的新框架让尝试人员在一类巨型模型上自动化,可以表示为Pyro程序。我们希望通过开放的新型实验设计算法,从A / B检验到DNA测定的各种实验,可以更容易地设计。

实验生命周期

虽然每个实验都不同,但我们可以将典型的实验分解为三个关键阶段:

    • 设计:设置实验可控环节;这就是OED的用法。
    • 观察进行实验并获得数据。
    • 推理分析收集的数据以更新我们的模型。

重要的是,该过程通常在第一次实验之后继续。一旦我们获得了一些关于我们正在学习现象的信息,我们就可以使用我们学会了什么来设计下一个实验。它在这种自适应设置中,其中OED可以特别强大。当我们更新我们的型号时,我们调整我们的实验设计,以确保我们从每个实验中获取有用的信息,使我们能够有效地磨练我们的知识

实验用烟花

基于的具体示例基础心理学实验在20世纪50年代完成,假设我们希望了解人类参与者在心理学研究中的工作记忆能力。我们将将工作内存容量视为参与者可以记忆的随机数字最长列表的长度。我们的实验中的每一步都按如下方式进行:

设计

我们选择列表的长度,让参与者尝试并记住。为此,我们给每个可能的设计打分(使用下面定义的打分函数),并选择得分最高的设计。

观察

我们向参与者展示一组随机选择的长度的数字,并记录他们是否正确地记住了它。

推理

我们用贝叶斯推断将我们的新观察纳入参与者的工作记忆力容量的估计。在这个例子中,我们将使用贝叶斯逻辑回归模型。它模拟了正确记住具有不同工作存储器容量的人的不同长度的数字列表的概率,如图1所示:

图1.工作存储器实验的贝叶斯逻辑回归模型对正确响应的概率与数字列表的长度相差。

我们还需要一种工作记忆能力是合理的。雷竞技是骗人的建议在整个普通人口中,人们可以记住大约七位数字,其不同的人之间的标准偏差。

将这些建模假设放在一起,我们可以编写一种Pyro程序,该程序指定我们的内存容量实验模型:

(注意,在这里以及整篇文章中,我们使用了一些简化的语法,以便不分散注意力;有关完整的代码段,请参见相应的教程)。

在每个实验之后,我们杠杆作用变分推理烙黑近似我们后部分布研究对象的工作记忆容量。在实验的每一次迭代中,计算一个后验分布是很重要的,因为它允许我们基于之前收集的所有数据做出最优的设计选择。

设计顺序实验

现在我们已经定义了我们的模型,我们可以指定我们的实验生命周期的三个阶段-设计、观察、推理-如何在一系列实验中交互。重要的是,先前实验的结果可用于指导后续实验的最佳设计决策。

图2。这张动画图展示了一个自适应实验的步骤顺序,该实验旨在有效探测人类的工作记忆容量。

以下高级代码显示如何自动计划和执行10个实验序列:

我们的实验的每个循环都开始使用可能的设计使用实验_design_score.并挑选最好的。我们还没有说这个评分职能如何工作 - 我们将在文章的下一部分中挑选。

接下来,我们的代码通过向用户展示所选长度的随机数字列表来获得响应human_response,处理实验的UI方面的函数。最后,我们通过致电更新我们的信仰run_inference.到目前为止,使用我们所获得的所有数据。

实施实验_design_score.,我们首先需要定义设计的质量分数,然后找到有效估计它的方法。

什么是最佳的实验设计?

有许多方法可以得分实验设计;在我们的工作中,我们专注于预期的信息收益(EIG),这是我们预期从做实验获得的信息的衡量标准。要了解EIG是衡量的,我们首先需要了解什么构成a有用的实验。让我们通过研究两个例子来做这件事。首先,我们选择实验设计,进行实验,计算后部,最终与后部分布几乎没有之前,如图3所示,如下:

图3。无信息实验的后验和先验几乎没有区别。

这个实验并不是特别有用,因为我们对目标的真实价值的不确定程度几乎与最初相同。更好的实验将是导致后部比先前更高峰的后部的实验,如图4所示,如下所示:

图4。信息实验的后端比前端要窄得多。

在这里,由于新数据的出现,不确定性降低了。这是有用实验的一般特征。

这种减少可以在方面进行定量,对分布的不确定性衡量不确定性,适用于离散和连续变量。我们使用它来定义实验的信息增益,如:

信息增益=先验熵-后验熵

这个数量衡量我们减少了对目标的不确定性,我们试图通过执行实验来了解的未知。这里定义的信息增益的问题是我们无法计算它直到已经进行了实验,因为计算后部需要实际观察。为了规避这一点,我们在预期的信息收益上得分实验设计,这是我们最终可能最终的所有可能观察的信息增益的期望。

直观地,鉴于我们目前对世界的了解,我们模拟了大量可能的实验结果。然后,我们计算每个结果的信息增益。将所有这些单独的信​​息增益汇总然后产生EIG。

EIG取决于在告诉我们我们已经知道的内容以及我们可能希望提高我们的知识的地方。在自适应实验中,目前占我们到目前为止所见的所有数据。这种依赖性允许最佳的实验设计随着更多知识而改变,以确定最不确定性仍然存在的位置。

计算最佳设计

我们的实验设计得分,EIG是出了名的困难估计。在我们的神经潜艇纸质关于我们对OED的方法,我们提出了四种用于EIG估计的变分方法,每个方法适用于不同的建模假设。在本文中,我们介绍了最简单的一个,称为边缘方法。

为了定义边际方法,我们首先用不同于上面描述的方式表示EIG:

EIG =实验结果的总熵 - 观察噪声的预期熵

在该等方程中,观察噪声是指即使我们知道目标的确切值也无法消除的不确定性。

例如,在工作记忆的情况下,结果的总熵结合了参与者真实工作记忆的不确定性和参与者在简单列表上犯错或幸运地在困难列表上犯错的不确定性。观测噪声的期望熵只考虑后一种不确定性源。

幸运的是,观察噪声的预期熵很容易估计。为了计算实验结果的总熵,我们需要了解结果的边际分布,即在实践中很少可用。在我们的边缘方法中我们对边际分布进行了变分密度近似。我们证明这导致EIG的上限:

EIG≤变分近似的总熵-观测噪声的期望熵

通过改善我们的变分近似,我们可以最小化这个上限,这应该导致到EIG的良好近似。在我们的,我们表明这种方法在一系列不同的实验设计问题上可以非常准确。

最后,鉴于估计EIG的方法,我们需要搜索可能的设计来找到最好的设计。如果设计的数量很小,这可以通过详尽的搜索来完成。对于更大的设计空间,明智的策略包括贝叶斯优化(例如,Botorch.) 要么梯度上升方法

让我们在工作记忆示例中看到边缘方法。

以Pyro估算EIG

到目前为止,我们有一个实验性的循环设置来运行10个实验—我们只需要填写实验_design_score.在每次迭代时获得最佳设计的功能。在这里,我们将使用边缘方法来近似EIG。

为了形成对边缘分布的变分近似,我们需要一个近似分布的家庭(以Pyro为这些称为“指南”)。自结果以来记得_correct.是一个二进制变量,自然选择是伯努利分布:

要估算EIG,我们将培训参数q_logit.为了最小化EIG上的上限,因此提供准确的EIG估计。幸运的是,Pyro为我们提供了大部分时间:

此代码将运行1,000步的渐变血统q_logit.拧紧eig的上限,然后制作104.使用这个近似的EIG的样本估计。下面的图5显示了第一轮实验的EIG得分,在收集数据之前:

图5.计算的EIG随着设计的函数而异;在实验的这个阶段,我们预计长度7的数字序列是最具信息性的。

我们可以看到最好的设计近于七的前均值,我们预期的一些但不是所有参与者能够正确地记住数字列表。这是直观的感觉;如果我们要求参与者记住一个非常简短的数字列表,虽然它们几乎肯定会弄好,但我们将对他们的工作记忆容量很少了解。

相反,如果我们要求参与者记住一个非常长的数字列表,它们几乎肯定会记住它,我们将对他们的工作记忆容量毫无少了解。甜蜜点(换句话说,最佳设计)在中间的某个地方。OED的全部点是以可以自动化的定量方式定义这种甜点。

下面,我们展示了用一个参与者运行自适应实验的多个步骤的输出:

例如,我们看到,如果参与者获得第一个问题,我们的下一个实验应该使用长度5的数字列表。

图6,下面,显示了从顺序自适应实验收集数据时的后后变化:

图6.收集了更多数据,在工作存储器容量上的后后部围绕值为5.5。

在该示例中,先前以蓝色显示在蓝色之后,在各种蓝色/绿色的各种视线中描绘的10个实验中。我们可以看到,当我们收集更多数据时,后锐锐化的工作记忆容量为5.5。

最后,让我们比较OED到一个启发式设计策略,其中我们运行了10个实验,我们要求参与者记住长度1,2,...,10的列表。

图7.由OED指导的一系列实验后,后后的不确定性小于启发式设计的实验。

值得清楚的是,使用最佳设计已经导致在同一次数次数后的结论。换句话说,OED使我们能够使用相同的实验预算了解更多关于世界的更多信息。虽然这可能不是我们的简单实验,但我们可能是非常复杂的实验的好的设计启发式可能是非常困难的 - 而且几乎不可能找到适应性的好的启发式这就是为什么OED如此吸引人:它自动化实验设计,并使实验更有效。

设计其他类型的实验

我们通过了如何使用上述边缘方法设计自适应实验。这种方法相当灵活。例如,如果观察是连续的而不是离散的观察,它可以同样地工作(尽管在这种情况下,我们需要不同的marginal_guide)。

边缘方法不适用的其他类型的模型。具体地,在工作存储器示例中,除了目标之外没有其他变量working_mem_capacity记得_correct.。有时,模型中存在额外的滋扰变量,在这种情况下,EIG中的“观察噪声”项的“预期熵”术语不再易于计算,因此边际方法不起作用。

另一种估计器,也来自我们的神经缺陷纸,是后估计。当其名称表明时,该估算器利用了对后验而不是边缘分布的变分近似,并且可以用滋扰变量的模型中使用。在这个烟花教程,我们展示了如何使用后估计人员寻找投票策略,以便更准确地预测美国总统选举(目标)的获胜者,而无需准确估算每个州(滋扰变量)的投票模式。

另一个潜在的限制是设计空间的大小。在工作记忆示例中采用的方法是为每个可能的设计打分,然后选择最好的一个。不出所料,这并不适用于大型设计空间。在我们的艾斯特诗纸但是,我们表明,对于连续设计,我们可以使用梯度上升来学习设计并提高各种变化近似。这是有吸引力的,因为这意味着我们可以定位最佳设计,而无需访问大部分设计空间。

期待

用于在广泛的应用中最佳地设计实验的工具,并且在各种应用中具有巨大的价值。例如,神经科学家使用OED来映射大脑中的神经微电路自适应选择哪种神经元刺激;心理学家使用这项试验比较人类记忆的竞争模式改编对于更好的回忆的参与者变得更加困难;和OED用于临床试验设计选择最佳样本尺寸。

通过开发和用pyro打开采购od,我们希望社区中的其他人可以从本框架中受益,并将其应用于自己的研究领域。雷竞技是骗人的要了解有关贝叶斯最佳实验设计的变分算法的更多信息,请查看我们最近的论文介绍变分牛津英语词典将其扩展到高维设计

有关以Pyro OED的更多详细信息,包括代码,请参阅教程基于上面介绍的工作内存示例和另一个on示例设计选举民意调查

评论

没有帖子显示