[학습목표]
텐서플로 완전연결층 프로그래밍에 대해 설명할 수 있다.
패션MNIST
- 클래스가 10이니까, 출력층의 뉴런도 10개이다.
- 그러면 기본적으로 흑백 이미지이니까 흑백 이미지의 픽셀은 0에서 255사이의 값이 들어가 있다.
- 훈련 → 정답이 있는 데이터를 가지고 훈련
Flatten 네트워크에는 입력을 그대로 한 줄로 만드는 것이기 때문에 필요한 매개변수는 입력의 크기이다.
앞의 예에서 2차원 (28*28) 입력을 1차원 (784)으로 변경하였고 2차원의 형상을 1차원으로 변형해 주는 역할을
하는 것이 Flatten 클래스가 하는 역할이다.
신경망에서는 다차원 배열이 매우 중요하다.
이미지를 다양한 각도로 해서 입력하는 것은 정확한 예측을 위해 필수작업이다.
특정한 특징이나 경향을 가진 데이터만 지나치게 학습하는 부분을 우리가 데이터 편향이라고 한다.
텐서플로를 이용한 4층 완전연결층 프로그래밍
- Flatten층을 제외한 3개의 은닉층 + 1개의 출력층
- 은닉층은 ReLU함수, 출력층은 SoftMax함수를 사용한다.
신경망을 늘린다고 해서 모든 부분들이 다 개선되는 것이 아니고 어떠한 부분들은 조금 더 개선할 수도 있지만
어떠한 부분들은 조금 줄어들 수도 있지만, 전체적인 성능은 개선이 된다.
그렇다고 층이 무지막지하게 깊어지면 좋은가? 아니다.
가중치와 매개변수의 값들이 소실 또는 발산되는 문제가 발생할 수 있다.
이러한 문제를 해결하기 위해서 만들어진 것이 딥러닝이라고 하는 학습에 필요한 고급 기술들이 개발된 것이다.
퍼셉트론은 우리가 선형적인 문제만 해결할 수 있고, 비선형적인 문제는 해결할 수 없다.
그렇지만 이렇게 층을 늘려 주면 비선형적인 문제도 잘 해결할 수 있다.
그런데 층을 무한정 늘린다고 해서 학습이 잘되지 않는 문제는 해결할 수가 없다.
그래서 그러한 문제를 해결하고자 한 방법이 바로 합성곱 신경망, 이러한 것들이 개발된 것이다.
층을 늘리더라도 학습이 잘되지 않는 문제를 다 해결한 것이다.
'컴퓨터 비전 수업 > 수업 필기' 카테고리의 다른 글
컴퓨터 비전 5주차(2) (0) | 2024.10.27 |
---|---|
컴퓨터 비전 5주차(1) (0) | 2024.10.27 |
컴퓨터 비전 4주차(2) (0) | 2024.10.27 |
컴퓨터 비전 4주차(1) (1) | 2024.10.27 |
컴퓨터 비전 3주차(2 + 3) (0) | 2024.10.21 |