일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- deep learning
- supervised learning
- 지도학습
- 티스토리챌린지
- GPT-4
- 분류
- PCA
- LLM
- LG
- Machine Learning
- 오블완
- AI
- 해커톤
- 딥러닝
- 회귀
- 머신러닝
- OpenAI
- LG Aimers
- ChatGPT
- LG Aimers 4th
- gpt
- Classification
- regression
Archives
- Today
- Total
SYDev
Convolution Neural Network(합성곱 신경망) 본문
CNN을 공부하다보니 convolution 연산이 나오는데, 내가 아는 convolution 연산
(함수가 두 개 있으면 하나를 뒤집어서 겹치는 넓이를 나타내는 연산)이랑 조금 다르다..?
행렬에서의 convolution 개념을 따로 정리할 필요성을 느낌
행렬에서의 Convolution 연산
- 이미지의 특징을 추출하는 연산!
- filter는 matrix에 따라 역할이 달라진다.
- 입력 이미지와 필터 사이에 convolution 연산으로 나온 결과를 feature map이라 한다.
>> convolution 연산을 통해서 Image의 size를 줄일 수 있다.
stride
- filter의 이동 범위를 사용자가 직접 정할 수 있는데, 이런 이동범위를 스트라이드(stride)라 한다.
- 아래는 stride가 2인 경우를 보인다.
padding
- 합성곱 연산으로 얻은 feature map은 기존 이미지보다 size가 작아진다는 특징이 있다.
- 합성곱 연산 이후에도 size를 input image와 동일하게 유지하고 싶으면 padding을 이용하면 된다.
- 입력을 하기 전에 input image의 가장자리에 지정된 개수의 폭만큼 행과 열을 추가해주는 것을 padding이라 한다.
Convolution Neural Network
이런 convolution 개념을 다음과 같이 neural netwrok에 접목시킨 것이 CNN이다.
- 이미지의 모든 픽셀을 사용하는 것이 아니라, filter와 맵핑되는 가중치만을 입력으로 사용하기 때문에, 다층 퍼셉트론의 경우보다 훨씬 적은 수의 가중치를 사용하여 공간 구조의 정보를 보존한다는 특징이 있다.
- 다층 퍼셉트론의 경우와 마찬가지로 활성화 함수를 통해서 비선형성을 얻는데, 이와 같이 합성곱을 통해 feature map을 얻고 활성화 함수를 지나는 연산을 하는 layer를 convolution layer라 한다.
CNN의 Bias
- CNN에서도 Bias를 더할 수 있는데, feature map을 구한 다음에 bias를 더한다.
Pooling
- 보통 합성곱 층 다음에 위치하며, 특성 맵(feature map)을 다운샘플링한다.
- Pooling에는 max pooling과 average pooling이 있다.
- max pooling: 커널과 겹치는 영역 안에서 최대값을 추출
- average pooling: 커널과 겹치는 영역 안에서 평균을 추출
'KHUDA 4th > Computer Vision' 카테고리의 다른 글
[네이버 부스트 코스] 3. Sementic Segmentation & Object Detection(2) (0) | 2023.09.27 |
---|---|
[네이버 부스트 코스] 3. Sementic Segmentation & Object Detection(1) (0) | 2023.09.26 |
[네이버 부스트 코스] 2. 데이터 부족 문제 완화 (0) | 2023.09.20 |
[네이버 부스트 코스] 1. 컴퓨터 비전의 시작 (0) | 2023.09.20 |
[KHUDA 4th] CV 1주차 OT (09.13) (0) | 2023.09.16 |