|
扬声器
|
脚本
|
| 约书亚·W·兰伯特 |
你好。 |
| 罗宾·戈弗雷 |
你好,我是罗宾,我叫乔希。 |
| |
是的。 |
| 罗宾·戈弗雷 |
新人。 |
| 约书亚·W·兰伯特 |
是的,我也很高兴见到你,抱歉,我只是在这里打开了 PowerPoint。 |
| 罗宾·戈弗雷 |
好的。 |
| |
您有任何共同主持人吗? |
| 约书亚·W·兰伯特 |
不。 |
| 罗宾·戈弗雷 |
好的,我们就按照这里的清单往下看,我们正在记录这件事,所以你需要口头确认,你知道你正在被记录。 |
| |
是的。 |
| 罗宾·戈弗雷 |
手机互联网通知被静音。 |
| 约书亚·W·兰伯特 |
是的。 |
| 罗宾·戈弗雷 |
是的,我想我就像 Windows 任务栏和所有那些,当然它们就像你的电子邮件在中间关闭一样。 |
| 约书亚·W·兰伯特 |
我不认为我已经把所有东西都关闭了,他们以前从来没有这样做过。 |
| 罗宾·戈弗雷 |
我认为它在任务栏里。 |
| |
我们来看看。 |
| |
只要关闭你的电子邮件和其他东西就没问题了。 |
| |
好的。 |
| 约书亚·W·兰伯特 |
拿到了玉米饼。 |
| 罗宾·戈弗雷 |
好的,太好了,我要躲在这里。 |
| |
要做到这一点,每次我这样做,我必须,我必须喜欢好吧,我做了什么。 |
| 约书亚·W·兰伯特 |
那么。 |
| |
就演示而言,我猜你们会在我开始的时候就切断。 |
| |
是的,您还有什么问题要问吗? |
| 罗宾·戈弗雷 |
不,不,所以你只需像平常一样进行演示即可。 |
| |
对的,你知道你拿出了幻灯片和所有东西。 |
| |
如果您想先发言然后再展示幻灯片,这样没有问题,如果您需要重新开始或类似的事情,只需告诉我,我们可以这样做,没什么大不了的。 |
| |
好的,你就像一个相机一样,有没有什么办法可以稍微后退一点,因为你离得真的很近。 |
| |
我甚至无法看清你的整个脸,我只能看到。 |
| 约书亚·W·兰伯特 |
知道我忘了。 |
| 罗宾·戈弗雷 |
是的,有一点点。 |
| |
或者也许将相机稍微放低一点。 |
| |
那挺好的。 |
| |
是的,很好,我们可以看到更多你的肩膀和其他部位。 |
| |
所以我要静音,请给我几秒钟,然后你就可以了。 |
| |
准备好了就可以开始了。 |
| |
伟大的。 |
| 约书亚·W·兰伯特 |
大家好。我叫 Josh Lambert。我是辛辛那提大学的助理教授,使用 JMP 已有大约 10 年了。 |
| |
我很高兴与你们分享我所做的一些工作,使用我构建的插件探索回归模型中的交互作用,该插件使用我开发的一种称为可行解算法的算法。 |
| |
所以 |
| |
今天我们要讨论的内容。所以我将以一个小例子开始,这将激发我们的讨论,以及我一直在研究的问题概述。 |
| |
一个潜在的解决方案。 |
| |
然后讨论我如何将解决方案实施到 R 包中,然后将其移至 JMP 插件以及我执行此操作的过程。然后我将讨论一些未来的努力以及我在此过程中学到的一些东西。 |
| |
那么让我们用一个小例子来激发我们今天的讨论。我将这个例子称为数据科学家汤姆。让我们来认识一下汤姆。他是一名数据科学家,汤姆从事许多典型的数据科学活动,具体来说,汤姆在 JMP 中构建了多变量回归模型。 |
| |
他主要处理具有许多变量的表格数据,汤姆意识到这些多变量回归模型缺乏复杂性,具体来说,它们缺乏交互项和二次项。 |
| |
而汤姆……这让汤姆很沮丧,汤姆不想直接进入机器学习领域。 |
| |
因此他希望有一种方法可以探索回归模型中的交互效应。 |
| |
他想要测试一些相互作用,但他必须将这些相互作用手动放入 JMP 中的拟合模型平台中。 |
| |
你知道,运行所有这些程序会花费很多时间。例如,如果 Tom 的数据集中有 200 个变量,他需要查找所有双向交互,那么需要检查的双向交互就有 19,900 个。这有点太多了。 |
| |
因此汤姆想知道,是否存在一种算法和数据驱动的方法来探索回归模型中的交互作用,而无需手工制作它们,也不需要检查所有这些可能的组合? |
| |
让我们从数学和统计学的角度来概述一下这个问题。我们面临的问题是数量和复杂性问题。 |
| |
因此数量和复杂性 |
| |
将继续以非常快的速度增长。我们随时都有越来越多的数据可供使用,而且这些数据的复杂性也在增加。 |
| |
交互的问题在于需要检查的交互实在太多了。 |
| |
通常,数据科学家、统计学家和科学家必须带着一组已知的相互作用进行分析,以检查 |
| |
然后继续检查。这个问题有很多原因, |
| |
你可能不太清楚哪些相互作用可能存在或不存在,但你希望能够在数据中探索它们 |
| |
无需借助随机森林或主成分分析等模型进行某种数据缩减,也无需进行更复杂的处理。您确实希望能够在构建回归模型的过程中完成一些事情。 |
| |
因此,随机森林和主成分以及其他机器学习类型任务的另一个问题是,这些东西通常很难解释,我们想补充一点......在探索交互时保持回归模型的可解释性。 |
| |
因此通常我们的回归工作流程 |
| |
因此,统计学家花费大量时间构建一个简约的(我称之为)基础模型,其中包含必要的变量并且没有添加交互效应。 |
| |
这个基础模型,统计学家将在这个基础模型上花费很多...很多时间,很多资源,精力,花时间思考它们是否可以解释,以及它们是否具有良好的语境意义。 |
| |
这些不包含复杂性的基础模型的问题在于,它们假设效应……它们估计的效应在所有可能的子群体(如性别、种族、年龄)中都是一致的,但这通常并不正确。 |
| |
缺乏复杂性 |
| |
确实阻碍了人们使用它,相比之下,机器学习模型在建模这种复杂性方面做得非常好。因此,这个问题可以总结如下。 |
| |
有没有办法让我们不完全依赖传统的多变量回归模型,也不完全依赖机器学习模型, |
| |
而是在中间找到一个最佳平衡点,这样我们就可以利用回归模型的良好可解释性,并添加一两个交互作用 |
| |
我们在这些大数据中发现,这样我们就可以为我们的模型和复杂性添加有趣的细微差别,从而再次增加预测性能以及良好的情境感。 |
| |
因此,如果有办法做到这一点,我们真正想做的是为统计学家、数据科学家和研究人员开发一种工具,以便他们能够在建立基础模型后探索相互作用。 |
| |
基础模型首先发生,然后通常进行复杂性探索。 |
| |
因此,如果我们要开发这样的工具,我们会有一些限制和偏好。我们希望基于传统统计模型线性逻辑回归, |
| |
我们希望它们保持可解释性。如果可能的话,我们希望检查更少的模型,并且我们更喜欢可行模型而不是最优模型。稍后我会更详细地解释这意味着什么,但从本质上讲,它真正的意思是 |
| |
我们希望有多种解决方案,而不是只有一个好的、我们称之为可行的解决方案。 |
| |
我们还希望它具有灵活性。它可以适应线性回归、逻辑回归、Cox 比例回归。我们可以将它用于泊松回归,任何类型的回归,这个框架或工具都可以用于。 |
| |
再次强调,这将是传统统计方法和机器学习的混合体。得出的结果不一定是推论性的,但它们将是探索性的,它们将激励和影响我们未来花时间做的事情。 |
| |
那么现在我们来讨论这个潜在的解决方案,即可行解决方案算法。 |
| |
这个算法……可行解算法有时也被称为 FSA,或者我喜欢这么叫它, |
| |
是在本文中首次讨论的......实际上是在我 2018 年撰写的这篇论文中首次详细讨论的。 |
| |
和 |
| |
我将在这里总结一下该算法的作用。 |
| |
因此,该算法的目标是识别 m 阶交互作用(如果 m 为 2,则为双向交互作用;如果 m 为 3,则为三向交互作用), |
| |
有一个可行的标准,所以这个标准不一定是最好的标准,但它是一个 |
| |
标准是 |
| |
也许在某种程度上被认为是半最优的。 |
| |
因此,要做到这一点,我们将遵循以下步骤。我们要做的第一件事是从 m 阶随机交互开始,对于我们的情况,我们假设这是一个双向交互,因此 m 为 2。 |
| |
我们将考虑其中一个变量的所有交换以及所有其他变量的交互。例如,假设我们随机启动它。 |
| |
我们有五个变量,所以这只是一个小例子,只是为了激发这里的步骤,但假设我们有五个变量,我们随机从 X3、X5 开始,我们的标准,即该随机起始位置的 R 平方为 .5。 |
| |
假设算法的工作方式是考虑将变量 X3 或 X5 之一替换为其他变量。那么我们的选择是 |
| |
X3 X1、X3 X2、X3 X4、X5 X1、X5 X2 和 X5 X4。因此请注意,在所有可能的情况中,我称之为交换的情况至少有一个起始位置变量,好吗? |
| |
然后,我们要做的就是,根据所有这些,拟合这些模型,并找出这些模型的标准。因此,我们在这里可以看到 |
| |
对于X3 X5模型,我们有.5;对于X3 X1,标准是.4。 |
| |
有了 R 平方,我们显然不想去更糟糕的地方,我们希望去一个更好的地方,R 平方更高,所以我们会在所有可能的选择中找出最好的去处。 |
| |
在这个例子中,最佳位置是交换 3,即 X3 X4。所以我们要做的是继续进行第三步,然后从第二步进行最佳交换。 |
| |
在这种情况下,我们将移至位置 X3、X4,然后返回到第二个位置并重复,直到无法做出任何改进。 |
| |
因此,我们会重复这个过程,移动到某个地方,从那里开始,考虑所有的交换,直到最终我们无法取得进步。 |
| |
我们将在...那个地方找到可行的解决方案。 |
| |
我们将重复步骤一到步骤四来寻找其他可行解决方案。我们可以反复执行此过程,并且此过程(可行解决方案算法)不能保证为您提供最佳解决方案,尽管有时它可以为您提供最佳解决方案。 |
| |
让我们来谈谈使用这种算法(可行解算法)的一些副产品。这些副产品在一篇论文中进行了概述, |
| |
我的同事埃利奥特 (Elliott) 在 2021 年写道,她在其中描述说,可行解并不能保证,正如我之前所说,对于所选标准而言是最佳的。 |
| |
也就是说,所有最优解都是可行解,但并非所有可行解都是最优解。因此,可行解是一种半最优解,它们为您提供了良好的标准,可行标准,但不一定是最优标准。 |
| |
这些可行解决方案标准通常非常接近最佳标准,因此它们往往相当不错。只是可能不如最佳方案好。 |
| |
很多...如果你重复这个过程,这...这四个步骤,你将获得许多潜在的可行解决方案,所以如果你执行这个算法 10 次,你可能会得到四个可行的解决方案。 |
| |
你可能会得到 10 个可行的解决方案。这取决于你使用的数据,以及该数据集的协方差,所以有点 |
| |
不确定你会得到多少个解决方案。 |
| |
这就是为什么我们通常鼓励用户多次重复可行解决方案算法,因为这会增加你获得最优方案和可行方案的机会,并确保你已经 |
| |
充分搜索了空间。我们还有另一篇论文描述了我应该进行多少次随机排序才能确保我有合理的概率获得最优排序(如果有人感兴趣,欢迎联系我)。我们有一个 |
| |
关于此问题的理论论文。 |
| |
但本质上,这种运作方式是,其中一些互动更具吸引力。他们……测试空间比其他人更吸引他们,所以你最终得到的结果是,有时,即使 |
| |
交互不是最佳的,有时会导致...数据通常会导致它 |
| |
通过可行的...可行的解决方案算法往往可以让你比最佳算法更频繁地到达那个地方,而这与数据的相关性等等有关。 |
| |
那么让我们来讨论一下 R 包以及我如何将其移动到 JMP 插件。 |
| |
所以 |
| |
这个 R 包叫做 rFSA,我知道有些人可能已经广泛使用 R,而有些人则没有。 |
| |
R 是一种非常好的编程语言,统计课程经常会讲到它,所以当我在写毕业论文的时候,它就是我首先想到的语言。 |
| |
编写这个算法并真正为社区提供一种工具,使其能够识别和探索他们自己的数据集中的交互。 |
| |
因此 rFSA 包实现了我刚才谈到的可行解决方案算法 |
| |
用于大型数据集中的交互,该包支持许多不同标准的优化,如 R 平方、调整后的 R 平方、AIC |
| |
交互作用、P 值等等。它还支持不同的建模策略,如线性模型和广义线性模型,并且可以轻松适应其他类型的建模,如 Cox 比例风险模型。 |
| |
并且由于它会按照您指定的次数重复该算法,因此它还会提供多种解决方案。 |
| |
那么为什么...我想稍微谈谈我将这个软件包移至 JMP 的动机,我将谈谈为什么、何时以及如何这样做。 |
| |
所以第一个问题是,为什么要这样做?首先,这样做很有趣。我喜欢用不同的编程语言编写。我没有太多使用 JMP 脚本语言编写的经验,这是 JMP 版本的 |
| |
统计编程语言,所以我想学习它,我认为将这个我花了四年多时间开发的 R 包转移到 JMP 上会很有趣,因为 |
| |
我非常喜欢 JMP。我认为 JMP 很棒。对于我和我的数据来说,这真的是一个很棒的工具 |
| |
分析流程。我通常在 JMP 中开始所有项目,探索数据,绘制数据图,观察事物,然后这让我对这些数据有了很好的直觉。我发现我的很多 |
| |
同事,特别是我的一位顾问,他主要在 JMP 中工作,他总是向我询问 JMP 中的 FSA 包。 |
| |
所以我想,为什么不给他呢?他当然值得拥有,所以我决定那将是一个很好的工具,希望其他人也能 |
| |
充分利用它。这也引出了我关于为什么要这样做的另一个观点,我已经收到了很多关于 rFSA 的很好的反馈。 |
| |
具体来说,我一直在追踪有多少人下载了我的 R 包,自 2019 年我们推出该包以来,已有超过 16,000 人下载了它。 |
| |
我收到过来自世界各地的无数封电子邮件,我希望人们在 JMP 中也能使用同样的东西,我希望通过这个插件,人们能够找到非常酷的交互方式,从而改变他们解释数据和理解数据的方式。 |
| |
然后你可能会问,我什么时候打算做这个?这并不是有人付钱让我做的事情。你知道,JMP 并没有付钱让我做这件事。 |
| |
就我目前的职位而言,虽然我认为他们会觉得这很有趣,但他们可能并不热衷于我花大量额外的时间来做这件事。 |
| |
但幸运的是,我的工作安排让我在周五有了一些空闲时间。我尽量把周五下午或周五上午的时间留给自己玩乐, |
| |
与我的工作有关的有趣事情。我称之为“欢乐星期五自由时间”,而我决定在过去几个月里利用“欢乐星期五自由时间”来构建 JMP 插件。 |
| |
你可能会问,我该怎么做呢?你知道,我不懂 JMP 脚本语言。我该怎么做呢?所以 |
| |
首先,你知道,我要学习它。所以有很多关于如何学习 JSL 的优秀资源。 |
| |
因此,实际的 JMP 软件本身就包含 JMP JSL 代码支持。只需转到帮助,您就可以直接进入 |
| |
那里有脚本索引。网上有无数的东西 |
| |
如何理解 JMP 脚本语言以及从哪里开始。还有 community.jmp.com, |
| |
这对于入门来说真的很棒,你可以在这里提问或查看其他人提出的问题,并借用他们公开发布的代码,以便……供大家享用。我在这里这样做过很多次,感觉真的很棒。 |
| |
所以我将更深入地介绍这些内容,如果你有兴趣迁移 R 包或编写自己的算法或 JSL 代码, |
| |
您将知道从哪里开始。然后,当我完成此操作后,我将进入我的插件,具体了解它的作用和使用方法。 |
| |
那么你如何学习 JSL?好吧,你可以再次... |
| |
你可以通过 JMP 的 JSL 资源来学习。他们有一个 864 页的脚本指南,链接在这里, |
| |
您可以谷歌搜索,或者在结束之后您可以获取这些幻灯片,并获取这些链接。JMP 中有一个脚本索引,您可以直接转到帮助,然后转到脚本索引。我在这里为你们提供了这些内容,非常易于使用和入门。 |
| |
您可以联系 JMP。我做的第一件事就是联系 JMP 的一位联系人。她的名字是 Ruth Hummel,我说,嘿,我想做这件事,我应该从哪里开始呢? |
| |
她支持并鼓励我这个想法。她认为这个想法很棒,然后她帮我联系了一位 JSL 代码专家, |
| |
他的名字是 Mark Bailey。Mark 在整个过程中都表现得非常棒。Mark 为我提供了脚本语言方面的一般支持,审查了我的代码,帮助我编写了部分代码, |
| |
开始着手其中的一部分。我们花了……在过去的几个月里,我们通过电子邮件来回沟通了大约 22 次。 |
| |
JMP 为我提供的资源,以及愿意帮助我完成项目的直接员工 |
| |
太棒了。我的意思是,我再也找不到比这更好的了。我的意思是,我以前在尝试为其他平台创建内容时从未获得过这种支持。所以,我要感谢 JMP |
| |
提供这些,他们是这一切存在的主要原因;因为他们提供了极好的资源。 |
| |
因此,您可以在 community.jmp.com 上提问,可以获得答案,可以借用代码,还可以获得认证 |
| |
JMP 脚本语言。您可以在社区中搜索任何您想要的内容,您可以……它就像 Google,但它仅适用于 JMP。 |
| |
而且你可以搜索任何你想要的内容,所以你可以输入 JSL 并执行任何你想执行的操作,而且可能有人已经发布了相关内容。如果没有,你可以将其添加到讨论板。 |
| |
然后是借用代码,这是马克传授给我的一件事,嘿,借用代码。社区网站上有很多代码, |
| |
人们分享它是有原因的。所以我……右边的实际上是我为我开发的插件借用的东西。我希望用户知道他们在哪里 |
| |
就运行算法而言,需要多长时间或已经取得了多少进展。 |
| |
所以我不想在 JMP 中编写自己的进度条,所以我只是借用了社区板上的一个进度条并将其直接添加到我的插件中,是的。 |
| |
这个人叫 Craige Hales,是 JMP 的退休员工,他编写了这段代码,我借用了它。所以谢谢你,Craige;谢谢 Mark 推荐借用这段代码。它为我节省了很多时间,所以我真的很感激,它让这个插件好了很多。 |
| |
现在我们来谈谈插件。我已经跟你们谈过为什么需要这个插件,对吧。其他人已经从 R 包中受益,为什么我认为 JMP 用户会从中受益,我也跟你们谈过我是如何做到的。 |
| |
现在我想向你们展示它的工作原理,希望这是整个事情中最有趣的部分。所以我在几个月后利用我的星期五欢乐空闲时间将整个 R 包移至 JMP,也就是星期五的几个小时。JMP 插件 |
| |
目前仅适用于线性和逻辑回归模型。我希望以后能够将其扩展到其他模型,但现在它适用于线性和逻辑回归模型。另一件事是,插件 |
| |
它没有其他内置 JMP 模块所具有的大量花哨功能。例如,当你将分类变量放入响应变量中时,性格类型不会自动切换到逻辑回归。 |
| |
我还没来得及做这件事。还有很多其他的事情我还没来得及做,我希望随着人们使用它并喜欢它并给我反馈,我可以改进这个软件包。 |
| |
所以它确实缺少一些功能。插件管理器的妙处在于,你可以直接使用 JSL 代码,然后有一个插件……插件管理器,JMP 插件, |
| |
它允许您从 JSL 代码创建自己的插件,因此只需单击几个按钮,您就可以获取 JSL 代码并将其转换为可以与整个 JMP 社区共享的插件。 |
| |
我已经在 community.jmp.com 网站上发布了这个,每个人都可以访问并访问我即将向你们展示的插件 |
| |
并访问我将要使用的数据集。但这适用于您拥有的任何数据集,而不仅仅是我的示例。 |
| |
所以我将快速为你们提供这个插件的现场教程,这个插件叫做……我把它叫做探索互动, |
| |
这一切都将通过我之前谈到的可行解算法来完成。示例是一个线性模型 |
| |
我要在其中修复两个变量,这就是我的基础模型。我的基础模型将有一个连续响应变量和两个我希望能够调整的协变量。 |
| |
然后,我想要做的是考虑将二阶交互作用添加到该模型中,并将其添加到我的数据集中的 10 个变量之间。 |
| |
我想进行五次随机启动,我想确保我的标准,这是目前内置的唯一标准 |
| |
JMP 插件的目的是最小化相互作用的 P 值。因此,我们检查的每一个相互作用 |
| |
产生一个 P 值,我想要做的是我希望我的解决方案是具有 |
| |
P 值非常小。因此,它会根据相互作用的 P 值搜索空间,并找到具有最佳值的相互作用。因此,我们的结果将包含许多具有较小 P 值的相互作用。 |
| |
通常我会建议你完成这类程序后,使用可行解算法, |
| |
接下来你要绘制数据图,查看模型中的交互作用,并从上下文的角度批判性地思考它们,因为归根结底,我们在这里探索数据。 |
| |
这绝不是推论。我们只是使用数据信号来指示这些数据中可能存在哪些交互。 |
| |
再次,数据和插件发布在社区网站上。 |
| |
好吧,我要停下来,赶紧离开这里,我要拉起 |
| |
我拥有的 JMP 数据集。希望你们能看到这个。 |
| |
正如您所见,这只是一个非常简短的概述,这实际上是我生成的一堆随机数据。这根本没有任何实际结构。这不是真正的数据,只是 JMP 中随机生成的数据。 |
| |
这里有 20 个观测值。我有 10 个连续变量,即解释变量。 |
| |
我有一个连续响应变量,并且我还将响应变量分类为大于零或小于零。 |
| |
所以如果您希望能够查看...查看逻辑回归结果,您也可以使用数据进行逻辑回归示例。 |
| |
因此,一旦您获得该插件,请访问网站,下载该插件,只需双击它,它就会直接安装到 JMP。这真的很容易。 |
| |
然后您就可以转到这里,然后转到插件,转到...一旦打开了数据集,您就可以转到插件来探索交互。 |
| |
这会弹出来。所以我们有几件事。所以我们会在左侧看到所有变量,就像在 JMP 中的任何其他模块中看到的那样。 |
| |
我要选择响应变量,也就是 Y,然后我要修复它,这就是我构建基础模型的地方。这些都是我要添加到模型中的线性主效应。在这个模型中,我有两个变量, |
| |
X1 和 X2,我将在这里添加。现在你需要做的一件事是指定建模类型,因此我的模型中有两种类型 |
| |
您可以选择一个插件。一个是标准最小二乘建模类型,另一个是逻辑回归建模类型。 |
| |
正如我之前所说,它不会根据您在此处输入的内容自动选择,因此您可以完全输入分类响应变量,它不会切换。您必须自己切换。这是那些花哨的花哨功能之一,希望我稍后会讲到。 |
| |
把那个扔掉。把这个放回这里。 |
| |
好的,这就是我们的设置,因此这将拟合模型 y 等于 beta 零加 beta 一 X 一加 beta 二 X 二。现在我将在这里输入我愿意使用的变量 |
| |
...或者,我想寻找它们之间的相互作用,所以我将选择所有 X1 到 X10。我将添加它们。 |
| |
然后我告诉它,我要运行这个算法多少次?这里为了节省时间,我打算运行五次。 |
| |
以及考虑交互的顺序,所以我只做两个。 |
| |
我建议保持在三向或以下,因为通常解释四向、五向交互会变得更加困难,但是 |
| |
算法……或者说我设置的方式是,如果你愿意,你可以达到这个高度。我实际上没有设置限制,但要知道,你在这里走得越高,你运行它所花的时间就越长。 |
| |
所以我要点击“确定”。这需要一秒钟。 |
| |
所以你可以看到我借用的代码。 |
| |
您可以看到它出现在这里并告诉我已完成 20%,即 40%。 |
| |
这些就是解决方案。每次检查时,都会找到一个可行的解决方案,最后弹出一个数据表,所以 |
| |
你知道,再说一遍,这不是那些功能之一……我希望有一个选择框,你可以在其中选择交互,然后点击 |
| |
创建模型,它会为你做所有这些,就像 JMP 已经为许多不同的事情所做的那样,但我还没有做到这一点。它只是告诉你解决方案是什么。 |
| |
所以它给你提供了它所做的总结。它进行了五次随机启动。它告诉你响应变量、固定变量是什么, |
| |
它发现的交互变量,好的,R 平方,该模型的调整 R 平方,均方根误差,然后是交互 P 值。好的,所以我们在这里可以看到 |
| |
(如果我点击它它会显示)只有两个解决方案,所以...X2 X3 是一个交互而 X10 X7 是另一个。 |
| |
所以现在我能做的,我现在不会那样做,我可以去建立这个模型,重现这些结果,并研究结果,看看,这是一个很好的统计结果吗 |
| |
算法……或者我在这里找到的好的统计交互?你知道,我的杠杆图是什么样的吗?我所有的不同标准是什么 |
| |
图是什么样子的?我的诊断图是什么样子的?诸如此类。然后我就可以开始问问题了,比如这种相互作用在参数估计方面是否有意义等等? |
| |
这是探索性的,所以它会给你一个潜在的解决方案,但你必须跟进尽职调查,并真正思考你所得到的结果 |
| |
并向该领域的背景专家提问。这通常是我们在健康科学中使用它的方式。我们将其与健康数据一起使用,进行交互,然后去找医生说这是否有意义,这种影响, |
| |
你知道,不会在年龄或性别或其他方面保持一致。他们通常会和我们谈论这个,你知道,想想看。整个想法是,这有望影响未来的研究,我们可以推动研究以更广泛的方式寻找这些相互作用的影响 |
| |
动力十足的方式。 |
| |
好的,我现在要回到我的 PowerPoint。这就是本教程。你可以看到它非常容易使用。这是一个非常小的例子。你可以逐步实现它, |
| |
你知道,数据集越大,我刚才做的整个过程就越长。它不会持续 10 秒;它将持续, |
| |
你知道,可能要 5-10 分钟,取决于你的数据集有多大。我做过......用算法,用插件来处理有 100 个变量的数据集, |
| |
解释变量,并且运行它大约需要那么多时间,大约七分钟,进行大约五到十次随机启动。 |
| |
R 包中的运行速度比 JMP 插件中的运行速度更快,但这是因为,你知道,这是我第一次尝试,希望通过迭代能够变得更快更好。 |
| |
那么让我们来谈谈未来的改进。因此,我希望让用户能够优化或 |
| |
根据他们想要的任何标准找到可行的解决方案。因此,如果他们想根据优化 R 平方或优化 AIC 或优化错误分类率找到可行的解决方案, |
| |
你知道,在逻辑回归模型中,我希望让它们能够做到这一点。这其实并不是一件很难的事情,我只需要进去做就可以了。 |
| |
根据变量选择自动保存或选择建模个性。这很简单。你输入一个 |
| |
二元逻辑变量,你知道,它会自动为你选择逻辑回归。我认为这可能不是特别难,我可能很快就能做到。在完成将我的 R 包迁移过来的过程后,我对这样做很有信心。 |
| |
我想提高速度。我可以做很多事情来提高速度。 |
| |
所以,我希望能够做到这一点。有一个调用按钮就好了。我现在没有。这是 JMP 中我最喜欢的功能之一,可以单击该调用按钮。 |
| |
然后我希望能够简化从 FSA 获得的结果到构建模型的过程。因此 |
| |
您已经可以这样做了,例如当您在 JMP 或 Lasso 或任何其中的东西中进行前向选择时,您只需单击“制作模型”,它就会非常轻松地将所有变量带过来。 |
| |
我希望能够使用这个可行解决方案算法来做到这一点,只需获得这些类型的结果,然后单击“制作模型”,它就会自动为您完成所有工作 |
| |
这样你就可以探索它们,并且再次希望你能理解你所发现的那些互动。 |
| |
我想感谢大家。首先是 Mark Bailey。没有你,我不可能完成这项工作。非常感谢你对 JSL 代码的支持。感谢 Ruth |
| |
感谢他让我与马克取得联系,也感谢他担任将军, |
| |
该项目的支持人员,并提供良好的反馈。Anne 和 Larry,我非常感谢 |
| |
你们在所有与 JMP 相关的事情上以及我们过去的合作关系上给予了我很大的帮助,并且鼓励我参加这次 Discovery Summit。这真的很棒,我很高兴能在 JMP 社区中结识更多朋友 |
| |
通过它,所以谢谢你。你可以通过多种方式与我联系。你可以给我的大学邮箱发邮件,如果你喜欢这种方式,你也可以通过 Twitter 与我联系。 |
| |
我还计划在 github 以及社区网站上发布这个 JMP 插件,所以请随时检查这两个地方以了解插件的未来更新。 |
| |
是的,谢谢您的邀请,我很高兴在规定的时间内回答您的问题,谢谢。 |