신경망을위한 커널 트릭


9

신경망과 SVM에 대해 배웠습니다. 내가 읽은 튜토리얼은 SVM의 커널 화가 얼마나 중요한지 강조했습니다. 커널 함수가 없으면 SVM은 선형 분류 기일뿐입니다. 커널 화를 통해 SVM은 비선형 기능을 통합하여보다 강력한 분류기를 만들 수 있습니다.

신경망에 커널 화를 적용 할 수있는 것처럼 보이지만 신경망에 대한 자습서 중 어느 것도 이것을 언급하지 않았습니다. 사람들은 일반적으로 신경망에서 커널 트릭을 사용합니까? 나는 그것이 큰 차이를 만드는지 알기 위해 누군가가 그것을 실험했다고 가정합니다. 커널 화는 SVM에 도움이되는만큼 신경망에 도움이됩니까? 그 이유는 무엇?

(커널 트릭을 신경망에 통합하는 몇 가지 방법을 상상할 수 있습니다. 한 가지 방법은 적절한 커널 함수를 사용하여 입력을 사전 처리하는 것입니다. 아르 자형보다 높은 차원의 입력으로 아르 자형미디엄 ...에 대한 미디엄. 다층 신경망의 경우, 다른 대안은 신경망의 각 레벨에서 커널 기능을 적용하는 것입니다.)


2
커널 트릭은 데이터 포인트에 대한 계산 액세스가 내부 제품 컴퓨팅으로 구성된 경우 작동합니다. 이것이 신경망의 경우인지 확실하지 않습니다.
Yuval Filmus

답변:


6

나는 당신이 문제를 혼란스럽게하는 방식으로 용어를 혼동 할 수 있다고 생각합니다. SVM은 선형 결정 경계, 즉 초평면을 정의하여 작동합니다. 이 하이퍼 플레인을 포인트 사이의 내부 제품으로 정의 할 수 있습니다. 따라서이 내부 제품을 고차원 또는 무한 차원 공간으로 정의하면이 새로운 공간에서 초평면처럼 보이는 것은 원래 형상 공간에서 선형 일 필요는 없습니다. 따라서 모든 것이 여전히 선형 적이며, 우리가 한 유일한 일은 (새로운 내부 제품을 통해) 더 높은 차원 공간에 점을 내재적으로 포함시키는 것입니다. 아마 당신은 이미이 모든 것을 알고있을 것입니다.

신경망과 관련하여 고려해야 할 두 가지 문제가 있습니다. 첫 번째는 @Yuval Filmus에 의해 제기되었습니다. 숨겨진 계층 신경망은 점 사이의 내부 제품 이상에 의존하기 때문입니다. 숨겨진 레이어를 제거하면 로지스틱 회귀와 같은 커널 버전이 있습니다. 어쩌면이 문제를 해결할 수있는 방법이 있지만 보이지 않습니다.

두 번째로, 더 높지만 무한한 차원 공간으로 투영하여 입력 전처리를 언급합니다. 신경망은 결정 표면을 정의하고이 표면은 선형으로 구속되지 않습니다. 즉, 포인트를 더 높은 차원 공간으로 투영함으로써 얻는 이득이 다를 수 있습니다. 즉, 좋은 가중치를 쉽게 찾을 수 있지만 모델을 더 강력하게 만들 필요는 없습니다. 이것은 유니버설 근사 정리 에서 나옵니다. 이것은 많은 수의 숨겨진 단위가 주어 졌을 때 우리는 어떤 기능을 근사 할 수 있습니다 (일부 제한 사항). 이 마지막 진술은 다소 공허하고 나는 그것을 언급하는 것을 싫어합니다. 올바른 웨이트를 찾는 방법에 대해 아무 것도 알려주지 않으면 응용 프로그램 관점에서 테이블에 많은 도움이되지 않습니다.


감사합니다. 예. SVM이 원래 입력을 더 높은 (또는 무한한) 차원 공간에 매핑 한 다음 더 높은 차원의 공간에서 선형 결정 경계를 만드는 것으로 생각할 수 있습니다. 신경망으로도 그렇게 할 수 있습니까? 입력을 더 높은 차원의 공간에 매핑 한 다음이를 신경망에 대한 실제 입력으로 취급 할 수 있습니까? 나는 우리가 할 수 있다고 가정한다 (그리고 원한다면 각 계층에서 이것을 할 수도 있다고 가정한다). 그리고 우리가 할 수 있다면, 나의 진짜 질문은 : 이것이 실제 SVM에 비해 신경망 (실제로)에 큰 개선을 제공합니까? 그 이유는 무엇?
DW

