1. 입력층
입력층의 노드 수는 픽셀의 수와 같다.
신경망으로 2차원 이미지를 다루기 위해서는 이미지를 신경망이 이해할 수 있는 형태로 변환해야 한다. 이미지는 이미지를 구성하는 각 픽셀들의 픽셀 값으로 이루어진 행렬로 나타낼 수 있다. 각각의 픽셀값은 0부터 225까지의 범위를 가진 값으로서 0은 검은색, 225는 흰색, 그 사이 값은 회색조를 나타낸다. MLP에는 1차원 벡터만 입력할 수 있으므로 이 2차원 행렬을 1차원 벡터로 변환해야 한다. 이를 이미지 벡터 변환(image flattening)이라고 한다. 이미지 벡터 변환을 하면 열을 순서대로 나열한 형태가 된다. 입력층의 노드 수는 픽셀의 수와 같다.
2. 은닉층
은닉층의 노드 수와 층 수는 원하는 만큼 설정 가능하다.
3. 출력층
출력층의 노드 수는 분류 대상 클래스 수와 같다.
4. MLP로 이미지를 다룰 때의 문제점
CNN을 이용하면 MLP의 단점을 해결할 수 있다.
MLP는 1차원 벡터를 이용해 데이터를 처리하기 때문에 2차원 이미지의 공간적 특징을 활용할 수 없다. 게다가 전결합층은 이전 층의 모든 노드가 다음 층의 모든 노드와 연결되기 때문에 수많은 가중치를 갖는다. 따라서 이미지의 크기가 커질수록 계산량이 기하급수적으로 커진다. 이미지 처리에서 노드 수는 픽셀 수와 같기 때문이다. CNN을 이용하면 이 모든 단점을 해결할 수 있다. CNN은 2차원 벡터를 처리할 수 있고, 지역적으로 연결된(locally connected) 구조의 층을 가져 이전 층의 노드가 다음 층의 일부 노드에만 연결된다.
'인공지능 공부 > 비전 시스템 공부' 카테고리의 다른 글
chapter 3 합성곱 신경망 - 3절 합성곱 신경망의 기본 요소 (0) | 2022.08.03 |
---|---|
chapter 3 합성곱 신경망 - 2절 합성곱 신경망 구조 (0) | 2022.08.03 |
chapter 2 딥러닝과 신경망 - 7절 역전파 알고리즘 (0) | 2022.07.12 |
chapter 2 딥러닝과 신경망 - 6절 최적화 알고리즘 (0) | 2022.07.12 |
chapter 2 딥러닝과 신경망 - 5절 오차 함수 (0) | 2022.07.12 |