组合模型如果我今年从 Discovery Summit Americas 学到了一件事,那就是平均和/或创建集成模型是多么普遍,这是我听说过但从未考虑过的(作为建模新手)。 所以我决定去做。 制作集成模型很容易;我将模型保存为预测公式,并简单地将其作为预测器包含在下一轮模型筛选中(使用 JMP Pro 16 的模型筛选)。 什么似乎更简单,模型平均,让我感到困惑。 如果我找到两个我喜欢的模型,将它们作为预测公式保存到我的数据表中,然后创建一个新列将它们组合在一起,看起来概率被组合了,但公式不是我所用的语法可以将其应用于新数据(它仅显示概率的平均值)。 如果我将两个模型都发布到 Formula Depot,我可以很容易地对它们求平均值,所以这是我目前的解决方法,但我不应该也可以在表格中对它们求平均值吗? 我认为问题可能在于,因为预测公式有一个公式和一个概率,当我将它们组合起来时,只有概率得到平均,而我实际上想要对公式本身进行平均。 我能否以一种允许我将该平均公式复制到新数据表中并使用新数据对其进行测试的方式进行平均? 如果没有,Formula Depot 就是为了做到这一点而设计的,所以这没什么大不了的。 我只想有几个选择! 也许我只是将概率部分移到列的信息单元格中仅保留公式的位置?
分析回复:组合模型根据您的描述,听起来您想要平均预测(离散)而不是概率(连续)。我没有看到它是那样做的。有一种技术,共形预测,旨在查看来自模型的预测的稳健性。但是您所描述的内容如下所示:假设有 2 个要预测的类,您将它们编码为连续的 0 和 1。假设您有 3 个模型:其中 2 个预测特定情况的 0,1 个预测 1 . 然后,您的“平均”将产生 1/3 的结果,我猜您会将其视为获得 1 的概率。有趣的想法,但我不确定这种方法有什么统计基础。此外,它似乎仅限于二元分类(尽管这只是一个限制)。我很想看看你得到的其他回应。
回复:组合模型你好@abmayfield ,
喜欢你的演讲,尽管必须点播,但无法进行现场观看和问答。
通常,如果您正在执行典型的回归公式(数字形式),您将能够平均预测列。 您只需取两者的平均值即可。 但是,由于您正在使用分类值是或否(甚至可能),它变得更加复杂,因为它必须将数值 X 输入转换为逻辑函数,然后它会找到概率并将结果与 IfMax( ) 功能。
以大类文件为例。 如果你尝试用 :height 和 :weight 来预测 :sex,你会得到一个逻辑输出函数,在我的例子中,我试图预测性别 = M。 虽然有一些中间函数用于确定 Prob[M] 和 Prob[F]。 线性函数就是这样,类似于 Lin[M] = a + b*:height + c*:weight,其中 a、b 和 c 只是拟合系数。 为了得到概率,JMP 然后使用变换 1/(1_exp(-Lin[M])) 来表示 Prob[M] 和 1/(1+exp(Lin[M]) 来表示 Prob[F],这只是 1-问题[M]. 最可能的结果是 MaxIf(Prob[M]=>M, Prob[F]=>F) 并且 Prob[y] 较大者是最可能的结果,M 或 F。
在您的情况下,如果您使用分类结果,我认为您需要对 Lin[Y] 函数求平均值,然后将其转换为概率。 拟合数据的是线性函数,而不是概率函数,这就是为什么在转换线性函数之前需要求平均值的原因。
如果您可以将结果更改为连续响应,那么预测公式的简单平均值就很简单。 只要建模类型是名义型或有序型,JMP 就会将其视为离散级别并每次执行逻辑建模。
我可能不得不使用连续比例的一个想法是表示给定区域内的漂白百分比。 假设您评估 100 cm^2(10cmx10cm 的补丁)的珊瑚并确定大约 2cmX3cm(或 6cm^2)被漂白,那么漂白百分比将为 60%。 通过这样做,您可能会更准确地表示珊瑚标本有多少被漂白,并且您现在可以使用回归与分类进行建模的连续响应。
希望这可以帮助!,
DS
聚苯乙烯 发现峰会很棒。 我喜欢很多谈话。 此外,我正在更新我的 GUI 以根据用户输入自动生成调整表。 当新版本准备就绪时,我会通知您。 通过生成具有您希望执行的运行次数的空间填充设计,它应该有助于进一步自动化该过程。
回复:组合模型是的! 我相信,像往常一样,你对试图预测一个分类变量的奇怪性质是正确的,你实际上需要两个方程,从而使事情变得更加棘手。 我希望做的是最终有足够大的样本量到我有一个真正的梯度,1-10、1-5或1-100,这个想法是一样的:1=可怕,最高数=伟大. 即使在这种情况下,我也有两个类别(抗漂白与漂白敏感)或有时三个(前两个 +“中间”)。 我可能会尝试将它们分别重新编码为 1、50 和 100,分别表示易感、中间和抗性,然后看看我得到了什么样的结果。 我认为我获得和分析的样本越多,让我的 Y 成为连续变量就越有意义。 我现在正在玩 20 个样本,我没有足够的数据来超过 2-3 个 bin。 但是,当我将分类分类重新编码为连续变量时,看看我的模型是否看起来非常不同将会很有趣。 它肯定会使所有模型构建更加无缝。 实际上,在自然界中,它不会像“健康”与“生病”那么简单;我确实希望获得一个跨越健康谱的梯度,就像你在人类中看到的那样(例如,你在 JMP 糖尿病数据集中看到的)。 不过,关于概率分数,这个练习的有趣之处在于,我从来没有真正看过这些。我直接去了JMP的“猜测”。 但是现在查看实际概率非常有趣,因为这最终是我想要报告的:珊瑚 A 有 95% 的机会漂白。 所以通过这个模型平均练习,我不小心捡到了一些我以前完全错过的很酷的细微差别! 就像我之前说的,即使我暂时被分类响应“卡住”,Formula Depot 的模型平均功能也可以很好地解决这个问题。
您会很高兴知道,多亏了您的 GUI,在我最近提交的论文(基本上描述了第 1 阶段 = 实验室实验)中,有超过 20,000 个神经网络模型(21,450 个,但谁在数呢?!)。 显然,只有少数通过了所有质量控制,在文本中详细讨论的更少,但了解哪些 NN 参数对我来说本质上是最重要的调整非常有用。 另外,我想构建最简单、(可能)最简约的模型,所以如果一个 NN 有两个隐藏层,每个隐藏层有三个激活节点,而第二个模型有一个 NTANH(3) 层,其他条件相同,我会选择后者,尽管我想这并不是很关键,因为即使是最简单的也很复杂。 我今年在 Discovery 中试图学习的一件事是,我感谢 Chris Gotwalt,即是否可以使用 NN Profiler 下的变量重要性指标来从本质上告诉您哪些分析物在模型中最有影响力。 旧规则是 NN 是一个黑匣子,要挖掘哪些响应变量最重要太复杂了,但我很高兴看到这并不完全正确。 它们很难解释吗? 是的。 你能说一种蛋白质的行为随着模型的预测能力以一种特定的、容易定义的方式扩展吗? 也许不会。 但如果分子生物学家问我:“在你的最佳 NN 模型中,哪些珊瑚蛋白最重要”我至少可以从 NN profiler 的可变重要性特征中列出一些。 这实际上是我在演讲中选择讨论 gen-reg 模型的原因;我不确定我是否可以“信任”NN 的探查器(!),但现在我知道我可以了。 但无论如何,这就是为什么作为一名模特新手,我从这些专题讨论会中受益匪浅。 再次感谢您深思熟虑的回复以及您的所有帮助。