2010-02-16 2 views
1

나는 Gaussian kernal을 지원하는 벡터 머신 분류기에 libsvm을 사용하고 있습니다. its website에는 Python 스크립트 인 grid.py가있어 최상의 C 및 감마를 선택합니다.교육 시간과 libsvm의 감마와 C로 오버 피팅

저는 감마와 C로 훈련 시간과과 피팅/언더 피팅이 어떻게 바뀌는 지 궁금합니다.

는 그 올바른 :

+ 무한대 0에서

가정하자 C 변경, overfitting하는 단순성과에서 이동합니다 훈련 모델 및 훈련 시간이 증가?

감마가 거의 0에서 + 무한대로 변하는 것으로 가정하면 훈련 된 모델이 언더 피팅에서 오버 피팅으로 바뀌고 교육 시간이 늘어납니다.

grid.py에서 기본 검색 순서는 C에서 작은 것부터 큰 것까지이며 감마가 크고 작은 것입니다. under-fit에서 overfitting에 작고 큰 훈련 한 모형에 시간 훈련의 목적을 위해인가? C와 감마 값을 선택할 때 시간을 절약 할 수 있습니까?

감사합니다.

+0

안녕하세요, 입력 파일에 약 140000 개의 인스턴스가있는 경우 grid.py가 얼마나 걸리니 < lines >입니다. 나는이 스크립트가 내 시스템에서 12 시간 이상 실행 되었기 때문에 이것을 알고 싶다. 언제 멈출 지 모르겠다. 나의 상세한 질문은 다음 링크에있다. (제발 .. ..) http : //stackoverflow.com/questions/2415557/how-much-time-does-grid-py-take-to-run – trinity

답변

1

나는 확실한 대답이 없다. 나 자신이 알고 싶어한다. 그러나 질문에 대한 응답으로 :

C 및 감마 값을 선택하는 데 시간을 절약 할 수 있습니까?

... 나는 libsvm을 사용하여 C 및 감마선에 대해 매우 문제가되는 "올바른"값이 있음을 확인했습니다. 따라서 감마가 검색되는 순서에 관계없이 감마에 대한 많은 후보 값을 테스트해야합니다. 궁극적으로, 나는이 시간 소모적 인 문제 (귀하의 문제에 따라 다름)를 둘러싼 어떠한 지름길도 모르지만 필요한 매개 변수 검색은 알지 못합니다.

+1

시간이 많이 걸리는 매개 변수 검색은 바로 가기가 있습니다. "svmpath"라는 R 패키지가 있습니다.이 패키지는 한 번에 2 클래스 SVM 분류 자의 전체 정규화 경로를 계산합니다. 그것이하는 일을 설명하는 종이 링크가 있습니다. 참조 : http://cran.r-project.org/web/packages/svmpath/index.html –

+0

참고를 보내 주셔서 감사합니다. 나는 R을 사용한 적이 없지만 그것이 효과가 있는지 보는 데 관심이 있습니다. 다중 클래스 SVM에 대해 최상의 매개 변수를 찾을 수 있는지 알고 있습니까? (나는 libsvm이 기본적으로 one-vs-one을 사용한다는 것을 알고있다.) svmpath.pdf를 읽었지만, 다중 클래스 확장에 대해서는 아무것도 볼 수 없다. 나는 현재의 분류 문제, 수천 개의 데이터 포인트, 32에서 64 개의 피쳐에서 10에서 24 개의 클래스를가집니다. 이 매개 변수 검색은 때로는 매우 오랜 시간이 걸립니다! –