Thủ thuật hạt nhân hóa, cho các mạng thần kinh


9

Tôi đã học về mạng nơ-ron và SVM. Các hướng dẫn tôi đã đọc đã nhấn mạnh tầm quan trọng của hạt nhân đối với các SVM. Không có chức năng kernel, các SVM chỉ là một bộ phân loại tuyến tính. Với nhân hóa, các SVM cũng có thể kết hợp các tính năng phi tuyến tính, khiến chúng trở thành một bộ phân loại mạnh hơn.

Đối với tôi, có vẻ như người ta cũng có thể áp dụng nhân hóa vào các mạng thần kinh, nhưng không có hướng dẫn nào về các mạng thần kinh mà tôi thấy đã đề cập đến điều này. Có phải mọi người thường sử dụng thủ thuật kernel với các mạng thần kinh? Tôi đoán ai đó phải thử nghiệm với nó để xem nó có tạo ra sự khác biệt lớn không. Liệu nhân hóa có giúp các mạng thần kinh nhiều như nó giúp các SVM không? Tại sao hay tại sao không?

(Tôi có thể tưởng tượng một số cách để kết hợp thủ thuật kernel vào các mạng thần kinh. Một cách là sử dụng hàm kernel phù hợp để xử lý trước đầu vào, một vectơ trong , thành một đầu vào chiều cao hơn, một vectơ trong cho . Đối với mạng lưới thần kinh nhiều lớp, một cách khác sẽ là áp dụng một hàm nhân ở mỗi cấp độ của mạng thần kinh.)RnRmmn


2
Thủ thuật kernel hoạt động khi truy cập tính toán vào các điểm dữ liệu của bạn bao gồm các sản phẩm bên trong tính toán. Tôi không chắc đó là trường hợp của mạng lưới thần kinh.
Yuval Filmus

Câu trả lời:


6

Tôi nghĩ rằng bạn có thể nhầm lẫn thuật ngữ theo cách làm cho vấn đề trở nên khó hiểu. Các SVM hoạt động bằng cách xác định ranh giới quyết định tuyến tính, nghĩa là siêu phẳng. Chúng ta có thể định nghĩa siêu phẳng này theo các sản phẩm bên trong giữa các điểm. Do đó, nếu chúng ta xác định sản phẩm bên trong này ở trong một không gian chiều cao hoặc thậm chí vô hạn, thì thứ trông giống như một siêu phẳng trong không gian mới này là một tuyến tính không cần thiết trong không gian tính năng ban đầu. Vì vậy, mọi thứ vẫn là tuyến tính, điều duy nhất chúng tôi đã làm là ngầm (thông qua sản phẩm bên trong mới) nhúng các điểm trong một số không gian chiều cao hơn. Có lẽ bạn đã biết tất cả điều này.

Có 2 vấn đề cần xem xét đối với mạng lưới thần kinh. Đầu tiên được đưa lên bởi @Yuval Filmus, vì các mạng thần kinh lớp ẩn phụ thuộc vào nhiều thứ hơn là chỉ các sản phẩm bên trong giữa các điểm. Nếu bạn loại bỏ lớp ẩn, bạn chỉ có một cái gì đó như hồi quy logistic, trong đó có các phiên bản kernel . Có lẽ có một cách để khắc phục điều này, nhưng tôi không thấy điều đó.

Thứ hai, bạn đề cập đến tiền xử lý đầu vào bằng cách chiếu vào một không gian chiều cao hơn, nhưng không vô hạn. Mạng lưới thần kinh xác định một bề mặt quyết định và bề mặt này không bị hạn chế là tuyến tính. Điều này có nghĩa là lợi ích từ việc chiếu các điểm vào không gian chiều cao hơn sẽ khác nhau, nghĩa là, nó có thể giúp dễ dàng tìm thấy một tập hợp trọng lượng tốt, nhưng chúng tôi không nhất thiết phải làm cho mô hình của chúng tôi mạnh hơn nữa. Điều này tuân theo định lý xấp xỉ phổ quát cho chúng ta biết với một số lượng đơn vị ẩn đủ lớn, chúng ta có thể tính gần đúng bất kỳ hàm nào (theo một số hạn chế). Tuyên bố cuối cùng này khá trống rỗng và tôi ghét phải đề cập đến nó. Bằng cách không cho bạn biết bất cứ điều gì về cách tìm đúng trọng lượng, nó sẽ không mang lại nhiều điều cho bảng từ góc độ ứng dụng.


