R 如何为multinom方法指定nnet包中的权重参数

R 如何为multinom方法指定nnet包中的权重参数,r,logistic-regression,nnet,R,Logistic Regression,Nnet,我在nnet包中使用multinom方法,我需要根据类的比例对它们进行不同的加权。我甚至还带着这个比例 问题是如何为multinom方法指定权重参数?如果我只是指定了一个列表,它如何将实际类映射到权重?您不应该根据类的比例对类进行权重;样本大小是模型的一部分,不应通过权重进行调整 在指定权重的主题上,只需为multinom的weights参数提供一个列表,然后将每个值映射到指定的权重。如果我没有弄错的话(在这种情况下,我很乐意纠正),它是通过将每个案例的对数可能性乘以指定的权重来实现的 这里有一

我在nnet包中使用multinom方法,我需要根据类的比例对它们进行不同的加权。我甚至还带着这个比例


问题是如何为multinom方法指定权重参数?如果我只是指定了一个列表,它如何将实际类映射到权重?

您不应该根据类的比例对类进行权重;样本大小是模型的一部分,不应通过权重进行调整

在指定权重的主题上,只需为
multinom
weights
参数提供一个列表,然后将每个值映射到指定的权重。如果我没有弄错的话(在这种情况下,我很乐意纠正),它是通过将每个案例的对数可能性乘以指定的权重来实现的

这里有一个例子

library(nnet)

set.seed(1)

x <- rnor_lenm(100)
y <- rep_len(c("A", "B", "C"), 100)
wts <- runif(100)

multinom(y ~ x, weights = wts)

这就是你想要的吗?

我认为nnet没有指定重量的能力。
# weights:  9 (4 variable)
initial  value 56.891315 
final  value 56.637716 
converged
Call:
multinom(formula = y ~ x, weights = wts)

Coefficients:
  (Intercept)          x
B -0.09823625 -0.1779220
C -0.06923607 -0.1951617

Residual Deviance: 113.2754 
AIC: 121.2754