楼主: xujh03
2048 3

[其他] How to write a maximum likelihood by yourself [推广有奖]

  • 0关注
  • 0粉丝

已卖:45份资源

本科生

61%

还不是VIP/贵宾

-

威望
0
论坛币
2756 个
通用积分
0.0998
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1600 点
帖子
55
精华
0
在线时间
75 小时
注册时间
2006-9-9
最后登录
2025-8-5

楼主
xujh03 发表于 2010-2-3 21:26:55 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
各位好,我现在需要写一个maximum likelihood function,这是一个underreported 的poisson model,所以没有现成的程序。现在的问题是在这个ml中,遇到了一个积分,所以需要用gauss-hermite数值积分的办法解决,请问各位知道怎么实现这个数值积分吗?
likelihood function 是: 对于每个individual的prob function is
g_i=Integral{exp(-exp(X'*beta+sqrt(2)*sigma*v))*Phi((Z'*gamma+sqrt(2)*rho*v)/(sqrt(1-rho^2)))*[exp(X'*beta+sqrt(2)*sigma*v)*Phi((Z'*gamma+sqrt(2)*rho*v)/(sqrt(1-rho^2)))]^(y)exp(-v^2)dv}
我现在有一个小程序program my_truncatedpoisson_lf
version 9.1
args lnf beta gama rho sigma

tempvar a b c d v w
gen `v'=.
gen `w'=.
_GetQuad, avar(`v') wvar(`w') quad(20)

gen double `a'=(`gama'+1/(exp(`rho')+1)*`v'/exp(`sigma'))/sqrt(1-1/((exp(`rho')+1)^2))
gen double `b'=exp(`beta'+`v')*normal(`a')
gen double `c'=1/exp(lnfactorial($ML_y1))*exp(-`sigma')*normalden(`v',0,exp(`sigma'))
gen double `d'=`w'*exp(-`b')*`b'^($ML_y1)*`c'

collapse (sum)`d'
qui replace `lnf'=log(`d')
end

use auto
ml model lf my_truncatedpoisson_lf (beta: mpg= price)(gama: turn)()()
ml maximize
多谢各位了
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Likelihood Yourself Maximum write Your

回帖推荐

eblog 发表于3楼  查看完整内容

看看这个命令 quadchk 的代码,是否有gauss-hermite

沙发
lzy225 在职认证  发表于 2010-2-3 21:42:41
同问,也曾遇到这样的问题

藤椅
eblog 发表于 2010-2-8 09:52:22
看看这个命令 quadchk 的代码,是否有gauss-hermite

板凳
xujh03 发表于 2010-2-10 11:02:10
3# eblog
万分感谢

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-31 08:26