问题标签 [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 nnet multiniom(多项逻辑回归模型) - 分配惩罚以避免错误分类
我正在使用 nnet 包中的 multinom 来将逻辑回归模型拟合到由 3 个类组成的数据,但是这些类的普遍性并不平衡。我想分配权重/惩罚,以告诉模型避免对某个类别进行错误分类。这是我的代码和一部分数据:
任何人都知道如何分配错误分类处罚?具体来说,我想分配一个 10:5:1 的惩罚比(对应于 1,2,3 类),这意味着我真的很喜欢在 1 类上准确。我的目标变量 cut.rank 的分布是 ~ 0.04,0.08, 0.88。由于第 1 类的流行率较低,因此该类的模型敏感性较低。
r - R 多项逻辑回归模型分配惩罚以避免错误分类
我对 R 很陌生,想知道 nnet 包中用于拟合逻辑回归模型的函数 multinom 是否能够分配权重/惩罚,以便告诉模型避免对某个类进行错误分类。我有三个类,它们的分布差异很大,导致数据集非常不平衡。这就是为什么我认为权重/惩罚可以迫使模型在课堂上更准确,而且流行度较低。这是电话:
r - 预测栅格多项式 gbm
目前,似乎无法将多项式预测为光栅砖gbm
模型预测为光栅砖。但是请注意,对于相对较小的栅格网格,有一种简单的方法可以解决这个问题 - 这将在下面解释。但是,当您处理大型栅格、许多类(在我的例子中是植被群落)和预测变量时,这里的过程非常缓慢并且并非没有挑战。我希望下面的信息可能对遇到同样挑战的任何人有用。
下面我尝试使用多项 gbm 模型和 20 个预测变量来预测 36 个植被群落的发生概率。我的研究区域是一个具有 213,000,000 像素的 30x30m 栅格网格 - 但是下面的代码与我用来开发/测试该过程的 1221 个单元格的小网格有关。
我将预测变量堆叠到栅格堆栈中,如下所示:
检查 rasStack 中的名称是否与上述模型中的名称相同很重要
在运行 predict.gbm 之前,我调用了最好的迭代模型
我可以通过将网格单元转换为一组空间点(如下所示),为我的测试区域创建一组光栅输出图像,该区域有 1221 个单元。
运行 predict.gbm 模型
我可以通过以下方式将 predtable 中的出现概率值写入一组 36 个新光栅图像:
这给了我想要的输出 - 但是 - 而不是必须预测到数据帧 - 如果可以直接预测到 rasterbrick,该过程将更快,更有效。
如果我跑
输出是代表我要预测的第一个植被群落的栅格网格:
IDRISI 文件格式不支持多波段图像,因此我无法将 index=1:36 添加到混合中以生成多波段光栅砖作为输出。如果我尝试这样做 - 设置 format="GTiff" 或 "HFA"(或任何其他需要 rgdal 的格式),我会收到错误消息:
"Error in rgdal::putRasterData(x@file@transient, v, band = 1, offset = off) : 光栅 IO 失败”
但是,如果我设置格式 =“raster”,我可以获得 rasterbrick 输出,但这不会让我读/写除 idrisi 图像(predict.gbm 模型的第一个输出列)中的数据以外的任何数据
“警告消息:在 .rasterFromRasterFile(grdfile, band = band, objecttype, ...) 中:值文件的大小与单元格的数量不匹配(给定数据类型)”
如果我尝试将上面的光栅砖转换为一组单独的光栅图像
这些图像都没有任何意义。
这也有点令人费解,如果我尝试写为多波段 CDF 图像,我会收到一组不同的 rgdal 错误警告消息:
在这里,我不确定发生了什么?
如果有知识的人可以与 gbm 包的作者合作,使其可以直接预测到光栅砖,而不会遇到上述任何问题,那就太好了。
如果有人想知道我在完整栅格网格上使用的代码,请在下面发表评论,我很乐意提供。
欢呼艾伦
r - 如何解决 mlogit 边际效应错误?
在 R 中成功运行 mlogit 模型后,我在尝试获得边际效应时收到错误消息:
我什至尝试按照另一篇文章中的说明更改源代码中的第 16 行,但仍然出现相同的错误。任何帮助,将不胜感激。我所有的变量都不是替代特定的。我有 4 种选择。
以下是网络上发布的类似问题的链接,但我很难使用那里发布的解决方案。 mlogit 在 R 中的边际效应 在此 先感谢
r - 在 gbm 多项式分布中,如何使用预测来获得分类输出?
我的响应是一个分类变量(一些字母),所以我在制作模型时使用了 distribution='multinomial',现在我想根据这些字母预测响应并获得输出,而不是概率矩阵。
然而在 中predict(model, newdata, type='response')
,它给出了概率,与 的结果相同type='link'
。
有没有办法获得分类输出?
python - numpy 多项式函数返回值错误
我正在使用numpy.random.multinomial(1,val)
NumpyMultinomial,其中 val 是一维 numpy 数组。该函数给出以下错误:
ValueError('sum(pvals[:-1]) > 1.0',)
但是,我使用检查了输入数组 val 的总和,val.sum()
它的总和正好为 1。我不知道多项式函数是否有一些错误。有人可以帮我解决这个问题。或者,是否有任何其他 python 模块可用于使用多项分布进行采样?
r - 使用 R 中的 mlogit() 预测和边际效应失败,用于具有更新数据框的嵌套 Logit 模型
我使用 mlgit() 包在 R 中运行了嵌套 Logit 模型。我现在正在尝试测量边际效应/弹性并继续遇到错误。在这里,我通过修改包作者的小插图重新创建了错误:
我收到以下错误:
当我没有嵌套模型(如常规多项式 Logit)时,这可以正常工作,并且在之前的一些 stackoverflow 问题中已经涵盖了这一点,但是在重新预测更改的数据帧的步骤中特别发生了一些奇怪的事情(在这种情况下意味着框架z)。
我会注意到这里的解决方案:mlogit 在 R 中的边际效应对我没有帮助。
weka - 多项式朴素贝叶斯分类器滑动窗口(MOA 实现,weka)
我面临以下问题:我正在尝试在滑动窗口中实现 MNB 分类器。我实现了一个窗口大小的 LinkedList 并存储了必须在其中考虑的所有流实例。当一个不再适合窗口的新实例到达时,第一个实例被删除。为了删除相应的字数,我实现了以下方法,它与 moa 的 trainOnInstanceImpl() 基本相同,只是向后:
现在,如果我输出 m_wordTotalForClass[classValue] 我会在具有 3000 个实例的流上从实例 2000-3000 中获得经典 MNB 的不同结果,与来自窗口大小为 1000 的滑动窗口 MNB(见上文)的结果不同。唯一的区别是它在某些点输出 1 而不是 0,但并非总是如此。我想这与拉普拉斯校正有关。可能 if 语句中的舍入存在问题:
这样我们就不会总是输入设置拉普拉斯值的部分。
有人有想法吗?我有点发疯了,因为我在过去三天一直在思考问题可能出在哪里。任何帮助将不胜感激!
matlab - MATLAB 多项 Logistic 回归输入
这是我第一次尝试使用多项逻辑回归,我很难开始。我目前有一个包含 203 个观察值的数据集,其中包含 22 个自变量和 1 个因变量,所有这些都是数值和连续的。我的目标是使用 MATLABmnrfit
函数来预测因变量落入三个区间之一的未来观察的概率(y<0, 0<y<5, and 5<y)
。
我如何将我的数据输入到mnrfit
函数中以获得这些结果?我相信我将不得不使用此函数来获取系数,然后使用该mnrval
函数来确定未来观察的概率。谢谢您的帮助!
r - 尝试将 dmulti 与 rjags 一起使用时尺寸不匹配
我正在尝试使用 rjags 拟合以下模型,但出现尺寸不匹配错误。该模型在 WinBUGS 中运行良好,我不知道如何更改代码。提前感谢您的帮助。
数据:
链的初始值
模型
错误
jags.model 中的错误(文件 =“model.txt”,数据 = 数据集,inits = inits,:运行时错误:无法将节点插入 y1[1:2,1:2]。尺寸不匹配