728x90
반응형
In [14]:
# confusion matrix 보기
from sklearn.metrics import confusion_matrix, classification_report
# 0 : spam / 1 : ham
# D = 6
trueY = [1,0,1,1,0,1]
predY = [0,0,1,1,0,1]
result = confusion_matrix(trueY,predY)
# 사실 케이스를 여러개 만들어야함
# 클래스 별로 각각의 입장에 따라서
In [15]:
# 굳이 필요없음, 원하는 형태에 맞춘 것.
result = result.transpose()
In [16]:
for i in range(result.shape[0]):
print("Precision : {0}".format(result[i,i] / result[i].sum()))
print("Recall : {0}".format(result[i,i] / result[:,i].sum()))
In [28]:
trueY = [2,0,2,2,0,1]
predY = [0,0,2,2,0,2]
result = confusion_matrix(trueY,predY)
result
Out[28]:
In [29]:
print(classification_report(trueY,predY))
# micro는 갯수로 생각 : TP들의 합 / 총 수
# macro는 precision들의 합 / class의 개수
In [39]:
4/6
Out[39]:
In [40]:
(4/3)/3
Out[40]:
728x90
반응형