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

박혁거세님의 프로필 이미지
박혁거세

작성한 질문수

YOLO 구현으로 배우는 딥러닝 논문 구현 with TensorFlow 2.0

model.py

model.py의 Activation Function

작성

·

444

0

  1. GlobalAveragePooling2D()에서 InceptionV3의 다차원 Feature Map을 1차원 스칼라로 차원변환 해주는데, 여기서 GlobalAveragePooling2D()를 사용하심은, 아래 이미지에서 Flatten된 Vector를 구현 하심이 맞으실까요? 왜 2D 해당 기법은, CNN + FCN을 대체하기위해 사용된다는정도로만 인지하고 있습니다.

    x = tf.keras.layers.GlobalAveragePooling2D()(x) # Multi dimension featuremap to one dimension scalar value.

  2. YOLO Format으로 Flatten 시킬때, 활성화 함수는 지정할 필요가 없나요? 원 논문에서 마지막 Layer에 대해 linear activation function을 사용했는데, 수업에서 사용한 코드에서는 'None'으로 지정된 이유가 어떻게 될까요?

    output = tf.keras.layers.Dense(cell_size * cell_size * (num_classes + 5 * boxes_per_cell), activation="None")(x) # Yolo 형태에 맞는 Flatten 된 벡터로 변환 

답변 1

0

AISchool님의 프로필 이미지
AISchool
지식공유자

안녕하세요~. 반갑습니다.

  1. 네. 맞습니다. 해당 FeatureMap들을 1차원 벡터로 Pooling 해줘서 Flattening한 것과 유사한 레이어를 얻는 것입니다.

  2. TensorFlow에서 activation을 None으로 지정하면 linear activation과 동일한 수식(Wx+b)이 되게 됩니다. 즉 논문과 똑같이 linear activation을 지정해준 것입니다.

좋은 하루 되세요.

감사합니다.

박혁거세님의 프로필 이미지
박혁거세

작성한 질문수

질문하기