본문 바로가기

전체 글48

패딩(padding) 사용하는 이유 패딩을 이용해 입력데이터를 특정값으로 감쌀수있다 주로 0을 이용한다고 한다패딩을 사용하는 이유는 세가지가 있다 첫번째는 출력크기의 감소를 막기위해서이다 예를들어 (4,4) 입력데이터에 (3,3) 필터를 적용하면 출력은 (2,2)가 되어 입력보다 2만큼 줄어든다이는 합성곱 연산을 몇번이나 되풀이하는 심층 신경망에서는 문제가 될 수 있다 위 그림과 같이 패딩의 폭을 1로 설정하니 (4,4)입력에 대한 출력이 같은 크기인 (4,4)로 유지되어 입력 데이터의 공간적 크기를 고정한 채로 다음 계층에 전달할 수 있다 두번째는외각을 0값으로 둘러싸는 특징으로부터 인공 신경망이 이미지의 외각을 인식하는 학습효과가 있다는 것이다 세번째는가장자리로 갈수록 연산에 이용되는 횟수가 떨어지는 문제점을 어느정도 해결해준다는것이다.. 2023. 2. 21.
합성곱 연산(Convolution operation) 방법 입력값이 커널과의 연산과정을 거쳐 출력값이 된다 커널은 필터라고도 불린다n*m크기의 행렬로 n*m크기의 겹쳐지는 부분의 원소값을 곱한뒤 모두 더한값을 출력으로 갖는다input_=np.array([1,2,3,2,1,0,3,0,1])kernel=np.array([1,0,1,1,0,1,0,1,0])sum(input_*kernel)이미지의 가장 왼쪽 위부터 가장 오른쪽 순차적으로 위과정을 반복한후 마지막으로 편향(bias)를 더해 최종적인 출력(feature map)을 만든다또한 위의 예제에서는 커널의 이동범위가 한칸이었지만 이또한 사용자가 정할수있으며 이러한 이동범위를 stride라고 한다 RGB 3채널의 이미지 한장에서 최종적인 feature map을 얻는 과정은 다음과 같다(보통 rgb값을 permute를.. 2023. 2. 21.
합성곱 신경망의 필요성 합성곱 신경망의 필요성해당 두 손글씨 이미지는 모두 알파벳 Y로 사람은 충분히 인식할수있다기존에는 1차원으로 변환된 결과를 이용했지만 이는 사람이 보기에도 이게 원래 어떤 이미지였는지 알아보기 어렵다이는 기계도 마찬가지이며 변환전에 가지고 있던 공간적인 구조 정보가 유실된상태예를들어 (4,5) 좌표와 (5,5) 좌표는 2차원 평면에서는 인접해있지만 위와같이 1차원으로 펼쳤을때는 매우멀다=>공간정보의 유실  출처https://wikidocs.net/62306 2023. 2. 21.