인프런 커뮤니티 질문&답변

hjmoon님의 프로필 이미지
hjmoon

작성한 질문수

[개정판] 딥러닝 컴퓨터 비전 완벽 가이드

OpenCV DNN으로 YOLO Object Detection 구현 개요

yolo 구조

작성

·

226

0

keras yolov3 공부중입니다.

(1) yolo v3 모델 아키텍처와 코드를 비교하기가 어려운데.. train.py와 yolo.py를 어떤식으로 살펴보면 될까요? ㅜ..ㅜ

(2) 그리고 모델 freeze에 대해 알고 싶으면 어떤 내용을 살펴보아야 하는건가요?

(3) output layer 3개의 model weight는 서로 어떤식으로 공유가 되는건가요? 

yolo v3 모델을 깊이 있게 이해하고 싶은데 어려움이 많습니다. 답변 주시면 감사하겠습니다 (ㅜ..ㅜ)

답변 4

0

hjmoon님의 프로필 이미지
hjmoon
질문자

감사합니다!!

0

권 철민님의 프로필 이미지
권 철민
지식공유자

네, inference 과정중에 NMS를 진행합니다.

감사합니다.

0

hjmoon님의 프로필 이미지
hjmoon
질문자

구체적이지 못한 질문에도 불구하고 좋은답변에 감사드립니다. 

3번에 대해 추가질문 드리면,  NMS 작업은 학습(Train)이후 yolo.py 의 YOLO 클래스에서 수행이 되는건가요? 

강의 내용에 '학습이 완료된 모델을 가지고 Inference를 수행한다' 라고 말씀하셨는데, 여기서 말하는 inference가 NMS를 진행한다는 얘기인가요? 

감사합니다!!

0

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까,

1. 전체 코드를 아키텍처와 매핑 시키기에는 많은 시간이 필요합니다. 여기서 간단히 말씀드릴 사항이 아닙니다.  사실 해당 소스코드가 그렇게 쉬운 편도 아닙니다.  좀 더 구체적으로 어떻게 도와 드릴지 말씀해 주시면 좋겠습니다.

yolo.py, train.py 모두 핵심 입니다. train.py의 create_model()에서 Yolo backend 모델과 Loss 함수 매핑을 모두 수행합니다.  create_model() 부터 일단 분석을 수행해 보시지요.

2. model freeze는 전이학습에서 fine-tuning시 일반적으로 사용되는 방식입니다. 굳이 사용하지 않으셔도 됩니다. 전이 학습의 모델 freeze는 Keras 매뉴얼을  보시는게 더 도움이 될 것 입니다. 아래 URL을 참조하시기 바랍니다.

https://keras.io/guides/transfer_learning/

3. 음, 질문을 잘 이해하지 못했습니다. weight를 공유한다는 의미가 어떤것인지요? 3개의 Output layer는 예측 결과를 반환합니다.  3개 결과에서 NMS를 통해 필터링 후 최종 예측 결과로 반영 합니다.  원하시는 답변이 아니라면 다시한번 질문을 재 정의 해주셨으면 합니다.

감사합니다.

hjmoon님의 프로필 이미지
hjmoon

작성한 질문수

질문하기