AI와 협업
회사를 다니면서 퇴근 후 대학원을 다니고 있습니다.
이번 학기 적대적 신경 생성망(GAN) 수업을 듣고 있습니다. 적대적인 두 명을 경쟁시켜서 보다 좋은 이미지를 만들어 내는 방법을 배우고 있습니다. 중간고사 과제를 제출해야 될 때가 왔습니다.
관련 기술을 조사해 보다가 폰트 만든 사례를 발견했습니다. 예전부터 나만의 폰트를 만드는데 관심이 많았지만 엄청난 시간과 인력이 필요한 작업이 수반됨을 알았습니다. 한글은 7000자 정도를 만들어야 하는 힘들고 고된 작업입니다. 이에 반해 다소 수월한(?) 영문 폰트를 만들기로 했습니다.
먼저 구글 폰트를 모두 다운로드합니다. 폰트 정보가 담긴 json 파일을 이용해서 폰트를 분류하고 테이블로 정보를 나열합니다. 취합된 폰트 정보를 이용해서, 각 알파벳의 글자를 이미지로 저장합니다. 적절한 손실 함수와 정규화기를 조합해서 저장된 이미지를 GAN으로 학습하고 세상에 없던 새로운 폰트 이미지를 생성했습니다.
우선순위가 이미지 생성 속도였는데 바닐라갠과 드라겐이라는 조합을 선택했습니다. 드래곤이 바닐라라테를 마시는 모습이 연상됩니다. GAN이 생성한 이미지를 폰트 생성 사이트에 등록하고 폰트 파일 ttf로 다운로드하였습니다. 폰트를 설치하고 실제 프로그램에서 사용 가능한지 확인했습니다. 처음 목표는 알파벳 26자인데, A, G 두 글자만 완성했습니다.
이번 수업은 청강이고, 활용 사례만 조사하면 되는데 자발적으로 구현까지 해봤습니다. 덕분에 과제를 마치고, 사용자가 보유한 폰트를 이용해서 맞춤형으로 폰트를 자동으로 생성할 수 있는 시스템을 만들 수 있게 됐습니다.
총 2주간 주중, 주말에 과제를 했고, 하루 연차를 사용해서 앓아누웠습니다. 회사 다니면서 이러면 안 된다는 걸 배운 값진 경험이었습니다.