2017-09-26 7 views
1

비선형으로 분리 가능한 데이터를 위해 SVM RBF 커널을 구현하고 싶습니다.SVM 커스텀 RBF 커널 IndexError

if X.shape[0] != X.shape[1]: IndexError: tuple index out of range

어떻게 그것을 해결하기 :

def rbf(va, vb): 
    gamma = 0.7 
    return exp(-gamma * linalg.norm(va - vb) ** 2) 
clf = svm.SVC(kernel=rbf) 
clf.fit(va, vb) 

그것은 오류를 보여주는 : 나는 내 커널을 정의?

+1

'va'와'vb'의 모양을 인쇄 할 수 있습니까? –

+0

va는 100x2이고 vb는 100x1입니다. – kashf34Kashf

답변

1

vavb의 모양이 일치하지 않습니다. 그들은 같은 모양이어야합니다. RBF 커널의 구문은 다음과 같은 형식이어야합니다

def rbf(va,vb) , where va are the feature of sample,say X and vb are the features of sample say X`.

VA와 VB 기능과 라벨 없습니다.

비슷한 구현을 위해 this link on Github을 확인할 수 있습니다. 모든 샘플 쌍을 rbf 커널에 전달하고 샘플의 기능 및 레이블을 전달하지 않는 것을 볼 수 있습니다. 라인 번호로 이동하십시오. 95.

+0

왜 그렇습니까? va는 기능 (즉, 2 열)의 수입니다. vb (1 열) – kashf34Kashf

+0

@ kashf34Kashf 답변을 업데이트했습니다. 이 답변으로 도움이 되었다면 정답으로 받아 들일 수 있습니까? –