- 대각선 필터와 같은 값은 보다 많은 pooling값을 통해 데이터의 특징을 추출한다
- 따라서 결과적으로 풀링값이 가장 큰 대각선 필터가 유용하다고 결론지을 수 있다.
fully connected 영역
- 이제 conv layer 1,2 를 통과한 영역이 이후 layer에 의한 결과값이 조절이 된다.
- 기존에 위치를 이용해서 전체 데이터를 하나의 입력 데이터로 사용했던 방식보다는 조그마한 커널을 만들어서 커널을 기억해서 가장 강력한 것을 뽑는 softmax로 fc를 거친다
-
치와와 vs 머핀 / 고양이 vs 아이스크림 처럼 고양이, 개의 특징을 잡아서 구분하는 것이다.
-
어떠한 필터인지에 따라서 sharp, emboshing등의 필터들의 값을 가지고 sampling을 거칠 수 있다.
- 이러한 이미지에서 각각의 특징을 추출하는데 이러한 특징값을 feature map이라고 한다.
- 즉, 필터값도 학습에 의해서 업데이트 하게 된다.
문제 color 이미지인 경우에는?
color images
-
RGB
-
SOLUTION -> RGB, 즉 3차원으로 생각해보자!
-
또한 블록(벡터)로 생각해보자
- 3차원의 합성곱 연산 -> 데이터와 필터를 직육면체 블록으로 생각한다.
- INPUT이 C, H , W이기 때문에
- FILTER도 C, FH, FW이다.
- OUTPUT도 1, OH, OW이다. => 어차피 데이터는 평면 데이터로 쭉 FLAT하게 만드는 FC과정이 필요하다!
-
FC를 해야지 SOFTMAX등에 적용할 수 있다.
-
이게 바로 채널이 한개 더 추가된 내용이다.
배치처리
- 각 계층을 흐르는 데이터의 차원을 하나 늘려 4차원 데이터로 만드는 것
-
데이터수, 채널 수, 높이, 너비
-
처리를 간단하게 하자면 각각의 값들을 1차원 데이터 형태로 쭉 늘린다. 즉 편향이라고 하며, 이 값들도 1차원 데이터의 값들로 활용되도록 해야한다.
- 풀링 계층
- 풀링 계층
- 세로 가로 방향의 공간을 줄이는 연산 진행
- 최대 풀링
- 아까 했던 MAX POOLING 최대 데이터 추출하는 것
- 풀링 계층 특징
- 강건하다 : 입력의 변화에 영향을 적게 받는다.
- 즉 아래 이미지와 같이 값이 한칸씩 밀려도 결과 값은 같다!(일부러 조작하긴 했지만)
- 즉 위와 같이 영향을 적게 받는다는게 POINT이다
구현
-
4차원 배열 형태로 연산하면 된다!
-
numpy.shape를 통해 쉽게 가능하다
-
x.shape
- x[0].shape
- 또한 im2col함수 이용하면 정육면체 데이터 값을 필터링 하기 좋은 형태로 만들어 준다.
- 즉 행렬 데이터로 만들어 준다.
- im2col함수는 image to column을 의미하고,
- caffe, chamber등의 딥러닝 프레임워크에서 제공되는 함수이다
- pooling은 아래 이미지와 같이 구현된다! 기억~
정리
- epoch : 대략 2분 정도
- 대략 epochs는 23분 정도이다.
- 정확도
-
예고 >>
CNN 실습할 예정필터를 사용함으로서 가중치가 업데이트, 이를 통해 필요했던 데이터가 어떤 것이 있는지 확인
-
정리 >>
CNN의 구성과 흐름 기억하기! 기본 베이스를 CNN으로 한 알고리즘 등이 있다.
'개발 > sk infosec cloud ai 전문가 양성과정' 카테고리의 다른 글
[pandas를 활용한 데이터분석]SK infosec 클라우드 AI 전문가 양성과정 수업필기본 (0) | 2020.09.08 |
---|---|
[Pandas를 이용한 데이터 분석mnist-fashion, svm, decision tree]SK infosec 클라우드 AI 전문가 양성과정 수업 실습내용 (0) | 2020.09.08 |
[PYTHON데이터분석 2020/09/07-1] SK infosec 클라우드 AI 전문가 양성과정 수업필기본 (0) | 2020.09.07 |
[PYTHON데이터분석 2020/09/01] SK infosec 클라우드 AI 전문가 양성과정 수업필기본 (0) | 2020.09.07 |
[PYTHON데이터분석 2020/09/03] SK infosec 클라우드 AI 전문가 양성과정 수업필기본 (0) | 2020.09.07 |