강의

멘토링

로드맵

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

김성웅님의 프로필 이미지
김성웅

작성한 질문수

딥러닝 CNN 완벽 가이드 - TFKeras 버전

EfficientNetB7 모델 학습 및 성능 평가

EfficientNet b7 Scaling 미적용 질문

작성

·

267

0

안녕하세요 권철민 강사님. 열심히 수강하고 있는 수강생입니다.

 

다름이 아니라 EfficientNet B7 학습 중 질문이 생겨서 이렇게 문의드립니다.

 

제가 이해하기론 기존까지 Deep Learning 학습할 때 이미지 픽셀의 범위는 -1 ~ 1 혹은 0~1 사이로 scaling 한 다음에 학습을 진행하였는데, 이 모델에서는 픽셀 값이 scaling이 아예 미적용된 것 같습니다.

 

저번 강의에서 keras가  tensorflow 2.3? 2.4? 버전에서 병합되면서 그 이후로 preprocess _input을 적용해도 스케일링이 잘 안된다고 하셨는데 그 이유 때문인가요?

 

이렇게 scaling이 적용이 안될 경우에 scaling 적용 없이 학습을 진행해도 무방한 건가요?

 

무방한 것이 아니라면 torch style의 scaling이라도 해서 학습을 해야되는 건지 궁금합니다.

 

항상 감사드립니다 강사님!!

퀴즈

식물 병리학 경연대회에서 모델 성능 평가의 주된 지표로 사용되는 ROC AUC 점수가 1에 가까울수록 무엇을 의미할까요?

모델 예측 성능이 무작위에 가깝다는 뜻이다.

모델의 예측 성능이 매우 우수하다는 뜻이다.

모델이 과적합(overfitting)되었다는 명확한 증거이다.

학습률(Learning Rate)이 너무 높게 설정되었다는 뜻이다.

답변 1

1

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

안녕하십니까, 

efficientnet이 keras native 구현이랑 tf.keras 구현이 좀 다릅니다. 

keras원래 구현은 이미지 값을 torch style로 변경합니다. 

아래 소스코드에서 530~540 라인을 보시면 됩니다. 

https://github.com/keras-team/keras-applications/blob/master/keras_applications/efficientnet.py

그런데 tf.keras 구현은 이미지 값을 변경하지 않습니다. 그래서 별도의 이미지값 scaling을 적용하지 않았습니다.  

아래 소스코드에서 744 ~ 763 라인을 보시면 됩니다. 

https://github.com/keras-team/keras/blob/v2.7.0/keras/applications/efficientnet.py#L526-L549

 

감사합니다. 

김성웅님의 프로필 이미지
김성웅
질문자

항상 자세하고 친절한 답변 감사드립니다!!  항상 건강하세요 강사님 :)

김성웅님의 프로필 이미지
김성웅

작성한 질문수

질문하기