Hiểu các tham số hàm cơ sở Gaussian được sử dụng trong hồi quy tuyến tính


12

Tôi muốn áp dụng hàm cơ sở Gaussian vào triển khai hồi quy tuyến tính. Thật không may, tôi đang gặp khó khăn để hiểu một vài tham số trong hàm cơ sở. Cụ μσ .

Tập dữ liệu của tôi là một ma trận 10.000 x 31. 10.000 mẫu và 31 tính năng. Tôi đã đọc rằng "Mỗi hàm cơ sở chuyển đổi vectơ đầu vào x thành giá trị vô hướng". Vì vậy, tôi giả sử x là 1 mẫu nên một vectơ 1 x 31. Từ đây tôi bối rối. Chính xác thì tham số μj gì? Tôi đã đọc rằng điều này chi phối các vị trí của các chức năng cơ bản. Vì vậy, đây không phải là ý nghĩa của một cái gì đó? Tôi cũng đang ném ra bởi j subscript ( μϕ ), điều này khiến tôi nghĩ hàng thứ j. Nhưng điều đó dường như không có ý nghĩa. Là μj một vectơ? Bây giờ cho các σ"chi phối quy mô không gian". Chính xác thì đó là gì? Tôi đã thấy một số triển khai thử các giá trị như .1, .5, 2.5 cho tham số này. Làm thế nào là những giá trị được tính toán? Tôi đã nghiên cứu và tìm kiếm các ví dụ để học hỏi nhưng đến giờ tôi vẫn chưa thể tìm thấy. Bất kỳ trợ giúp hoặc hướng được đánh giá rất cao! Cảm ơn bạn.

Câu trả lời:


11

Khi bạn bối rối, hãy để tôi bắt đầu bằng cách nêu rõ vấn đề và đưa ra từng câu hỏi của bạn. Bạn có cỡ mẫu là 10.000 và mỗi mẫu được mô tả bằng một vectơ đặc trưng . Nếu bạn muốn thực hiện hồi quy sử dụng các hàm cơ sở xuyên tâm Gaussian sau đó đang tìm kiếm một chức năng có dạng f ( x ) = Σ j w j * g j ( x ; μ j , σ j ) , j = 1 .. m nơi g ixR31

f(x)=jwjgj(x;μj,σj),j=1..m
gilà các chức năng cơ bản của bạn. Cụ thể, bạn cần phải tìm ra trọng lượng w j để cho các thông số cho μ jσ j bạn giảm thiểu các lỗi giữa y và dự đoán tương ứng với y = f ( x ) - thường bạn sẽ giảm thiểu sai số bình phương nhỏ nhất.mwjμjσjyy^f(x^)

Chính xác thì tham số j là gì?

Bạn cần tìm cơ sở hàm g j . (Bạn vẫn cần phải xác định số m ) Mỗi chức năng cơ sở sẽ có một μ jσ j (cũng không rõ). Các chỉ số j dao động từmgjmμjσjj đến m .1m

một vectơ?μj

Vâng, đó là một điểm trong . Nói cách khác, nó là điểm ở đâu đó trong không gian đặc trưng của bạn và một μR31μ phải được xác định cho mỗi hàm cơ sở.m

Tôi đã đọc rằng điều này chi phối các vị trí của các chức năng cơ bản. Vì vậy, đây không phải là ý nghĩa của một cái gì đó?

Hàm cơ sở được tập trung tại μ j . Bạn sẽ cần phải quyết định nơi các địa điểm này. Vì vậy, không, nó không nhất thiết là ý nghĩa của bất cứ điều gì (nhưng xem thêm để biết cách xác định)jthμj

Bây giờ cho sigma "chi phối quy mô không gian". Chính xác thì đó là gì?

là dễ hiểu nếu chúng ta chuyển sang các chức năng cơ sở mình.σ

Nó giúp nghĩ về các hàm cơ sở xuyên tâm Gaussian trong các độ sáng thấp hơn, giả sử hoặc R 2 . Trong R 1 , hàm cơ sở xuyên tâm Gaussian chỉ là đường cong hình chuông nổi tiếng. Chuông tất nhiên có thể hẹp hoặc rộng. Chiều rộng được xác định bởi σ - lớn hơn σ là hẹp hơn hình dạng chuông. Nói cách khác, σ quy mô chiều rộng của hình chuông. Vì vậy, đối σ = 1 chúng tôi không có mở rộng quy mô. Cho lớnR1R2R1σσσσ chúng tôi có tỉ lệ đáng kể.σ

Bạn có thể hỏi mục đích của việc này là gì. Nếu bạn nghĩ về chiếc chuông bao phủ một phần không gian (một dòng trong ) - một chiếc chuông hẹp sẽ chỉ bao phủ một phần nhỏ của dòng *. Điểm x gần trung tâm của chuông sẽ có giá trị g j ( x ) lớn hơn . Các điểm ở xa trung tâm sẽ có giá trị g j ( x ) nhỏ hơn . Chia tỷ lệ có tác dụng đẩy các điểm ra xa trung tâm hơn - vì chuông thu hẹp các điểm sẽ nằm xa trung tâm hơn - làm giảm giá trị của g j ( x )R1xgj(x)gj(x)gj(x)

Mỗi hàm cơ sở chuyển đổi vectơ đầu vào x thành giá trị vô hướng

Có, bạn đang đánh giá các hàm cơ bản tại một số điểm xR31 .

exp(xμj222σj2)

Bạn nhận được một vô hướng như là kết quả. Kết quả vô hướng phụ thuộc vào khoảng cách của điểm từ trung tâm μx dox - μ j và vô hướng σ j .μjxμjσj

