ロジスティック回帰分析を復習していたら、対数関数や log odds について混乱していたので、ここで再度整理する。


対数関数と指数関数

 参照:自然対数(「素数に憑かれた人たち」より) 

底が自然対数と10 の対数関数と指数関数をグラフ化。
# drawing logarithm and exponential curves
p<-ggplot()+geom_path(aes(x=x,y=log(x)),color="red")+geom_path(aes(x=x2,y=exp(1)^x2),color="red")+geom_path(aes(x,log10(x)),color="blue")+geom_path(aes(x2,10^x2),color="blue")+lims(x=c(-2,3),y=c(-1,4))+geom_text(aes(x=2.8,y=1.2,label="log"),color="red")+geom_text(aes(x=2.8,y=0.6,label="log10"),color="blue")+geom_text(aes(x=1.4,y=3.5,label="e^x"),color="red")+geom_text(aes(x=0.7,y=3.5,label="10^x"),color="blue")
# adding auxiliary lines and comments
p+geom_segment(aes(x=-2,y=0,xend=3,yend=0),size=0.3)+geom_segment(aes(x=0,y=-1,xend=0,yend=4),size=0.3)+geom_point(aes(x=1,y=0))+geom_text(aes(x=1,y=0.3,label="(1,0)"))+geom_point(aes(x=1,y=0))+geom_text(aes(x=-0.2,y=1.1,label="(0,1)"))+ylab("y")


Log Odds

 参照:ロジスティック回帰分析

このブログでも何度も取り上げた odds とは、例えばある事象 y01 のどちらかになる場合、p(y=1) / p(y=0) = p(y=1) / (1 - p(y=1)) のこと。つまり、0 になる確率に対する 1 になる確率の割合。

グラフで表す。
p<-seq(0,1,by=0.001)
odds<-p/(1-p)
ggplot()+geom_path(aes(p,odds),color="red")+lims(y=c(0,50))+geom_text(aes(0.9,40),label="p/(1-p)",color="red",size=5)

0 からプラス 」が odds の取る値。

log odds とは、odds を(自然)対数変換した log(x / (1 - x)) で、「マイナス からプラス 」の値を取る。
# x values
x<-seq(0,1,by=0.001)
# drawing a log odds curve
p<-ggplot()+geom_path(aes(x=x,y=log(x/(1-x))),color="red")+geom_segment(aes(x=-0.03,y=0,xend=1.03,yend=0))+geom_segment(aes(x=0,y=-7,xend=0,yend=7))
# adding auxiliary lines
p+geom_segment(aes(x=0.5,y=-7,xend=0.5,yend=7),linetype=8)+geom_text(aes(x=0.55,y=-0.5),label="(0.5, 0)")+geom_segment(aes(x=1,y=-7,xend=1,yend=7),linetype=8)+geom_text(aes(x=1.05,y=-0.5),label="(1.0, 0)")


0

コメントを追加

読み込んでいます