sju-coml / 2020-Font-picker

SAI I 트리케라톱스 팀의 Font-Picker
6 stars 1 forks source link

[실험] Batch Normalization이 Interpolaton에 영향을 미치는가? #9

Open lunaB opened 3 years ago

lunaB commented 3 years ago

실험 개요

같은위치의 비슷한 폰트에 한해서도 interpolation이 부자연스러운지

결과

  1. 같은위치의 비슷한 폰트라도 interpolation이 부자연스럽다
  2. Batch Nomalization을 몇개 제거해보았더니 더 자연스럽게 이미지가 이동하는것을 볼 수 있었다.
  3. Batch Normalization이 좋지않은 영향을 미치는 것은 확실한 것 같다.

고정파라미터

기존 결과 (BatchNorm2d를 대부분의 레이어에서 이용)

anim (2) 같은 위치의 폰트지만 폰트가 움직여서 변하지 않고 흐려지며 변함.

1번실험 Encoder Decoder BatchNorm을 (En, De 에서 뒤쪽레이어에서 3개씩 뺌)

학습은 조금 더디지만 폰트가 움직인다. 학습이 완벽하지 않다.

anim

2번 실험 Decoder 만 BatchNorm을 뒤쪽레이어에서 3개 뺌

학습은 조금 더디지만 폰트가 움직인다 (첫번째 실험보다 덜움직인다). 학습이 완벽하지 않다.

anim (3)

khodid commented 3 years ago

폰트 10개 학습시킨 모델에서의 실험

Encoder에서 e4 layer에서 e6 layer까지의 BN 층을 지워 보았다.

(BN을 Encoder와 Decoder 양 측에서 없앨 경우 학습이 아예 진행되지 않는 현상이 나타난다) batch size =16, epoch = 85

BN 층을 많이 안 바꿔놔서 큰 변화는 없지만, 몇몇 케이스에선 예전의 현상이 조금 개선된 것 같기도 하다. image image

하지만 스타일이 많이 다른 폰트 간에선, 아직은 대부분의 경우 매끄럽지 못한 연결이 또 나타난다. image

BN을 많이 없앤 상태에서 추가 학습 실험을 해봐야 할 듯 하다.

Encoder의 e5\~e7, Decoder의 d1\~d3의 BN을 지웠다

batch size = 16, epoch = 150 image image image image 뭔가 희망회로 때문에 더 나아보이는 것 같긴 한데 image image BN을 확실히 없애야 다양한 폰트를 적용해도 문제가 덜 할 것 같다. image 아직 멀었다..

lunaB commented 3 years ago

epoch 100 batchsize 16

학습이 생각보다 빠르게 진행됨 epoch 수를 줄여보면 괜찮을 것같음 InstanceNorm2d 이용 (내일 정리할 예정)

image

전부 instance normalization

anim1

d8 d7 d6, e1, e2, e3 빼고 instance normalization 적용

anim2

d1 d2 d3, e7, e6, e5 빼고 instance normalization 적용

anim3

d2 d3 d4 e2 e3 e4 instance normalization 적용

anim3 (1)