- 在线时间
- 6 小时
- 最后登录
- 2012-12-16
- 注册时间
- 2012-12-7
- 听众数
- 0
- 收听数
- 0
- 能力
- 0 分
- 体力
- 63 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 21
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 4
- 主题
- 1
- 精华
- 0
- 分享
- 0
- 好友
- 1
升级   16.84% 该用户从未签到 - 自我介绍
- 大学本科数学专业
 |
mu<-0% J0 [& @' Z9 Q/ F# `3 K
sigma2<-1
4 e# b3 m! V: [, v/ ?# s n<-20
- w" C6 P( `: e2 q c L<--0.25$ g8 r: A: k+ D6 H( T
y<-rnorm(n,mu,sqrt(sigma2))
. Z* |% w5 j) F x<-y- X+ [ [" }2 ?
c<-(y<=L)
6 v' K/ @4 `- W) a8 b6 s% T x[c]<-L
3 u! d, V) d+ z" g# U' t x
1 R9 ?+ ~% u" s8 G1 f8 bQ1:写一个ell function compute log-likelihood od x.1 A) \% E. ]) j+ g/ }1 e
Q2用 R optim来maximize这个likelihood.* z5 h7 {- i4 g5 c3 b/ \* b
" l' T% J1 n3 D" L; M
我现在写了一个ell的试子了,但是怎么也求不出最大值。
* K% L# y+ o. w [theta<-c(mu,sigma2)
/ r' _# X% H3 Z ell<-function(theta,x,L=-0.25){
+ K9 }( E4 p2 @! Y, R9 x stopifnot(is.vector(theta),length(theta)==2)
7 d* o/ w1 f3 `* x4 l+ T if(theta[2]<=0)6 X6 B5 e2 `- M$ U5 b
return(NA)' ~2 _- c/ ^& J7 [! v# I1 X6 l
else(c<-(x==L)) r# |5 @; F7 [+ f: K. H! i
sum(dnorm(x[c],theta[1],sqrt(theta[2]),log=TRUE))
* x% f' _2 I! q/ e sum2(dnorm(x[!c],theta[1],sqrt(theta[2]),lop=true))}3 f" h5 H7 e5 W6 |' L6 Z
% Z& E8 n7 t5 a3 A: s' v
我的求最大值试子是init<-c(mu=0,sigma2=1)
# {: l! p/ @6 x5 q" b. X# c# P$ H3 x( [" {8 r d; J
opt<-optim(par=init,fn=ell,method="L-BFGS-B",
6 q/ h; M7 L% Z0 M8 ^- A Y/ u2 ] lower=c(-Inf,0.01),
1 T& B$ M0 m9 ~/ ^: D! ]' s* V' s3 x upper=c(Inf,Inf),hessian=TRUE,
. f3 }5 [$ W' z9 |4 v5 m" c/ p$ a% ] control=list(fnscale=-1))) L( g: l/ B. f
谁能看看哪里错了。谢谢了。 |
zan
|