
583
14
장
합성곱 신경망을 사용한 컴퓨터 비전
14.8
분류와 위치 추정
10
장에서 언급한 것처럼 사진에서 물체의 위치를 추정하는 것은 회귀 작업으로 나타낼 수 있
습니다. 물체 주위의 바운딩 박스
bounding
box
를 예측하는 일반적인 방법은 물체 중심의 수평, 수
직 좌표와 높이, 너비를 예측하는 것입니다. 즉 네 개의 숫자를 예측해야 합니다. 이 때문에 모
델을 크게 바꿀 필요는 없습니다. (일반적으로 전역 평균 풀링 층 위에 ) 네 개의 유닛을 가진
두 번째 밀집 출력 층을 추가하고
MSE
손실을 사용해 훈련합니다.
base_model = keras.applications.xception.Xception(weights="imagenet",
include_top=False)
avg = keras.layers.GlobalAveragePooling2D()(base_model.output)
class_output = keras.layers.Dense(n_classes, activation="softmax")(avg)
loc_output = keras.layers.Dense(4)(avg)
model = keras.Model(inputs=base_model.input,
outputs=[class_output, loc_output])
model.compile(