• 카테고리

    질문 & 답변
  • 세부 분야

    컴퓨터 비전

  • 해결 여부

    해결됨

데이터 전처리

22.09.07 11:10 작성 조회수 230

0

데이터 전처리 시 왜 0~ 255 사이의 픽셀값을 0 ~ 1 사이 값으로 변환해주는 걸까요?

자료의 범위가 맞춰져야 해서인 거 같은데 자세한 이유가 알고 싶습니다.

답변 1

답변을 작성해보세요.

0

안녕하십니까,

딥러닝 모델에서는 여러개의 서로 다른 갑 범위를 가지는 피처들을 고정된 스케일로 적용하기 위해서 정규화로 변환합니다. 보통은 정규화를 0~1 사이 값으로 합니다.

그런데 이미지의 모든 차원/피처들은 0 ~ 255 사이의 값으로 일정한 값을 가지고 있기 때문에 굳이 정규화를 적용할 필요는 없습니다.

그런데도 0~1 사이 값으로 변환하는 이유는 초기 딥러닝 연구에서 입력값이 큰 값이 들어오면 모델 성능이 떨어지는 현상들이 있었기 때문입니다. 딥러닝은 일반적으로 입력값이 작아야 상대적으로 좋은 모델 성능이 나오곤 했습니다.

그 전통(?)이 아직까지 이어지고 있습니다. 개인적으로 테스트를 해보면 이미지 모델이 0 ~ 1로 변환하지 않아도 성능이 크게 떨어지지는 않지만, 일반적으로 0 ~1 사이 값으로 pretrained 된 이미지 모델들이 있기 때문에 가급적 0 ~ 1 사이 값으로 변환하는 것입니다.

감사합니다.