问题标签 [multinomial]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - R中的multinom():我可以用于预测其他数据集吗?
我已经运行了一个 multinom() 模型,那么如何在其他数据集上使用这些模型?例如,我想将此模型拟合到另一个数据集并为该数据集生成预测概率,就像在 Matlab 中所做的 mnrval() 一样——它采用 mnrfit() 估计的模型并将其应用于外部数据以生成预测概率。我目前受限于 R,所以不能使用 Matlab。谢谢。
r - 如何获得在 R 中的 multinom() 中分析的确切观察结果,或如何使 fit() 对包括 NA 在内的整个数据产生拟合
我的问题类似于另一个较早的问题“如何获取使用 R 中的函数 multinom 创建的模型中包含的观察数?” 但我要寻找的是模型中分析的确切观察结果,而不是观察结果的数量。最终,我希望将原始数据集与预测(拟合)概率的新列相结合。但是让我用一个例子来说明我的问题:
如果我的样本是1000,一些变量有NA值,我在R中拟合一个multinom(),并使用fitted(),然后发现fitted()的长度只有870,这意味着模型时排除了130个obs估计的。现在,fitted() 只生成一个 870*1(即一列)的数字(概率),我无法知道每个概率数对应于哪个观察值。我认为有两种方法可以解决这个问题:
- 在估计模型之前,找出哪些观察被排除并在原始数据中删除它们。
- 尝试让 fit() 生成一个 1000*1 矩阵,其中 130 个元素为 NA。
我不知道任何一个的答案。任何意见,将不胜感激。最终目标是能够将拟合概率附加到原始数据集(作为新列),以便我可以得出推论。谢谢。
r - 如何计算带有标签的多类分类 AUC?
我正在使用带有函数 multiclass.roc 的 pROC(在 R 中),正如线程How to plot ROC curve in multiclass classification?
但是,当我应用到我的数据时,出现了错误:
预测器必须是数字或有序的
显然我的数据标签是无序的,在这种情况下,我该如何计算 AUC?
P/S:这个想法是,我有一个混淆矩阵作为多类分类器的结果。如何在 R 中计算此混淆矩阵的 AUC?
更新1:
假设我有 4 个没有顺序的 A、B、C、D 类(即,并不意味着 A > B 或 B > A)
正确的值:
预测值:
我应该如何计算这些数据的 AUC?
更新 2
生成示例数据的代码:
然后我尝试了
r - 如何从汇总数据到原始数据
我首先想使用 r 生成多项分布的数据,然后我想要数据的“原始”形式。举个例子,假设我通过以下方式生成数据
我明白了
然后我想要一个向量中的数据在个人级别,所以它看起来像
是否有捷径可寻?我是新手,这并不像我想象的那么容易。我试图创建一个看起来像的函数
这根本不起作用,所以我希望得到一些帮助。
r - rmultinom 错误 - 没有正概率
我编写了以下代码,它应该生成一个 1 行 10 列的输出矩阵。nchrom
在我通过将标签替换为来纠正循环之前,这确实可以正常工作q
,但现在会生成以下错误代码:
如果有人可以帮助我确定代码中的问题所在,我将不胜感激。我目前的代码如下:
r - 为什么我得到的系数比我在 R 中使用 multinom() 的特征多?
我有一个包含大约 20 个样本和 4 个特征的数据集。在此处输入图像描述 我想使用 multinom() 创建一个模型。但是这个函数返回了大约 50 个名字奇怪的系数。
为什么会这样,这意味着什么?
r - 在 R 中运行 mlogit 函数后生成预测概率的置信区间
我一直在努力解决以下问题一段时间,非常感谢您的帮助。我正在使用 mlogit 函数在 R 中运行一个 logit 模型,并且能够生成为给定的预测变量值选择每个备选方案的预测概率,如下所示:
但是,我无法弄清楚如何将置信区间添加到预测的概率估计中。我已经尝试向 predict 函数添加参数,但似乎没有一个生成它们。任何关于如何实现它的想法都将不胜感激。
scala - scala中多项LogisticRegressionWithLBFGS模型输出中系数的解释
我正在尝试对多项 LogisticRegressionWithLBFGS 模型的输出进行一些后处理。模型矩阵在 R 中创建,然后导出到 scala spark 进行模型拟合。
该文档指出存在“标准特征缩放和 L2 正则化”。multinom()
R 包中函数的多项模型的输出{nnet}
清楚地显示为给定结果和基本结果之间的对数赔率。然而,关于如何转换 LogisticRegressionWithLBFGS 的权重以获得一组标准系数的文档中没有足够的详细信息。
术语“标准特征缩放”对不同的人意味着不同的东西。这可能意味着模型矩阵被缩放为 (x - mean(x))/sd(x) 或 (x - min(x))/(max(x) - min(x)) 或一组其他可能性. 此外,权重输出是一串数字,它是可以以不同方式折叠以获得系数矩阵的特征的倍数 - 例如按行、按列或其他任意方式。
如何处理 LogisticRegressionWithLBFGS().weights 的输出以获得一组标准系数,我可以使用原始模型矩阵进行一些后处理、基本推理和预测?
python - Julia:具有时间序列滞后值的多项回归
我需要在 Julia 中做一些多项式回归。在 RI 中得到以下结果:
这是我的数据
我的第一次尝试是使用Regression.jl。这个包的文档非常稀少,所以我不确定哪个类别用作基线,结果输出对应的参数等等。我在这里提出了一个问题来询问这些事情。
结果是
但同样,我不确定这对应于什么。
接下来我尝试了 Python 的 SciKitLearn 的 Julia 包装器:
但我还没有弄清楚如何从这个模型中提取系数。用系数更新。这些看起来也不像 R 结果。
任何试图复制 R 的结果的帮助将不胜感激(使用任何包!)
请注意,响应变量只是离散化的时滞响应,即
对于第 2 行,您可以看到响应 (0, 1) 表示之前的观察结果是 3。类似地,(1,0) 表示之前的观察结果是 2,(0,0) 表示之前的观察结果是 1。
更新:对于 Regression.jl,默认情况下它似乎不适合截距(他们称其为“偏差”而不是截距)。通过添加这个术语,我们得到与 python 非常相似的结果(虽然不确定第三列是什么......)
更新:由于模型系数无法识别,我不应该期望它们在这些不同的实现中是相同的。但是,预测的概率应该是相同的,实际上它们是相同的(使用 R、Regression.jl 或 ScikitLearn)。