딥러닝에서 모델이 전체 학습 데이터를 한번씩 본 것을 에폭을 돌았다 라고 한다고 한다.
배치
- 모델은 가중치를 한 번 업데이트하기 위해 한 개이상의 훈련 데이터 묶음을 사용 이를 배치
- 묶음의 사이즈가 배치 사이즈 / 따라서 배치 사이즈에 따라 에폭 당 훈련 횟수가 달라진다.
for layer in base_model.layers[:100]:
사전 학습된 모델 (ResNet50)에서 100개 레이어의 가중치를 동결
=> 동결된 레이어는 훈련 중 가중치가 변경되지 않고 그대로 유지 / 100개 이후의 레이어만 학습되어 새로운 데이터에 맞게 조정됨
100이라는 값을 늘리면 더 많은 레이어를 동결시키게 되므로 사전 학습된 모델의 특성을 그대로 사용하지만, 모델의 학습 가능성을 제한함. -> 덜 유연한 모델이 되어 새로운 데이터에 맞추기 어려워질 수 있음
100이라는 값을 줄이면 더 적은 레이어만 동결하면 더 많은 레이어가 새로운 데이터에 맞게 가중치를 조정 -> 더 많은 학습이 가능해지지만, 훈련 시간이 늘어나고 과적합의 위험이 크다...
블루스크린이 떠본 사람으로써.... 일단 값을 늘리고 훈련을 시키는게 맞을 것 같다..
일단 기준을 좀 잡고 다른 사람들은 어떻게 조절했는지부터 찾는게 중요할 듯 그렇게 바꾼 명확한 이유가 있어야해..! 이유를 찾자
imageDataGenerator와 OpenCV 사용 차이
ImageDataGenerator (Keras/TensorFlow)
- 학습 중 실시간으로 이미지 증강을 수행하여 메모리 사용을 최소화
- 매 훈련 배치마다 새로운 이미지 생성
- 이미 설정된 매개변수로 증강을 쉽게 설정
- OpenCV나 다른 라이브러리에 비해 지원하는 증강의 종류가 제한적
OpenCV
- 이미지 사전 전처리 및 정교한 변환 수행, 사용자가 세부적으로 커스터마이징
- OpenCV는 이미지 처리에 필요한 다양한 기능을 제공
- 이미지 저장 후 사용시 더 빠름
-> 이미지도 OpenCV로 진행
훈련시킨 사진 결과
other\n02085936_1325.jpg
sit\n02086079_186.jpg
sit\n02087046_4832.jpg
other\n02085620_7440.jpg
openCV로 바꾸니깐 엉망인데.. 내가 맘대로 설정해서 이런.. 말도안되는 결과가 나오는거 같은데 어떤식으로 해야될까.... 잘 안나오면 전의 방식으로 하는걸로 하고.. 일단 흑백으로 다시 한번 해보자
'팀프로젝트 - TailsRoute' 카테고리의 다른 글
TEAM Project (10.26) - 정확도 그래프 ( 이미지 분석 완료 ) (0) | 2024.10.26 |
---|---|
TEAM Project (10.25) - OpenCV 흑백 변환, 가우시안 블러(5차, 6차 테스트) (1) | 2024.10.25 |
TEAM Project (10.22) - Epoch(50), OpenCV ( 3차 테스트 ) (1) | 2024.10.23 |
TEAM Project (10.21) - ResNet50 ( 2차 테스트 ) (2) | 2024.10.21 |
TEAM Project (10.18) - Google Drive 연동(대용량 사진, 영상) (0) | 2024.10.18 |