작성
·
250
0
안녕하세요 선생님. yolo에 대하여 질문드립니다.
1. 기존 학습된 모델에 추가의 데이터를 학습시키면, 전체적인 성능이 떨어지는거 같은데 원인이 무엇일까요?
2. feature extractor를 freeze하고 classifier을 unfreeze하여 학습하고(50 epochs),
feature extractor를 unfreeze하고 classifier도 unfreeze하여 학습하는(50 epochs) 방식에서요.
제 생각에는 처음부터 모두 unfreeze해서 한번만 학습하면 될 것 같은데, 왜 이러한 방식으로 학습을 하는걸까요?
답변 4
1
앗, 1번 질문을 못봤군요.
음, 어떤 방법으로 학습을 시켜셨는지요?
데이터를 추가하고, 전체 모델을 재 학습 시킬 실 때에 Fine Tuning을 적용해서 수행을 해보시는건 어떨지요?
1
안녕하십니까,
이게 원래 keras의 Pretrained 모델의 fine-tuning 방식으로 권장하는 것입니다.
아래 URL에서 보시면 쭉 밑에 '미세 조정'(fine-tuning) 부분이 나옵니다.
https://www.tensorflow.org/tutorials/images/transfer_learning?hl=ko
일반적으로 이미지넷 데이터 세트로 학습된 pretrained 모델을 Keras에서 제공하므로 이 pretrained 모델을 학습할 때 이미지넷 weight를 효과적으로 재사용할 때 사용되는 방식입니다.
처음엔 classification layer부터 학습-> 나중에 전체 layer 학습과 같이 이뤄집니다.
감사합니다.
0
제가 한 블로그에서 봤는데요.
backbone 전체의 conv층이 아닌, conv층의 상위층 일부만 학습시켜서도 성능을 측정해 보겠습니다. 점점 이해가 잘 되고 있습니다 감사합니다~!
0
감사합니다 2.의 질문은 잘 이해하게 되었습니다.
1.의 질문도 답변 해주실 수 있을까요? 실험적인 영역이라서 질문 자체가 모호한데, 제가 스스로 궁금증을 해결할 수 가 없네요.