Re: [問題] 利用newton-raphson method 求迴歸係數

作者: ritajen (asdfge)   2015-12-05 19:45:47
※ 引述《celestialgod (天)》之銘言:
: 我懶得推文了...
: 問題如下:
: 1. 你知道logistic的MLE怎麼算嗎?
: 2. 你有了牛頓法的程式,但是你知道f3放什麼?x0放什麼嗎?
: 3. 我看不懂你創的矩陣,[Y-pi1]是從哪裏來的?
: 4. 從你的敘述裡面,似乎都對newton這個函數不熟悉,你要怎麼跑這個程式?
: 5. 你知道R可以直接用glm求logistic regression的迴歸係數嗎?
: ※ 引述《ritajen (asdfge)》之銘言:
: : 如題,利用牛頓法求logistic regression迴歸係數的最大概似估計值,
: : 目前我有牛頓法的雛型,
: : rm(list = ls())
: : newton <- function(f3, x0, tol = 1e-9, n.max = 100) {
: : x <- x0
: : f3.x <- f3(x)
: : n <- 0
: : while ((max(abs(f3.x[[1]])) > tol) & (n < n.max)) {
: : x <- x - solve(f3.x[[2]]) %*% f3.x[[1]]
: : f3.x <- f3(x)
: : n <- n + 1
: : }
: : if (n == n.max) {
: : cat('newton failed to converge\n')
: : } else {
: : return(x)
: : }
: : }
: : 以下是我的data,我目前了解需先創立一個新的矩陣
: : X=[1 gpa gre] (共有n行是一個n*3的矩陣)
: : 再創造一個
: : [Y-pi1](共有n行是一個n*1的矩陣,其中pi是機率)
: : 但這個地方我不太明白pi要是多少?
: : 是利用上面所創作出來的矩陣相乘得到f3,在代迴上述求解嗎?
: : 這樣解會是一個矩陣? (迴歸係數)
: : 麻煩厲害的人求解 感謝!
我知道R裡面可以直接算唷,不過規定不可以使用內建函數。
然後我知道MLE的求法,求殘差到回歸線的最小平方和。
f3的話我的理解是一個包刮{gradient,hessian}的函數,
我了解這兩個值需要利用矩陣相乘而得。
[Y-pi](這是提示給可以利用的矩陣),至於newton這個函數我是不熟沒有錯,因為剛開始接觸又沒有數理的背景,抱歉問了不好問題。
因為真的想了很多天還是無從下手,所以才想來請益各位,問題問得不好抱歉。

Links booklink

Contact Us: admin [ a t ] ucptt.com