[모두를 위한 딥러닝2] CNN #3

YSL·2021년 7월 18일
0

모두를 위한 딥러닝2

목록 보기
12/23

Visdom

1. install




2. import



3.

3-1. Text 띄우기 : [ vis.text("쓰고 싶은 문장", env = 'main' ]

  • env = 'main' : 한 번에 모든 창을 끌 때 사용 가능 (써도 되고 안써도 됨)

3-2.

image 띄우기 : RGB 값을 random으로 주고 [ vis.image() ]
image 여러개를 띄울 땐 [ vis.images() ]






3-3. CIFAR10, MNIST 사용하기





+)

-> data_loader를 사용해 한 번에 batch_size만큼의 데이터를 볼 수도 있다



3-4. Line : 그래프로 표현하기



-> X 값을 넣지 않으면 x축은 무조건 0 ~ 1 사이의 값으로만 선언되다.

-> 들어가야 할 X값과 loss값을 정의해서 line에 넣어준다
: [ vis.line(추가시킬 값, 추가하는 값의 index, update할 윈도우의 이름, update = 'append' ]

  • update: 'append' : 확장(append)하는 방식으로 update를 하라


    -> 단일 line plot 창에서 두 개의 line을 그리는 방법
    : line 2개를 그리려면 Y와 똑같은 shape을 가지는 index를 넣어줘야 하므로 view를 가지고 일부로 index를 바꿔준다.


    -> line에 information 붙이기
    : 기존의 line을 똑같이 사용하는데 맨 뒤에 opts를 dictionary 형태로 값을 넣어주면 된다.
  • showlegend : 축의 이름을 붙여줄 수 있음


    -> CNN에 직접 visdom을 넣어 loss_function이 업데이트될 때, loss value가 업데이트되는 plot 그리기
    : 'loss_tracker'라 이름 붙인 함수를 이용해 plt라는 plot에 loss값을 업데이트하라(업데이트하는 index는 i가 되도록)



<실습>

MNIST-CNN에 visdom function을 집어넣어서 loss값을 추적하는 plot 그리기

=> 최종 결과
(코드를 돌리다가 노트북이 터져버릴 것만 같아서 마지막 결과는 강의를 캡쳐했습니다..)

0개의 댓글

관련 채용 정보