• 카테고리

    질문 & 답변
  • 세부 분야

    딥러닝 · 머신러닝

  • 해결 여부

    미해결

성능평가관련해서 질문좀 드리겟습니다

23.01.31 21:38 작성 조회수 247

0

강사님 안녕하세요

성능평가관련해서 질문좀 드리겟습니다 . 일반적으로 세그멘테이션은 accurary보다 mAP 혹은IOU로 평가하는걸로 아는데 그럼 아래코드 metrics = ["accurary"]를 어떻게 바꾸어야 하는지요?

바쁘시겟지만 조언 좀 부타드리겟습니다 ㅎ

 

unet_model.compile(optimizer = optimizer, loss = binary_loss_object, metrics = ["accurary"])

답변 1

답변을 작성해보세요.

0

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

먼저 답신이 늦어서 죄송합니다ㅠ.

metric을 IoU로 변경해서 측정하고 싶으실 경우 tf.keras.metrics.MeanIoU API를 사용하시면 됩니다. 아래와 같은 느낌으로 사용하시면 됩니다.

model.compile(
optimizer = optimizer,
loss = binary_loss_object, 
metrics=[tf.keras.metrics.MeanIoU(num_classes=2)])

더 자세한 내용은 아래 공식 reference 문서를 참조하세요.

https://www.tensorflow.org/api_docs/python/tf/keras/metrics/MeanIoU

좋은 하루되세요~.

감사합니다.

anycad11님의 프로필

anycad11

질문자

2023.02.05

강사님 답변감사합니다. 많은 도움되엇습니다.

지금 tensorfolw2.0강의도 듣고 있습니다. 앞으로도 잘 부탁드리겟습니다.

참고로 한가지만 더 질문드리겠습니다, 강사님이 작성하신 코드에서 학습데이터예측영상이 accurary값이 90%이상 나왓는데, 이 accurary값의 의미는 train_labels이미지의 픽셀값(0,255)와 predicted 영상의 픽셀값(0, 255)의 일치하는 확률이라고 이해를 하면 되는지요? 단순한 질문이알 죄송하지만, 답변 부탁드리겟습니다

네. 반갑습니다~. 말씀해주신 내용이 맞습니다. 다만 prediction 픽셀의 출력 결과값은 0,1 binary label 값이므로 [0,255]가 아니라 [0,1] 2개중에 하나이고 binary label 값이 일치하는 확률값입니다.