Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

머신러닝스터디/2016/2016 07 23: Difference between revisions

From ZeroWiki
No edit summary
No edit summary
Line 5: Line 5:
** skflow(tensorflow의 contib/learn으로 흡수됨)을 사용하려 했으나 svm모듈 부분이 최신 커밋에만 포함되어 있어 sklearn을 사용하기로 함
** skflow(tensorflow의 contib/learn으로 흡수됨)을 사용하려 했으나 svm모듈 부분이 최신 커밋에만 포함되어 있어 sklearn을 사용하기로 함
** sklearn 버전은 0.17.1
** sklearn 버전은 0.17.1
* 설치 방법
설치 방법
   $ sudo pip install sklearn
   $ sudo pip install sklearn



Revision as of 10:17, 26 July 2016

머신러닝스터디/2016 머신러닝스터디/2016/목차

내용

  • SVM 실습 with sklearn
    • skflow(tensorflow의 contib/learn으로 흡수됨)을 사용하려 했으나 svm모듈 부분이 최신 커밋에만 포함되어 있어 sklearn을 사용하기로 함
    • sklearn 버전은 0.17.1

설치 방법

  $ sudo pip install sklearn

코드

import sklearn
from sklearn import svm

#### SVC with rbf kernel
# default is rbf kernel
clf = svm.SVC()
x_data = [[0,0], [0,1], [1,0], [1,1]]

# linear
y_data = [0, 0, 0, 1]
clf.fit(x_data, y_data)
# SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,
#   decision_function_shape=None, degree=3, gamma='auto', kernel='rbf',
#   max_iter=-1, probability=False, random_state=None, shrinking=True,
#   tol=0.001, verbose=False)
clf.predict(x_data)
# array([0, 0, 0, 0]) # wrong

# non-linear
y_data = [0, 1, 1, 0]
clf.fit(x_data, y_data)
clf.predict(x_data)
# array([0, 1, 1, 0]) # Correct answer


#### SVC with Linear kernel
clf = svm.SVC(kernel='linear')
clf.fit(x_data, y_data)
# SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,
#   decision_function_shape=None, degree=3, gamma='auto', kernel='linear',
#   max_iter=-1, probability=False, random_state=None, shrinking=True,
#   tol=0.001, verbose=False)
clf.predict(x_data)
# array([0, 0, 0, 0])


#### LinearSVC
clf = svm.LinearSVC()
clf.fit(x_data, y_data)
# LinearSVC(C=1.0, class_weight=None, dual=True, fit_intercept=True,
#      intercept_scaling=1, loss='squared_hinge', max_iter=1000,
#      multi_class='ovr', penalty='l2', random_state=None, tol=0.0001,
#      verbose=0)
clf.predict(x_data)
# array([0, 0, 0, 1]) # Correct answer

다음 시간에는

더 보기