기억 저장소

클라우드 기반 인공지능 개발과 DevOps 실무

인공지능/머신러닝

머신러닝 : SVM=Support Vector Machine(서포터 백터 머신)

하늘.98 2021. 11. 24. 18:03

서포트 벡터 머신(이하 SVM) 결정 경계(Decision Boundary), 즉 분류를 위한 기준 선을 정의하는 모델이다. 그래서 분류되지 않은 새로운 점이 나타나면 경계의 어느 쪽에 속하는지 확인해서 분류 과제를 수행할 수 있게 된다.

결정 경계에는 2차원,3차원이 가능하며 결정 경계와 서포트 벡터 사이의 거리를 '마진' 이라 한다. 

쉽게 설명하면 선과 가장 가까운 점 데이터끼리와 선의 사이의 길이라고 생각하면 된다.

필요한 데이터를 read_csv로 불러 온 뒤 

NaN있는지, 카테고리컬데이터가 있는지 확인 후 

X, y 를 나눠준다.

X=트레이닝 시킬 데이터    y= 트레이닝 시킨 데이터의 값(답)

from sklearn.svm import SVC

라이브러리를 불러온 뒤 

classifier = SVC(kernel='linear')                => kernel = 'liner'     liner=직선을 의미

classifier.fit(X_train,y_train)   을 이용해 트레이닝 시킨다.

 

from sklearn.metrics import confusion_matrix,accuracy_score

confusion_matrix(y_test,y_pred) 을 통해 값을 알고 

accuracy_score(y_test,y_pred)를 이용해 적중률을 알 수 있다.