Chọn phân phối xác suất để tối đa hóa chức năng đánh giá (đối với cuộc thi dự báo cúm CDC)


7

Giả sử bạn có một biến ngẫu nhiên rời rạc với hàm khối lượng xác suất trên hỗ trợ . Hàm sao cho tối đa hóa Để tránh xử lý các trường hợp cạnh, giả sử .Xp(x)=P(X=x)0,,nq(x)0x=0nq(x)=1

E(log[q(X1)+q(X)+q(X+1)])?
P(X=0)=P(X=n)=0

Câu hỏi liên quan:

  • Tôi tin rằng tối đa hóa kỳ vọng ở trên cũng tối đa hóa vì là đơn điệu. Đúng không?q(x)E[q(X1)+q(X)+q(X+1)]log
  • Bất cứ điều gì có thể đánh bại ?p(x)=q(x)

Đối với những người quan tâm, câu hỏi này xuất phát từ cuộc thi Dự báo Cúm CDC nơi họ sử dụng nhật ký tổng xác suất của giá trị đích và các giá trị lân cận làm chức năng tiện ích để đánh giá dự báo.


bạn có thể cung cấp một liên kết? Vì những lý do rất rõ ràng, tôi đặc biệt quan tâm ...
Cliff AB

2
Tôi không hiểu tại sao giải pháp của phải giống như giải pháp củamaxqE[q(X1)+q(X)+q(X+1)]maxqE[log{q(X1)+q(X)+q(X+1)}]
Tây An

Tôi đã thêm một liên kết đến một bản tin. Thật không may, liên kết trong bài viết, là trang web cạnh tranh thực tế, hiện đang ngừng hoạt động. Hy vọng nó sẽ được sao lưu sớm.
jaradniemi

Ý tưởng là chúng tôi muốn đánh giá pmf của bạn cho một mục tiêu, ví dụ như tuần cao điểm, nhưng vì dữ liệu rất ồn nên mục tiêu không chắc chắn.
jaradniemi

1
@jaradniemi: ah, vậy thì chính xác là vấn đề về dữ liệu bị kiểm duyệt giữa chừng và giải pháp cho vấn đề của bạn là NPMLE bị kiểm duyệt giữa chừng.
Vách đá AB

Câu trả lời:


3

Vấn đề tuyệt vời! Như phái sinh của Xi'an cho thấy, nó có liên quan đến việc giảm thiểu sự phân kỳ KL từ Q đến P. Cliff cũng cung cấp một số bối cảnh quan trọng.

Vấn đề có thể được giải quyết một cách tầm thường bằng phần mềm tối ưu hóa, nhưng tôi không thấy cách viết công thức dạng đóng cho giải pháp chung. Nếu không bao giờ liên kết, thì có một công thức trực quan.qi0

Hầu như chắc chắn tối ưu (mặc dù nhìn thấy biểu đồ ví dụ của tôi ở cuối, nó có thể đóng). Và không phải là vấn đề giống như . Quan sát không phải là mục tiêu tương đương như . Đó không phải là một sự biến đổi đơn điệu. Kỳ vọng là một tổng và nhật ký đi vào bên trong tổng, vì vậy nó không phải là một phép biến đổi đơn điệu của hàm mục tiêu.qpmaxE[x]maxE[log(x)]x+ylog(x)+log(y)

Điều kiện KKT (nghĩa là điều kiện cần và đủ) cho một giải pháp:

Xác định và . Vấn đề là: q0=0qn+1=0

maximize (over qi)i=1npilog(qi1+qi+qi+1)subject toqi0i=1nqi=1

Lagrangian: Đây là một vấn đề tối ưu hóa lồi trong đó điều kiện của Slater giữ do đó các điều kiện KKTđiều kiện cần và đủ để tối ưu. Điều kiện đặt hàng đầu tiên:

L=ipilog(qi1+qi+qi+1)+iμiqiλ(iqi1)
pi1qi2+qi1+qi+piqi1+qi+qi+1+pi+1qi+qi+1+qi+2=λμi

bổ sung: Và tất nhiên . (Nó xuất hiện từ thử nghiệm của tôi rằng nhưng tôi không thấy ngay tại sao.) và là các số nhân Lagrange.

μiqi=0
μi0λ=1μiλ

Giải pháp nếu không bao giờ liên kết.qi0

Sau đó xem xét giải pháp

pi=qi1+qi+qi+13μi=0λ=1
Cắm vào điều kiện đặt hàng đầu tiên, chúng tôi nhận được . Vì vậy, nó hoạt động (miễn là và cũng được thỏa mãn).13+13+13=1iqi=1qi0

Cách viết bài toán với ma trận:

Đặt và là các vectơ. Đặt là ma trận đường chéo ba băng tần. Ví dụ. chopqAn=5

A=[1100011100011100011100011]

Vấn đề có thể được viết với ký hiệu ma trận nhiều hơn:

maximize (over q)plog(Aq)subject toqi0iqi=1

Điều này có thể được giải quyết nhanh chóng bằng số nhưng tôi không thấy cách nào để giải pháp dạng đóng sạch?

Giải pháp được đặc trưng bởi: nhưng tôi không thấy nó hữu ích khủng khiếp như thế nào ngoài việc kiểm tra phần mềm tối ưu hóa của bạn.

Ay=λux=Aqyi=pixi

Mã để giải quyết nó bằng CVX và MATLAB

A = eye(n) + diag(ones(n-1,1),1) + diag(ones(n-1,1),-1);

