Deep Learning -> CNN 복습
2022. 9. 13. 20:51ㆍML_DL/DL
딥 러닝이란?
비정형데이터를 처리하는데 특화된 머신러닝 알고리즘의 한 종류이다.
이는 최소 2개 이상의 hidden layer를 가지고 구성되어 있다.
케라스 그리고 텐서플로우
케라스 : 신경망을 만들기 위한 고수준 파이썬 라이브러리
텐서플로우 : 신경망을 훈련하기 위해 필요한 저수준 배열 연산을 수행하는 역할을 하는 백엔드 라이브러리
- Tensor?
- 행렬로 표현할 수 있는 2차원 배열을 높은 차원으로 확장시킨 다차원배열의 형태
모델생성 흐름
이미지 적재 -> 모델 생성 -> 모델컴파일(옵티마이저, 손실함수 정의) -> 모델훈련 -> 모델평가
합성곱층이 등장한 배경
Flatten -> Dense 로만 이루어진 모델을 그다지 높은 성능을 낼 수 없다.
이유는 다음과 같다.
입력 이미지의 공간 구조를 다룰 수 있는 요소가 네트워크에 없다.
=> why? Flatten 층에 이미지를 한 줄로 표현하였다.
합성곱층의 역할
이미지의 영역과 커널 혹은 필터라 불리는 행렬과 합성곱을 진행한다.
이를 통해서 높은 값일 수록 필터 이미지와 해당 이미지의 영역이 비슷하다는 것을 나타낸다.
- Stride?
- 커널이 한 번에 입력 위를 이동하는 크기를 의미한다. 즉 stride를 크게 줄 수록 텐서의 크기는 줄어든다.
- Padding
- 이미지 영역에 있어서 테두리를 생성 해 주는 것. 이를 통해서 출려된 크기를 조절할 수 있다
- 이미지 테두리 부분을 이제는 넉넉하게 포함할수 있기에 테두리 부분에 대해서도 적절한 합성곱이 진행 될 수 있다.
'ML_DL > DL' 카테고리의 다른 글
| DL) GAN (0) | 2022.07.20 |
|---|---|
| DL) CNN (0) | 2022.07.15 |
| DL) RNN 구조와 Attention (0) | 2022.07.12 |
| DL) RNN , LSTM (0) | 2022.07.12 |
| DL) 단어의 분산 표현(Distributed Representation) (0) | 2022.07.11 |