• 카테고리

    질문 & 답변
  • 세부 분야

    컴퓨터 비전

  • 해결 여부

    미해결

안녕하세요 질문입니다!

22.08.16 23:48 작성 조회수 143

0

질 높은 강의 감사합니다.
 
1. 데이터 어그멘테이션이 훈련데이터의 품질을 올려주는거라 생각이 되는데 가령 5만건의 데이터중 AGU(어그멘테이션)을 하게 되면 랜덤으로 변환시키니 예를들어 5만건의 원래 데이터가 AUG를 걸쳐 원본데이터(2,5000) + AGU image(25000)개로 되는것 보다 원래의 원본데이터 (5,0000) + AGU image(50000) 이런식으로 하는게 더 학습이 잘 되지 않을까 라는 생각인데 혹시 오버피팅이나 이런 부분들 때문인지 궁금합니다.

답변 1

답변을 작성해보세요.

0

안녕하십니까 

아 이 질문이 있는걸 놓쳤군요. 답변이 늦어져서 죄송합니다

두가지 경우 모두 큰 차이가 없을수 있습니다

첫번째 이유로는 

Iteration 이나 epoch 수를 높이게 되면 반복해서 iteration 하면서 augmentation 적용 횟수와 원본이미지가 선택될수 있는 경우의 수가 동시에 높아집니다

Epoch수를 높이고 random 비율을 잘 조정하면 원본 이미지의 상당수를 그대로 입력하고 또한 augmentation되는 이미지의 갯수또한 비례해서 늘어나게 될겁니다

물론 미리 원본 오만장에 augmentation 오만장을 적용해서 총 10만장을 적용할 수는 있지만 결국은 원본 오만장을 가지고 변환한다는 측면에서는 거의 동일합니다

미리 augmentation을 적용할거냐 아니면 동적으로 augmentation을 적용할거냐의 차이인데 이게 유의미한 성능 차이로 귀결될것 같지는 않습니다

두번째로 미리 augmentation을 적용하게 되면 augmentation 된 이미지에 다시 augmentation을 적용하면 원본이미지와 크게 다른 이미지가 될 확률이 더 커집니다

때문에 위 두 방식이 큰 차이는 없을거 같습니다 

 

Alex님의 프로필

Alex

질문자

2022.08.19

아닙니다 답변주셔서 감사합니다 강사님 말씀은 갯수가 늘어날 뿐 비율은 비슷하기 때문에 포퍼먼스가 비슷하게 나온다는 말씀이십니까?

네, 맞습니다. 비율이 비슷하기 때문에 epochs 수에 따라서 서로 비슷하게 동작할 것 같습니다. 

예를 들어 원본 50,000장을 원본 25,000, AUG 25,000으로 Runtime에 적용되도록(즉 fit() 수행시 augmentation 적용) 구성하고 1 epoch당 학습시간이 30분의 시간이 걸린다고 하면(augmentation에 걸리는 시간은 거의 0라고 가정)

원본 50,000장, AUG 50,000장이면 1 epoch당 학습 시간은 1시간 정도 걸릴 수 있습니다. 

그럼 원본 25,000, AUG 25,000으로 20 epochs를 수행하는 것이나 원본 50,000장, AUG 50,000장으로 10 epochs를 수행하는 것이나 거의 동일하게 이미지를 학습하는 것이므로 큰 차이가 없을것 같습니다. 

Alex님의 프로필

Alex

질문자

2022.08.19

늦은 밤까지 답변 주셔서 감사합니다 좋은 하루 되시기 바랍니다!