cvx_begin
 variable q(n)
 dual variable u;
 dual variable l;
 maximize(p'*log(A*q))

 subject to:
  u: q >= 0;
  l: sum(q) <= 1;
cvx_end

Ví dụ. đầu vào:

p = 0.0724    0.0383    0.0968    0.1040    0.1384    0.1657    0.0279    0.0856    0.2614    0.0095

có giải pháp:

q = 0.0000    0.1929    0.0000    0.0341    0.3886    0.0000    0.0000    0.2865    0.0979    0.0000

Giải pháp tôi nhận được (màu xanh) khi tôi có một tấn thùng về cơ bản theo pdf bình thường (màu đỏ): nhập mô tả hình ảnh ở đây Một vấn đề khác tùy ý hơn: nhập mô tả hình ảnh ở đây

Rất lỏng lẻo, với bạn nhận được , nhưng nếu di chuyển xung quanh một tấn, bạn sẽ nhận được một số thứ khó khăn đang diễn ra khi tối ưu hóa cố gắng đặt khối lượng trên trong vùng lân cận khối lượng , chiến lược đặt nó giữa khối lượng của với khối lượng.pi1pipi+1qipipiqipipi

Một điểm khái niệm khác là sự không chắc chắn trong dự báo của bạn sẽ làm trơn tru ước tính của bạn một cách hiệu quả và một mượt mà hơn sẽ có một giải pháp gần với . (Tôi nghĩ điều đó đúng.)ppqp


Tôi không hiểu điều kiện và tôi đã bỏ qua việc đưa vào ràng buộc trong Lagrangian. μi=0qi0
Tây An

@ Xi'an Khi tôi giải quyết vấn đề này bằng số bằng CVX, ràng buộc liên kết trong một số trường hợp nhất định, do đó hệ số nhân dương đối với một số . Các chỉ là một cách ngớ ngẩn để nói rằng nếu sau đó và ngược lại. qi0μiiμiqi=0μi>0qi=0
Matthew Gunn

Cảm ơn câu trả lời. Tôi đã hy vọng tái tạo kết quả của bạn nhưng sử dụng R, nhưng có vẻ như điều đó không đơn giản.
jaradniemi

@jaradniemi R của tôi không tốt lắm, nhưng có lẽ bạn có thể nhận được mã đơn giản từ một người đã thực hiện một số tối ưu hóa trong R trước đó. Với ma trận được xác định như tôi đã làm, bạn muốn giải bài toán tối thiểu hóa lồi theo chủ đề và . Điều đó nói rằng, từ sự đánh lừa của tôi về vấn đề này, có vẻ như việc chọn khá gần với khá trơn tru (ví dụ: xem hình đầu tiên) nên bạn có thể không đạt được nhiều Aminimizeplog(Aq)q0iqi=1q=pp
Matthew Gunn

3

Vì giải quyết về việc giải quyết để tìm giải pháp cho Nếu giải pháp cho hệ phương trình này không thuộc về đơn giản thì sẽ tìm thấy đối số trên một mặt của đơn giản .q=p

argminqpilog{pi/qi}
qi1+qi+qi+1=3pii=1,,n1
argmaxqpilog{pi/(qi1+qi+qi+1)}
Rn+1

1
Typo, nó nên được lập luận tối thiểu. là vấn đề tương đương vớiminqipi(logpilogqi)maxqipilogqi
Matthew Gunn

Cảm ơn bạn, Matthew, cuối cùng tôi đã tìm thấy thời gian để đọc mục nhập của tôi đúng cách!
Tây An

2

Nếu tôi hiểu điều này một cách chính xác, tôi không nghĩ rằng điều này sẽ có một giải pháp dạng đóng. Hoặc hơn nữa, đó ít nhất là một chuyên môn hóa của một vấn đề không ở dạng đóng.

Lý do tôi nói điều này là vì nó chính xác là khả năng xuất hiện trong NPMLE cho dữ liệu bị kiểm duyệt giữa chừng, chuyên môn hóa là tất cả các khoảng đều có dạng . Nói chung, NPMLE là hàm tối đa của hàm[X1,X+1]

i=1nlog(P(ti[Li,Ri]))

trong đó là thời gian sự kiện cho chủ đề , trong đó tất cả những gì được biết là sự kiện xảy ra trong khoảng . Điều này tương đương với chính xác vấn đề của bạn, với và .tii[Li,Ri]Li=Xi1Ri=Xi+1

Nói chung, đây không phải là ở dạng kín. Tuy nhiên, ít nhất một trường hợp đặc biệt là; rằng các dữ liệu hiện trạng , hoặc khi tất cả các khoảng có dạng hoặc .[0,ci][ci,)

Điều đó đang được nói, có rất nhiều thuật toán để giải NPMLE! Bạn có thể phù hợp rằng việc sử dụng Rcủa icenReggói với các ic_npchức năng (lưu ý: Tôi là tác giả). Đảm bảo đặt tùy chọn B = c(1,1), tuyên bố rằng các khoảng thời gian được đóng lại.

Lưu ý rằng không phải là trường hợp hàm tối đa hóa cũng tối đa hóa . Như một ví dụ tầm thường, giả sử Sau đó, và 0 nếu không tối đa hóa nhưng không được xác định cho .qE[q(X1)+...]E[log(q(X1)+...]X1=1,X2=1,X3=10q(1)=1E[q(X1)+...]E[log(q(X1)+...]

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.