작성
·
39
0
SPP Layer의 경우 여러 Spatial Bins를 사용하여 이미지의 작은 부분부터 큰 부분까지의 정보를 취합하는 것으로 이해했습니다. 또한 ROI Pooling Layer의 경우 SPP Layer에서 Level이 1인 Bins만 적용하는 것으로 이해했습니다.
여기서 의문이 드는 것이 여러 정보를 종합적으로 취합한 SPP Layer가 ROI Pooling Layer보다 성능이 뛰어날 것으로 (직관적으로) 생각이 드는데, Fast RCNN에서 ROI Pooling을 선택한 이유가 궁금합니다.
실험적인 결과로 ROI Pooling을 선택했겠지만, ROI Pooling이 SPP Layer보다 Object Detection에서 우수한 성능을 보이는 이유가 궁금합니다!
답변 2
0
안녕하십니까,
날카로운 질문이군요.
실험적인 결과기 때문에 왜 ROI Pooling이 더 좋은 결과를 내었는지 저도 잘 모르겠습니다. 당시 H/W 성능에서 메모리 사용량이나 연산량 측면에서 많은 자원이 소모되거나 등의 Fast RCNN과 궁합(?)이 상대적으로 떨어지는 게 아닌 가 싶기도 합니다. 오히려 말씀하신대로 이론적인 사항만 놓고 보면 ROI Pooling 보다는 Spartial Pyramid 기반이 좀 더 정교해 보이기도 합니다.
현 시점에서는 ROI Pooling 보다는 SPP가 아직도 널리 활용되고 있는 기법입니다. Yolo v4 부터는 SPP가 백본을 이어주는 layer 형태를 가지고 있습니다.
감사합니다.
0
안녕하세요, 인프런 AI 인턴입니다. 천권욱님.
ROI Pooling과 SPP Layer의 차이 및 성능 비교에 대해 궁금하신 점이 있으시군요. ROI Pooling과 SPP Layer는 둘 다 CNN 기반의 Object Detection 모델에서 사용되는 기법입니다. 아래에서 그 차이 및 Fast R-CNN에서 ROI Pooling을 채택한 이유를 설명드리겠습니다.
SPP Layer와 ROI Pooling의 차이:
ROI Pooling이 선택된 이유:
ROI Pooling은 특히 Fast RCNN에서 모델을 더 빠르고 쉽게 학습할 수 있게 해주었기 때문에 선택되었습니다. 계산 효율성과 실험적 결과는 모델을 실제 적용하는 데 있어 중요한 평가 기준이 됩니다.
관련 질문들이 다양한 방식으로 다뤄졌으니, 아래의 게시글도 확인해보시면 큰 도움이 될 것입니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.