bạn có thể chỉ cho tôi rõ ràng lần lặp đầu tiên của newton-raphson và điểm đánh cá không?


8

Tôi đang cố gắng hiểu sự khác biệt giữa Newton-Raphsonkỹ thuật và Fisher scoringkỹ thuật bằng cách tính toán lần lặp đầu tiên cho mỗi phương pháp cho một Bernoullimẫu. (Tôi biết rằng trong trường hợp này tôi có thể tính toán rõ ràng và ngay lập tức nhưng tôi muốn làm điều đó lặp đi lặp lại chỉ để hiểu và xem mỗi phương thức hội tụ như thế nào).πmle

Giả sử tôi vẽ một đồng xu lần, tham số thực là không biết đến tôi , và tôi đã nhận 4 người đứng đầu, vì vậy .π t = 0,3 ˉ X = 0,4n=10πt=0.3X¯=0.4

Hàm số điểm là:

u(π)=nX¯πn(1X¯)1π

Các thông tin đánh bắt được quan sát là:

J(π)=nX¯π2n(1X¯)(1π)2

và thông tin ngư dân dự kiến ​​là:

I(π)=nπtπ2+n(1πt)(1π)2

Và lưu ý rằng chúng tôi chỉ có thể đơn giản hóa thông tin câu cá dự kiến khi chúng tôi đánh giáπ=πt thông tin đó tại , nhưng chúng tôi không biết đó là ...

Bây giờ giả sử dự đoán ban đầu của tôi làπ0=0.6

Không Newton-Raphsonchỉ đơn giản là đi như thế này:

π1=π0u(π0)/J(π0)

?

Và đi như thế nào Fisher-scoring?

π1=π0+u(π0)/I(π0)

Lưu ý rằng nó chứa mà chúng ta không biết! và chúng tôi thậm chí không thể thay thế bằng vì chúng tôi cũng không biết điều đó - đó chính xác là những gì chúng tôi đang tìm kiếm ...π t π m l eπtπtπmle

Bạn có thể vui lòng giúp tôi chỉ cho tôi cách cụ thể nhất có thể 2 phương pháp đó không? Cảm ơn!

Câu trả lời:


4

Đối với Newton-Raphson , vâng, chúng tôi có

π1=π0u(π0)/J(π0).

Đối với tính điểm của Fisher , như bạn đã đề cập, có thông số không xác định ( ) trong thông tin dự kiến . Cho , chúng tôi sử dụng đạo hàm đầu tiên mẫu để xấp xỉ đạo hàm thứ hai dự kiến trong đó và là chỉ số đầu cho mỗi lần rút. Sau đó Lưu ý rằng chúng ta cần lớn vì phép tính gần đúng dựa trên lý thuyết tiệm cận.πI(π)I(π)=E(J(π))=E[u(π)u(π)]

I^(π0)=inui(π0)ui(π0),
ui(π)=xiπ1xi1πxi
π1=π0+u(π0)/I^(π0).
n

Tôi đã sửa đổi I_hat(pi)trong Pythonmã của @ ihadanny . Bây giờ chấm điểm Newton-Raphson và Fisher cung cấp kết quả giống hệt nhau.

import random
import numpy as np 

pi_t = random.random()
n = 1000
draws = [1 if x < pi_t else 0 for x in np.random.rand(n)]
x_bar = np.mean(draws)

def u(pi):
    return n*x_bar/pi - n*(1-x_bar)/(1-pi)
def J(pi):
    return -n*x_bar/pi**2 - n*(1-x_bar)/((1-pi)**2)
def I_hat(pi):
    x = 0
    for i in range(0, n): 
        x = x + (draws[i]/pi - (1-draws[i])/(1-pi))**2
    return x
def Newton(pi):
    return pi - u(pi)/J(pi)
def Fisher(pi):
    return pi + u(pi)/I_hat(pi)

def dance(method_name, method):
    print("starting iterations for: " + method_name)
    pi, prev_pi, i = 0.5, None, 0
    while i == 0 or (abs(pi-pi_t) > 0.001 and abs(pi-prev_pi) > 0.001 and i < 10):
        prev_pi, pi = pi, method(pi)
        i += 1
        print(method_name, i, "delta: ", abs(pi-pi_t))

dance("Newton", Newton)
dance("Fisher", Fisher)

Log Message
starting iterations for: Newton
Newton 1 delta:  0.00899203081545
Newton 2 delta:  0.00899203081545
starting iterations for: Fisher
Fisher 1 delta:  0.00899203081545
Fisher 2 delta:  0.00899203081545

Cập nhật

Đây là trường hợp đặc biệt mà Newton-Raphson và Fisher chấm điểm giống hệt nhau, bởi vì chỉ cần đại số chuẩn.

I^(π)=in(xiπ1xi1π)2=inxiπ2+(ninxi)(1π)2=J(π),

hmm .. cảm ơn rất nhiều vì điều này - có ý nghĩa Tuy nhiên, tôi đã triển khai các tuyên bố chính xác của bạn: pastebin.com/m192UYs9 - Newton hội tụ sau 1-2 lần lặp, Fisher thậm chí không đến gần sau 10 lần lặp. Không phải nó là cách khác sao ?? Tôi nghĩ rằng Fisher là một sự cải tiến so với Newton ...
ihadanny

1
Lỗi của tôi. Tôi sửa lại câu trả lời. Lưu ý rằng câu trả lời trước đó dẫn đến . π1=π0+1/u(π0)
Randel

Ôi tuyệt! một câu hỏi cuối cùng trước khi tôi chấp nhận - không có gì lạ khi bây giờ cả hai phương pháp đều cho kết quả chính xác như nhau mỗi khi tôi chạy mã? một lần nữa - Fisher được coi là một sự cải tiến - có vẻ như bằng cách sử dụng phép tính gần đúng (chính xác) của bạn giờ đây không có lợi thế nào khi sử dụng Fisher so với Newton và cả hai phương pháp đều tương đương về mặt toán học :(
ihadanny

(và đừng lo lắng - Tôi sẽ chấp nhận và trao giải thưởng tiền thưởng trước khi nó hết hạn, chỉ là tôi thực sự hy vọng câu hỏi này sẽ giúp tôi hiểu được sự khác biệt cơ bản giữa các phương pháp và hiện tại nó không đưa tôi đến đó - nó trông giống như môn thể dục toán học cùng một thứ với tôi)
ihadanny

Tôi đã cập nhật câu trả lời với bằng chứng tại sao hai phương pháp này giống hệt nhau trong trường hợp đặc biệt này. Theo hiểu biết của tôi, việc chấm điểm của Fisher không yêu cầu các dẫn xuất thứ hai nhưng nó cần lớn . Một tài liệu tham khảo tốt: Demidenko, Models Mixed: Lý thuyết và ứng dụng với R . n
Randel
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.