빅데이터/머신 러닝 with Python (old)

나의 손글씨 데이터로 머신 러닝시킨 후 나의 손글씨로 테스트하기 with 사이킷 런 svm.SVC

언제나휴일 2020. 5. 25. 13:55
반응형

 

Handwriting.zip
0.55MB

소스 코드

#손글씨 파일 위치: https://k.kakaocdn.net/dn/8iBYV/btqEn8soGlt/EqRKeRjvBIbPyxXenOEWVk/Handwriting.zip?attach=1&knm=tfile.zip
import pandas as pd
from sklearn import svm, metrics
def read_data(fname):
    mr = pd.read_csv(fname,header=None)
    label=[]
    data=[]
    for row_index,row in mr.iterrows():
        label.append(row.loc[400])
        other_data=[]
        for v in row.loc[0:399]:
            other_data.append(v)
        data.append(other_data)
    return label,data

bfiles = []
for i in range(1,8):
    bfiles.append("handwriting"+str(i)+".csv")
tfiles =[]
for i in range(0,10):
    tfiles.append(str(i)+".csv")

clf = svm.SVC()
for bfile in bfiles:
    label, data = read_data(bfile)
    clf.fit(data,label)
    print("===",bfile)
    for tfile in tfiles:
        tl,td = read_data(tfile)
        results = clf.predict(td)
        score = metrics.accuracy_score(results,tl)
        print("{0}:{1}".format(tl[0],score))


 

반응형