나는 보편적 근사 정리에 대해 알고 있지만 실제로 질문에 대답하지는 않습니다 (표시 된대로). 내가 신경 쓰는 것은 신경 작업이 실제로 얼마나 잘 작동 하는가입니다. 커널 화 트릭을 통해 입력을 사전 처리하면 신경망이 실제로 더 잘 작동하는 경향이 있는지 궁금합니다. 물론 보장이 없으며 상황이 악화 될 수있는 상황이 항상있을 수 있지만 실제로는 일반적인 동작에 대해 궁금합니다 (커널 화가 SVM을 훨씬 더 효과적으로 만드는 경향이 있다고 생각합니다. 연습).
DW

2
@DW 커널 화가 SVM을보다 효과적으로 만드는 이유는 비선형 의사 결정 경계를 정의 할 수 있기 때문입니다. 신경망은 이미 비선형 의사 결정 경계를 정의 할 수 있으므로 데이터를보다 높은 차원의 공간에 투영하면 얻을 수있는 장점은 최적화 문제를보다 쉽게 ​​만드는 것입니다.
alto

1

SVM에 대한 학습 프로세스의 특수한 속성으로 인해 SVM에 커널 트릭이 가능합니다. 신경망에는 그 속성이없는 것 같습니다 (내가 알 수있는 한).

허락하다 엑스1,,엑스아르 자형훈련 세트의 포인트가됩니다. 일반적으로 머신 러닝 알고리즘은엑스나는'에스. 그러나 SVM 학습 프로세스에는 다소 놀라운 특성이 있습니다. 값을 알 필요가 없습니다.엑스나는'에스. 계산하기에 충분하다엑스나는엑스제이임의의 원하는 입력 포인트 쌍에 대해 (즉, 선택한 임의의 입력 벡터 쌍에 대한 내적 계산); 이것이 모든 SVM 학습 프로세스 요구 사항입니다.

SVM 학습 프로세스의이 특별한 속성을 통해 커널 트릭을 사용할 수 있습니다. 커널 함수를 정의 할 수 있습니다케이 그래서 케이(엑스나는,엑스제이)입력의 일부 비선형 변환의 내적입니다. 비선형 변환을 통해 입력 벡터를 변환하는 경우ϕ:아르 자형아르 자형미디엄 (일부 미디엄>), 우리는 정의 케이(엑스나는,엑스제이)=ϕ(엑스나는)ϕ(엑스제이). 다음으로 멋진 속성은 비선형 변환의 경우ϕ, 당신은 계산할 수 있습니다 케이(엑스나는,엑스제이) 컴퓨팅보다 더 효율적 ϕ(엑스나는),ϕ(엑스제이)명시 적으로 그리고 나서 내적을 계산하는 것; 당신은 계산할 수 있습니다케이(엑스나는,엑스제이)영형() 시간보다 (말) 영형(미디엄) 시각.

불행히도, 신경망은이 멋진 트릭을 활용할 방법이없는 것 같습니다. 신경망의 학습 과정은 단순한 가치 이상의 것에 의존하는 것처럼 보입니다. 엑스나는엑스제이 (또는 케이(엑스나는,엑스제이)); 그것은 모든의 전체 가치를 요구한다엑스나는'에스. 따라서 원하는 경우 비선형 함수를 통해 비선형 네트워크로 입력을 사전 변환 할 수는 있지만 SVM 에서처럼 커널 트릭을 사용하여보다 효율적으로 수행 할 수있는 방법은없는 것 같습니다.


1

내가 한 관찰 내용을 공유하고 싶습니다. 입력 치수 : 144. 신경망을 훈련 시켰으며, 훈련하는 동안 숨겨진 층의 출력은 로지스틱 회귀에 대한 입력으로 주어졌으며 모형 적합 후 손실 함수의 평균값이 그려졌습니다.여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오

레이어 크기가 증가하면 숨겨진 레이어의 기능 또는 출력이 선형으로 분리 가능해집니다. 이것이 커널 화 된 특징 벡터 를 배우기위한 목적이지만 , 신경망은 이것을 내부적으로하는 것으로 보입니다. 여기에 이미지 설명을 입력하십시오

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.