본문 바로가기
개발_TIL

개발_TIL | 2022-05-17(21)

by Hee94 2022. 5. 17.

▷ 합성곱 신경망 (Convolutional Neural Networks)

  합성곱(Convolution)은 예전부터 컴퓨터 비전(Computer Vision, CV) 분야에서 많이 쓰이는 이미지 처리 방식으로

  입력데이터와 필터의 각각의 요소를 서로 곱한 후 다 더하면 출력값이 됩니다.

   좌측상단을 (1,1)로 볼때 (3,3)까지 필터와 같은 부분끼리 곱한 후 더하여 출력값 (1,1)에 출력 되어진다.

   ex) (1x2)+(2x0)+(3x1)+(0x0)+(1x1)+(2x2)+(3x1)+(0x0)+(1x2) =15

   출력값 (1,2)는 입력 데이터의 (1,2)를 기준으로 시작하면 된다. 이렇게 움직이는 거리를 스트라이드라고 표현하며,

   위에서는 스트라이드 값이 1이라고 보면된다.

   여기서 출력값의 크기가 줄어드는 것으로 인하여 이를 방지 하기위해 패딩을 주게된다.

패딩을 주는 원리

CNN의 구성

   합성곱 신경망(CNN)은 합성곱 계층(Convolution layer)과 완전연결 계층(Dense layer)을 함께 사용하며,

   합성곱 계층 + 활성화 함수 + 풀링을 반복하며 점점 작아지지만 핵심적인 특성들을 뽑아 내고

   풀링 계층(Pooling layer)은 특성 맵의 중요부분을 추출하여 저장하는 역할을 합니다. 

 

Max Pooling 과 Average Pooling의 비교

   <CNN의 활용 예>

     1) 자율 주행 물체 인식

     2) 자세 인식(Pose Detection)

     3) 화질개선(Super Resolution)

     4) Style Transfer

     5) 사진 색 복원(Colorization)

'개발_TIL' 카테고리의 다른 글

개발_TIL | 2022-05-19(23)  (0) 2022.05.19
개발_TIL | 2022-05-18(22)  (0) 2022.05.18
개발_TIL | 2022-05-16(20)  (0) 2022.05.16
개발_TIL | 2022-05-13(19)  (0) 2022.05.13
개발_TIL | 2022-05-12(18)  (0) 2022.05.12