clip()은 입력 값이 주어진 범위를 벗어날 때 입력 값을 특정 범위로 제한시키기 위해 사용합니다. 즉, image.clip(0, 1)image 데이터를 0과 1 사이의 값으로 제한하겠다는 의미입니다. 다음 예시를 통해 사용 방법을 익혀 보세요.

    > import numpy as np
    > exam = np.array([-1.8, -1.2, -0.7, 0.0, 0.8, 1.4, 1.9])
    > print(exam)
    > print(np.clip(exam, -0.5, 0.5))
    [-1.8 -1.2 -0.7 0.    0.8 1.4 1.9]
    [-0.5 -0.5 -0.5 0.    0.5 0.5 0.5]

    이제 테스트 데이터셋을 이용하여 실제로도 개와 고양이를 잘 분류하는지 살펴보겠습니다.

    코드 5-29 개와 고양이 예측 결과 출력

    classes = {0:'cat', 1:'dog'} ------ 개와 고양이 두 개에 대한 레이블
    
    dataiter = iter(test_loader) ------ 테스트 데이터셋을 가져옵니다.
    images, labels = dataiter.next() ------ 테스트 데이터셋에서 이미지와 레이블을 분리하여 가져옵니다.
    output = model(images)
    _, preds = torch.max(output, 1)
    
    fig = plt.figure(figsize=(25,4))
    for idx in np.arange(20):
        ax = fig.add_subplot(2, 10, idx+1, xticks=[], yticks=[]) ------ ①
        plt.imshow(im_convert(images[idx])) ------ 이미지 출력을 위해 코드 5-28에서 정의한 im_convert 함수를 적용
        a.set_title(classes[labels[i].item()])
    ax.set_title("{}({})".format(str(classes[preds[idx].item()]), str(classes[labels[idx].
                 item()])), color=("green" if preds[idx]==labels[idx] else "red")) ------ ②
    plt.show()
    plt.subplots_adjust(bottom=0.2, top=0.6, hspace=0) ------ ③
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.