You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何仅用多项逻辑回归系数在R中计算预测概率?

仅用多项逻辑回归系数计算预测概率(R语言实现)

完全可以做到,不需要依赖现成的模型对象,直接基于多项逻辑回归的数学公式手动实现即可——毕竟这类模型的概率计算逻辑是固定的。

核心逻辑

多项逻辑回归通常会指定一个参考类别,对于任意非参考类别j,其预测概率的计算公式为:

P(Y=j) = exp(Xβ_j) / (1 + Σ(exp(Xβ_m)))
其中m遍历所有非参考类别,参考类别的概率则是 1/(1 + Σ(exp(Xβ_m)))

这里的X是包含截距项的特征矩阵,β_j是对应类别j的系数向量。

R代码示例

假设我们处理的是3分类问题,指定第3类为参考类别,下面是完整的计算代码:

# 模拟输入数据
# 特征矩阵:第一列是截距项(全1),后面是自变量
X <- cbind(1, matrix(rnorm(100*3), nrow=100))  # 100个样本,3个自变量
# 系数矩阵:每一列对应一个非参考类别的系数(这里对应类别1和2)
coef_mat <- matrix(c(0.5, -0.3, 0.2, 0.1, -0.4, 0.6), ncol=2)

# 计算线性预测值
linear_pred <- X %*% coef_mat
# 对线性预测值取指数
exp_pred <- exp(linear_pred)
# 计算分母项
denominator <- 1 + rowSums(exp_pred)

# 计算每个类别的预测概率
prob_class1 <- exp_pred[, 1] / denominator
prob_class2 <- exp_pred[, 2] / denominator
prob_class3 <- 1 / denominator

# 合并为完整的概率矩阵,每行对应一个样本的各类别概率
prob_matrix <- cbind(prob_class1, prob_class2, prob_class3)
# 查看前5个样本的结果
head(prob_matrix)

你可以根据自己的分类数量、参考类别设置,调整系数矩阵的维度和概率计算的步骤,逻辑完全通用。

内容的提问来源于stack exchange,提问作者Nader Mehri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 08:37:38