Các quy trình Gaussian: Cách sử dụng GPML cho đầu ra đa chiều


13

Có cách nào để thực hiện hồi quy quy trình Gaussian trên đầu ra đa chiều (có thể tương quan) bằng GPML không?

Trong kịch bản demo tôi chỉ có thể tìm thấy một ví dụ 1D.

Một câu hỏi tương tự trên CV đã giải quyết trường hợp đầu vào đa chiều.


Tôi đã đi qua cuốn sách của họ để xem liệu tôi có thể tìm thấy gì không. Trong chương thứ 9 của cuốn sách này (phần 9.1), họ đã đề cập đến trường hợp nhiều đầu ra này. Họ đã đề cập đến một vài cách để giải quyết vấn đề này, Một - sử dụng quy trình tiếng ồn tương quan và Hai - Cokriging (Tương quan trước).

Tôi vẫn không biết, làm thế nào tôi có thể kết hợp bất kỳ ý tưởng nào trong số này vào khung GPML.


Ngoài ra, có bất kỳ thư viện / khung GP nào khác hỗ trợ đầu ra đa chiều không?


"Dự đoán dữ liệu có cấu trúc" nói về việc sử dụng các SVM trong trường hợp một lớp (ước tính mật độ hạt nhân) trên Hạt nhân chung giữa đầu vào và đầu ra. Cho rằng cả hai đều là máy nhân, phương pháp này sẽ hoạt động. Tôi tìm thấy một bài báo đề cập đến một cái gì đó tương tự. datamin.ubbcluj.ro/tr/2011/sogp.pdf những nỗ lực của tôi trong việc phù hợp với các thuật toán học có cấu trúc đã khá tuyệt vời, vì vậy tôi không chắc cách này sẽ được xử lý.
Jessica Collins

Câu trả lời:


7

Tôi tin rằng Twin Gaussian Processes chính xác là những gì bạn đang tìm kiếm. Tôi không thể mô tả mô hình tốt hơn bản tóm tắt của bài báo, vì vậy tôi sẽ sao chép dán nó:

Chúng tôi mô tả các quá trình Gaussian sinh đôi (TGP) 1, một phương pháp dự đoán có cấu trúc chung sử dụng các linh mục quy trình Gaussian (GP) [2] trên cả hai biến số và đáp ứng, cả đa biến và ước tính các kết quả đầu ra bằng cách giảm thiểu phân kỳ Kullback-Leibler giữa hai GP được mô hình hóa như các phân phối thông thường của tập huấn hữu hạn ví dụ thử nghiệm, nhấn mạnh mục tiêu rằng các đầu vào tương tự sẽ tạo ra sự chấp nhận tương tự và điều này sẽ giữ trung bình giữa các phân phối biên của chúng. TGP nắm bắt không chỉ sự phụ thuộc lẫn nhau giữa các hiệp phương sai, như trong một GP thông thường, mà cả những phản hồi giữa các phản hồi, do đó, mối tương quan giữa cả đầu vào và đầu ra đều được tính đến. TGP được minh họa, với kết quả đầy hứa hẹn, cho việc tái cấu trúc tư thế con người 3d từ các chuỗi video một mắt và đa hình trong tiêu chuẩn HumanEva được giới thiệu gần đây, trung bình chúng tôi đạt được lỗi 5 cm trên mỗi điểm đánh dấu 3d cho các mô hình được đào tạo chung, sử dụng dữ liệu từ nhiều người và nhiều hoạt động. Phương pháp này nhanh và tự động: không yêu cầu chế tạo thủ công tư thế ban đầu, thông số hiệu chỉnh máy ảnh hoặc tính khả dụng của mô hình cơ thể 3d liên quan đến các đối tượng người được sử dụng để đào tạo hoặc thử nghiệm.

Các tác giả đã hào phóng cung cấp mã và bộ dữ liệu mẫu để bắt đầu.


