2009-06-12 5 views
5

커널 기반 분류자는 일반적으로 두 인스턴스 사이의 내적 계산 때문에 O (n^3) 훈련 시간이 필요합니다. 교육 속도를 높이기 위해 내부 제품 값을 사전 계산하여 2 차원 어레이에 저장할 수 있습니다. 그러나 no. 인스턴스의 수가 매우 많아서 10 만 개를 초과 할 경우 충분한 메모리가 없을 것입니다.대규모 데이터 세트를위한 커널 방법

이렇게 더 좋은 아이디어가 있습니까?

+0

나는 당신의 이야기에 대해 전혀 몰라. 다른 사람이 이걸 이해하고 나에게 설명해 줄 수 있니? –

+0

'커널 기반 분류 자'는 전에 본 적이없는 입력 값의 출력 값을 예측하기 위해 (입력 -> 출력) 데이터에 대해 학습 할 수있는 일종의 기계 학습 알고리즘입니다. 질문자는 알고리즘이 (입력, 출력) 쌍의 수에 따라 잘못 조정되는 것 같아 걱정됩니다. – Stompchicken

답변

0

관련도 벡터 머신은 전체 커널 매트릭스를 메모리에 유지할 필요가없는 순차적 학습 모드를 가지고 있습니다. 기본적으로 한 번에 한 열을 계산하고 관련성이 있는지 확인한 후 다른 것으로 버릴 수 있습니다. 나는 그것으로 많은 행운을 얻지 못했지만, RVM에는 몇 가지 다른 문제가있다. 가우스 프로세스 영역에서는 더 나은 해결책이 될 가능성이 큽니다. 나는 그것들에 관해서 많이 언급하지는 않았지만 나는 그것에 대한 온라인 알고리즘을 언급했다.

0

저는 수치 분석가가 아니지만 보통 최소 제곱 선형 회귀를 수행해야하는 QR decomposition이 아닙니다 (O^n^3)?

어쨌든, 온라인 학습이나 사용중인 알고리즘의 능동 학습 버전에 대한 문헌을 검색하고 싶을 것입니다 (상당히 새로운 내용이므로). 일반적인 생각은 의사 결정 경계에서 멀리 떨어진 데이터를 버리거나 처음부터 포함시키지 않는 것입니다. 위험한 점은 나쁜 로컬 최대 값에 고정 될 수 있으며 온라인/활성 알고리즘은 나가는 데 도움이되는 데이터를 무시한다는 것입니다.

1

현대적인 지원 벡터 머신의 경우, 학습 알고리즘의 크기 조정은 사용하는 교육 데이터 및 커널의 특성과 같은 많은 요소에 따라 달라집니다. O (n^3)의 배율 인수는 분석 결과이며 SVM 교육이 실제 상황에서 어떻게 확장 될지 예측하는 데 특히 유용하지 않습니다. 예를 들어, SVMLight에 의해 사용 된 훈련 알고리즘의 경험적 추정치는 훈련 세트 크기에 대한 스케일링을 approximately O(n^2)으로 놓았다.

나는이 질문을 kernel machines forum에 제안 할 것을 제안합니다. 스택 오버플로보다 더 나은 대답을 얻을 가능성이 높습니다. 스택 오버플로는 범용 프로그래밍 사이트에 가깝습니다.