컨볼루션층에서는 “필터”라는 개념을 사용한다.
필터는 무엇인가? 이에 대해서 알아보자. 사진관에서 증명사진을 찍게 되면 해당 사진을 갖고 뽀샵처리를 한다. 이러한 뽀샵처리 프로그램은 원본 사진이미지를 갖고 특정한 연산을 수행하기 때문에 이쁘고 잘생긴 얼굴사잔이 나오게 되는 것이다. 이러한 역할을 하는 연산 알고리즘을 필터(Filter)라고 한다고 보면 될 것이다.
이미지를 변형해주는 역할을 하는 것이 “이미지 필터”라고 정의한다면, 이미지를 인식하기 위한 역할을 하는 것은 “컨볼루션 층의 필터”라고 정의할 수 있다.
이미지를 인식하기 위해서는 여러가지 변형된 사진을 갖고 있어야 한다. 일반적으로 한가지 사진정보만을 갖고 판단을 하는 것보다는 여러가지 다양한 사진을 갖고 판단을 한다면 보다 정확한 결과를 얻을 수 있을 것이기 때문이다.
신발 이미지 사진을 갖고 있다고 하다. 신발의 가장자리를 검출하기 위한 방법은 여러가지가 있을 것이다. 일반적으로 이미지 인식 방법에서는 이미지 필터를 사용하여 가로경계선과 세로경계선을 인지해낼 수 있다. 이미지의 가장자리 검출(Edge Detection)을 위해 사용하는 필터로는 소벨필터(Sobel Filter)이 있다. 소벨필터를 이용하면 신발사진에서 쉽게 가장자리를 검출해낼 수 있다. 하지만 우리가 가장자리 검출이 목적이 아니라 신발사진에서 특정한 특징을 검출하고자 한다면, 이에 부합하는 필터를 찾아내야 한다. 이러한 작업은 오랜 시간이 걸릴 것이다. 물론 최악의 경우 이를 위한 필터를 못찾게 되는 경우도 있을 것이다.
다시 딥러닝 기반 사물인식 문제를 해결하기 위해서는 우리가 필요한 것은 컨볼루션 필터이다. 하지만 딥러닝에서는 컨볼루션 필터를 직접 정의할 필요가 없는 장점이 있다. 이렇게 직접 정의할 필요가 없는 이유는 학습을 통하여 컨볼루션 필터의 파라미터를 직접 찾아낼 수 가 있기 때문이다. 이외에도 여러 개으 ㅣ필터를 사용하여 다수의 특징을 학습하고 인식할 수 있는 장점이 있다.
댓글 없음:
댓글 쓰기