[ Python ] 2개 모델 확률값 사후 해석 시각화 그려보기

2020. 1. 4. 17:15분석 Python/Visualization

728x90

2개의 모델에 대해서 행별로 확률 값 시각화해보기

그림의 목적 : 2개의 알고리즘이 각 row별로 어떻게 예측하는 것을 통해 헷갈려하는 행이 얼마나 많은지
한 개의 행에 대해서 2개의 모델이 다르게 예측하는지 확인하기 위해
EX) 한 행에 대해서 catboost 모델은 비 올 확률 0.9 lightgbm 모델은 0.1과 같이 상이하게 예측하는지 확인하기 위해
아래 흰색 박스 부분이 서로 다르게 예측하는 부분

plt.style.use('dark_background')
fig , ax = plt.subplots(1 , figsize = (15,15))
classes = ["Not Rain", "Rain"]
plt.scatter(lgb_prob , ae_catprob[:,1].ravel() , c = caty_Test , cmap='Set3' , s = 10 , alpha = 1.0)
ax.grid(b=False)
plt.xlabel("Lightgbm" , fontsize =20)
plt.ylabel("Catboost" , fontsize =20)
cbar = plt.colorbar(boundaries=np.arange(3)-.5)
cbar.set_ticks(np.arange(2))
cbar.set_ticklabels(classes)
currentAxis = plt.gca()
someX, someY = 0.5, 0.5
from matplotlib.patches import Rectangle
currentAxis.add_patch(Rectangle((0, 0.5), 0.5, 0.5, fill=None, alpha=1, linewidth = 4))
currentAxis = plt.gca()
currentAxis.add_patch(Rectangle((0.5, 0), 0.5, 0.5, fill=None, alpha=1 ,color ="white", linewidth = 4))
plt.show()

728x90