CLIEN

본문 바로가기 메뉴 바로가기 보기설정 테마설정
톺아보기 공감글
커뮤니티 커뮤니티전체 C 모두의광장 F 모두의공원 I 사진게시판 Q 아무거나질문 D 정보와자료 N 새로운소식 T 유용한사이트 P 자료실 E 강좌/사용기 L 팁과강좌 U 사용기 · 체험단사용기 W 사고팔고 J 알뜰구매 S 회원중고장터 B 직접홍보 · 보험상담실 H 클리앙홈
소모임 소모임전체 ·굴러간당 ·주식한당 ·아이포니앙 ·MaClien ·방탄소년당 ·일본산당 ·개발한당 ·소시당 ·자전거당 ·이륜차당 ·AI당 ·패스오브엑자일당 ·안드로메당 ·바다건너당 ·나스당 ·클다방 ·곰돌이당 ·가상화폐당 ·키보드당 ·리눅서당 ·사과시계당 ·소셜게임한당 ·물고기당 ·전기자전거당 ·골프당 ·노젓는당 ·걸그룹당 ·콘솔한당 ·노키앙 ·윈폰이당 ·축구당 ·여행을떠난당 ·디아블로당 ·찰칵찍당 ·3D메이킹 ·X세대당 ·ADHD당 ·AI그림당 ·날아간당 ·육아당 ·배드민턴당 ·야구당 ·농구당 ·블랙베리당 ·비어있당 ·FM당구당 ·블록체인당 ·보드게임당 ·활자중독당 ·볼링친당 ·캠핑간당 ·냐옹이당 ·문명하셨당 ·클래시앙 ·요리한당 ·쿠키런당 ·대구당 ·DANGER당 ·뚝딱뚝당 ·개판이당 ·동숲한당 ·날아올랑 ·e북본당 ·갖고다닌당 ·이브한당 ·패셔니앙 ·도시어부당 ·FM한당 ·맛있겠당 ·포뮬러당 ·젬워한당 ·안경쓴당 ·차턴당 ·총쏜당 ·땀흘린당 ·하스스톤한당 ·히어로즈한당 ·인스타한당 ·IoT당 ·KARA당 ·꼬들한당 ·덕질한당 ·어학당 ·가죽당 ·레고당 ·LOLien ·Mabinogien ·임시소모임 ·미드당 ·밀리터리당 ·땅판당 ·헌팅한당 ·오른당 ·영화본당 ·MTG한당 ·소리당 ·적는당 ·방송한당 ·PC튜닝한당 ·그림그린당 ·소풍간당 ·심는당 ·라즈베리파이당 ·품앱이당 ·리듬탄당 ·달린당 ·Sea마당 ·SimSim하당 ·심야식당 ·윈태블릿당 ·미끄러진당 ·나혼자산당 ·스타한당 ·스팀한당 ·파도탄당 ·퐁당퐁당 ·테니스친당 ·테스트당 ·빨콩이당 ·공대시계당 ·터치패드당 ·트윗당 ·창업한당 ·VR당 ·시계찬당 ·WebOs당 ·위스키당 ·와인마신당 ·WOW당
임시소모임
고객지원
  • 게시물 삭제 요청
  • 불법촬영물등 신고
  • 쪽지 신고
  • 닉네임 신고
  • 제보 및 기타 제안
© CLIEN.NET
공지[점검] 잠시후 서비스 점검을 위해 약 30분간 접속이 차단됩니다. (금일 18:15 ~ 18:45)

사용기

서비스/SW AI) 캐리커쳐 LoRA 공유 및 LoRA 학습 셋팅 값 안내. 14

34
2023-04-07 17:17:57 수정일 : 2023-04-07 17:20:51 112.♡.211.164
Chals

안녕하세요

AI 그림연구에 진심인 Chals 입니다.


우선 다들 궁금해 하시진 않겠지만...근황 TMI 부터 시작 하자면...

출산 예정일이 바로 오늘이었는데 약 10일 정도 연기되는 바람에 계획하고 있던 많은 일들을 미루고 있습니다.

우리 딸아이를 빨리 만나보고 싶은데 열흘 정도 더 기다려야 한다니 마음이 더 급해집니다. ㅎㅎ


출산 준비를 핑계로 AI관련 프로젝트들을 모두 올스톱 했었는데 지금은 기술지원만 진행하느라 여유가 좀 생겼네요.

