ML/머신러닝

Sliding window는 무엇일까?[object detection]

KAU 2020. 2. 24. 14:41

3팀-최웅준, 송근영, 김정민

회의 날짜 : 02/07 금요일

회의장소 : 능곡역 지노스 카페

 

회의 내용 : Sliding Window에 대한 팀원들 간의 질문이나 생각들이 가장 많이 겹친 부분이었으며 중요하다고 판단하여 이번 발표 주제로 선정하게 되었습니다.

Sliding Window란 무엇인가?

 

sliding window는 사진을 윈도 사이즈에 맞춰 나눈 다음 매 윈도우로 잘린 이미지를

입력값으로 모델을 통과해서 결과를 얻는 방법입니다.

 

기존 Sliding window의 문제점 

 

기존 컴퓨터 비전 분야에서 신경망이 성공적으로 사용되기 전에는 간단한 선형 분류를 사용했었습니다.

사용자가 직접 특징을 정해주었고 분류기가 선형 함수를 사용하기 때문에 

계산 비용이 저렴하였기 때문에 문제가 없었지만 


슬라이드 윈도우를 CNN 네트워크에 적용시켰을 때
여러 번 네트워크 연산을 해야 하므로 계산 속도가 느려지게 되고

반대로 스트라이드를 넓히게 되면 결과가 정확하지가 않았습니다.

 

이러한 문제점을 바로잡기 위해서

슬라이딩 윈도우 물체 인식기를 합성곱을 이용하여 효율적으로 구성하게 됩니다.

 

합성곱으로 슬라이딩 윈도 구현하기

기존의 Sliding Window 연산의 FC를 convolution으로 바꾼 형태

 

 

400개를 단지 노드의 집합으로 보기보다는 
1*1*400의 볼륨을 가지는 것으로 보도록 하겠습니다.

400개의 노드가 5*5*16 차원의 필터를 가지고 있기에
수학적으로 완전히 Fully connect와 동일 합니다.

400개의 각 값이 5*5*16에 대한 임의의 선형 함수 이기 때문입니다.

CNN의 convolution을 활용한 계산방식 -> 결과적으로 네트워크의 연산 빈도 횟수를 줄여줍니다.

 

이 합성곱 신경망의 과정이 수행되고 있는것은 

네 가지 입력 이미지에 대해서 독립적인 정방향 전파를 수행하는 대신

네 가지 경우를 한 가지 계산으로 통합하는 것 입니다.

14*14 이미지의 공통적 영역에 대한 계산을 공유하는 것이죠.

 

합성곱층을 4번 통과하지 않고 한번에 4개의 윈도에 대한 분류를 할 수 있어 계산 비용이 많이 줄어듭니다. 

따라서 효율적인 계산을 할 수 있게 합니다.

 

기존의 슬라이딩 윈도우는 자동차를 인식하기 전까지 윈도우를 합성곱 신경망에 통과시키게 된다.

 


기존의 슬라이딩 윈도우는 전체 영역에서 자동차를 인식할 수 있을 때까지  14x14 영역에 대해서 합성곱 신경망에 통과시키고 다음 영역에 대해 동일하게 반복했습니다.

 

합성곱 신경망을 이용하면 전체 이미지가 28*28 이미지일 때 합성곱을 사용해서  동시에 모든 예측값을 계산할 수 있습니다 큰 합성곱 신경망에 한 번만 통과시켜 이 자동차의 위치를 인식할 수 있죠.

 

제목 없는 프레젠테이션.pptx

3.00MB

'ML > 머신러닝' 카테고리의 다른 글

Selective search 와 segmentation algorithm  (0) 2020.02.24
YOLO와 RCNN 분석  (0) 2020.02.24
Hyperparameter vs Parameter 과 Bias and Variance Tradeoff 고찰  (0) 2020.02.24
Inception(GoogLeNet)  (0) 2020.02.24
optimizer의 의미와 종류  (0) 2020.02.24