MCMC trên một không gian tham số giới hạn?


18

Tôi đang cố gắng áp dụng MCMC cho một vấn đề, nhưng các thầy tu của tôi (trong trường hợp của tôi là )) có bị giới hạn trong một khu vực không? Tôi có thể sử dụng MCMC bình thường và bỏ qua các mẫu nằm ngoài vùng giới hạn (trong trường hợp của tôi là [0,1] ^ 2), tức là sử dụng lại chức năng chuyển tiếp khi chuyển tiếp mới ra khỏi khu vực hạn chế (bị hạn chế)?α[0,1],β[0,1]



@Zen, tôi không chắc lắm nhưng câu trả lời được đề xuất bởi Xian là lấy mẫu, nhưng thay vì sử dụng MH, sử dụng bộ lấy mẫu Gibbs và nhắc lại nếu một trong các giá trị của kích thước vượt quá ranh giới, tôi có đúng không?
Cupitor

1
Nếu MH đề xuất một cái gì đó bên ngoài không gian tham số, xác suất chấp nhận chỉ được đặt thành và mọi thứ đều hoạt động tốt. Tôi nghĩ MH chỉ diễn giải là (một biểu hiện của trong lý thuyết đo lường). 0 / 0 0 0 = 000/000=0
anh chàng

@guy, nhưng theo cuộc thảo luận trên trang của xian (liên kết trên của Zen), có vẻ như Gibbs có một ưu thế mà không đề cập đến bất kỳ lý do nào!
Cupitor

1
@Cupitor Tôi không thấy anh ấy nói thế. Tôi nghĩ rằng hàm ý là Gabriel đã thực hiện Metropolis-bên trong Gibbs.
anh chàng

Câu trả lời:


27

Bạn có một số tùy chọn đẹp, ít nhiều đơn giản. Đồng phục của bạn trước giúp làm cho chúng đơn giản hơn.

Cách 1: Lấy mẫu độc lập. Bạn chỉ có thể đặt phân phối đề xuất của mình bằng với phân phối đồng đều trên ô vuông đơn vị, điều này đảm bảo rằng các mẫu sẽ không nằm ngoài vùng giới hạn, như bạn gọi. Nhược điểm tiềm năng: nếu phần sau tập trung ở một vùng rất nhỏ của hình vuông đơn vị, bạn có thể có tỷ lệ chấp nhận rất thấp. OTOH, thật khó để tạo ra các số ngẫu nhiên nhanh hơn so với phân phối U (0,1). Ưu điểm tiềm năng: làm việc ít hơn cho bạn.

Tùy chọn 2: Chuyển đổi các tham số của bạn thành một cái gì đó không bị ràng buộc, đưa ra các đề xuất cho các tham số được chuyển đổi, sau đó chuyển đổi các tham số trở lại để sử dụng trong các hàm khả năng. Lưu ý rằng trong trường hợp này, ưu tiên sẽ thuộc về các tham số được chuyển đổi, vì đó là những gì bạn đang đưa ra đề xuất, vì vậy bạn sẽ phải nhầm lẫn với Jacobian của biến đổi để có được ưu tiên mới. Tất nhiên, để phân tích, bạn sẽ chuyển đổi các số ngẫu nhiên tham số do MCMC tạo thành các tham số ban đầu. Nhược điểm tiềm năng: công việc ban đầu nhiều hơn cho bạn. Pptential upside: tỷ lệ chấp nhận tốt hơn cho các đề xuất của bạn.

Tùy chọn 3: Xây dựng phân phối đề xuất khác với bộ lấy mẫu độc lập trên ô vuông đơn vị. Điều này cho phép bạn giữ đồng phục trước, nhưng với chi phí phức tạp hơn khi tính toán xác suất đề xuất. Một ví dụ về điều này, đặt là giá trị hiện tại của một trong các tham số của bạn, sẽ là phân phối Beta với các tham số . càng lớn , đề xuất của bạn càng tập trung vào giá trị hiện tại. Nhược điểm tiềm năng: công việc ban đầu nhiều hơn cho bạn. Pptential Ưu điểm: tốc độ chấp nhận tốt hơn cho đề xuất của bạn - nhưng nếu bạn thực hiện quá lớn, và di chuyển gần đến một góc, bạn có thể gió lên làm cho rất nhiều động thái nhỏ trong góc trước khi ra khỏi.( n x , n ( 1 - x ) ) n nx(nx,n(1x))nn