Cảm ơn bạn. Đúng. Tôi biết chúng ta có thể nghĩ về các SVM như ánh xạ các đầu vào ban đầu đến một không gian thứ nguyên cao hơn (hoặc thậm chí vô hạn), sau đó thực hiện một ranh giới quyết định tuyến tính trong không gian chiều cao hơn đó. Vì vậy, chúng ta có thể làm điều đó với các mạng thần kinh không? Chúng ta có thể ánh xạ các đầu vào đến một không gian chiều cao hơn, sau đó coi đó là đầu vào thực tế cho một mạng thần kinh không? Tôi đoán chúng ta có thể (và tôi đoán chúng ta cũng có thể làm điều này ở mỗi lớp, nếu chúng ta muốn). Và, nếu chúng ta có thể, câu hỏi thực sự của tôi là: điều này có mang lại sự cải thiện lớn cho mạng lưới thần kinh (trong thực tế) như đối với các SVM không? Tại sao hay tại sao không?
DW

Tôi biết về định lý xấp xỉ phổ quát, nhưng điều đó không thực sự trả lời câu hỏi (như bạn đã chỉ ra). Điều tôi quan tâm là các công việc thần kinh có xu hướng hoạt động tốt như thế nào trong thực tế. Tôi tự hỏi liệu tiền xử lý các đầu vào thông qua một thủ thuật nhân hóa có thể làm cho các mạng thần kinh có xu hướng hoạt động tốt hơn trong thực tế. Tất nhiên không có gì đảm bảo và sẽ luôn có những tình huống mà bất cứ điều gì bạn làm có thể khiến mọi thứ trở nên tồi tệ hơn, nhưng tôi đang tự hỏi về hành vi điển hình, trong thực tế (theo nghĩa tương tự như chúng ta nói, nhân hóa có xu hướng làm cho SVM hiệu quả hơn đáng kể, trong thực hành).
DW

2
@DW Lý do nhân hóa làm cho các SVM hiệu quả hơn là vì nó cho phép chúng xác định ranh giới quyết định phi tuyến tính. Mạng nơ-ron có thể đã xác định ranh giới quyết định phi tuyến tính, vì vậy lợi ích duy nhất của việc chiếu dữ liệu của bạn vào không gian có chiều cao hơn sẽ giúp cho vấn đề tối ưu hóa dễ dàng hơn.
alto

1

Thủ thuật kernel có thể có đối với các SVM vì thuộc tính đặc biệt của quá trình học đối với các SVM. Mạng lưới thần kinh dường như không có tài sản đó (theo như tôi có thể nói).

x1,Giáo dục,xnRdxTôixTôixTôixj

KK(xTôi,xj)φ:RdRmm>dK(xTôi,xj)= =φ(xTôi)φ(xj)φK(xTôi,xj)φ(xTôi),φ(xj)K(xTôi,xj)Ôi(d)Ôi(m) thời gian.

xTôixjK(xTôi,xj)xTôi


1

Tôi muốn chia sẻ một số quan sát tôi đã thực hiện. Kích thước đầu vào: 144. Tôi đã đào tạo một mạng nơ ron và trong quá trình đào tạo, đầu ra của các lớp ẩn được đưa ra làm đầu vào cho hồi quy logistic và giá trị trung bình của hàm mất mát sau khi lắp mô hình được vẽ.nhập mô tả hình ảnh ở đây

nhập mô tả hình ảnh ở đây

Chúng ta có thể thấy rằng với sự gia tăng kích thước lớp, các tính năng hoặc đầu ra của các lớp ẩn đang trở nên tách rời tuyến tính. Trong khi đây là mục đích của việc học vectơ đặc trưng hạt nhân , mạng lưới thần kinh dường như đang thực hiện điều này trong nội bộ. nhập mô tả hình ảnh ở đâ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.