결론: weighted caption의 사용은 로라의 퀄에 확실한 효과가 있다. 

참조

[실사로라1|모든 과정] 실사로라 만드는 과정 전부 https://arca.live/b/hypernetworks/77378256?target=all&keyword=%EC%8B%A4%EC%82%AC%EB%A1%9C%EB%9D%BC&p=1

[실사로라2|심화학습1] Train batch size - 배치를 올리면 Learning rate를 같이 올려야 한다고?응 맞아.  https://arca.live/b/hypernetworks/77610764?target=all&keyword=%EC%8B%A4%EC%82%AC%EB%A1%9C%EB%9D%BC&p=1

[실사로라3|심화학습2] 데이터 가공과 퀄 https://arca.live/b/hypernetworks/77796541?target=all&keyword=%EC%8B%A4%EC%82%AC%EB%A1%9C%EB%9D%BC&p=1

[실사로라4|심화학습3] min_snr_gamma는 써야하나 말아야 하나?  https://arca.live/b/hypernetworks/77979528?target=all&keyword=%EC%8B%A4%EC%82%AC%EB%A1%9C%EB%9D%BC&p=1

[실사로라5|심화학습4] clip skip은 얼마로 로라를 만들어야 할까? https://arca.live/b/hypernetworks/78038943?target=all&keyword=%EC%8B%A4%EC%82%AC%EB%A1%9C%EB%9D%BC&p=1


로라에 진심인 사람들이 KOHYA_SS에서 로라를 만들 때, 학습하는 내용에서 우리가 원하는 부분을 강조하는 방법으로 weighted caption이 가능하다는 것은 다들 알고 있을꺼야. 근데 진짜 효과가 있는 지, 효과가 있으면 얼마나 있는 지 확신을 가지기 위해서 테스트 해 본 결과야.


사용방법
weighted caption은 별거 아냐. 우리가 프롬에서 쓰는 것 처럼 필요한 프롬에 가중치를 주는 거지.

예) (face:1.4), (huge breasts:1.2).......

이것과 똑같이 로라 학습할 때 데이터의 캡션에 이렇게 웨이팅을 추가해서 지정함으로써, Ai에게 강조한 사항을 더 집중해서 학습하라는 거지. 


단, 한가지 일반 프롬과 로라의 캡션에서 차이점이 있어. 괄호 안에 콤마가 있어서는 안돼.
예) (face, blue eyes:1.4) 이거 안됨 -> (face:1.4), (blue eyes:1.4) 이렇게 써야 해.


웨이팅에 음수도 가능해 - 덜 학습하라는 거야.


이렇게 캡션을 만지작 거린 후, 파라미터에서 weighted caption만 틱하면 돼


데이터

데이터셋1과 데이터셋1은 사진은 똑같고, 얼굴만 나온 사진의 캡션에 (face:1.4) 또는  (face:-1.4)만 추가해 줬어. 

데이터셋1 에서는 a woman

데이터셋2 에서는 (face:1.4) of a woman

데이터셋3 에서는 (face:-1.4) of a woman

팁1) 강조한다고 양수 웨이팅을 크게 주면 복불복이다. 나머지를 등한시 하고 그것만 학습을 하는 결과가 나올 수 있어. 무엇을 집중적으로 학습하면서 리피트를 늘리면 과적합의 위험도 증가하지. 경험상 웨이팅은 1.4 이상은 가급적 피하고, 여러개를 강조하고 싶을 때는 제일 강조하고 싶은 것을 1.4, 1.3, 1.2, 1.1 이렇게 차등하는 것을 권한다. 아님 말고. 

팁2) 덜 학습시키는 음수 웨이팅은 제한이 없어. -2.0도 가능해. 의상로라를 만드는 경우 얼굴을 덜 학습시키고 싶으면 (face:-4.0)으로 해봐. 얼굴을 학습하는 대신 몸매와 의상을 더 학습할꺼야.


로라 결과 - 결과는 데이터셋2을 사용해 만든 로라의 얼굴이 더 데이터와 비슷해.

 로라 샘플


에포크 1에포크 3
에포크 5
에포크 7
에포크 9
데이터셋 3 
(face:-1.4)
데이터셋 1
데이터셋 2
(face:1.4)

확실히 데이터셋2 에서 얼굴에 신경을 더 써서 학습했어. 딸랑 (face:1.4) 요거 하나로. 

          데이터셋3 에서는 얼굴에 신경을 덜 써서 학습했어. 딸랑 (face:-1.4) 요거 하나로. 


에포크 7이 제일 마음에 들어서 이걸로 짤을 뽑아 비교했다. 

데이터셋1으로 만든 로라를 사용한 짤


데이터셋2 w/ (face:1.4) 으로 만든 로라를 사용한 짤


이번에는 데이터 캡션에, face가 아닌, 다른 것에 웨이팅을 추가해서 만든 로라의 비교짤이다. 어떤 것을 강조했을까? 


(large breasts:1.3) - 가슴을 일단 크게 학습한다 


weighted caption은 결과가 쏠쏠하게 나오니까 로라를 더 정교하게 학습시킬 수 있으니 잘 쓰자.