Tùy chọn 4: Chỉ cần từ chối mọi đề xuất nằm ngoài quảng trường đơn vị (đề xuất nửa vời của Xian). Lưu ý rằng điều này không giống như chỉ tạo ra một đề xuất khác; trong trường hợp này, bạn đang từ chối đề xuất, điều đó có nghĩa là giá trị tiếp theo của bạn cho tham số giống với giá trị hiện tại cho tham số. Điều này hoạt động vì đó là điều sẽ xảy ra nếu bạn có xác suất trước bằng 0 đối với một số vùng trong không gian tham số của bạn và tạo ra một số ngẫu nhiên rơi vào vùng đó. Nhược điểm tiềm năng: nếu bạn đến gần một góc, bạn có thể có xác suất chấp nhận thấp và bị kẹt trong một thời gian. Ưu điểm tiềm năng: làm việc ít hơn cho bạn.

Tùy chọn 5: Tạo một vấn đề mở rộng trên mặt phẳng, trên ô vuông đơn vị, giống như vấn đề thực tế mà bạn gặp phải, làm mọi thứ đúng, sau đó, khi xử lý hậu quả các mẫu MCMC, hãy loại bỏ tất cả các mẫu bên ngoài của hình vuông đơn vị. Ưu điểm tiềm năng: Nếu rất dễ tạo ra vấn đề mở rộng đó, thì có thể bạn sẽ làm việc ít hơn. Nhược điểm tiềm năng: nếu chuỗi Markov lang thang ở đâu đó bên ngoài quảng trường đơn vị trong một thời gian, bạn có thể có hiệu lực chấp nhận khủng khiếp, vì bạn sẽ ném ra hầu hết các mẫu của mình.

Không còn nghi ngờ gì nữa, có những lựa chọn khác, tôi rất muốn xem những gì người khác đề xuất!

Sự khác biệt giữa 2 và 3 là ở một mức độ nào đó về mặt khái niệm, mặc dù với ý nghĩa thực sự cho những gì bạn thực sự làm. Có lẽ tôi sẽ đi với 3, vì tôi chỉ để R cho tôi biết xác suất đề xuất là gì (nếu tôi đang lập trình trong R) và số lượng nỗ lực thêm, ngoài việc điều chỉnh tham số phân phối đề xuất , trông nhỏ với tôi Tất nhiên, nếu tôi đang sử dụng JAGS hoặc BUGS, đó sẽ là một vấn đề hoàn toàn khác, vì những công cụ đó xử lý các đề xuất của riêng họ.n


Bỏ phiếu! Cảm ơn rất nhiều vì câu trả lời thấu đáo như vậy, nhưng có một vài điểm mà tôi đang cố gắng theo dõi: 1) Trên thực tế, không gian tham số đến từ một đoạn thẳng trong hình vuông và do đó rất khó để lấy mẫu bằng cách lấy mẫu thống nhất tôi đoán 2) Điều này thực sự không 'dường như là một ý tưởng khá tốt. Để đưa ra một minh họa đơn giản để mở rộng mẫu giới hạn chỉ bằng cách đặt xác suất của khu vực bên ngoài bằng không! Điều này sẽ làm cho quá trình hội tụ trở nên rất chậm, tôi đoán và điều đó có thể tương tự như việc lấy mẫu con
Cupitor

3) Vấn đề với ý tưởng này là đề xuất của bạn không thể đảo ngược và do đó, có thể xảy ra trường hợp sơ đồ lấy mẫu kết quả có thể không còn là một đề xuất nữa!
Cupitor

4) là cách mà tôi đã cố gắng và có vẻ hợp lý (IMH!) 5) Những điều này dường như bị ảnh hưởng bởi ví dụ tôi đã đề cập trong 2 và như bạn nói, bản thân bạn có thể đưa ra tỷ lệ chấp nhận khủng khiếp!
Cupitor

2
1) Không chắc ý của bạn là gì; bạn có nghĩa là hai tham số của bạn nằm trên một dòng trong ô vuông đơn vị (và do đó thực sự chỉ có một tham số?) 2) Điều 2 đề cập đến là chuyển đổi các tham số thành các tham số khác, ví dụ: y = x / (1-x) có phạm vi khi và lấy mẫu từ y thay vì x. 3) Đề xuất hoạt động; bạn chỉ cần kết hợp các xác suất đề xuất trong tính toán tỷ lệ chấp nhận (MCMC tiêu chuẩn.) Bạn không cần phải có một đề xuất đối xứng (đó là điều tôi nghĩ bạn có nghĩa là "không thể đảo ngược") để giữ được tính linh hoạt. x ( 0 , 1 ) β(0,inf)x(0,1)β
jbowman

1) Ok, điều tôi đang làm là tôi chọn một số ngẫu nhiên thống nhất từ ​​[0,0,4.0] và tùy thuộc vào phần nguyên và phần nổi của nó gán cho một điểm trên ngoại vi của hình vuông tôi đã đề cập. Ví dụ: sẽ chuyển đến và chuyển đến trong khi chuyển đến( 0,5 , 1 ) α = 3,2 ( 0 , 0,8 ) α = 0,2 ( 0,2 , 0 )α=2.5(0.5,1)α=3.2(0,0.8)α=0.2(0.2,0)
Cupitor
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.