[KT AIVLE 4기] 시각지능
시각 지능 (김건영 강사님)
딥러닝까지 마치고, 컴퓨터 비전 이론 및 실습이 진행되었다.
강의 추천
- deeplearning.AI
- edwith (네이버에서 유명한 강의를 유료로 풀어놓은것)
- (교재) 밑바닥부터 시작하는 딥러닝
- (교재) 딥러닝 텐서플로
- (교재) 비전 시스템을 위한 딥러닝 (입문용)
- (교재) 케라스 창시자에게 배우는 딥러닝
- (교재) 마스터 알고리즘 - 머신러닝은 우리의 미래를
CNN
Dense is not Fully-Connected layer
- 위치정보를 보존한 채로, feature extract ⇒ feature representation 이라 할 수 있다.
- Feature Map 크기 공식은 아래와 같다. (convolutional, pooling layer 모두)
- 초깃값 설정이 중요한가? BatchNormalization, Dropout 기법을 통해 그렇게 중요하지 않다. (Local Minimum에 빠지지 않을 수 있어짐.)
- CNN layer 개수와 노드의 수는? 정답은 없다. 최적화하면서 찾아가야 할 뿐!
Data Augmentation
- keras 라이브러리의 ImageDataGernerator를 사용하여 rescale, 상하좌우 반전, 뒤틀기, 줌, 이동 등이 가능하다.
Transfer Learning
-
모델를 사용하기 위해 가져다 쓰는 것도 어려움 사실. 그런데도 성능이 좋으니까 쓰는 추세다.
-
개인으로서는 더이상 모델링을 하지 못하는 수준! 응용하는 것도 빡세다…
-
hugging face를 이용하면, 다양한 pre-trained 모델을 사용할 수 있다.
Object Detection
-
MS COCO가 기존의 것을 대체함.
-
object detection은 이제는 Realtime이 아니면 소용이 없는 수준
-
Object Detection 핵심 근간 (3)
- Bounding Box Regression (회귀문제로 접근)
- Classification : [개, 고양이, 사자]
- Confidence Score
CNN과 Detection 관계
Feature Representation
- 원시 데이터(raw data)를 특성 벡터(feature vector)에 매핑한 결과
-
연결된 것으로부터 기존에 없던 새로운 Feature을 추출한다!
- 히든 레이어
- 성능상 유용하지만, 변수간의 관계를 설명하기 어려움.
상황 : 히든 레이어를 추가했는데, 성능이 유지됐다.
- 고수준의 특징이 덜 필요했다. (Input layer 대비 깊은 layer의 특징 추출, 고수준)
- CNN의 Feature Representation
- Object Detection에서,
위치 정보를 보존한 채로
이미지를 분류하는 도구로써, 사용함. - 우리는 classification과 동시에 localization를 해야하는데, 마침 CNN이 위치정보를 보존하네?
- Object Detection에서,
-
Backbone + Head
- Backbone : ImageNet 대회에 잘 학습된 CNN 모델의 사용된 구조와 가중치를 사용 (위치정보를 보존한 채로)
- Head : 우리 문제에 필요한 구조를 덧붙임 (위치정보가 쓰일지 안쓰일지 모른다)
YOLOv8
- 겹치는 것, 작게 보이는 것에 대한 detection이 challenging함
- coco128.yaml을 수정해서, Fine-tuning이 가능함.
Annotation
- 데이터 수집 시, non-iconic 한 사진들도 포함해야 학습이 잘됨.
- box rotation은 또 다른 task임.
데이터를 수집하고, 모델 학습을 위해서 직접 annotation 해보았고, 이를 바탕으로 pre-trained 모델을 .pt로 불러와서 추가학습 하는 transfer learning을 끝으로 시각지능 수업 및 실습이 끝이 났다. 이를 바탕으로 3차 미프를 수행할 예정이다.
Leave a comment