multinom
位於 mgcv
包(package)。 說明
與 gam
一起使用的係列,實現分類響應數據的回歸。類別必須編碼為 0 到 K,其中 K 是正整數。 gam
應使用 K 個公式列表進行調用,每個類別對應除類別 0 之外的每個類別(也可以提供共享項的額外公式:請參閱 formula.gam
)。第一個公式還指定響應變量。
用法
multinom(K=1)
參數
K |
有 K+1 個類別和 K 個線性預測變量。 |
細節
該模型具有 K 個線性預測變量 ,每個預測變量以通常的方式依賴於預測變量的平滑函數。如果響應變量 y 包含類標簽 0,...,K,則 y>0 的可能性為 。如果 y=0,則可能性為 。在二類情況下,這隻是一個二元邏輯回歸模型。該實現使用 Wood、Pya 和 Saefken (2016) 中說明的 GAMLSS 模型方法。
該模型返回的殘差隻是每個觀測值的 -2 倍偏差的平方根,如果觀測到的 y 是該觀測值最可能的類別,則帶有正號,否則帶有負號。
使用 predict
和 type="response"
來獲取每個類別的預測概率。
請注意,即使所有線性預測變量具有相同的形式,模型對於類別重新標記也並非完全不變。實際上,該模型不太可能適用於具有大量類別的問題。不支持缺少的類別。
值
類 general.family
的對象。
例子
library(mgcv)
set.seed(6)
## simulate some data from a three class model
n <- 1000
f1 <- function(x) sin(3*pi*x)*exp(-x)
f2 <- function(x) x^3
f3 <- function(x) .5*exp(-x^2)-.2
f4 <- function(x) 1
x1 <- runif(n);x2 <- runif(n)
eta1 <- 2*(f1(x1) + f2(x2))-.5
eta2 <- 2*(f3(x1) + f4(x2))-1
p <- exp(cbind(0,eta1,eta2))
p <- p/rowSums(p) ## prob. of each category
cp <- t(apply(p,1,cumsum)) ## cumulative prob.
## simulate multinomial response with these probabilities
## see also ?rmultinom
y <- apply(cp,1,function(x) min(which(x>runif(1))))-1
## plot simulated data...
plot(x1,x2,col=y+3)
## now fit the model...
b <- gam(list(y~s(x1)+s(x2),~s(x1)+s(x2)),family=multinom(K=2))
plot(b,pages=1)
gam.check(b)
## now a simple classification plot...
expand.grid(x1=seq(0,1,length=40),x2=seq(0,1,length=40)) -> gr
pp <- predict(b,newdata=gr,type="response")
pc <- apply(pp,1,function(x) which(max(x)==x)[1])-1
plot(gr,col=pc+3,pch=19)
## example sharing a smoother between linear predictors
## ?formula.gam gives more details.
b <- gam(list(y~s(x1),~s(x1),1+2~s(x2)-1),family=multinom(K=2))
plot(b,pages=1)
作者
Simon N. Wood simon.wood@r-project.org, with a variance bug fix from Max Goplerud.
參考
Wood, S.N., N. Pya and B. Saefken (2016), Smoothing parameter and model selection for general smooth models. Journal of the American Statistical Association 111, 1548-1575 doi:10.1080/01621459.2016.1180986
也可以看看
相關用法
- R mgcv.parallel mgcv 中的並行計算。
- R mvn 多元正態加性模型
- R mini.roots 獲取懲罰矩陣的平方根
- R magic 通過 GCV 或 UBRE 進行穩定的多重平滑參數估計
- R missing.data GAM 中缺失數據
- R mroot 矩陣的最小平方根
- R mgcv.package 混合 GAM 計算車輛,具有 GCV/AIC/REML/NCV 平滑度估計和 REML/PQL 的 GAMM
- R model.matrix.gam 從 GAM 擬合中提取模型矩陣
- R mono.con 三次回歸樣條的單調性約束
- R magic.post.proc 來自 magic fit 的輔助信息
- R vcov.gam 從 GAM 擬合中提取參數(估計器)協方差矩陣
- R gam.check 擬合 gam 模型的一些診斷
- R null.space.dimension TPRS 未懲罰函數空間的基礎
- R gam.reparam 尋找平方根懲罰的穩定正交重新參數化。
- R extract.lme.cov 從 lme 對象中提取數據協方差矩陣
- R scat 用於重尾數據的 GAM 縮放 t 係列
- R choldrop 刪除並排名第一 Cholesky 因子更新
- R smooth.construct.cr.smooth.spec GAM 中的懲罰三次回歸樣條
- R bandchol 帶對角矩陣的 Choleski 分解
- R gam.side GAM 的可識別性邊條件
- R cox.ph 附加 Cox 比例風險模型
- R gamm 廣義加性混合模型
- R pdTens 實現張量積平滑的 pdMat 類的函數
- R Predict.matrix GAM 中平滑項的預測方法
- R Predict.matrix.soap.film 皂膜光滑度預測矩陣
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 GAM multinomial logistic regression。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。