扬声器 | 成绩单 |
| 詹姆斯·维斯诺夫斯基 | 欢迎团队发现。 Andrew Carl 和 Darryl Ahner 以及我很高兴能够介绍两种新的采样技术:自适应采样技术和 |
| 确实会在增强实验设计方面为一些从业者提供一些奇妙的有用性。 我想做的是我想回顾一下我们的一些 |
| 我在这里的流程一直在谈论这一切是如何发生的。 但当我们考虑 DOE 和增强设计时,JMP 中已经具备了强大的功能。 |
| 因此,我们在进行一些非常大规模的模拟研究时发现,我们在这里遗漏了一部分 |
| 间隙填充设计和自适应采样设计。 还有 |
| 关键点是自适应采样设计将重点关注响应。 |
| 因此,这与您考虑可能进行增强并查看设计空间并查看 X 矩阵的标准设计时有很大不同。 所以现在我们将实际考虑目标或响应。 所以这实际上会结束 |
| 提供全新的功能,以便我们可以测试令人兴奋的其他样本。 因此,我们希望处于一个高梯度区域,就像您在响应面方法中所想象的那样,与上升一样深。 |
| 现在,我们将通过在模拟中使用许多变量和数千次运行来实现这一点,从而实现自动化。 |
| 好消息是,对于小型设计的从业者来说,这确实可以很好地缩小规模。 |
| 我将快速浏览一下我们将要向您展示的添加内容,然后安德鲁将谈论一些相关的技术细节。 |
| 所以我确实想道歉的一件事是,这将相当以 PowerPoint 为中心,而不是 JMP 添加 |
| 有两个原因...我应该说,而不是 JMP 演示...有两个原因,主要是因为我们 |
| 时间,我们有很多材料需要完成,而且我们的 JMP 利用率实际上是在我们在自适应采样中制定的算法中。 所以 |
| 最终,JMP 的点击是我们开发的一个非常简单的用户界面,但幕后有什么 |
| 和算法,这确实是 JMP 的力量,所以。 如此之快,间隙填充设计非常清晰。 我们可以看到这里有一些差距,也许这有点夸张地展示了技术, |
| 尽管实际上我们可能有大量的因素,维度灾难可能会发挥作用,并且您的设计中存在这些漏洞。 |
| 你可以看到,我们可以用这个空间填充设计来增强它,这是一种主力 |
| 在我们很多工作的增强中,特别是在刺激呼叫方面,看起来还不错。 如果我们看看那些新的蓝点 |
| 点,我们添加的点,看起来还不错。 然后如果你开始仔细观察,你会发现,我们开始复制很多 |
| 我们已经完成了,也许我们没有像我们想象的那样填补这些漏洞,特别是当我们去掉蓝色着色时,我们可以看到 |
| 那里仍然存在相当多的差距。 因此,当我们开发自适应采样时,我们认识到其中的一件事是我们需要填补一些漏洞 |
| 在很多这样的设计中。 我们在我们的工具(我们的插件)中提出了一种算法,称为边界浏览器,它将执行此特定操作...... |
| 对于任何设计,它都会执行此特定功能来填补漏洞,您可以看到它在许多不同的应用程序中可能有很多实用性。 |
| 因此,在这张特定的幻灯片或图表中,我们可以看到这些蓝点现在可能更集中于孔,并且有一些蓝点分散在该区域的其余部分。 但即使我们去... |
| 你可以涂上颜色,看起来更均匀,我们已经很好地填充了这个空间。 |
| 现在,这更多的是我们实现总体目标所需的实用程序,即主动采样。 我们为此找到的主要应用程序 |
| 是自治系统,它引起了很多关注并进行了大量的生产和测试,特别是在国防部。 |
| 所以在自治系统中,当你想到它时,你可能会想到实际上有两个主要项目。 在自治系统中,您真正关注的是您真正需要的 |
| 一些传感器可以让系统知道它在哪里。 然后是算法或软件对此做出反应。 所以它是一种传感器- |
| 我们主要关注的算法软件集成。 然后驱动的是一个非常复杂的模拟模型,老实说需要 |
| 运行很多很多数千次。 但更重要的是,我们发现在这些自主系统中,我们在性能方面存在这些界限。 |
| 例如,我们有一个来自军队的领导者-追随者的例子。 那是士兵驾驶重装甲车的地方 |
| 车队中的卡车,然后车队的其余部分将是自主的,他们不会有士兵。 |
| 或者想想也许是最新的特斯拉皮卡车,你有自动导航,对吧? 所以我们的想法是我们正在寻求测试这些系统,并且我们最终必须进行大量测试。 发生的事情是 |
| 例如,即使在这辆特斯拉中,你的时速可以达到 30 英里,你也可能没问题并避开障碍物。 但在 30.1 时,您将不得不进行超出算法规范的规避操作。 所以 |
| 当我们说存在这些界限时,这就是我们所谈论的。 它们非常陡峭 |
| 响应的变化,非常高的梯度区域。 这就是我们想要集中注意力的地方。 |
| 我们并不像平坦的表面那样感兴趣,这才是真正有趣的部分,这就是我们想要做的地方。 |
| 老实说,我们发现,迭代得越多,我们的解决方案就越好。 我们完全 |
| 建议将其作为迭代过程来执行。 因此,这就是适应性部分,进行测试,然后生成一些新的优点,然后查看这些响应是什么,然后根据它们调整您的下一组运行。 |
| 这就是我们的自适应采样。 |
| 这个想法的起源实际上来自我们与约翰·霍普金斯大学应用物理实验室所做的一些工作。 他们正在与军队一起做一些非常好的工作 |
| 在审阅他们的一篇期刊文章时,我心里想,你知道,就你正在做的事情而言,这真是太棒了,我们甚至可以使用 JMP 来提出一个更容易访问的解决方案许多从业者。 因为问题是 |
| 约翰·霍普金斯大学的特点是它非常具体,并且有点......整合,这不是非常重要的东西 |
| 较小的测试团队也可以使用。 所以我们想把它交给可以立即使用它的人们手中。 |
| 这篇来自《系统与软件杂志》的论文,是我们边界探索器的来源。 事实证明,我们使用了很多好主意,但我们能够想出不同的方法和 |
| 和其他方法。 特别是,使用 JMP Pro 中的本机功能以及一些开发,例如我们一路上所做的间隙填充设计。 |
| 现在, |
| 就这个示例问题而言,可能最好我去解释一下 |
| 就在此处的演示中。 因此,如果我看这里的图表,我可以看到......我将使用这个......我将回到特斯拉的例子。 假设我正在做一个自动导航类型的活动,并且我有两个输入因素,也许 |
| 我们有交通的速度和密度。 所以我们正在考虑这个 Tesla 算法。 它想要并入左侧车道,所以它想要,我应该说,你知道,超车。 所以它必须合并。 因此,其中之一是特斯拉的行驶速度,另一个可能是交通密度。 |
| 然后也许在这个区域我们的数字更低。 所以我们可以想到这些数字 2 到 10,我们甚至可以想到响应,甚至可能像碰撞的概率。 |
| 因此,在低速/低密度的情况下,我们发生碰撞的可能性非常低,但在高速/低密度的情况下,我们发生碰撞的可能性非常低。 |
| 高密度,那么你的概率就非常高。 但重点是我在这里强调和选择的,你可以看到那里非常陡峭 |
| 沿边界区域的性能差异。 因此,当我们进行模拟并开始对算法进行越来越多的软件测试时, |
| 我们会注意到,在这里获得更多积分确实对我们没有多大好处。 我们知道我们在低密度和低速度方面做得很好。 我们想做的是真正在边界区域开展工作。 这就是我们的问题, |
| 我怎样才能生成 200 个真正符合我的边界条件的新点。 |
| 现在,我所做的是我真的,它是 X1 和 X2,再次考虑速度和...... |
| 我们的速度以及密度。 然后我只是在这里添加了一个没有任何意义的预测变量。 然后就是我们的回应。 所以要做到这一点,我所要做的就是进入边界探索器并在自适应采样下, |
| 我的两个回复(您可以根据需要获得任意多个回复),然后这是我的三个输入因素。 然后我在这里有一些设置,无论我是否想要定位全局最小值和最大值,显示边界。 |
| 我们最终还将向您展示您在这里拥有一定的控制权。 那么,在这个算法中,我们真正要寻找的是,最近的邻居在做什么? 如果所有最近的邻居都有相同的响应,则具有的概率为零 |
| 一个意外,那不是一个很有趣的地方。 我想看看哪里有很大的差异。 这就是最近的邻居所在的地方 |
| 发挥作用。 所以我会继续运行这个。 我们现在可以看到,该算法使用了 JMP 的本机功能进行预测筛选,并且 |
| 幸运的是,没有使用正态分布。 您可以看到它正在运行引导森林。 安德鲁将谈论它的用途。 |
| 最终 |
| 我们在这里要做的是生成一整套新点,这些点有望落在边界上。 所以,你知道,花了 30 秒左右的时间来完成这些要点,从这里我可以继续前进并拉起 |
| 我的新观点。 所以你可以看到我的新观点有点沿着这些界限,如果我继续把其他观点放进去,可能最容易看到 |
| 那些。 |
| 所以就在这里,也许我会 |
| 在这里快速切换颜色。 |
| 我将继续展示扰动的中点。 |
| 所以现在我们可以看到所有新点在哪里。 所以,那些有阴影的点,那些是原始的点,现在我们看到了在该边界中生成的所有新点。 |
| 当然,问题是,我们是如何做到的? |
| 所以我要做的就是回到我的演讲。 |
| 从那里,我会将其移交给安德鲁,他将提供更多关于我们如何找到这些边界点的技术细节,因为它并不像我们想象的那么简单。 |
| 安德鲁·卡尔 | 好的。 谢谢,吉姆。 我将首先讨论快速填补空白,因为除了将其集成到整体野兽工具中之外,我们还将其放入其中。 |
| 它也是一个独立的工具。 因此它有一个相当简单的界面,我们可以在其中选择定义要填充的空间的列。 |
| 对于连续因子,它读取编码列属性以获取高值和低值,并且也可以采用名义因子。 |
| 此外,如果您是从自定义设计或空间填充设计生成的,并且您有不允许的组合,它将在不允许的组合脚本中读取 |
| 并且只在允许的空间内进行间隙填充。 因此,用户指定他们的列,以及他们想要的新运行的数量。 |
| 让我在更高维空间中展示一个真实的快速示例。 这是一个三维的情况。 我们有一个立方体,在其中取出一个空心圆柱体,我们经历了添加这些间隙填充运行的过程,我们将把它们一起打开,看看它们如何组合在一起。 |
| 然后也关闭颜色,看看会发生什么。 |
| 所以这很好,因为在更高维度的空间中,我们可以填补这些我们甚至在变量图中不一定能看到的空白。 那么我们该怎么做呢? |
| 所以我们要做的是,我们获取原始点,在本例中,原始点现在是红色而不是黑色,我们可以看到这两个间隙在哪里, |
| 然后我们覆盖整个空间的空间填充设计的候选运行集。 |
| 我们为旧候选点和新候选点的连接数据表添加一个指示符列,连续指示符列,我们将旧点标记为 1,将候选点标记为 0。 在这个串联空间中,我们现在适合 10 个最近邻 |
| 模型到指标列,我们从中保存预测。 因此候选者以最小的预测运行,在本例中为蓝色, |
| 是我们要添加到设计中的间隙点。 现在,如果我们一次性执行此操作,它往往会过分强调最大的间隙。 所以我们实际上是这样做的 |
| 十倍过程,我们将采用十分之一的新点,选择它们,如下所示,然后将它们添加进去,然后重新运行我们的 k-近邻算法来挑选一些新点并填充所有空间更均匀。 |
| 所以这只是一种选择......间隙填充是边界浏览器中可用的一种选择。 |
| 因此,吉姆表明,我们可以使用任意数量的响应、任意数量的因子,并且我们可以同时拥有连续和名义响应以及连续和名义因子。 |
| 事实上......不断出现的因素,我们将把幕后人员标准化为 01,以使他们处于更加平等的地位。 |
| 对于涉及到的各个响应,我们将单独循环每个响应,以找到因子空间内每个响应的边界。 |
| 最后,我们有一个使用随机森林的多变量工具,它可以立即考虑所有响应。 |
| 因此,我们将看到 GUI、用户界面中可用的每个不同选项如何在算法中出现。 |
| 因此,在对任何这些连续列进行归一化之后,第一步是对所有连续和名义响应进行预测筛选。 |
| 要做的就是找出预测变量,它们与每个特定的响应相关。 |
| 我们在用户界面中对解释的变体比例或每个变量的贡献部分有一个默认设置 0.05。 因此,在这种情况下,我们看到 X1 和 X2 被保留用于响应 Y1,而 X3 噪声被拒绝。 |
| 下一步是运行最近邻算法。 我们使用默认值 5,但用户可以切换该选项。 |
| 我们并不那么关心它的预测效果如何,因为我们只是简单地使用它作为一种方法 |
| 到达五个最近的邻居。 五个邻居的邻居排第几行,距离有多远? 距当前行的距离是多少? |
| 我们将使用最近邻的信息来识别每个点,每个点是边界点的概率。 |
| 我们必须在这里使用 split 并对连续或名义响应采取不同的方法。 对于名义响应,我们所做的是将当前列的响应连接起来 |
| 以及按顺序排列的五个最近邻居的响应,在此连接连接邻居列中。 |
| 我们有一个简单的启发式方法,用于根据连接的邻居列来识别边界概率。 |
| 如果所有响应都相同,我们就说它是边界点的可能性很小。 |
| 如果至少有一个响应不同,那么我们说它有中等概率成为边界,对不起,是边界点。 |
| 如果两个或多个响应不同,则它很可能是边界点。 我们还记录使用的行。 在这种情况下,这就是边界对。 因此,这是具有与当前行不同的响应的最近邻居。 |
| 我们可以在原始空间填充设计中绘制这些边界概率。 |
| 正如吉姆早些时候提到的,我们有一个......我们最初运行一个空间填充设计,然后运行这个边界探索工具来......探索空间并获得一些响应。 |
| 现在我们将其纳入其中并计算了这些的边界概率。 我们可以看到我们的边界概率与实际边界相匹配。 |
| 对于连续响应,我们采用来自五个最近邻居的连续响应,并为每个响应添加一列,然后采用它们的标准差。 |
| 邻居标准差最大的点是位于最陡梯度区域的点,这些点更有可能是我们的边界点。 |
| 我们还将标准差乘以平均距离以获得信息度量, |
| 因为它的作用是对于相邻标准差相等的两个点,它将增加位于较稀疏区域中的点的权重,该区域中已有的点较少。 |
| 现在我们已经有了这个连续的信息度量,我们必须弄清楚如何将每个点分成高、中、低概率。 |
| 所以我们要做的就是适应分销。 我们拟合正态三混合,并使用平均值作为最大分布作为高概率点的截止值。 |
| 我们使用最大和第二大正态分布的密度的交集作为中等概率点的截止值。 |
| 因此,一旦我们确定了那些截止点,我们就应用它来形成我们的边界概率列。 |
| 我们还保留使用的行,这是最接近的。 在这种情况下,对于连续响应,即具有与当前角色的绝对值差异最大的响应的邻居。 |
| 因此,现在对于连续响应和名义响应,我们有相同的输出。 我们有边界概率和使用的行。 现在我们已经确定了边界点, |
| 我们需要能够使用它来沿着边界生成新点。 |
| 所以第一个方法,从某些方面来说,也是最好的方法 |
| 用于瞄准和放大边界的方法就是我们所说的中点法。 我们对每个边界对、每行及其行使用、其最近邻所做的操作 |
| 之前确定的...抱歉,所以不是最近的邻居,而是在标称响应差异方面最相关的邻居或在连续响应方面最不同的邻居。 |
| 对于连续因子,我们取这两个点中每个点的坐标平均值来形成中点。 这就是您在图表中看到的内容。 所以我们要提出一点 |
| 在红色圆圈处。 对于名义因子,我们对边界对所做的就是获取该因子的水平 |
| 存在于两点中的每一点中,我们随机选择其中一个。 这样做的好处是,如果它们都相同,那么这意味着这两个点的名义因子的中点也将处于相同的水平。 |
| 我们称为扰动方法的第二种方法是简单地向每个识别的边界点添加随机偏差。 |
| 因此,对于高边界...高概率点,我们添加两个这样的扰动点,对于介质,我们添加一个。 |
| 对于这一点,我们添加,对于连续因素,我们添加随机偏差。 正常表示0;标准差,标准化空间中的 0.075,并且 0.075 是可以缩放的 |
| 在用户界面内增加或减少边界周围的扩散量。 |
| 然后对于名义因素,我们所做的就是......我们随机挑选每个名义因素的水平。 现在对于高概率... |
| 获得第二个扰动点的高概率边界点,我们所做的是在第二个扰动点中,我们将这些标称因子设置限制为全部等于原始点的标称因子设置。 |
| 因此,我们执行识别边界并为边界浏览器中指定的每个响应创建中点和扰动点的过程。 |
| 一旦我们这样做了,我们将所有内容连接在一起,然后我们将查看为所有响应确定的所有中点, |
| 现在使用多变量技术来生成任何额外的运行。 因为用户可以指定他们想要多少次运行,而这些中点和扰动方法仅生成固定数量的运行,并且取决于 |
| 我想你可能会说,为了数据。 |
| 因此,我们所做的与间隙填充设计类似,我们采用所有已识别的扰动和所有响应的中点 |
| 我们用候选点的空间填充设计来填充整个空间。 我们将连续指标中的候选点标记为 0,中间点标记为 1,扰动点标记为 0.01。 |
| 我们将随机森林拟合到该指标。 然后我们看一下。 我们保存候选空间填充点的预测 |
| 然后我们选取具有该边界指标最大预测值的候选运行。 |
| 这些是我们使用随机森林方法添加的。 现在,由于这是一种多变量方法,如果您的设计空间中有一个区域是多个响应的边界,那么它将受到额外的重视和额外的运行。 |
| 所以这里将这三种类型的点放在一起显示。 |
| 现在,再次强调吉姆所说的,这需要在多次迭代中发生,因此我们将从边界浏览器工具中收集这些信息 |
| 然后将其连接回原始数据集。 然后在我们得到这些响应后,重新运行边界探索器,它将 |
| 不断迭代,放大边界和影响,甚至可能找到更多边界。 所以扰动点是最有用的 |
| 对于仍在探索空间的早期迭代,它们更加分散,并且随机森林方法更适合后期迭代,因为 |
| 它将有更多可用的中点,因为它不仅使用当前迭代中的中点,还使用之前记录的中点。 我们在数据表中有一个列记录了添加的点的类型。 所以我们也将使用之前的所有中点。 |
| 因此,如果我们将我们一直在寻找阶跃函数的示例的表面图放在其中,我们可以看到我们的新点、中点和扰动点都沿着悬崖落下,这是边界,这就是我们想要的查看。 |
| 因此,用户界面的最后两个选项或指示这些间隙填充运行,我们还可以要求它以全局最小最大为目标或匹配任何连续因子的目标(如果将其设置为列属性)。 |
| 在这里仅展示最后一个示例,我们在这个示例中将这两个峡谷穿过一个平面,并在它们的交叉点处有一口深井。 |
| 我们已经运行了初始空间填充点,这些点是为了了解响应而显示的。 如果我们运行边界浏览器工具的两次迭代, |
| 这是所有新点放置的地方,我们可以看到这两条线中间的间隙。 这些差距是什么? |
| 如果我们看一下表面图,这些间隙就是峡谷底部,实际上并不陡峭。 所以它是平坦的,即使是在一个小区域内, |
| 但所有这些点,所有这些中间点, |
| 不是放置在飞机上,而是放置在陡峭的悬崖上,这正是我们想要的地方。 在这里,我们打开和关闭最小点,您可以看到这些点正在触及井底。 所以我们也能够以最低限度为目标。 |
| 所以我们的工具呈现了两个不同的、两个离散的 |
| 选项,新工具。 我们希望间隙填充可用于任何为连续因子设置编码属性的数据表。 |
| 然后,边界浏览器工具可用于添加、执行不单独查看因子空间的运行,但它们会查看响应以瞄准高梯度...高变化区域以添加额外的运行。 |