이 책은 딥러닝의 핵심 개념을 ‘밑바닥부터’ 구현해보며 기초를 한 걸음씩 탄탄하게 다질 수 있도록 도와주는 친절한 안내서입니다. 라이브러리나 프레임워크에 의존하지 않고 딥러닝의 기본 개념부터 이미지 인식에 활용되는 합성곱 신경망(CNN)까지 딥러닝의 원리를 체계적으로 설명합니다. 또한 복잡한 개념은 계산 그래프를 활용해 시각적으로 전달하여 누구나 쉽게 이해할 수 있습니다. 이 책은 딥러닝에 첫발을 내딛는 입문자는 물론이고 기초를 다시금 다지고 싶은 개발자와 연구자에게도 훌륭한 길잡이가 되어줄 것입니다.
저자소개
저자
사이토 고키
1984년 나가사키 현 쓰시마 출생. 도쿄공업대학교 공학부를 졸업하고 도쿄대학대학원 학제정보학부 석사 과정을 수료했다. 현재는 기업에서 인공지능 관련 연구·개발에 매진하고 있다. 『밑바닥부터 시작하는 딥러닝』 시리즈 집필 외에 『파이썬 인 프랙티스』, 『밑바닥부터 만드는 컴퓨팅 시스템』, 『Building Machine Learning Systems with Python』 등을 일본어로 옮겼다.
고려대학교 컴퓨터학과를 졸업하고 삼성전자에서 자바 가상 머신, 스마트폰 플랫폼, 메신저 서비스 등을 개발했다. 주 업무 외에 분산 빌드, 지속적 통합, 앱 수명주기 관리 도구, 애자일 등 동료 개발자들에게 실질적인 도움을 주는 일에 관심이 많았다. 그 후 창업전선에 발을 들여 좌충우돌하다가 개발자 커뮤니티에 기여하는 더 나은 방법을 찾아 출판 시장에 뛰어들었다.
『밑바닥부터 시작하는 딥러닝』 시리즈, 『구글 엔지니어는 이렇게 일한다』, 『리팩터링 2판』, 『JVM 밑바닥까지 파헤치기』, 『이펙티브 자바 3판』 등을 번역했다.
CHAPTER 2 퍼셉트론 _2.1 퍼셉트론이란? _2.2 단순한 논리 회로 _2.3 퍼셉트론 구현하기 _2.4 퍼셉트론의 한계 _2.5 다층 퍼셉트론이 출동한다면 _2.6 NAND에서 컴퓨터까지 _2.7 정리
CHAPTER 3 신경망 _3.1 퍼셉트론에서 신경망으로 _3.2 활성화 함수 _3.3 다차원 배열의 계산 _3.4 3층 신경망 구현하기 _3.5 출력층 설계하기 _3.6 손글씨 숫자 인식 _3.7 정리
CHAPTER 4 신경망 학습 _4.1 데이터에서 학습한다! _4.2 손실 함수 _4.3 수치 미분 _4.4 기울기 _4.5 학습 알고리즘 구현하기 _4.6 정리
CHAPTER 5 오차역전파법 _5.1 계산 그래프 _5.2 연쇄법칙 _5.3 역전파 _5.4 단순한 계층 구현하기 _5.5 활성화 함수 계층 구현하기 _5.6 Affine/Softmax 계층 구현하기 _5.7 오차역전파법 구현하기 _5.8 정리
CHAPTER 6 학습 관련 기술들 _6.1 매개변수 갱신 _6.2 가중치의 초깃값 _6.3 배치 정규화 _6.4 바른 학습을 위해 _6.5 적절한 하이퍼파라미터 값 찾기 _6.6 정리
CHAPTER 7 합성곱 신경망(CNN) _7.1 전체 구조 _7.2 합성곱 계층 _7.3 풀링 계층 _7.4 합성곱/풀링 계층 구현하기 _7.5 CNN 구현하기 _7.6 CNN 시각화하기 _7.7 대표적인 CNN _7.8 정리
CHAPTER 8 딥러닝 _8.1 더 깊게 _8.2 딥러닝의 초기 역사 _8.3 더 빠르게(딥러닝 고속화) _8.4 딥러닝의 활용 _8.5 정리
APPENDIX A Softmax-with-Loss 계층의 계산 그래프 A.1 순전파 A.2 역전파 A.3 정리
출판사리뷰
딥러닝, 복잡한 개념을 가장 쉽게 배울 수 있는 방법! ‘왜’와 ‘어떻게’를 모두 담은 딥러닝 입문자의 필독서
딥러닝이 인공지능 혁신의 중심에 있다는 것은 이제 많은 사람이 알고 있습니다. 하지만 막상 배워보려 하면 복잡한 수식과 기술 용어의 벽 앞에서 쉽게 좌절하곤 합니다. 여러분도 이런 경험이 있지 않으신가요? 이 책은 딥러닝을 처음 배우는 분에게 ‘이해의 즐거움’과 ‘구현의 성취감’을 모두 제공합니다.
이론만으로 끝나지 않고 간단한 퍼셉트론부터 시작해 합성곱 신경망(CNN)과 이미지 인식까지 직접 구현하며 배웁니다. 코드 한 줄 한 줄을 읽고 수정하며 배울 때, 딥러닝이 더 이상 어렵게만 느껴지지 않을 것입니다. 이 책은 단순한 입문서를 넘어 딥러닝 기술을 심도 있게 학습할 수 있는 기반을 제공합니다. 여러분에게 『밑바닥부터 시작하는 딥러닝 1』이 다음 단계로 이어지는 든든한 발판이 되기를 바랍니다.
리마스터판에서 달라진 점 리마스터판에서는 서식, 코드, 그래프 등을 전면 컬러화하고 번역과 편집 품질을 한층 높였습니다. 원서보다 나은 실습 환경을 제공하여 어느 위치에서든 실행할 수 있게끔 코드를 수정하고 브라우저에서 바로 확인할 수 있도록 구글 콜랩 코드도 제공합니다.
서식, 코드, 그래프 등을 전면 컬러화하고 편집 개선 - 일부 용어를 현대화하고 번역 개선 - 어느 위치에서든 실행할 수 있게끔 예제 코드 수정 - 브라우저에서 바로 확인할 수 있도록 구글 콜랩 코드 제공
누구를 위한 책인가? 외부 라이브러리는 최소한만 이용하고 파이썬을 사용해 딥러닝 프로그램을 처음부터 구현합니다. 파이썬에 익숙하지 않아도 이해할 수 있도록 파이썬 사용법도 간략히 설명합니다. - 딥러닝에 관심은 있지만 어디서부터 시작해야 할지 막막한 분 - 이론뿐만 아니라 동작하는 코드를 직접 구현하며 학습하고 싶은 분 - 라이브러리에 의존하지 않고 딥러닝의 원리를 깊이 이해하고 싶은 분 - 최신 딥러닝 기술을 다루기 전 기초를 탄탄히 다지고 싶은 분 - 국내 최다 판매, 수많은 독자의 호평으로 검증된 입문서로 시작하고 싶은 분
‘밑바닥부터 시작하는 딥러닝’ 시리즈에서 다루는 주제 - [1편] 합성곱 신경망과 이미지 처리 - [2편] 순환 신경망과 자연어 처리 - [3편] 동적 계산 그래프와 딥러닝 프레임워크 - [4편] 심층 강화학습 - [5편] 이미지 생성 모델
먼저 이번 2025년에도 감사하게 한빛미디어 '나는 리뷰어다'에 참여할 수 있게 됐다. 언제나 책을 읽으면서 리뷰를 작성하고, 한빛미디어의 책을 다른 사람보다 쉽게 접근하여 볼 수 있는 건 정말 행운이라고 생각한다. 이번에는 밑바닥부터 시작하는 딥러닝 1(리마스터판)을 읽게 됐다. 이 책은 2017년 1월에 출간된 책으로 한국 딥러닝의 교육에 이바지했다고 말해도 무방한 책이라고 생각한다. 정말 그만큼 사람들이 딥러닝에 입문하는데 도움이 된 책이다. 이번에 리마스터 되면서 좀 더 읽기 편해졌다.
먼저 리마스터 되기 전의 리뷰는 여기에서 확인할 수 있다. 이번 리뷰에서는 이 책에 어떤 내용이 담겼는지에 대해 소개하기 보다는 직접 책을 읽어본 사람으로서 어떤 달라진 점이 있는지, 어떤 부분이 더 좋아졌는지에 대해 소개하려고 한다. 내가 소개한 부분 외에 어떤 점이 더 달라졌는지 알고 싶다면 [환생 비화] 밑바닥부터 시작하는 딥러닝 1 (리마스터판)를 읽어보는 것도 재밌을 것이다.
가장 크게 달라진 점이라 하면 흑백에서 컬러로 바뀐 점이라 생각한다. 예전 흑백도 옛날 논문을 읽는 느낌이라 매력적이었지만, 이번에 컬러로 바뀌면서 더 눈에 띄고 좋았다. 최근 IT 책들이 제작 비용은 높아지지만, 독자를 위해서 퀄리티를 높이는 모습을 보이고 있어서 좋다고 느꼈다.
다른 시리즈에 대한 소개도 처음에 나온다. 이 책을 읽고 딥러닝에 더 관심이 생긴다면 다른 시리즈도 읽어보는 것이 좋다. 앞으로 출간 예정인 LLM을 주제로 하는 밑시딥 6권도 기대가 되는 부분이다.
이 책의 마지막 장인 8장을 보면 심화적인 내용이 많이 나오는데 'NOTE' 라고 표기되어 있는 부분에도 내용이 좀 더 추가된 것으로 보였다. 다른 시리즈에 더 자세한 내용이 담겨 있으니 그 책을 읽어보라는 부분이었는데, 난 이 부분도 매력적으로 느꼈다. Next Step을 제공하는 것이 좋은 책의 특징이라고 생각한다.
이 책은 딥러닝에 입문하고 싶은 사람들에게 추천한다. 이 책을 읽고 나면 딥러닝에 대한 기본적인 지식을 얻을 수 있을 것이다. 또한, 이 책을 읽고 나서 다른 시리즈도 읽어보는 걸 추천한다. 난 매번 내 친구, 동료, 선배, 후배 등 딥러닝을 공부하고 싶은 사람이 있다면 무조건 처음부터 이 책을 읽으라고 추천한다. 그만큼 정말 좋은 책이고 첫 시작을 쉽게 시작할 수 있는 책이라 생각한다. 이 책은 정말 가치가 있는 책이라고 생각한다.
딥러닝으로 매우 유명한 시리즈 중 1권이 최근에 리마스터로 다시 나왔다. 첫 1쇄가 한국에서 처음으로 2017년에 번역되어 발간되었는데 원서는 그보다 훨씬 이전에 출판되었을것이다. 매일 AI와 딥러닝 기술 트렌드가 확확 바뀌는데도 10년 가량이 넘도록 스테디셀러로 오래 남았다는 것은 그 내용이 그만큼 훌륭하고 딥러닝의 정수를 담았다는 뜻이기도 하다.
이세돌의 알파고 와의 대전이 이제 10년이 다 되어간다. 그때는 딥러닝이 바둑늘 정복했지만 지금은 챗GPT, Claude, Gemini를 필두로 해서 사람과 데이터를 정복해나가고 있다. 오늘날 이러한 일을 가능케한 딥러닝. 밑바닥부터 배워보고 싶지 않은가?
시중에 정말 많은 딥러닝 도서들이 나와있다. 서점에 들러 누구나 알수 있듯이 수식으로 꽉 차있거나 이해할 수 없는 그래프와 코딩으로 가득차있다. 그 중에서 밑바닥부터 시작하는 딥러닝 시리즈는 프레임워크나 라이브러리에 기대지 않고 딥러닝의 기본 원리를 정말 "밑바닥"부터 코딩과 개념을 이해할 수 있도록 구성되었다.
그래서 딥러닝부터 바로 시작하지 않는다. 첫 챕커가 "헬로 파이썬"이라는 이름이 붙었는데 무려 파이썬부터 공부한다. 코딩을 한번이라도 해본적 있거나 그것이 다른 프로그래밍 언어를 사용한 것이라고 해도 첫 장을 통해 파이썬부터 배우고 딥러닝을 시작할 수 있다.
정말 파이썬을 모르는 사람부터 딥러닝 공부를 시작할 수 있다. 물론 최신 딥러닝 트렌드나 깊은 이론 등은 배우지 않는다. 파이토치나 GPU 활용 내용과 같은 프레임워크 또는 심화된 내용도 배우지 않는다. 정말 입문자 레벨의 딥러닝 개념서라고 볼 수 있다. 처음 이책을 보았던 순간 이 책은 딥러닝 기본서가 될만한 자격이 있다고 느꼈다. 고등학생 때 수학의 정석을 보다가 수학의 바이블을 처음 봤을 때의 충격이었다. 그만큼 어려운 내용을 말로 풀어 최대한 쉽게 설명하지 않으려 노력한 점이 돋보였다. 확률적하강경사법의 단점을 설명하는 부분에서 "모험가"라는 이야기로 설명을 시작하는 점이 매우 인상적이었다. 오차역전파를 설명하기 위해 계산 그래프부터 배우는 것 또한 딥러닝 앞에 까막눈이 되는 사람들을 세심하게 생각한다는 것이 느껴졌다. 계산 그래프와 신경망을 여러 층으로 보여주는 그림을 통해 설명하는 이론을 좀 더 이해하기 쉽도록 도와주었다.
책의 구성은 "헬로 파이썬" 부분에서 파이썬 기초를 배운뒤 신경망의 기초가 된 퍼셉트론부터 시작한다. 그리고 신경망, CNN, 딥러닝의 토대를 배우게 된다. 이후이 파라미터를 최적화하는 방법 등과 같이 조금 더 심화된 내용이 나온다. 책의 두께도 얇은 편이다. 그리고 코드가 빽빽하게 나와있는 것도 아니고 OOP형의 파이썬 코드가 굉장히 짧은 분량으로 자주 나온다. 1~2페이지가 코드로만 되어있는 책도 많은데 부담가지 않는 수준에서 설명한다는 점이 이 책의 가장 큰 장점이라 생각한다. 군데군데 미분과 같은 수리적 내용도 나오는데 코드로 보면 훨씬 부담이 적고 이해도 빠르게 된다. 이 점이 참 마음에 들었다.
이 책은 딥러닝을 처음부터 차근차근 배우도록 도와준다. 딥러닝이라는 큰 산을 넘기 위한 셰르파 같은 존재라고나 할까?
물론 이 책을 다 끝내더라도 딥러닝을 정복하기 위해서는 무수히 많은 책과 자료를 만나야한다. 이책 이후에는 밑바닥부터 시작하는 시리즈를 차례대로 정복해나가면 되겠다는 자신이 생겼다. 그것만으로도 이 책의 기여는 확실한 것 같다.
안녕하세요 이번에 서평 해볼 책은 한빛미디어 출판사의 밑바닥부터 시작하는 딥러닝 1 리마스터 판입니다. 저도 딥러닝 공부를 밑바닥부터 시작하는 딥러닝 1 책으로 처음 시작했어가지고 리마스터 판이 나온다는 소식을 들었을 때 굉장히 기대했었습니다. 앞/뒤표지는 기존이랑 똑같이 생겼습니다.
기존과 다른 부분은 일단 전면 컬러 화가 되었습니다. 기존 책을 한 번 봐보니 코드부터 시작해서 소제목, 그림 부분이 다 흑백으로 되어있었는데 이번에는 모든 부분이 컬러화로 변경되었습니다. 컬러화로 되니 읽기 더 편해진 느낌이 듭니다.
책의 목차는 위와 같습니다. 총 1 ~ 8장으로 구성돼있고 마지막에 부록이 담겨있습니다. 여전히 딥러닝을 처음 공부할 때 유용한 내용들이 담겨 있습니다.
1장에서는 python과 numpy를 간단하게 알려줍니다. 여기 있는 내용만 알아도 책 읽는 데는 지장이 없습니다. 또한 사진에서 알 수 있듯이 전면 컬러화로 되어있습니다.
2장은 논리회로를 배우고 논리회로를 통해서 퍼셉트로를 구현하는 법을 배웁니다. 개념을 설명할 때 그림이 필요한 부분에는 적절히 그림이 들어가 있고 표가 필요한 부분에도 알맞게 들어가 있어서 이해할 때 많은 도움이 되었습니다. 각 장 마지막에는 내용을 한 번 정리할 수 있게 구성되어 있습니다.
3장은 신경망에서 대해서 배웁니다. 신경망이 뭔지, 활성화 함수가 무엇인지 등을 배웁니다. 그림이 굉장히 자세하게 나와있어서 개념들을 확실하게 배울 수 있었습니다.
5장은 딥러닝에서 제일 중요한 부분 중 하나인 오차역전파법을 배웁니다. 저도 딥러닝을 몇 년 전에 공부해서 이 부분을 많이 까먹고 있었는데 자세한 설명, 적절한 예시, 알맞은 그림 세 박자가 어우러져 있어서 한 번에 이해할 수 있었습니다.
6장에서는 딥러닝 학습 관련한 기술들을 배웁니다. 배치 정규화, 매개변수 갱신, 가중치 초기화, 바른 학습을 하는 법, 적절한 하이퍼파라미터 값을 찾는 법을 배울 수 있습니다.
마지막 8장에서는 딥러닝이 무엇인지 배우고 딥러닝의 역사부터 시작해서 딥러닝이 풀어야 될 숙제까지 배울 수 있습니다.
자세하게 설명이 되어있고 그림도 적절하게 구성이 되어있어서 이해하기 어렵지 않은 책입니다. 딥러닝을 처음 배워보고 싶은 분들한테 적극 추천합니다.
대학생 때부터 그리고 개발자로 일하고 있는 지금까지도 유명한 필독서 밑바닥부터 시작하는 딥러닝입니다. 학부생 시절에 읽어보고, 리마스터링되었다는 말을 듣고 다시 읽어보게 되었습니다. 책의 가장 큰 특징은 딥러닝을 처음부터 직접 구현하며 원리를 익힌다는 점입니다. TensorFlow나 PyTorch 같은 라이브러리에 의존하지 않고 파이썬과 넘파이만으로 신경망을 하나씩 만들어가며 학습할 수 있습니다. 딥러닝을 단순히 사용하는 것이 아니라, 논문을 읽고 실무에서 적용할 수 있는 기초를 다지기에 최적화된 책이므로 기본 개념을 제대로 이해하고 싶은 사람이라면 추천드립니다!
이달 초에 운좋게 한빛미디어 서평단에 선정되어서 한빛미디어의 신간 도서 중 하나인 "밑바닥부터 시작하는 딥러닝 1 리마스터판"을 읽게 되었습니다. 리뷰에 앞서 이 책을 한마디로 정리하면 다음과 같습니다.
회사에서 AI Research 업무를 하거나 대학원에 들어가기 전 꼭 읽어야 하는 책
이 책을 읽으면서 놀랐던 점은 제가 AI Research Engineer로 지금 다니고 있는 회사에 면접을 볼 당시, CTO님께서 제게 물어보셨던 대부분의 내용들이 책에 들어가 있었다는 점입니다. 그만큼 CNN 구조나 오차 역전파 과정 등 기본적이지만 딥러닝 논문을 이해하기 위해서 필수적으로 알아야 하는 내용들이 집약되어 있었습니다.
또한 저는 지금까지 딥러닝 논문을 이해하는데 필요한 내용들만 구글링을 통해 단편적으로 학습해 왔습니다. 그렇다보니 딥러닝 관련 개념이 파편화되어 있다는 느낌이 자주 들었는데, 이 책을 읽고 파편화되어있거나 추상적이었던 내용들을 구조화할 수 있어서 굉장히 좋았습니다. 예를들어, 신경망을 구현할 때 지금까지는 단순히 pytorch loss.backward()로 오차역전파를 구현해왔다면, 이 과정이 수학적(수치적 미분과 편미분)으로 어떻게 진행되는지 알기쉽게 설명해줘서 이해하기 굉장히 편했습니다. 처음에는 오랜만에 보는 편미분방정식 때문에 어려움이 있었지만 약간의 노력만 쏟는다면 누구든 이해할 수 있을 것입니다.
마지막으로 이 책은 딥러닝 기본서라고 많이 알려져 있지만, 실무에서도 흔히 쓰이는 모델 학습기법들이 잘 정리되어 있었습니다. 6장에서 매개변수(weight, bias)를 갱신하는 다양한 최적화 기법들과 가중치의 초기값을 설정하는 방법들은 실제로 프로젝트를 진행할 때 모델 성능을 개선하는데 굉장히 많이 쓰이는 기법들이었습니다. 그래서 현업에 계신 AI Researcher 분들도 충분히 읽어볼만한 책이라고 느꼈습니다.
결론
이 책은 신경망 학습부터 학습기법, CNN까지 딥러닝 전반적인 내용을 다루고 있습니다.
특히 신경망이 내부적으로 어떻게 동작하는지(순전파, 오차역전파) 수학적으로 쉽게 설명하기 때문에 신경망 내부 동작원리를 깊게 이해할 수 있습니다.
이 책은 초보자를 위한 딥러닝 교재라고 나와있지만, 딥러닝에 대한 지식이 전무한 초보자가 읽기는 어려운 내용을 많이 포함하고 있습니다.
따라서 딥러닝에 대한 지식이 어느정도 있고, 파편화된 지식을 구조화하고자 하는 분들에게 추천드리고 싶습니다.
딥러닝을 처음 시작하는 사람들에게 많은 사랑을 받은 《밑바닥부터 시작하는 딥러닝 1》이 리마스터판으로 새롭게 출간되었습니다. 2017년 출간 이후, 책은 딥러닝의 이론과 구현을 균형 있게 다루면서 쉬운 설명이 돋보였는데, 이번 리마스터판은 컬러화로 보기 편해졌고, 구글 코랩(Colab)을 통해 편한 학습 환경을 제공합니다.
책은 딥러닝의 기본 원리부터 실무 적용까지 폭넓게 다루면서도, 작은 것부터 하나씩 만들어 나가는 구성을 제공합니다. 파이썬의 설치부터 퍼셉트론, 신경망을 만들어보고 신경망 학습을 이해하기 위한 손실 함수와 역전파 알고리즘과 CNN 구현과 딥러닝 학습에 필요한 기술, 딥러닝의 활용 분야를 배울 수 있습니다.
장점 ✅ 특정 프레임워크(파이토치, 텐서플로)에 의존하지 않는 딥러닝의 본질을 배울 수 있습니다. ✅ 퍼셉트론 → 다층 신경망 → CNN을 구현하는 순서로 학습 난이도를 점차 높여가면서 초보자가 자연스럽게 심화 내용을 익힐 수 있도록 설계되었습니다. ✅ 코드, 그래프, 다이어그램이 컬러로 재편집되어 직관적인 설명과 웹 브라우저만 있으면 되는 편리한 실습 환경을 제공합니다.
책은 다음과 같은 사람들에게 추천하고 싶습니다. ✔️ 딥러닝 이론을 코드로 검증하고 싶은 실무 개발자 ✔️ 수학 기반의 체계적 학습을 선호하는 엔지니어와 연구자 ✔️ 딥러닝의 내부 동작 원리를 이해하려는 분들
자동차 관련 책에 비유한다면, 이 책은 운전교습 책이 아닙니다. 운전하는 방법이 아니라, 자동차의 동작 원리 이해를 목표로 합니다. 《밑바닥부터 시작하는 딥러닝 1》(리마스터판), p.11
《밑바닥부터 시작하는 딥러닝 1》 리마스터판은 딥러닝의 핵심 원리를 깊이 파고들며, '왜'와 '어떻게'라는 질문에 대해 코드 한 줄 한 줄로 해답을 제시하는 책이었습니다. 초보자에게는 복잡한 개념을 단계적으로 풀어내는 친절한 안내서 역할을 하고, 실무자에게는 딥러닝 속에 감춰진 원리를 재발견할 기회를 제공합니다.
인상적이었던 부분은 사과와 귤의 구매 가격을 통해 개수와 세금을 계산하는 역전파(Backpropagation) 설명이 있습니다. 데이터 흐름을 색상으로 구분해 단계별 연산 과정을 표시되어 있고, 복잡한 수식을 비유와 도식으로 대체하여 이해를 도움이 되었습니다. 추가로 컬러 그래프를 활용해 기울기 소실 문제를 계층별로 분석하고, 의료 영상 분석이나 자율주행 센서 처리 등 최신 딥러닝 기술이 적용된 사례를 포함해 활용도를 높인 점도 돋보였습니다.
ChatGPT와 최근의 딥시크에 이르기까지 생성형 AI가 일상이 된 오늘날, 미지의 세계처럼 느껴지는 딥러닝 기술의 내부를 책을 통해 들여다볼 수 있었습니다. 딥러닝이 어떻게 '학습'이라는 마법을 만들어내는지를 직접 코드로 확인할 수 있습니다. 딥러닝의 본질을 배우면서, 자신만의 신경망을 만들고 싶은 사람들에게 추천하고 싶은 책입니다.
"본 리뷰는 한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."
이달 초에 운좋게 한빛미디어 서평단으로 선정이 되어 한빛미디어의 신간 도서 중 1권을 읽을 수 있는 기회를 얻게 되었는데, 이를 통해 너무나 유명한 도서를 만날 수 있었다. 작년에 생성형 AI의 근간이 되는 확산 이론을 다룬 밑바닥부터 시작하는 딥러닝 5편을 읽어봤었는데, 이번에 읽게된 도서는 파이썬 기초부터 신경망과 딥러닝(CNN)에 대해 도서 제목처럼 밑바닥부터 하나하나 만들어보며 개념에 대해 설명하고 있는 "밑바닥부터 시작하는 딥러닝 1편"이다.
도서를 다 읽어보고 느낀 점을 한 마디로 요약하면.. 음.. 명불허전이랄까? 이래서 5편까지 책이 나왔구나 싶을 정도로 너무 책 내용이 좋았는데, 딥러닝 이론에 대해 라이브러리나 프레임워크에 의존하지 않고 상세하고 쉽게 설명하고 구현하고 있어서 너무 즐겁고 편안하게 읽을 수 있었던 것 같다.
밑바닥부터 시작하는 딥러닝 1편은 원래 2017년에 초판이 발간된 도서인데, 올해 리마스터판이라는 이름으로 개정판이 새로이 나와서, 마침 회사에서 SW 직군 인력들을 대상으로 진행한 AI Essential 교육도 받은 직후이기도 하고, 그 상세한 개념에 대해 복습 겸 보강 학습을 할 수 있는 계기가 될 수 있었다. 예를 들어, 사내 AI 교육 때 단순한 간략한 개념 설명과 더불어 Pytorch를 활용한 loss.backward() 한 줄 호출로 오류역전파를 구현했던 부분이 세부적으로 어떤 구현 과정을 통해 해당 동작을 수행할 수 있는지에 대해 이해할 수 있었다. 물론 편미분 방정식 등 수학이 나오기는 하는데, 구현 과정에 대한 Python 코드가 있어서 수학에 대한 지식이 조금 부족하더라도 이해할 수 있도록 구성된 것이 본 도서의 장점이라 할 수 있겠다.
본 도서는 총 8개의 chapter로 구성되어 있는데, 1장에서는 "밑바닥부터"라는 도서의 수식어에 걸맞게 파이썬 개발 환경 구성부터 파이썬 언어의 문법에 설명, 그리고 수학 연산을 위한 파이썬 라이브러리인 Numpy와 그래프 시각화를 위한 matplotlib 라이브러리에 대한 설명을 간략히 담고 있다. 파이썬을 활용하여 AI나 데이터 분석을 해본 사람들이라면 이미 이들에 대해 어느 정도 익숙한 사람도 많을텐데 이미 알고 있다면 1장은 휘리릭 훑어보며 빠르게 넘어가도 될 듯 하다.
2장부터가 본격적인 AI에 대한 내용인데, 퍼셉트론과 신경망, 신경망을 통한 학습, 오류역전파, 합성곱 신경망(CNN), 그리고 그 외 이미지 처리와 관련된 딥러닝에 대한 부가적인 이야기 등을 8장까지 순차적으로 담고 있다. 비록 현재 인공지능 관련 업무를 담당하고 있지는 않지만, 퍼셉트론과 신경망 이론에 대한 내용을 읽으며 대학원 시절에 인공지능을 전공하면서 코스웍 때 배웠던 내용이 조금씩조금씩 새록새록 떠오르는 시간이어서 앞 부분은 나름 즐겁게 읽었던 것 같다. (특히 도서가 풀컬러 형태여서 눈에 굉장히 잘 들어와서 가독성 측면에서 매우 도움이 되었다.^^)
위에서도 언급했듯이 본 도서에서는 scikit-learn이나 PyTorch와 같은 머신러닝 관련 라이브러리를 사용하지 않고 오로지 Numpy만 사용하여 신경망과 이에 대한 학습 과정을 한땀한땀 구현한다. 그렇기 때문에 이 과정에서 필요한 모든 계산 과정을 직접 구현하여 사용하며, 구현 과정에서 나오는 수학적 이론도 친절하게 설명하고 있어서 머신러닝에 대해 자세하게, 제대로 이해하고자 하는 초심자들이 보기에 매우매우 적합한 책이라 할 수 있겠다.
개인적으로는 위 그림과 같이 수치 미분과 편미분에 대해 간략히 다루고 있는 부분 등 미분에 대한 개념에 대해 쉽게 설명하는 방식이 매우 좋았다. 인공지능은 수학, 특히 미분에 대한 지식은 거의 필수인터라 인공지능에 대해 제대로 이해하려면 어느 정도 수학에 대한 기본 지식이 필요한데, 대학교 때 공부했었던 미적분학에 대한 지식이 가물가물하더라도 이 책을 통해 기본 개념에 대한 이해가 가능하다.
여담이지만, 물론 본 도서의 진도를 나가는데 있어서는 도서에 수록된 내용에 대해서만 이해하는 것으로도 크게 무리는 없었지만, 그럼에도 수학적 지식을 제대로 이해하려면 별도의 자료를 참고하는게 좋을 것 같아서 인공지능 수학 관련 참고 도서를 개인적으로 구매해두었다. 우선 몇 군데 필요한 곳만 발췌해서 읽고 아직 모두 다 읽어보진 못했지만, 계속적으로 필요할 때마다 읽어볼 예정.. "처음 배우는"이라는 책 제목만 봐도 두근거리고 마음이 따뜻해지는(?) 수학책인 듯.. ^^;
그리고 7장에서는 이 책의 핵심 주제 중 하나인 합성곱 신경망인 CNN에 대해서 다루고 있다. 이제는 이미지 classification 분야에서 너무나 대중적으로 사용되고 있는 CNN에 대한 구현을 역시나 딥러닝 프레임워크 없이 밑바닥부터 구현하고 있어서 상세한 세부 처리 과정에 대해 이해하는데 도움이 된다. 이론도 이론이지만 아무래도 개발자 입장에서는 구현을 어떻게 하느냐가 이해도에 있어 매우 중요한데, Python을 기반으로 구현하는 과정을 통해 CNN을 practical하게 이해하는데 이만한 도서가 없는 것 같다. PyTorch나 TensorFlow 등을 안쓰는 것이 오히려 본 도서의 장점인 듯..
마지막 8장에서는 그 외 딥러닝의 전반적인 내용에 대해 소개하고 있는데, image detection이나 segmentation 분야를 위해 개발된 R-CNN, FCN 등의 여러 가지 관련 모델들, 그리고 자연어 처리에 많이 사용되는 RNN과 한 때 생성형 AI의 근간이 되었던 GAN에 대해서도 간략히 소개하고 있는데, RNN 등 밑바닥부터 시작하는 딥러닝 2~5편에서 다루는 내용에 대해서도 8장에서 관련된 내용 이후 주석으로 "해당 지식에 대해 더 자세한 내용을 연계하여 공부"할 수 있도록 언급하고 있는 부분이 추가된 것도 이번 리마스터판의 특징이라 할 수 있을 것 같다. (사실 초판에도 이러한 문구가 있었는지 확인을 해보진 못했는데, 미래에 나올 도서에 대한 언급이라 아마 초판에서는 존재하지 않았을 듯..)
결론적으로, 본 도서는 다음과 같은 분들이 읽으면 좋을 것 같다.
파이썬에 대한 공부와 함께 딥러닝에 대한 공부를 함께 하고 싶으신 분
신경망과 딥러닝의 기초에 대해 공부하고자 하는 분
신경망과 CNN의 세부적인 구현 방식에 대해 이해하고자 하는 분
딥러닝 라이브러리/프레임워크 없이 직접 구현을 해보고 싶으신 분
그 동안 인공지능/신경망/딥러닝을 다루는 몇몇 개발 도서를 읽어봤었는데, 그 중에서 이 책이 가장 신경망과 딥러닝의 개념에 대해 이해하기 쉬웠던 도서 중 하나라는 생각이 든다. 그만큼 본 도서는 쉽게 설명하고 있는 기본서의 느낌이 강하고, 개발자를 위한 입문서로서 적당하다.
또한, 평소에도 생각하는 부분이지만, 번역서의 경우 원서가 일본어 판일 경우에 번역이 영어권 도서들보다는 좀 더 자연스럽고 읽기 편하다는 느낌인데, (아무래도 우리말과 어순이 같고 사용하는 어휘와 문화도 비슷하기 때문일 듯..) 본 도서 역시 일본어 도서가 번역된 도서여서 그런지 번역이 어색하거나 이해가 잘 안되는 부분이 없었던 부분도 본 도서의 장점인 것 같다.
모쪼록 본 리뷰가 신경망과 CNN에 대한 공부를 시작하고자 하는 많은 분들께 참고가 되었으면 좋겠다.
최근 인공지능과 딥러닝이 우리 일상 곳곳에 스며들면서, 이를 배우고자 하는 열기도 그 어느 때보다 뜨겁습니다. 수많은 입문서들이 쏟아지는 가운데, 오랫동안 스테디셀러로 자리잡은 '밑바닥부터 시작하는 딥러닝 1'이 리마스터판으로 돌아왔습니다. 이번 리뷰에서는 이 책이 가진 특별한 매력과 학습 가치에 대해 이야기해보려 합니다.
이 책의 가장 큰 특징은 '직접 만들어보는 학습 방식'입니다. Tensorflow나 PyTorch 같은 고수준 라이브러리 대신, 파이썬과 넘파이만으로 딥러닝의 핵심 요소들을 처음부터 구현해봅니다. 마치 레고 블록을 하나하나 조립하듯, 신경망의 각 부품을 직접 만들어보는 과정은 딥러닝의 작동 원리를 깊이 있게 이해할 수 있게 해줍니다.
Backpropagation이나 합성곱 신경망(CNN) 같은 복잡한 개념도, 수식에서 시작해 실제 코드로 구현해보면서 자연스럽게 체득할 수 있습니다. 특히 역전파 과정을 계산 그래프로 설명하는 부분은 많은 독자들이 아하 모먼트를 경험하게 하는 대목입니다.
또한, 일본 도서 특유의 꼼꼼한 설명 스타일이 돋보입니다. 단순히 코드를 따라 치는 것에 그치지 않고, 각 단계가 왜 필요한지, 어떤 원리로 동작하는지를 상세히 설명합니다. 특히 처음 딥러닝을 접하는 사람들이 흔히 걸려 넘어지는 개념들 - 활성화 함수의 역할, 손실 함수의 의미, 경사 하강법의 원리 등 - 을 직관적인 그림과 예시로 풀어냅니다.
리마스터판에서는 컬러 편집이 추가되어 시각적 이해도가 한층 높아졌고, 구글 코랩 환경을 지원하여 별도의 개발 환경 설정 없이도 바로 실습을 시작할 수 있게 되었습니다.
책은 총 8개의 장으로 구성되어 있으며, 각 장은 이론과 실습이 균형잡힌 비율로 구성되어 있습니다. 파이썬 기초부터 시작해 퍼셉트론, 신경망, 역전파, 최적화 기법, CNN까지 차근차근 난이도를 높여가며 진행됩니다. 특히 중간중간 등장하는 실전 예제들은 배운 내용을 바로 적용해볼 수 있게 해주어 학습 효과를 높여줍니다.
이 책도 몇 가지 아쉬운 점이 있습니다. 프로그래밍 경험이 전혀 없는 초보자에게는 진입 장벽이 다소 높을 수 있으며, 후반부로 갈수록 코드 설명이 다소 간략해지는 경향이 있습니다. 또한 최신 딥러닝 트렌드인 트랜스포머나 대규모 언어 모델 같은 주제는 다루지 않습니다.
하지만 이는 입문서로서의 한계라기보다는, 기본기에 충실하고자 하는 저자의 의도로 보입니다. 깃허브에 전체 소스코드가 공개되어 있어, 필요한 부분은 언제든 참고할 수 있습니다.
이 책은 특히 다음과 같은 분들에게 큰 도움이 될 것 같습니다: - 딥러닝의 내부 동작 원리를 제대로 이해하고 싶은 분 - 기본적인 파이썬 프로그래밍 능력을 갖추고 있는 분 - 이론적 지식을 실제 구현으로 연결하고 싶은 분
'밑바닥부터 시작하는 딥러닝 1'은 단순한 입문서를 넘어, 딥러닝의 기초를 탄탄하게 다질 수 있는 훌륭한 안내서입니다. 처음에는 "왜 이렇게 기초부터 해야 하지?"라는 의문이 들 수 있지만, 책을 따라가다 보면 이러한 접근 방식의 가치를 깨닫게 될 것입니다. 리마스터판의 개선된 편집과 실습 환경은 이 여정을 더욱 즐겁게 만들어줍니다.
딥러닝이라는 거대한 숲에 첫 발을 내딛는 분들께, 이 책은 믿음직한 나침반이 되어줄 것입니다.