Chào mừng đến với trang web, @caoy. Bạn có phiền khi cung cấp một ít thông tin về những gì tại liên kết đó không? Bằng cách đó, độc giả có thể biết liệu nó có đáng để theo đuổi không, và điều đó có nghĩa là vẫn còn một cái gì đó có giá trị ở đây trong trường hợp liên kết trong tương lai.
gung - Phục hồi Monica

@gung, thx, hy vọng bản tóm tắt thực hiện công việc.
Yanshuai Cao

@caoy ... Bạn có thể giải thích rõ hơn về trung bình phân phối dự đoán và phương sai của các đầu ra trong Quy trình Twin Gaussian không?
Sandipan Karmakar

3

Câu trả lời ngắn Hồi quy cho đầu ra đa chiều là một chút khó khăn và trong trình độ kiến ​​thức hiện tại của tôi không được tích hợp trực tiếp vào hộp công cụ GPML.

Câu trả lời dài Bạn có thể chia vấn đề hồi quy đầu ra đa chiều thành 3 phần khác nhau.

  1. Các đầu ra không liên quan với nhau - Chỉ cần hồi quy các đầu ra riêng lẻ như tập lệnh demo cho trường hợp 1d.
  2. Đầu ra có liên quan nhưng không biết mối quan hệ giữa chúng - Về cơ bản, bạn muốn tìm hiểu mối quan hệ bên trong giữa các đầu ra. Như cuốn sách đề cập đến coKriging là một cách tốt để bắt đầu. Có những phần mềm khác ngoài GPML có thể trực tiếp cho phép bạn thực hiện cokriging, vd. ooDace
  3. Các đầu ra có liên quan và bạn biết mối quan hệ giữa chúng - Thực hiện đồng bộ hóa thường xuyên nhưng bạn có thể áp dụng các ràng buộc cứng giữa các đầu ra bằng cách áp dụng các ràng buộc trong trình tối ưu hóa (trong khi bạn giảm thiểu khả năng cận biên của nhật ký) như đã nói của Hall & Huang 2001 hoặc áp dụng các mối quan hệ trong chức năng trước như đã nói của Constantinescu & Anitescu 2013 .

Tôi hy vọng nó sẽ giúp :)


2

Đây là một mô-đun từ scikit-learn hoạt động tốt cho tôi một cách đáng ngạc nhiên:

http://scikit-learn.org/ sóng / auto_examples / gaussian_ process / plot_gp_regression.html

# Instanciate a Gaussian Process model
gp = GaussianProcess(corr='cubic', theta0=1e-2, thetaL=1e-4, thetaU=1e-1,
                     random_start=100)

# Fit to data using Maximum Likelihood Estimation of the parameters
gp.fit(X, y)

# Make the prediction on the meshed x-axis (ask for MSE as well)
y_pred, MSE = gp.predict(x, eval_MSE=True)
sigma = np.sqrt(MSE)

1

Tôi đã tìm kiếm các Quy trình Gaussian đa đầu ra và tìm thấy nhiều cách để hành động như nó, phương pháp tích chập, phương pháp mô hình hiệu ứng hỗn hợp và mới nhất là Quy trình Twin Gaussian (TGP) này.

Tôi có một nghi ngờ trong khái niệm Quy trình Twin Gaussian (TGP). Ai có thể giúp tôi với điều đó?

Trong TGP, các tác giả đang tìm ra đầu ra dự đoán ( ) để giảm thiểu sự phân kỳ KL giữa đầu vào và đầu ra ngược lại. Nhưng nói chung, chúng tôi tìm phân phối dự đoán đầu ra, ví dụ . Một điều cần lưu ý ở đây là phương sai dự đoán tức là , không có bất kỳ vai trò nào trong đó. Trong trường hợp của TGP, đầu ra dự đoán có giống với giá trị trung bình của phân phối dự đoán của không? p(y*|y)~(μ,σ2)σ2y y yy^p(y|y)(μ,σ2)σ2yy^y

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.