ANN (Artificial Neural Networks) 및 SVM (Support Vector Machines)은 감독되는 기계 학습 및 분류를위한 두 가지 인기있는 전략입니다. 특정 프로젝트에 어떤 방법이 더 좋은지 종종 명확하지 않으며, 그 대답이 항상 “의존”한다고 확신합니다. 종종 베이지안 분류와 함께이 둘의 조합이 사용됩니다.
Stackoverflow에 대한 이러한 질문은 ANN과 SVM에 대해 이미 요청되었습니다.
텍스트 처리를 위해 Vector Machine 또는 인공 신경망을 지원합니까?
이 질문에서 ANN (특히 멀티 레이어 퍼셉트론)의 어떤 측면이 SVM을 사용하는 것이 바람직 할 수 있는지 구체적 으로 알고 싶습니다 . 내가 묻는 이유는 반대의 질문 에 대답하기가 쉽기 때문입니다 . Support Vector Machine은 ANN의 두 가지 주요 약점을 피하기 때문에 ANN보다 우월합니다.
(1) ANN은 종종 글로벌 최소보다 지역 최소에 수렴합니다 . 즉, 기본적으로 때때로 “큰 그림을 놓치거나”(또는 나무의 숲이 없음)
(2) 훈련이 너무 오래 걸리면 ANN이 종종 과적 합 합니다. 즉, 주어진 패턴에 대해 ANN이 노이즈를 패턴의 일부로 고려하기 시작할 수 있습니다.
SVM은이 두 가지 문제 중 하나를 겪지 않습니다. 그러나 SVM이 ANN을 완전히 대체한다는 것은 분명하지 않습니다. 그렇다면 ANN이 특정 상황에 적용 할 수있는 SVM에 비해 어떤 특별한 이점이 있습니까? ANN에 비해 SVM의 특정 이점을 나열했습니다 . 이제 ANN 장점 (있는 경우) 목록을보고 싶습니다.
답변
귀하가 제공 한 예를 살펴보면 ANN은 다중 계층 퍼포 트론과 같은 다중 계층 피드 포워드 네트워크 (SFF)와 같은 다중 계층 피드 포워드 네트워크를 의미한다고 가정합니다 (SVM과 직접 경쟁하기 때문).
이러한 모델이 SVM에 비해 갖는 이점 중 하나는 크기가 고정되어 있다는 것입니다. 모델 은 파라 메트릭 모델이고 SVM은 비 파라 메트릭입니다. 즉, ANN에서는 크기가 h 인 숨겨진 레이어가 많이 있습니다 1 – h n기능의 수와 바이어스 매개 변수 및 모델을 구성하는 기능에 따라 다릅니다. 대조적으로, SVM (적어도 커널 화 된 것)은 훈련 세트에서 선택된 일련의 지원 벡터로 구성되며 각각에 대한 가중치가 있습니다. 최악의 경우, 지원 벡터의 수는 정확히 훈련 샘플의 수 (주로 작은 훈련 세트 또는 변질 된 경우에서 발생하지만)이며 일반적으로 모델 크기는 선형으로 스케일됩니다. 자연어 처리에서 수십만 개의 기능을 가진 수만 개의 지원 벡터를 가진 SVM 분류기는 들어 본 적이 없습니다.
또한 FF net의 온라인 교육 은 온라인 SVM 피팅에 비해 매우 간단하며 예측이 훨씬 빠릅니다.
편집 : 위의 모든 것은 커널 화 된 SVM의 일반적인 경우와 관련이 있습니다. 그들이 그 선형 SVM은 특별한 경우 입니다 파라 메트릭 및 확률 그라데이션 하강과 같은 간단한 알고리즘 온라인 학습을 할 수 있습니다.
답변
서포트 벡터 머신에 비해 인공 뉴럴 네트워크의 명백한 이점 중 하나는 인공 뉴럴 네트워크가 여러 개의 출력을 가질 수있는 반면, 서포트 벡터 머신은 하나만 가질 수 있다는 것입니다. 서포트 벡터 머신으로 n-ary 분류기를 작성하는 가장 직접적인 방법은 n 개의 서포트 벡터 머신을 작성하고 각각을 하나씩 학습하는 것입니다. 반면에 신경망을 갖춘 n-ary 분류기는 한 번에 훈련 할 수 있습니다. 또한, 신경망은 하나의 전체이기 때문에 더 의미가있는 반면, 서포트 벡터 머신은 격리 된 시스템입니다. 이것은 출력이 서로 관련되어있는 경우에 특히 유용합니다.
예를 들어, 손으로 쓴 숫자를 분류하는 것이 목표라면 10 개의 지원 벡터 머신이됩니다. 각 서포트 벡터 머신은 정확히 한 자리를 인식하고 다른 모든 머신을 인식하지 못합니다. 각 필기 숫자는 클래스보다 더 많은 정보를 보유 할 수 없기 때문에 인공 신경망으로이 문제를 해결하려고 시도하는 것은 의미가 없습니다.
그러나 목표는 마지막 식사 이후의 시간, 심박수 등과 같이 쉽게 측정되는 생리적 요인의 함수로 여러 호르몬에 대한 사람의 호르몬 균형을 모델링하는 것이라고 가정합니다. 이러한 요인은 모두 서로 관련되어 있으며 인공 신경 네트워크 회귀는 벡터 머신 회귀를 지원하는 것보다 더 의미가 있습니다.
답변
한 가지 주목할 점은 두 가지는 실제로 매우 관련이 있다는 것입니다. 선형 SVM은 단일 계층 NN (즉, 퍼셉트론)과 동일하며 다중 계층 NN은 SVM으로 표현 될 수 있습니다. 자세한 내용은 여기 를 참조 하십시오 .
답변
커널 SVM을 사용하려면 커널을 추측해야합니다. 그러나 ANN은 너비 (근사 정확도)와 높이 (근사 효율) 만 추측 할 수있는 범용 근 사기입니다. 최적화 문제를 올바르게 설계하면 과적 합하지 않습니다 (과적 합에 대한 참고 문헌 참조). 검색 공간이 정확하고 균일하게 검색되는 경우 교육 예제에 따라 다릅니다. 폭 및 깊이 발견은 정수 프로그래밍의 주제입니다.
함수 f (.)와 I = [0,1]에서 다시 범위 I = [0,1]으로 범위가 지정된 함수 f (.)와 바운딩 된 범용 지원 (예 : 시퀀스가 존재하는 속성
lim sup { |f(x) - U(x,a(k) ) | : x } =0
(x,y)
에 분포 D를 사용하여 예제와 테스트 를 그 립니다 IxI
.
처방 된 지원을 위해, 당신이하는 일은 최선을 찾는 것입니다.
sum { ( y(l) - U(x(l),a) )^{2} | : 1<=l<=N } is minimal
a=aa
랜덤 변수 인 이것을 보자 !
평균 사용 D and D^{N} of ( y - U(x,aa) )^{2}
aa
오류를 최소화하도록 선택 하면 드문 값 집합에 완벽하게 맞는 이유를 설명하겠습니다 . 그러나 드물기 때문에 평균은 절대 0이 아닙니다. D에 대한 이산 근사값을 갖더라도 초를 최소화하려고합니다.지지 길이는 자유 롭다는 점을 명심하십시오.
답변
여기서 누락 된 한 가지 대답 : 다층 퍼셉트론은 기능 간의 관계를 찾을 수 있습니다. 예를 들어 원시 이미지가 학습 알고리즘에 제공되고 이제 정교한 기능이 계산 될 때 컴퓨터 비전에 필요합니다. 기본적으로 중간 수준은 알려지지 않은 새로운 기능을 계산할 수 있습니다.
답변
또한 SVM 시스템 을 레이블이 지정된 그래프 또는 문자열 세트와 같은 비 메트릭 공간 에 직접 적용 할 수 있다는 점도 고려해야합니다 . 실제로 커널의 긍정적 인 요구 사항이 충족되면 내부 커널 기능을 거의 모든 종류의 입력에 맞게 일반화 할 수 있습니다. 반면에 레이블이 지정된 그래프 세트에서 ANN을 사용할 수 있으려면 명시적인 임베딩 절차를 고려해야합니다.