(그래도 의욕을 가지고 진행하던 웹툰 작가님과 콜라보로 진행하던 AI 연재 프로젝트를 일정 문제로 포기한건 좀 아쉽습니다. ㅠㅠ)


어제 저녁에 AI를 사용한 게임제작 관련 CaseStudy 강좌 글을 작성하다가...

진도가 잘 안나가서 머리도 식힐 겸 AI를 활용한 캐리커쳐 LoRA를 제작해 봤습니다.

결과물이 만족도가 크진 않지만, 나름 활용도가 있을 것 같아 LoRA를 공유하려 이렇게 글을 씁니다.



-- 이번 글의 image to image 에 사용된 실사 이미지는 모두 Unsplash.com 에서 발췌 해 사용 했습니다.


-----------------------------


오늘 공유할 LoRA는 캐리커쳐 스타일 LoRA 입니다.


caricature000.jpg


캐리커쳐는 이목구비와 얼굴 형을 왜곡시켜 다이나믹한 표정과 극적인 연출을 돕는 그림 기법입니다.

정말 그림 고수중의 고수들만 그릴 수 있는 영역입니다.


Clien에서는 '오뎅'님이 카툰-캐리커쳐 스타일의 그림을 종종 올리고 계시고, 시사 만화로 유명한 '장도리'의 박순찬 화백님도 카툰-캐리커쳐 스타일로 그림을 그리고 계시죠


00301-1786989325.png


제가 제작한 LoRA는 불특정 다수의 캐리커쳐 데이터를 기반으로 제작되었으며, 자료 수집 과정에서 외국인 작품들이 좀더 많이 수집되어 스타일이 한쪽으로 좀 치우쳐져 있으니 이점 참고 바랍니다.


언급한대로 무작위로 수집된 학습 데이터를 바탕으로 제작된 LoRA이기 때문에 해당 데이터를 사용하여 AI로 생성한 이미지를 개인 목적 이외의 상업적 목적으로 사용하는 것을 금합니다.



00409-3376979248.png


학습 과정에 대해 궁금하실것 같아 간단하게 데이터 수집 및 셋팅 값에 대해 적어 보겠습니다.


1. 데이터 셋 이미지의 형태


- 초기 AI 학습은 임베딩이나 하이퍼네트워크를 통해 진행했고, 당시만해도 데이터셋은 반드시 512x512, 768x768 등 정사각형 이미지로 구성하고 배경 정보를 모두 제거한 이미지가 필요 했습니다.

하지만 LoRA 학습은 이러한 제한이 사라졌습니다.


데이터셋은 사이즈와 비율에 상관없이 어떤 이미지든 모두 수집하여 사용 가능합니다.

