이번에 리뷰한 도서 제목은 만들면서 배우는 생성AI 입니다. 2019년에 출간된 미술관에 GAN 딥러닝 실전 프로젝트 의 개정판으로 이례적으로 책 제목이 달라진 것을 알 수 있습니다.

원서 제목은 Generative Deep Learning 로 예전의 제목보단 이번에 변경된 제목이 더 가까운 의미로 보입니다. 텍스트 분야의 ChatGPT 기술의 대중화 및 음성합성 기술 까지도 대중들이 이해할 만큼 대중의 이해도가 높아졌기 때문에 바뀐것으로 보입니다. 실제로 책 목차를 살펴보면 GPT 분야와, 음악작곡 부분도 다루고 있습니다


총평

TensorFlow 초보자를 대상으로 생성AI 딥러닝 기술에 필요로 하는 개념 이해를 돕는 책

일반적인 딥러닝 도서들이 RNN, GAN 까지 다루고 있습니다. 때문에 생성AI에 필요한 추가적인 고급 개념들을 실습하고 이해할 수 있도록 돕는데 최적화 되어 있습니다. 이처럼 다른 책에서는 다루지 않는 고급 이론에 대하여 설명을 하다보니 조금 신선한 방법을 활용하고 있습니다.

각 챕터의 소개 부분에서 아랫 내용처럼 이야기 를 통해서 머릿속에 어떤 개념을 앞으로 이야기 할 지에 대해서 그림을 그릴 수 있었습니다.

오토인코더 개념을 이야기로 설명

전체적인 내용은 생성 이미지 를 예시로 들면서 개념설명 및 실습을 진행하고 있습니다. 때문에 개정된 책 제목을 기대하고 보면 GPT와 같은 다른 분야에 대한 내용이 아쉬웠지만, 예전 제목을 기대하고 보면 만족 할만한 책이었습니다.

이 책을 진행하기 위해서, 파이썬에 대한 이해와 함께, Keras 와 관련된 기본강의, 또는 관련 도서를 학습한 뒤 진행하시길 추천 합니다. 참고로 필자는 주력 모듈로 Pytorch 를 용하고 있어서 Keras 로 작성한 코드를 실행해 보는건 오랜만 이였는데 Tensorflow 1.xx 보다는 이질감이 훨씬 덜해서 적응하기 용이 했습니다.


1부 생성 딥러닝

1장 생성 모델링

원서 제목인 Generative Deep Learning 개념을 이해하는데 필요한 기본 개념들을 설명하고 있습니다. 이번 장은 GAN 에 대한 설명으로는 너무 적은 페이지를 할당하고 있어서 완전한 이해를 하기에는 부족합니다. 이 책의 맨 뒤페이지에 관련도서개발자를 위한 머신러닝& 딥러닝 에서 이와 관련한 내용들을 먼저 보시길 추천 합니다.

하지만 다음 장 부터 생성AI 에 대해서 설명을 하면서 어떤 용어를 사용하고, 각 용어들에 대해 저자가 어떤 정의를 하고 있는지를 정리한 의미로 1장의 내용은 매우 중요합니다.

2장 딥러닝

Keras 를 활용하여 기본적인 인공 신경망 (Artifical Neural Network) 부터 CNN 신경망 까지 실습하는 내용 입니다. 1장은 압축이 심해서 이해하기 어려웠던 분들이라도, 2장은 1장 보다 쉽게 이해할 수 있도록 각각의 개념에 대해서도 그림으로 설명이 잘 되어 있습니다.

MLP 딥러닝 기본구조 설명 부분

때문에 자신이 초보자여서 1장이 어렵 더라도, 2장 부터는 보다 수월하게 진행할 수 있었습니다.


2부 6가지 생성 모델링

3장 변이형 오토인코더, 4장 생성적 적대 신경망, 5장 자기회귀모델

2부와 3부는 생성 모델에 대해서 보다 깊이있는 개념들과 각각의 모델을 이해하고 실습을 하는 내용 입니다.

2장의 chapter 5 자기회귀모델 까지는 chapter 2Keras 기본 메서드와 GAN 모델을 이해하기 위해 필요한 딥러닝 신경망 기초를 다루고 있습니다.

