Loading...
2024. 4. 23. 23:15

pooling은 왜 사용하는가?

이미지 사이즈를 줄이거나 fully connected 연산을 대체하기 위해 사용함 (average pooling) input을 filter에 의해 convolution 연산을 하고 pooling을 통해 이미지 사이즈를 줄인 output을 얻는 것이 기본적인 CNN 이미지에 있는 pixel 정보를 압축하면서 이미지 사이즈를 줄인다. max pooling, average pooling 등 여러가지가 있다. 다음은 4*4이미지에서 2*2 max pooling을 적용한 모습 다음은 4*4이미지에서 2*2 average pooling을 적용한 모습 pooling을 사용한 기본적인 CNN 구조

2024. 4. 17. 22:21

딥러닝의 시대를 열었던 AlexNet

1. ILSVRC ImageNet에서 개최하는 이미지 빅데이터 대회 classification, detection, localization, segmentation 등 문제는 다양하다 2015년부터 인간을 이기는 알고리즘이 등장함 human의 점수는 이 논문에서 실험을 통해 적절하게 추정을 했나봄.. 이 대회에서 1등을 하는 딥러닝 알고리즘은 기본적으로 parameter 수를 점점 줄이면서 네트워크의 길이는 deep하게 하였다. 그러면서 학습 성능을 높였다 parameter 수는 줄이고 layer는 deep하게 하면서 performance를 높임 그러한 과정에서 1*1 conv를 적절하게 배치하는 아이디어 더 적은 크기의 kernel을 여러번 배치하면 큰 크기의 kernel을 적게 배치하는 것과 rece..

2023. 5. 11. 02:28

convolution위치를 변형시키는 deformable convolution

1. motivation 자동차나 물건같은 것은 따로 따로 움직이는 형태가 없는데 사람이나 동물들은 팔, 다리가 상대적으로 위치를 변경하면서 움직일 수 있다 해당 이미지의 회전된 이미지, 반전된 이미지같은 변형된 이미지도 여전히 원본과 label은 같다 이미지에서 large object나 small object 등 여러가지가 있는데 고정된 크기의 convolution filter을 사용하는 것이 효과적인가? 그래서 filter의 크기를 유동적으로 변경시키는 deformable convolution 방법이 등장하였다 2. idea offset field를 학습시키기 위한 convolution layer와 feature map을 뽑는 convolution layer 2개가 존재한다 offset field를 ..

2023. 2. 27. 01:37

컴퓨터 비전 기본 개념 복기하기

1. 시각 지각능력이 왜 중요한가 인간이 처리하는 대부분의 데이터는 오감을 통해 들어온다. 오감 = 센서 이로부터 취득한 데이터를 뇌에서 프로세싱하여 정보로 사용함 오감중 가장 많은 정보량을 차지하는 것은 시각이다 인간의 75%정보는 눈으로부터 들어옴 귀에 이어폰을 꽂고 돌아다니는건 불편하지 않지만, 눈을 감고 돌아다니면 상당히 불편함을 느낌 2. 인간이 세상을 인식하는 방법 시각적 세상이 주어질때, 눈을 통해 세상을 인지하고 그렇게 받은 신호를 뇌에 보내서 이를 기반으로 정보 해석 3. 컴퓨터가 세상을 인식하는 방법 사람의 눈 = 카메라, 사람의 뇌 = GPU, AI, 알고리즘 시스템 카메라로 촬영된 시각 데이터를 GPU에 올려서 알고리즘을 이용해 프로세싱을 하고 understanding이 이루어지면서..

2023. 1. 3. 11:59

convolution layer의 parameter 세는 방법 대충

1. Convolution neural network convolution layer와 pooling layer에 의한 feature extraction fully connected layer에 의한 decision making으로 이루어지는 neural network fully connected layer는 convolution layer에 비해 parameter가 많으니까 없애려고하는 것이 대세이다. 일반적으로 학습하고자하는 모델의 parameter 수가 커질수록 학습이 어려워지고 generalization performance도 떨어진다 generalization performance = 학습한 모델이 test data에 얼마나 잘 동작하는지 convolution layer를 최대한 deep하게 만..

2023. 1. 2. 01:45

convolution의 backpropagation 대충

1. convolution은 미분해도 여전히 convolution convolution을 미분하면 도함수와 convolution이 된다. 앞에 있는 f가 커널이라는 거 알지? 2. convolution의 직관적인 계산 그림 처음에는 w1,w2,w3가 x1,x2,x3에 만나서 o1 다음으로 한칸 옆으로 가서 x2,x3,x4를 만나서 o2 다음으로 한칸 옆으로 가서 x3,x4,x5를 만나서 o3 backpropagation을 위해 미분을 해보면 여전히 kernel과의 convolution이 된다는 것을 위에서 보였으므로 왜 x로 전달되느냐 oi의 미분이 xi이기 때문임 $\delta$는 loss를 o로 편미분한 값이다. loss를 w로 미분한것이 $\delta$와 x의 곱으로 나타남 convolution을 ..