(단, 512x512 보다 작은 사이즈의 이미지와 높은 압축률의 JPG 이미지는 결과물의 열화를 가져올 수 있기 떄문에 데이터셋 구성시 제외하시는 걸 추천드립니다.


2. 이미지 정리 및 태깅


- 학습 데이터에 사용할 이미지는 캐릭터 학습이든 그림스타일 학습이든 가능하면 한 화면에 한명의 인물만 나오는 이미지를 사용하시는 것을 추천드립니다.

물론 꼼꼼한 Tag 작업을 통해 극복할 수 있지만 그 한장의 데이터가 반드시 필요한 경우가 아니라면 과감히 제거하시는 것이 데이터 정리에 들어가는 수고와 시간을 절약 할 수 있습니다.


이미지 Tagging은 학습 결과에 많은 영향을 끼치는 부분입니다.


Tagging은 WD 1.4 익스텐션이나 Drerambooth 유틸리티를 통한 자동 생성 방식과 직접 TXT 파일을 생성하는 수동입력 방식이 있습니다.


일반적으로는 자동 Tagging 방식으로 제작하시는 것을 추천드립니다. Tagging 과정이 정말 노가다 그자체이기도 하고 자동 Tagging의 정확도가 생각보다 정확하기 때문에 정밀한 작업을 진행하는 것이 아니라면 자동만으로도 충분합니다.


수동 방식은 제한된 2 ~ 3개의 태그만 입력해서 동일하게 적용하는 캐릭터 Tagging에 주로 사용합니다.


캐릭터의 특징을 그대로 재현하기 원하는 경우 가능하면 Tag는 2~3개로 최소화 하거나 경우에 따라 Tagging 없이 진행하는 것을 추천드립니다.


Tagging을 꼼꼼히 하게되면 AI가 학습 과정에서 화면에 보이는 배경부터 의상이나 색상 등의 정보를 Tag로 나눠 저장하게 되는데 실제 사용할 때 모든 Tag를 적어주지 않으면 캐릭터 재현율이 떨어지게 됩니다.


또한 AI가 이미지를 생성 할 떄 트리거가 되는 프롬프트에는 문자열의 길이에 따라 토큰이라는 개념을 적용하고 있는데 한번에 처리할 수 있는 토큰의 갯수가 제한되어 있고 또 프롬프트의 갯수가 늘어나면 처리 속도가 다소 저하되는 문제가 있기 때문에 가능하면 프롬프트의 수를 줄이는 것을 추천드립니다.


프롬프트로 의상의 교체(예를 들면 자켓을 입은것과 벗은것 등)을 표현하기 보다는 LoRA 파일을 따로 따로 학습시켜 분리해서 사용하는 것이 추후 Variation 작업에 더 편한 부분이 있습니다.


제 경우에는 1명의 캐릭터를 고정적으로 사용하기 위해서 얼굴 LoRA와 의상 LoRA를 분리해서 제작하며, 추가로 헤어스타일, 부가 장식, 다른 복장 등의 LoRA를 추가 제작하고 있습니다. 떄문에 많게는 1명의 캐릭터당 7 ~ 8의 LoRA를 조립하는 방식으로 사용하기도 합니다. 이 방식의 큰 장점이 있는데 inpaint를 통한 Variation이 쉽다는데 있습니다.

해당 내용은 글로 설명하려면 다소 길기 때문에 다음번 게임 CaseStudy를 통해 실제 사용방법과 활용도에 대해 안내 드리겠습니다.



3. 학습 파라메터 설정


저는 학습을 진행할때 A5000 GPU를 사용하고 있습니다.

RTX 4090에는 한참 쳐지는 성능이지만 RTX 3090과 비슷한 성능이기 때문에 딱히 불편함은 없습니다.


20GB의 VRAM을 가지고 있어 학습 진행시 가능하면 Batch 수를 6으로 놓고 사용 하고 있습니다.


3090 이하의 GPU를 사용하고 계시는 분들은 십중팔구 메모리 문제로 학습이 중단될 가능성이 있으니 Batch수를 조금 낮춰 진행하거나 약간의 학습속도 저하를 감수하더라도 Memory efficient attention 옵션을 켜고 사용하시기 바랍니다.


데이터셋의 수에 따라 다르지만 학습할 데이터 이미지 100개 기준으로 보통 50repeat에 4epoch 셋팅으로 총 2000 Step 내외로 학습을 진행합니다.

이미지의 수가 50개 이하라면 100repeat 4epoch를 추천합니다.


4epoch를 사용하는 이유는 학습 중간에 학습 과정을 검토하기 편해서 입니다. Epoch 수를 늘려 자주 체크하는 것도 방법이지만 그만큼 시간도 더 오래 걸리고 귀찮기 때문에 4번 정도만 확인합니다.


Learning Rate와 U-Net Learning rate는 100개의 학습데이터 기준 0.00015 ~ 0.0002 사이를 사용합니다. 이 이상은 과적합이 나기 쉽고 0.0001 는 학습량이 부족한 느낌이 들어서 입니다. (과적합을 일부러 유발할 경우 0.0005 ~ 0.001도 가끔 사용합니다.)


LR Scheaduler는 cosine_with_warm을 주로 사용하다가 최근 cosine_with_reset으로 변경 했습니다.

전자의 경우 학습은 잘 된것 같은데 미묘하게 이미지가 깨져서 나타나는 색수차 현상이 좀더 강한 것 같아 최근 후자로 변경했습니다.


LoRA 학습시 많은 분들이 Network Rank(Dimmention)를 128로 alpha도 128로 맞춰 사용하시는 분이 많은데, 데이터셋의 량이 수백개에 이르고 정규화 이미지를 함께 사용하는 경우가 아니라면 8 ~ 32로도 충분합니다.


제가 제작한 여성 한복 LoRA 같은 경우가 이런 경우이고, 대부분 데이터셋 량이 많지 않기 때문에 저는 8~32 정도로 조정하고 alpha는 1로 셋팅하여 사용합니다.

alpha는 학습이미지에서 넘치거나 모자라는 부분을 보완하기 위한 데이터 처리 공간이라 이해하고 있는데 어짜피 정규화 이미지를 잘 사용하지 않기 때문에 대체 이미지로 사용할 데이터가 없으니 alpha의 경우 1로 사용합니다. (이 부분은 제가 기억이 가물가물해서 정확한 정보는 아니니 참고 바랍니다.)



이 정도가 제가 주로 사용하는 LoRA 학습 셋팅 정보입니다.


학습 관련 정보를 적다보니 너무 길어졌네요...

스크린샷을 찍어서 하나하나 자세히 알려드려야 하는데 귀찮니즘을 극복하지 못하고 텍스트로만 적은점 양해 부탁드립니다.

나중에 잘 정리해서 다시한번 설명할 기회가 있...을겁니다...정말로요...


----------------------------------------




다시 LoRA 이야기로 돌아오겠습니다.


00596-976748156.png


00668-1306265448.png


제작된 캐리커쳐 LoRA는 text to image 에서 사용하면 모델 종류에 관계 없이 캐리커쳐 스타일의 그림을 생성 할 수 있으며, image to image에서 원본 스타일을 유지한채 캐리커쳐 스타일로 변환이 가능합니다.


caricature00002.jpg


caricature00004.jpg


caricature00006.jpg


caricature00008.jpg


caricature00009.jpg


다만 image to image는 LoRA의 문제라기 보다 AI 그림 엔진인 모델의 스타일에 많은 영향을 받기 때문에 원본 인물 사진의 느낌을 그대로 재현하기 어렵습니다.


caricature00001.jpg


caricature00007.jpg


caricature00010.jpg


흑백 사진이나, 얼굴의 특징이 굉장히 도드라지는 인물사진의 경우 유사한 느낌을 재현 할 수 있지만, 평범한 표정과 특징이 적은 인물 사진은 원본의 느낌이 많이 사라집니다.


caricature00005.jpg


caricature00014.jpg


caricature00015.jpg


특히 어메리칸 스타일의 얼굴형이 강조되는 탓에 서양인 및 아프리카인 표현에 좀더 특화 되어있고, 아시아 및 중동 계 인물의 표현이 다소 부족합니다.


00581-3249147500.png


캐리커쳐 LoRA 이면서 인물의 특징을 살릴 수 없다면 어디다 써야 하나 싶겠지만, 의외로 레트로한 그림 스타일을 강조하고 있기 때문에 독특한 표현력이 장점일 수 있습니다.


00563-2813048600.png


00577-3028976862.png



때문에 '캐리커쳐 스타일'의 이미지가 필요하거나, 색다른 느낌을 내고 싶으신 경우 사용하는 것을 추천 드립니다.



귀여운 스타일의 캐릭터 생성시 1boy, 1girl 의 인물 태그를 사용할때 baby나 toddler 태그를 추가로 사용하시면 더욱 특징이 강하고 귀여운 스타일의 그림을 생성 할 수 있습니다.


00704-3432919030.png


00705-3432919031.png


00710-638977359.png


00713-1170100721.png


00715-1170100723.png


00717-1170100725.png



Image to image 사용시에도 toddler 태그를 추가하시면 큰눈, 둥근 얼굴형을 강조해 주기 떄문에 경우에 따라 더 효과적인 표현도 가능합니다.


caricature00016.jpg


좀더 많은 데이터셋과 충분한 튜닝으로 좀 더 범용성 있는 LoRA를 만들고 싶었지만, 더 시간을 투자하기도 부담스러웠고 아쉬운 성능이라고 해도 나름 활용도는 있을 것 같아 많은 분들이 사용해 주십사하고 LoRA를 공유합니다.


00700-3432919026.png


그럼 모쪼록 재밌는 표현과 귀여운 특징을 잘 살려주는 이번 LoRA로 독특하고 새로운 캐릭터 생성을 통해 다시 AI 그림 제작에 많은 관심 부탁드립니다.


LoRA 다운로드는 아래의 제 CivitAi 페이지 링크를 통해 다운 받으실 수 있습니다.

chals Creator Profile | Civitai


추천 태그 및 트리거

필수 : caricature

추가 추천 : cartoon, monochrome, lineart, greyscale, baby, toddler,

추천 가중치 : 0.4 ~ 0.8



감사합니다.

출처 : 본인
Chals 님의 게시글 댓글
  • 주소복사
  • Facebook
  • X(Twitter)
댓글 • [14]
Chals
IP 112.♡.211.164
04-07 2023-04-07 17:21:33
·
글 수정시 에러가 나서 덧글로 남깁니다.
이번 글의 모든 실사 이미지는 www.unsplash.com 에서 발췌한 이미지 입니다.
simzimoo
IP 58.♡.201.44
04-07 2023-04-07 19:22:47
·
대단하십니다
Chals
IP 115.♡.103.167
04-07 2023-04-07 21:58:32
·
@AI산다.님 대단한게 아니라 죄송합니다. ㅜㅜ
삭제 되었습니다.
Chals
IP 115.♡.103.167
04-07 2023-04-07 21:59:21
·
@노란양말님 i2i로 denoise 좀 줄이면 모델에 따라 비슷하겐 나옵니다. 다만 그러면 캐리커쳐의 느낌이 많이 감쇄돼긴 해오 ㅜㅜ
삭제 되었습니다.
딸자랑마스터
IP 180.♡.211.215
04-07 2023-04-07 22:59:33
·
으아~ Lora 만들기 공부 중인데, 정말 좋은 정보입니다. 고맙습니다~
Chals
IP 115.♡.103.167
04-08 2023-04-08 00:00:04
·
@딸자랑마스터님 도움이 됐으면 좋겠네요^^
Largo
IP 1.♡.219.45
04-07 2023-04-07 23:10:17
·
보통 로라 하나 만드는데 이미지가 몇장이나 필요할까요?
Chals
IP 115.♡.103.167
04-08 2023-04-08 00:00:45
·
@Largo님 장수는 상관 없어요 때론 한장으로도 가능하고 밤용성을 높이려면 수십장 있어야 하고 그렇습니다.
buteur
IP 61.♡.10.200
04-07 2023-04-07 23:47:36
·
감사합니다.
Chals
IP 115.♡.103.167
04-08 2023-04-08 00:00:55
·
@Davinchi님 저도 감사합니다.
필링굿
IP 202.♡.189.158
04-07 2023-04-07 23:48:12
·
스크랩 감사합니다
Chals
IP 115.♡.103.167
04-08 2023-04-08 00:01:06
·
@넥스트빌런님 넵 감사합니다.
20eung
IP 1.♡.69.51
04-08 2023-04-08 08:14:21
·
우와 정말 대단하시네요.
잘 모르는 분야이지만 지금까지 올려주신 글 하나하나 읽으며 공부하고 있습니다.
감사합니다.
/Vollago
carepe89
IP 211.♡.208.93
04-08 2023-04-08 08:23:17
·
자세한 설정값을 알려주셔서 많은 도움이 됩니다.
내용중에 cosine_with_reset은 cosine_with_restarts가 아닌가 합니다.
감사합니다.
새로운 댓글이 없습니다.
이미지 최대 업로드 용량 15 MB / 업로드 가능 확장자 jpg,gif,png,jpeg,webp
지나치게 큰 이미지의 크기는 조정될 수 있습니다.
목록으로
글쓰기
글쓰기
목록으로 댓글보기 이전글 다음글
아이디  ·  비밀번호 찾기 회원가입
이용규칙 운영알림판 운영소통 재검토요청 도움말 버그신고
개인정보처리방침 이용약관 책임의 한계와 법적고지 청소년 보호정책
©   •  CLIEN.NET
보안 강화를 위한 이메일 인증
안전한 서비스 이용을 위해 이메일 인증을 완료해 주세요. 현재 회원님은 이메일 인증이 완료되지 않은 상태입니다.
최근 급증하는 해킹 및 도용 시도로부터 계정을 보호하기 위해 인증 절차가 강화되었습니다.

  • 이메일 미인증 시 글쓰기, 댓글 작성 등 게시판 활동이 제한됩니다.
  • 이후 새로운 기기에서 로그인할 때마다 반드시 이메일 인증을 거쳐야 합니다.
  • 2단계 인증 사용 회원도 최초 1회는 반드시 인증하여야 합니다.
  • 개인정보에서도 이메일 인증을 할 수 있습니다.
지금 이메일 인증하기
등록된 이메일 주소를 확인하고 인증번호를 입력하여
인증을 완료해 주세요.