[binary_classifier] xor 연산에 대해 svm.SVC를 이용한 예측 2

#행렬에서 데이터와 답을 추출해서 학습과 예측을 시행

from sklearn import svm

# XOR의 계산 결과 데이터 --- (※1)
xor_data = [
    #P, Q, result
    [0, 0, 0],
    [0, 1, 1],
    [1, 0, 1],
    [1, 1, 0]
]

# 학습을 위해 데이터와 레이블 분리하기 --- (※2)
data = []
label = []
for row in xor_data:
    p = row[0]
    q = row[1]
    r = row[2]
    data.append([p, q])
    label.append(r)

# 데이터 학습시키기 --- (※3)
clf = svm.SVC()
clf.fit(data, label)

# 데이터 예측하기 --- (※4)
pre = clf.predict(data)
print(" 예측결과:", pre)

# 결과 확인하기 --- (※5)
ok = 0; total = 0
for idx, answer in enumerate(label):
    p = pre[idx]
    if p == answer: ok += 1
    total += 1
print("정답률:", ok, "/", total, "=", ok/total)

댓글

이 블로그의 인기 게시물

LSF (GPU 스케쥴링) 명령어 사용법

CentOS 7 리부팅 없이 새 디스크 인식 (find a new disk without reboot)

python에서 hive 사용