지난 시간까지 배운 모델은 ANN로써 이미지데이터도 Flatten 라이브러리를 써서 1차원 데이터로 만든다음 분석할수 있지만 이렇게 되면 ANN로 이미지 데이터를 학습시키기 위해선 모든 이미지 데이터를 데이터 형식에 맞게 재구성해서 사용하여야 한다. 그렇게 된다면 너무나 비효율적인 학습이 진행될것이다.
따라서 새로운 모델인 CNN을 알아보자
CNN은 ANN과 연결하여 쓰지만 이미지 데이터를 변환 없이 그대로 적용할수 있기 때문에 주목을 받는다. 이미지 데이터가 들어 오게 되면 그 이미지 파일은 0,1로 이루어진 매트릭스가 되고 이를 Kernel,Featurt Detector 로 불리는 것으로 행렬의 곱처럼 매트릭스 일부분을 행렬로 삼아 곱하여 Feature Map에 곱한 값에 전체 합을 넣는다.
매트릭스상에서 kernel이 움직이는것을 Stride라 하며 Stride가 한번만 움직이면 Stride는 1이고 두번 움직이면 Stride는 2가 된다. 물론 Stirde는 그림처럼 옆으로만 움직이는 것이 아니며 아래로도 동시에 이동한다. CNN을 모델링 할때 Stride값을 설정할수 있다.
반응형
'딥러닝' 카테고리의 다른 글
딥러닝(14) 파이썬으로 압축파일 푸는 방법 (0) | 2023.01.02 |
---|---|
딥러닝(13) pooling 이란 (0) | 2023.01.02 |
딥러닝(11) 텐서플로우의 모델을 저장하고 불러오는 방법 (0) | 2022.12.30 |
딥러닝(10) 에포크시마다 테스트를 하는, 벨리데이션 데이터를 처리하는 방법중 validation_data 파라미터 사용법 (0) | 2022.12.29 |
딥러닝(9)Flatten 라이브러리 없이, 이미지를 평탄화 하는 방법 (0) | 2022.12.29 |