Tôi đã thấy một số triển khai thử các giá trị như .1, .5, 2.5 cho tham số này. Làm thế nào là những giá trị được tính toán?

Tất nhiên đây là một trong những khía cạnh thú vị và khó khăn khi sử dụng các hàm cơ sở xuyên tâm của Gaussian. Nếu bạn tìm kiếm trên web, bạn sẽ tìm thấy nhiều gợi ý về cách xác định các tham số này. Tôi sẽ phác thảo trong các điều khoản rất đơn giản một khả năng dựa trên phân cụm. Bạn có thể tìm thấy điều này và một số gợi ý khác trực tuyến.

Bắt đầu bằng cách phân cụm 10000 mẫu của bạn (trước tiên bạn có thể sử dụng PCA để giảm kích thước theo sau là phân cụm k-Means). Bạn có thể đặt là số cụm bạn tìm thấy (thường sử dụng xác thực chéo để xác định m tốt nhấtmm ). Bây giờ, tạo một hàm cơ sở xuyên tâm cho mỗi cụm. Đối với mỗi hàm cơ sở xuyên tâm để μ j là trung tâm (ví dụ trung bình, centroid, vv) của cluster. Hãy σ j phản ánh chiều rộng của cụm (ví dụ bán kính ...) Bây giờ đi trước và thực hiện hồi quy của bạn (mô tả này đơn giản chỉ là một overview- nó cần rất nhiều công việc tại mỗi bước!)gjμjσj

* Tất nhiên, đường cong hình chuông được định nghĩa từ - đến như vậy sẽ có giá trị ở khắp mọi nơi trên đường dây. Tuy nhiên, các giá trị xa trung tâm là không đáng kể


Câu trả lời tốt đẹp! Tuy nhiên, tìm kiếm , chúng ta không kết thúc với máy hồi quy vector hỗ trợ (với kernel gaussian)? μ
O_Devinyak

@ O_Devinyak- Nhiều phương pháp mở rộng cơ sở sẽ yêu cầu một số loại ước tính tham số. Có nhiều cách để tìm vì vậy tôi không nghĩ rằng điều này nhất thiết có nghĩa là chúng ta đang giảm vấn đề xuống SVR. Thành thật mà nói, tôi không phải là chuyên gia về SVR nhưng chức năng mất được giảm thiểu chắc chắn là khác nhau và tôi chắc chắn nhiều tính năng bị bỏ qua - đó là cách Support Vector. Với các hàm cơ bản, chúng tôi sử dụng tất cả các hàm để đánh giá nhưng may mắn là hỗ trợ nhỏ gọn có nghĩa là nhiều hàm cơ bản trả về giá trị không đáng kể hoặc bằng không. Dù sao, nó sẽ làm cho một câu hỏi hay trên diễn đàn nàyμ
martino

Tại sao chúng ta cần một tỷ lệ chứ không phải là ma trận hiệp phương sai, điều này sẽ làm cho hàm cơ sở trông giống như phần mũ của một Gaussian đa biến? σj
stackunderflow

1

Hãy để tôi cố gắng đưa ra lời giải thích đơn giản. Trong ký hiệu như vậy có thể là số hàng nhưng cũng có thể là số tính năng. Nếu chúng ta viết y = β 0 + Σ j = 1 : 31 β j φ j ( x ) sau đó j biểu thị đặc trưng số, y là cột-vector, β j là vô hướng và φ j ( x ) là một cột-vector. Nếu chúng ta viết y j = beta φ j ( x ) sau đójy=β0+j=1:31βjϕj(x)jyβjϕj(x)yj=βϕj(x) số biểu thị hàng, y j là vô hướng, βjyjβ là cột vector và là một dãy vector. Ký hiệu nơi tôi biểu thị hàng và j biểu thị cột là phổ biến hơn, vì vậy chúng ta hãy sử dụng biến thể đầu tiên.ϕj(x)ij

Đưa hàm cơ sở Gaussian vào hồi quy tuyến tính, (vô hướng) bây giờ không phụ thuộc vào các giá trị số của các tính năng x i (vectơ), mà phụ thuộc vào khoảng cách giữa x i và tâm của tất cả các điểm khác μ i . Theo cách đó , tôi không phụ thuộc vào giá trị tính năng thứ j của quan sát thứ i là cao hay nhỏ, mà phụ thuộc vào giá trị tính năng thứ j là gần hay xa so với giá trị trung bình của j -feature μ i j . Vậy μ jyixixiμiyijijjμijμj không phải là một tham số , vì nó không thể được điều chỉnh. Nó chỉ là một tài sản của một bộ dữ liệu. Các tham số σ2 là giá trị vô hướng, nó kiểm soát độ mịn và có thể điều chỉnh. Nếu nó nhỏ, những thay đổi nhỏ về khoảng cách sẽ có hiệu ứng lớn (hãy nhớ gaussian dốc: tất cả các điểm nằm ở khoảng cách nhỏ từ tâm có giá trị nhỏ ). Nếu nó lớn, những thay đổi nhỏ về khoảng cách sẽ có hiệu quả thấp (hãy nhớ gaussian phẳng: sự giảm của y với khoảng cách tăng dần từ trung tâm là chậm). Giá trị tối ưu của σ 2 nên được tìm kiếm (thường được tìm thấy với xác nhận chéo).yyσ2


0

The Gaussian basis functions in the multivariate settings have multivariate centers. Assuming that your xR31, then μjR31 as well. The Gaussian has to be multivariate, i.e. e(xμj)Σj1(xμj) where ΣjR31×31 is a covariance matrix. The index j is not a component of a vector, it is just the jth vector. Similarly, Σj is the jth matrix.

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.