더북(TheBook)

5.3.3 골디락스: 과대적합, 과소적합 그리고 ‘딱 적당한 상태’ 시각화

예상을 완전히 빗나갔습니다. 그냥 나쁜 결과가 아니에요. 완전히 끔찍하게 실패했습니다. 뭐가 잘못된 것일까요? 훈련 데이터와 테스트 데이터를 시각화해서 무슨 일이 벌어졌는지 알아보겠습니다.

 

In [9]:

fig, axes = plt.subplots(1, 2, figsize=(6, 3), sharey=True)

labels = ['line', 'parabola', 'nonic']
models = [model_one, model_two, model_three]
train = (train_ftr, train_tgt)
test = (test_ftr, test_tgt)

for ax, (ftr, tgt) in zip(axes, [train, test]):
    ax.plot(ftr, tgt, 'k+')
    for m, lbl in zip(models, labels):
        ftr = sorted(ftr)
        ax.plot(ftr, m(ftr), '-', label=lbl)

axes[1].set_ylim(-20, 200)
axes[0].set_title("Train")
axes[1].set_title("Test");
axes[0].legend(loc='upper center');
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.