앞에서 살펴본 것처럼, 고급 개념을 다루는 각 챕터의 첫번째 장에서는 전체적인 내용을 초보자가 이해할 수 있도록 이야기로 시작을 하면서 풀어낸 부분 이 매우 인상적 이었습니다. 빈 종이 위에서 코드와 개념들을 무작정 따라가는 것 보다는 훨씬 도움이 많이 되는 구성 이었습니다.

PixelCNN 마무리 요약

6장 ~ 8장

chapter 6 부터는 다른 딥러닝 도서들은 다루지 않는 생성AI 모델들에 대해서 다루고 있습니다. 때문에 자신이 텐서플로 및 Keras 기본 메서드에 대한 경험 및 이해도가 높은 분이라면, Chapter 1 을 보신 뒤 바로 Chapter 6 부터 생성AI 에 대한 내용들을 진행하시면 됩니다.

6장은 정보 Normalized 를 돕는 RealNVP, 7장은 데이터 정규화를 돕는 에너지 기반 모델, 8장은 확산모델 에 대하여 대루고 있습니다.

노멀라이징 플로 모델 구체적인 목표

위 사진에서 보는 것처럼 챕터에서 목표로 하는 구체적인 내용 을 앞에 설명하고 있습니다, 이를 바탕으로 전체적인 내용의 핵심 아이디어를 이해하는데 도움이 되는 짧은 이야기 에 겹쳐서 앞으로 진행될 내용을 머릿속에 그릴 수 있습니다.

Normalizing Flow 개념을 설명하는 부분

이러한 밑그림 위에 각 모델에 대한 구체적인 설명들이 이어 집니다. 뒤로 갈 수록 어려운 구체적인 모델 및 개념에 대한 설명들은 1장 의 개념들을 끌어와서 설명 합니다. 때문에 모르거나 애매한 단어들이 나오면 1장 의 내용을 한 번 더 반복하면 도움이 되었습니다.

노멀라이징 플로 마무리 요약


3부 생성 모델링의 응용 분야

9장 트랜스포머 ~ 13장 멀티모달 모델

9장 Chat GPT 와 11장 Midi 파일 파싱 등의 내용은 관련 내용에 대해서 간단하게 언급되고 있어서, 이 부분에 대하여 깊이 있게 알고 싶으신 분들에게는 부족해 보였습니다.

반면 이미지와 연관된 10장 고급 GAN 등의 내용들이 앞의 1부, 2부의 내용과 연관성이 커서 만족 스러웠습니다. 새삼 개정판 이전의 책 제목인 미술관에 GAN 딥러닝 실전 프로젝트 도 나름 이해가 되었습니다.


마치며

  1. 2장~5장 까지는 Keras 모듈에 익숙해 지는 내용 입니다.
  2. 1장 내용은 딥러닝 고급 이론들을 이해하는데 필요한 필수 개념들을 설명하고 있습니다.
  3. 1장 의 개념들을 활용하여 고급 이론 및 모델을 6장 에서부터 13장 까지 설명을 하고 있습니다.
  4. 6장 ~ 13장 고급 이론을 설명할 때에는, 이야기를 활용하여 머릿속에 대강의 그림을 그릴 수 있도록 하고 있습니다.
  5. 앞에서 그려진 내용을 바탕으로 실습을 하면 전체적인 내용을 이해할 수 있었습니다

텐서플로 중급자를 위한 책들 중에는, 독자들에 대한 배려가 많이 엿보인 책이였습니다. NumpyPytorch를 주로 사용했기 때문에 조금을 덜 익숙한 Keras 모듈로 구성되었다는 점만 빼면 매우 만족스럽게 리뷰를 하던 시간이었습니다.

위에서 설명드린 것처럼 저자가 구조적으로 만들어 놓은 틀을 이해하면서 진행 하신다면 보다 쉽게 진도를 나아갈 수 있을 것입니다.

※ 본 리뷰는 IT 현업개발자가, 한빛미디어 책을 제공받아 작성한 서평입니다.

만들면서 배우는 생성AI