|
작년 여름쯤 제이펍 출판사에서 출간되었던 "확산 모델의 수학"이란 책을 읽은 적이 있다. 생성형 AI의 근간이 되는 diffusion model에 대한 수학적 개념과 이론들을 담은 서적이었는데, 해당 도서에 대한 리뷰에서도 적었듯이 다소 난이도가 높았던 것으로 기억한다. 복잡한 수식에 눈이 뱅글뱅글~ ^^ 복잡한 수식이 도서 곳곳에 존재했던 연유로 인해 아무래도 "확산 모델의 수학"은 해당 분야에 직간접적으로 몸담고 있는 사람들이 보기에 적합한 도서였다는 생각이 들었었는데, 이 책은 해당 서적을 쓴 저자가 조금 더 일반적인 대중들의 이해를 돕기 위해 쓴 개념서이다. 부제목에서 나와 있듯이 "수식 없이도 정확히 이해하는.."이라는 수식어에 걸맞게 생성형 AI에 대한 이론 핵심과 원리를 가능한 쉽게 설명하고자 한 도서라고 할 수 있겠다. 게다가 쉽게 설명하고자 한 만큼 도서의 분량 또한 많지 않아서 읽는이에게 부담이 조금 덜하다. 부록을 제외하고 본문만 100여 페이지 정도 밖에 되지 않는데, 주제가 주제니만큼 분량은 적지만 그렇다고 해서 소설이나 수필처럼 편하게 훌훌 읽을 수 있는 내용은 아니기 때문에, 하나하나 이해하면서 정독하며 읽는데에는 시간이 꽤 필요하다. 또한, 머신러닝에 대한 기본적인 개념은 알고 본 도서를 읽는 것이 아무래도 이해의 측면에서 도움이 되는데, 도서 뒷쪽의 부록 A에 그러한 머신러닝의 기본 개념에 대해 설명되어 있으니, 먼저 부록을 읽고나서 다시 앞으로 와서 본 도서를 읽어 나가는 것도 좋을 것 같다. 사실 곰곰히 생각해보면 DALL-E나 Midjourney 서비스와 같이 생성형 AI 기술로 이미지를 만든다는 것은 여간 신기한 일이 아닐 수 없다. 보통 머신러닝은 분류나 회귀 정도를 수행하는데, 그러한 머신러닝으로 창의적인 새로운 무언가를 만든다는 걸 선뜻 생각해 내기 어렵기 때문이다. 게다가 생성형 AI는 정답이 하나가 아니다. 예를 들면 고양이 이미지를 그려달라는 프롬프트에 대해 너무나 다양한 형태의 고양이 이미지가 모두 답이 될 수 있기 때문에, 생성형 AI는 입력에 대한 올바른 출력값이 무수히 많아 더 어려운 분야가 아닌가 싶다. 이러한 생성형 AI에 대한 원리를 이해하기 위해서는 우선 차원이라는 개념을 이해해야 하는데, 본 도서에서는 이러한 차원이라는 개념을 굉장히 이해하기 쉽게 설명하고 있어서 개인적으로 매우 인상적이었다. 특히 하나의 RGB 이미지 한 장이 갖는 엄청나게 많은 차원의 공간과 그 공간에서 우리가 찾는 답이 존재하게 되는 상관관계에 대해, 초심자도 이해할 수 있도록 개략적이지만 쉽게 잘 설명하고 있다. 이러한 고차원 데이터를 생성하고 만드는 것은 매우 어려운 일이지만, 우리가 보통 생성형 AI를 통해 만들고자 하는 이미지나 오디오, 비디오와 같은 데이터는 그 자체가 가지고 있는 특수성으로 인해, 다양체 가설, 대칭성, 구성성과 같은 조건이 존재하게 되며, 이러한 조건들을 통해 차원의 수를 획기적으로 줄일 수 있게 된다. 다양체의 가설에 대한 예를 들면, 얼굴 이미지의 경우, 얼굴 방향의 변화에 대한 매개변수, 조명의 위치, 종류와 같은 매개변수 등을 통해 생성의 대상이 되는 데이터들을 원래의 차원 수보다 훨씬 적은 수의 차원으로 표현할 수 있게 된다. 대칭성의 경우도 얼굴은 보통 좌우 대칭이므로 이러한 정보를 통해서도 생성될 후보의 수를 줄임으로써, 탐색할 데이터의 공간을 크게 좁히는데 도움이 되게 된다. 또한, 홉필드 네트웍이나 볼츠만 머신과 같이 연상 기억을 실현하는 에너지 기반 모델을 통해 전체 에너지가 낮아지도록 업데이트해가면서 자연스러운 이미지를 생성할 수 있도록 하는 과정에 대해서도 수학적 수식 없이 설명하면서 개략적인 과정을 이해시키고자 하였다. 그리고, 이러한 에너지 기반 모델이 갖는 문제점, 이를테면 샘플링이 느리다는 점, 학습 속도가 느리다는 점 등에 대해서도 설명하고 있으며, 이를 극복하기 위해 발전해온 여러 가지 이론들에 대해서도 소개하고 있고, 이는 결국 생성형 AI의 한 획을 그은 모델 중 하나인 VAE(변분 오토인코더)에 대한 설명까지 도달하게 된다. 다른 생성형 AI 모델도 그러하듯 VAE 또한 현실과 비슷한 데이터를 만들어내는 것을 목적으로 한다. 좀 상세히 언급하면, VAE는 입력 데이터에 대하여 인코더를 통한 샘플링을 수행한 결과에 노이즈를 더하여 나온 결과를 다시 디코더를 통해 원래 데이터에 가까워지도록 복원하는 모델이다. 위에서도 언급했듯이 본 도서에서는 이러한 과정과 원리를 개략적으로 설명하고 있다. 그러므로, 도서를 읽으면서.. 아, 그렇구나..정도로 이해하고 넘어가면 된다. 만약 읽는 내용 중에 좀 더 상세한 원리가 궁금해지는 경우에는 구글링을 통해 검색을 하여 좀 더 자세히 공부해 보는 것도 좋을 것 같다. 요새 AI 기술이 너무나 핫해져서 그런지 구글링을 조금만 해봐도 좋은 자료를 상당히 많이 찾을 수 있다. 본 도서의 핵심 주제인 확산 모델은 4장에서 설명을 하고 있다. 확산 모델은 데이터에 서서히 노이즈가 더해져서 무너져가는 확산 과정을 역방향으로 거슬러 가는 과정을 기반으로, 정규 분포로부터 데이터 분포로 변화해가는 플로를 구성한다. 이러한 모델은 스코어 또는 최적 운송과 같은 우수한 성질을 갖는 플로를 기반으로 데이터를 생성할 수 있는 플로를 학습하게 된다. 게다가 시뮬레이션 프리 학습(시뮬레이션이 필요 없다는 뜻)이 가능하므로, 기존에는 사용할 수 없었던 큰 모델을 써서 대량의 학습 데이터를 이용해 안정적으로 학습할 수 있게 되었다. 결론적으로, 본 도서는 다음과 같은 분들이 읽으면 좋을 것 같다.
이 책을 읽으며, 생성형 AI에 대한 배경과 이론을 상당히 쉽게 쓰려고 노력한 저자의 노력이 돋보이는 책이라는 생각이 들었다. 차원의 개념부터 이러한 고차원의 탐색 공간을 극복하고 결과를 탐색할 수 있도록 하는 VAE 등 각종 이론에 대한 개념 이해의 시작을 위해 본 도서를 활용하면 좋을 것 같다. 물론 비록 본 도서에서 수식을 다루지는 않지만, 결국 생성형 AI는 수학적 배경을 기반으로 한 이론인만큼 기본적인 수학적 지식을 알고 있으면 본 도서를 읽고 이해하는데 더 도움이 될 것 같다는 생각이 들긴 하지만, 그렇다고 수학 포기자라고해서 본 도서의 내용을 이해하지 못하는 것은 아니므로, 수학적 배경 지식이 없더라도 생성형 AI 모델에 대한 관심이 있고 이에 대한 이해를 원하는 사람이라면 부담 없이 한번 읽어볼만한 가치가 있는 도서라고 생각된다. |
|
🙋♂’사용하는 것과 아는 것과 만드는것의 차이’ _ 이제 생성형 AI를 사용하는 것은 상당히 대중화되었습니다. 하지만 대다수 분들은 검색을 하거나, 콘텐츠 결과물을 위해 프롬프트를 쓰거나 이미지와 영상등에 활용할 것입니다. 여기서 더 나아가 일부 분들은 인공지능과 같은 알고리즘을 구현하고자 할 것이며, 또 누군가는 직접 LLM이나 생성형 AI시스템을 만들려고 할 것입니다. 그리고 앞으로 다가올 Agentic AI시대에서는 더이상 사용하는 것으로는 사용만 당하게 되기 때문에 그 다음단계가 필요하다고 판단되며 저 역시 마찬가지 생각으로 오타노하라 다이스케의 <생성형 AI의 구조>의 책장을 열어봅니다. 생성형 AI는 ‘기존 데이터를 가지고 새로운 콘텐츠를 만들어내는 모델’로 정의할 수 있습니다. 그런데 핵심은 과연 어떻게 새로운 콘텐츠를 만들어내냐의 문제이며 모델이 어떻게 적용되는지의 문제일겁니다. <생성형 AI의 구조>는 그것을 바로 플로(Flow, 흐름)이라는 개념을 통해 설명합니다. 그 사례를 들자면 고인 물에 잉크를 뿌리는 것을 생각해봅니다. 잉크는 굉장히 불규칙하게 확산이 됩니다. 그리고 그 와중에 확산분포가 자리잡게 되죠. 이러한 방식을 ‘확산 모델(Diffusion Model)이라고 합니다. 문제는 이 확산분포에는 불규칙성이 자리잡게 되고, 단순히 잉크가 물에 전부 번져 잉크와 물의 혼합물이 만들어지면 원하는 결과물이 아닌 데이터 쓰레기가 됩니다. 이처럼 전방위적으로 복잡해지는 과정을 순방향 확산모델(Forward Diffusion)이라고 합니다. 하지만 원하는 데이터결과값은 역방향(Backward Diffusion) 확산모델로 진행되어야 합니다. 점진적으로 노이즈를 제거해가면서 물에 뿌려진 잉크가 특별한 모양이나 형태로 구현되어야 하는 것이죠. 이 과정에서 데이터 분석을 하는데 매개변수가 필요하고 이 매개변수등을 통해서 함수를 만들어가는것이 ‘모델링’이라고 할 수 있습니다. 모델링을 통해 노이즈가 제거되면 이제는 원하는 결과값과 콘텐츠가 만들어지는게 바로 본서에서 제가 핵심적으로 이해한 플로(Flow)입니다. 플로, 생성형 AI를 이해하는 방식으로서의 개념은 수많은 데이터들을 통한 ‘무작위성과 전방위적인 확산’의 매커니즘 속에서 점진적으로 노이즈를 제거하면서 원하는 결과값을 얻어낸다고 이해할 수 있습니다. 우리가 프롬프트를 보다 구체적이고 분명하게 해야하는 이유도 명령 프롬프트를 토큰(Token)화 하고 이를 이해하는 과정에서 함수를 통한 모델링을 하면서 노이즈 제거를 빠르고 신속하게 할 수 있기 때문입니다. 100페이지 남짓의 아주 얇은 서적이지만 본서를 통해 생성형 AI의 구조를 파악하실 수 있습니다. 💡’작지만 강한 책’ |
|
대학교를 다니면서 배웠던 Fluid Dynamics과 Gibbs Free Energy의 개념이 확장되어, 현재 핫한 주제인 생성형AI의 기반 모델이 된다니..! 📗 ‘이걸 이렇게 써먹네..!’ 생각이 들었달까. 머리 쥐어짜며 공부한게 전혀 쓸데없진 않았구나 느꼈다😂 열역학에서는 계의 에너지를 최소화하는 방향으로 반응이 진행된다, 💻🖥️ ML/AI에서는 Loss를 최소화하는 방향으로 Backpropagation하면서 Optimization이 일어난다.🔙 문과적 표현으로는 포트폴리오를 재구성해서 투자 수익률을 극대화하는 상황을 생각하면 되겠다. ML/AI의 핵심은 Model을 제시하고 Loss을 최소화한다는 개념인데, 🍃플로(flow)가 더욱 효율적으로 최적화를 해준다는 점을 책에서 소개한다. 이 책은 전반적인 AI의 구조보다는 최적화 과정과, 새롭게 주목받는 플로(flow)를 기반으로 한 생성형 AI에 대한 책이다. 그래서 생성형AI를 이제 막 입문하려는 사람보다는, 기본적인 ML/AI 분야의 기초 지식은 아는 상태에서 생성형 AI에 관심있는 독자들에게 적당해 보인다.🌟 플로 방식의 기본 원리에 대해서는 직관적으로 이해가 되었지만, 수식이 없다보니 완전히 이해하기는 어려웠다. Attention을 활용한 GNN과 비교했을 때, Flow 방식이 더 효율적인가..? 라는 의문이 들었다. 아무래도 참고문헌에서 추천하는 “확산 모델의 수학“이나 ”AI 딥 다이브“ 책을 읽으며 추가적 공부가 필요할 듯 싶다. AI 모델은 계속해서 더 나은 것을 찾아 나가는 과정에 있고, 한가지 방법을 고수하기보다는 넓은 눈으로 보는 것이 중요하다. 그런 점에서 플로(flow)라는 조금은 생소한 개념이 이미지, 동영상, 텍스트 생성AI 분야에서는 유용하게 사용될 수 있다는 점을 시사한다는 점에서 이 책을 읽어볼 가치가 있다! +) 중간중간 일반적으로 쓰이는 용어가 아닌 저자가 만든 용어는 오히려 나를 더 헷갈리게 만들었다. 차라리 학계에서 주로 사용되는 용어나, 더 풀어서 적었으면 어땠을까 아쉬움이 남는다. |
|
#1. 들어가기 전에 2025년 수능 언어영역 문제 보셨나요? "영상 생성을 위한 인공지능 확산 모델" 이 지문에 나왔습니다. 문제가 쉽지가 않습니다. 이번에 읽은 책은 바로 "확산 모델"을 수학 없이 다룬 책입니다. (https://www.donga.com/news/Society/article/all/20241115/130434749/1) #2. 이 책을 읽고 느낀 점 - 생성형 AI에 대해 "수식"없이 설명한 책. 하지만 약간의 수학적 지식이 있으면 더 재밌게 유익하게 읽을 수 있습니다. - 각 챕터를 읽으면, 생성형 AI가 무엇인지 쉽게 이해할 수 있습니다. 특히 챕터별 마지막에는 "요약"이 별도로 정리되어 있어서, 본인이 생각한 것과 저자가 생각한 것을 비교할 수 있습니다. 그리고 이 책을 읽는 분은 다 아는 내용이지만 머신러닝 키워드가 별도로 정리되어 있습니다. #3. 생성형 ai의 본질
#4. 인상적인 내용 비유하자면 데이터 생성은 사방으로 뻗어 있는 광활한 바다에서 섬을 찾는 것과 같은 작업입니다.(p10) 바꾸어 말하자면, 현실 세계는 매우 크고 성능이 뛰어난 시뮬레이터라고 할 수 있다는 것입니다.(p34) 플로에는 다양한 성질이 있지만 그중에서도 생성 모델을 다룰 때 특히 중요한 것이 '연속성'입니다. 연속성이란 물질이 이유 없이 갑자기 나타자거나 사라지지 않는 것, 물질이 움직일 때 갑자기 워프해서 다른 위치에 출현한다거나 하지 않는 것을 의미합니다.(p48) 플로에 의한 생성은 어려운 생성 문제를 간단한 부분 생성 문제들로 나눌 수 있게 해줍니다.(p60) 생성 모델의 궁극적인 목표 중 하나는 생성의 일반화를 달성하는 것입니다.(p93) #5. "딸깍"이 "딸깍"이 아니다. - 최근 유튜브를 보면 이런 내용이 많습니다. 챗gpt로 프롬프트를 만들어서, suno에서 ai음악 mp3을 만들고, musicvid에서 비쥬얼라이즈 하고, 유튜브에 올린다. - 저도 "딸깍"거리면서 음악을 만든 적이 있습니다. 음악을 클릭 한번 "딸깍"으로 만들고 느낀 점은, 앞으로 작곡가들은 어떻게 해야 하나. 생각이 먼저 들더군요. 작곡을 배우기 위한 화성학, 에이블톤 사용법. 이런 게 다 무력화되는 게 아닌가 하는 생각이요. - 하지만 우리가 웃으면서 "딸깍"하는 것이 그저 "딸깍"이 아니라, 수많은 아이디어와 연구 끝에 나왔다는 것을 알았으면 좋겠습니다. #6. 이 책을 읽고 이어서 읽어야 할 책 - 오카노하라 다이스케(손민규 역), 확산모델의 수학(2014), 제이펍
|
목차 |