作者celestialgod (天)
看板R_Language
标题Re: [问题] 利用newton-raphson method 求回归系数
时间Sat Dec 5 19:57:54 2015
※ 引述《ritajen (asdfge)》之铭言:
: ※ 引述《celestialgod (天)》之铭言:
: : 我懒得推文了...
: : 问题如下:
: : 1. 你知道logistic的MLE怎麽算吗?
: : 2. 你有了牛顿法的程式,但是你知道f3放什麽?x0放什麽吗?
: : 3. 我看不懂你创的矩阵,[Y-pi1]是从哪里来的?
: : 4. 从你的叙述里面,似乎都对newton这个函数不熟悉,你要怎麽跑这个程式?
: : 5. 你知道R可以直接用glm求logistic regression的回归系数吗?
: 我知道R里面可以直接算唷,不过规定不可以使用内建函数。
: 然後我知道MLE的求法,求残差到回归线的最小平方和。
^^^^^^^^^^^^^^^^^^^^^^^^^^
logistic的求法不完全是这样...
你的Y是0 or 1,此时残差并没有太大的意义
logistic采取的是iterative reweighted least-square的方法
weighted least-square应该听过吧?
平常的least-square 对每一个样本在做加权的动作
logistic regression的Likelihood求出来之後
透过微分,可以得到
hessian 类似 X^TWX
gradient 是 X^T(y-pi) 的样子
pi = P(Y = 1 | X_i) 换成中文,就是给定X_i时,Y=1的机率
最後透过newton method做叠代就可以得到结果了~~
因此,你对logistic求解的过程不甚熟悉
所以不知道怎麽利用newton这个函数
问题不是问的不好,我只是透过问题去了解你认识的程度,才方便做回答而已
我的文字可能比较生硬,如有得罪,还请多多包涵
最後,你可以google看看 logistic regression MLE 应该可以找到相关资讯
: f3的话我的理解是一个包刮{gradient,hessian}的函数,
: 我了解这两个值需要利用矩阵相乘而得。
: [Y-pi](这是提示给可以利用的矩阵),至於newton这个函数我是不熟没有错,因为刚开始接触又没有数理的背景,抱歉问了不好问题。
: 因为真的想了很多天还是无从下手,所以才想来请益各位,问题问得不好抱歉。
最後的程式:
http://pastebin.com/hSJq1Enr
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.109.73.236
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1449316677.A.444.html
1F:推 ritajen: 谢谢^^ 不过我应该是先得到回归系数,才有办法算pi,这 12/05 20:33
2F:→ ritajen: 样的话我一开始的矩阵[Y-pi]是不是创造不出来? 12/05 20:33
是,所以我也不知道你们老师的提示是什麽意思
3F:推 ritajen: 好唷,还是感谢你 :) 12/05 20:54
不客气,细节部分不懂,可以再寄站内信讨论
4F:→ allen1985: Y = pi 还比较合理 12/05 20:56
??
5F:→ allen1985: 我只是想说logistic是在fit机率 也许老师的hint是这个 12/05 22:14
6F:→ allen1985: 而不是Y-pi 12/05 22:14
喔喔,了
※ 编辑: celestialgod (140.109.73.234), 12/06/2015 13:22:21