메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

친절한 딥러닝 수학

친절한 딥러닝 수학

인공 신경망 이해를 위한 기초 수학

한빛미디어

번역서

판매중

  • 저자 : 다테이시 겐고
  • 번역 : 김형민
  • 출간 : 2021-03-02
  • 페이지 : 356 쪽
  • ISBN : 9791162243886
  • 물류코드 :10388
  • 초급 초중급 중급 중고급 고급
4.3점 (28명)
좋아요 : 3

고등학교 수학으로 이해하는 인공 신경망 

수학 기초는 약하지만 일단 개발부터 하고 보는 그대에게 

 

수학을 어려워하는 마음을 깊이 공감하고 가능한 한 이해하기 쉽게 풀어냈다. 다양한 그림과 수식으로 신경망의 개념과 원리부터 경사하강법, 오차역전파법까지 설명하며 등장인물의 대화 속에서 자연스럽게 익힐 수 있도록 배려했다. 차근차근 쌓은 이론을 바탕으로 신경망을 구현해 이미지 크기를 판정해보고 손글씨도 식별해볼 수 있다. 수학이 약해 딥러닝이 낯설게 느껴졌다면, 딥러닝 이해에 필요한 수학 기초를 탄탄히 다지고 싶다면 이 책이 아주 좋은 안내자가 되어줄 것이다.

 

 

각 장의 개요

 

1장 신경망을 시작하자

신경망 개념을 알아보고 머신러닝 알고리즘과 어떤 차이가 있는지, 무엇을 할 수 있는지 살펴봅니다.

 

2장 순전파를 배우자

신경망을 구성하는 단순한 알고리즘인 퍼셉트론 안에서 계산이 어떻게 진행되는지 설명합니다.

 

3장 역전파를 배우자

신경망에서 적절한 가중치와 편향을 어떻게 계산해서 구하는지 설명합니다. 

 

4장 합성곱 신경망을 배우자

합성곱 신경망을 이용한 이미지 처리 방법을 공부합니다.

 

5장 신경망을 구현하자

2, 3, 4장에서 배운 신경망 계산 방법을 파이썬으로 구현합니다. 이미지 크기를 판정해보고 합성곱 신경망을 이용해 손글씨 인식을 구현해봅니다.

 


주요 내용

  • 신경망 개념과 구조
  • 신경망이 문제를 해결하는 원리 
  • 확률, 미분, 선형대수, 함수, 벡터
  • 퍼셉트론으로 이미지 판별하기 
  • 신경망의 가중치와 편향
  • 최적화 문제와 목적 함수, 교차 엔트로피
  • 순전파, 역전파, 오차역전파법, 경사하강법
  • 합성곱 필터, 특징맵, ReLU, 풀링

 

1.jpg

 

2.jpg

 

3.jpg

 

4.jpg

 

5.jpg

다테이시 겐고 저자

다테이시 겐고

사가대학교 졸업 후 몇 개의 개발 회사를 거친 뒤 2014년 LINE Fukuoka에 입사하여 데이터 분석 및 머신러닝을 전문으로 하는 조직을 신설하고 추천, 텍스트 분류 등 머신러닝을 사용한 제품을 담당했다. 2019년 스마트뉴스 주식회사에 입사하여 현재 머신러닝 엔지니어로 근무하고 있다.

김형민 역자

김형민

동국대학교에서 일본어 교육학을 전공했고 프리랜서 통번역가로 활동했다. 이후 떠올린 아이디어들을 구체화할 수 있는 프로그래밍에 매력을 느껴 프로그래머가 되기로 했고 지금은 일본에서 웹 개발을 하고 있다. 번역한 도서로는 『친절한 딥러닝 수학』(한빛미디어, 2021), 『다양한 그래프, 간단한 수학, R로 배우는 머신러닝』(영진닷컴, 2019), 『프로그래밍 언어도감』(영진닷컴, 2018) 등이 있다.

CHAPTER 1 신경망을 시작하자

1.1 신경망에 대한 흥미

1.2 신경망의 위치

1.3 신경망에 대해

1.4 신경망으로 할 수 있는 것

1.5 수학과 프로그래밍

COLUMN 신경망의 역사

 

CHAPTER 2 순전파를 배우자

2.1 신경망의 시작은 퍼셉트론

2.2 퍼셉트론

2.3 퍼셉트론과 편향

2.4 퍼셉트론으로 이미지의 긴 변 판정하기

2.5 퍼셉트론으로 정사각형 이미지 판정하기

2.6 퍼셉트론의 단점

2.7 다층 퍼셉트론

2.8 신경망으로 정사각형 이미지 판정하기

2.9 신경망의 가중치

2.10 활성화 함수

2.11 신경망의 실체

2.12 순전파

2.13 신경망의 일반화

COLUMN 활성화 함수란?

 

CHAPTER 3 역전파를 배우자

3.1 신경망의 가중치와 편향

3.2 인간의 한계

3.3 오차

3.4 목적 함수

3.5 경사하강법

3.6 작은 아이디어 델타

3.7 델타 계산

3.8 백프로퍼게이션

COLUMN 기울기 소실이란?

 

CHAPTER 4 합성곱 신경망을 배우자

4.1 이미지 처리에 강한 합성곱 신경망

4.2 합성곱 필터

4.3 특징맵

4.4 활성화 함수

4.5 풀링

4.6 합성곱층

4.7 합성곱층의 순전파

4.8 전결합층의 순전파

4.9 역전파

COLUMN 교차 엔트로피란?

 

CHAPTER 5 신경망을 구현하자

5.1 파이썬으로 구현하자

5.2 가로세로비 판정 신경망

5.3 손글씨 숫자 이미지 식별 합성곱 신경망

COLUMN 뒷이야기

 

APPENDIX A 수학 기초

A.1 시그마

A.2 미분

A.3 편미분

A.4 합성 함수

A.5 벡터와 행렬

A.6 지수와 로그

 

APPENDIX B 파이썬과 넘파이 기초

B.1 파이썬 환경 설정

B.2 파이썬 기초

B.3 넘파이 기초

코드로만 구현하는 딥러닝은 가라! 

신경망 이해를 위한 친절한 기초 수학

 

딥러닝과 수학은 떼어놓고 생각할 수 없습니다. 딥러닝은 인공 신경망이라는 오래된 수학 모델과 통계 기법을 기반으로 합니다. 최근에는 신경망과 관련된 프레임워크, 라이브러리, 데이터셋, 문서 등이 풍부해 원하기만 하면 간단히 경험해볼 수 있습니다. 복잡한 부분은 잘 감춰져 있어 신경망 안에서 실제로 어떤 일이 일어나는지 몰라도 간단하게 구현이 가능하지만 그 아래에서 어떠한 일이 일어나는지 알면 더 좋을 것입니다. 기초를 안다면 응용할 수 있고 나아가 활용법을 쉽게 떠올릴 수 있기 때문입니다.

 

“수학 때문에 딥러닝이 어렵다.”

“딥러닝 구현은 할 수 있지만 수학 원리를 모르겠다.”

 

수학을 어려워하는 마음을 충분히 공감하고 가능한 한 이해하기 쉽게 설명했습니다. 신경망의 개념, 원리부터 경사하강법, 오차역전파법까지 등장인물의 대화 속에서 자연스럽게 익힐 수 있도록 배려했습니다. 차근차근 쌓은 이론을 바탕으로 신경망을 구현해 이미지 크기를 판정해보고 손글씨도 식별해보세요. 수학이 약해 딥러닝이 낯설게 느껴졌다면, 딥러닝 이해에 필요한 수학 기초를 탄탄히 다지고 싶다면 이 책이 아주 좋은 안내자가 되어줄 것입니다.

AI

인공지능

4차산업

여기저기서 많이 들려오는 단어들이다.

특히 코로나 이후 집콕이 늘면서 더욱더 AI관련 산업이 발달하고 있음을 많이 느끼고 있다.

모 TV프로그램에선 AI와 인간의 대결?

컴퓨터가 스스로 학습하고 감정없이 정확한 계산 결과로 흔들리지 않고 임무를 수행하는 모습등이 비추어 졌다.

그럼 인공신경망?

사람의 뇌구조가 뉴런으로 그믈처럼 연결되어 있다는것은 중학교 정도의 과학상식으로도 이미 알고 있다.

인간은 정말 정교하게 잘 만들어진 존재이다.

각기능이 하는 역활이 있고, 거기에 최적화되어 세포들이 변형을 하고 각 기능을 수행한다.

그럼 컴퓨터는?

단순히 스위치, 버튼, 전류가 흘러서 0과 1이 변해서....에서 벗어나

사람의 뇌구조처럼 연결고리로 인해 학습(딥러닝=신경망)한다.

이를 만드는 것은 사람이고, 만드는 도구는 프로그램이다.

이 책에서는 프로그램을 만들기 위해 예전엔 알고리즘이라고 했던 문제의 답을 찾는 과정중 수식적인 부분을 설명했다.

 

서론에 있듯

이 책은 초보자가 읽기에는 부담이 될듯하다.

도대체 무슨말을 하지는 모를지도....

저자의 말처럼 신경망에 흥미를 가지기 시작했고, 그 내부를 제대로 이해하고 싶은 개발자를 대상으로 한다.

 

즉, 어느정도 신경망에 대한 지식과 프로그램을 어느정도 작성할 수 있는 독자가 대상이 된다

신경망을 시작하며

몇가지 신경망에 대해 쉽게? 설명....

만화식? 대화식으로 풀어 써졌다.

(일본책들이 어려운 기술적인 부분들을 만화처럼 풀어 설명한 책이 시리즈로 있었는데....그 정도는 아니지만, 역시 그림설명이 많다.)

책제목처럼....

수학적인 부분을 많이 다룬다.

 

수학의 시그마, 행렬, 미분에 대한 어느정도 지식이 있어야 쉽게 읽을 수 있다.

인공 신경망 이해를 위한 기초수학-친절한 딥러.. : 네이버블로그 (naver.com)

 

IMG_0113 (1).jpg

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

'수학'. 이름만으로도 여럿 까다롭게 만드는 존재입니다. 4차 산업혁명이라는 키워드에 힘입어 많은 사람들이 딥러닝 공부에 도전하고 있습니다. 하지만 딥러닝을 공부하다보면 '수학'이라는 녀석을 피할 수 없게 됩니다. 가중치와 편향이 곱해지면서 더해지는 순전파, 그리고 이들이 어떻게 학습되는지에 대한 역전파를 이해하려면 (특정 학과를 제외하고는) 고등학교 이후 듣지 않고 지내던 '미분'이라는 단어를 만나기 마련이지요. 가중치마다 어떻게 학습되는지를 알기 위해서 공부해야 하는 '편미분'과 연쇄 법칙(Chain rule)은 보너스(?)입니다. 딥러닝 입문자 입장에서는 코딩 따라가기도 바쁜데 갑작스레 등장하는 미분에 난색을 표할 수 밖에 없습니다. 물론 몰라도 코딩하는데 큰 문제가 없을 수도 있고 수학 수식을 건너뛰며 딥러닝 공부를 할 수도 있을 것입니다. 하지만 이후에 어떤 구조가 등장하고 이러한 구조가 왜 등장하였는지를 이해하기 위해서 다시 돌아와 만나야 하는 것 역시 '수학'입니다.

친절한 딥러닝 수학

물론 수학을 제대로 공부해나가고자 한다면 전공 서적을 보는 것만큼 좋은 게 없겠지만, '미분' 한 단어도 두려운 입문자에게 전공 서적이란 인테리어 소품이 되기 십상입니다. (방 안 책꽂이에 박혀 나올 생각이 없는 전공 책을 바라보며...)

대화체로 구성된 이 책은 퍼셉트론의 작동 원리부터 자세히 수식을 설명하며 전개됩니다. 가장 도움을 많이 받을 수 있는 부분은 순전파와 역전파에 대한 설명인데요. 신경망이 순전파를 통해 어떻게 예측값을 내놓고, 계산된 예측값으로부터 어떤 방식으로 가중치가 갱신되는 지를 자세하게 설명하고 있어서 좋았습니다. 대화체로 쓰여 있어서 가독성도 좋았고 역전파에서 각 층마다 신경망 이미지를 곁들여 수식을 설명해주는 방식이 마음에 들었습니다. 여기까지는 순전파와 역전파에 대해 수학적 개념이 흐릿한 분들에게 정말 좋은 책이 될 것 같다는 생각이 들었습니다.

친절한(?) 딥러닝 수학

문제는 그 다음부터입니다. 역전파 다음 챕터인 Chap 4. 에서는 합성곱 신경망(CNN)에 대해 수학 수식을 통해서 다루고 있습니다. CNN의 계산이 워낙 많다보니 식이 꽤나 복잡해지는데요. 물론 책에서의 설명처럼 "항이 많을 뿐 하나씩 따라가면 똑같"기는 합니다. 하지만 처음 배우는 사람에게는 이런 수식이 되려 난감하게 느껴지지 않을까 하는 생각이 들었습니다. 시그마 갯수도 많아지고, 각 커널을 설명하기 위한 첨자도 많아지니 수학 기호에 익숙지 못한 이들에게는 이러나 저러나 이해하기 힘든 식이 되어버리는 셈이지요. 자세한 것은 좋지만 과한 상세함이 주는 일종의 불편함이 느껴졌습니다. 게다가 식이 길어지다보니 합성곱 신경망을 설명하기 위해서 할애한 지면이 거의 책의 절반정도가 된다는 점도 아쉽습니다. 게다가 선형대수, 즉 벡터 및 행렬 계산에 대한 설명은 조금 부족하지 않나 하는 생각도 들었습니다.

책의 마지막은 신경망 날코딩 구현으로 끝나는데 이 부분에서 다른 책과 차별점이 별로 없어진다는 생각이 들었습니다. 오히려 머신러닝, 딥러닝 공부에 필요한 '수학'을 공부하고자 하시는 분이라면 동일 출판사의 '김도형의 데이터 사이언스 스쿨'이나 길벗의 '프로그래밍을 위한 ~' 시리즈를 추천드립니다. 그리고 날코딩으로 신경망을 구현하고자 하는 분들에겐 역시 '밑바닥부터 시작하는 딥러닝'만한 책이 없을 것이고요. 전체적으로 책이 중간 이상으로 넘어가면서 첫 부분의 컨셉을 지키지 못다는 점이 아쉬웠습니다.

아쉬운 점은 아닙니다만 표지도 호불호가 갈리는 이유 중 하나가 될 것 같습니다. 비슷한 느낌으로 성안당에서 나오는 '만화로 배우는 ~' 시리즈가 있는데요. 좋은 책임에도 표지 때문에 꺼려하시는 분들이 있는 것으로 알고 있습니다. 이 책도 비스무리한 느낌이 있는데요. 이런 이유 때문에 책 구매를 거부하시는 분들도 몇 있지 않을까 생각합니다. :)

일반적인 IT관련 책을 읽는다는 것은 인문,사회과학 관련 책을 읽는것과는 차원이 다르다. 약간의 개념설명이 있은 후 다양한 코딩예제가 나오고 심지어는 단원마다 연습문제가 나오기 마련이다. 그런 연유로 한장한장 읽어나가는 것이 아니라 열심히 공부하고 따라하기를 한다는 것이 정확한 표현일듯 하다. 심지어는 책마다 등급이 있기도 하다. 초급용, 중급용, 고급용.....어찌보면 우습기도 하지만 독자층이 명확한 특성을 반영한 결과가 생각된다.

 

 

이 책 [친절한 딥러닝 수학]은 인공신경망 이해를 위한 기초수학을 담고 있으며, 크게보면 신경망, 순전파, 역전파, 합성곱신경망, 신경망 구성하기로 나누어져 있다. 머신러닝의 기초를 배우고 해당 머신러닝을 실천해 보는 이야기를 담고 있다.

 

 

하지만 일반적인 IT서적과는 그 괘를 달리한다. 이유는 윤서, 지우, 도현이라는 등장인물의 이야기와 대화를 통하여 학습내용을 전달하고 있다. 소위말하는 스토리텔링 방식으로 지식을 전달하고 있다보니 딱딱하지 않고 궁금한 점을 조목조목 대화하듯이 이야기해줘서 편안하고 재미있게 읽었던 책이다.

 

 

초보자가 어려워하는 개념정립을 차근차근 따라 읽다보면 다른 책에서 느꼈던 난해함이훨씬 줄어들고, 딥러닝이 어떤것이라는 깨달음의 희열도 얻게 될것으로 생각된다. 수학적 어려움을 겪고있는 초보 딥러닝 학습자에게 한번 읽어보기를 추천하는 바이다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

#친절한딥러닝수학 #한빛미디어 #디테이시겐고 #김형민 #책스타그램 #북스타그램 #서평 #독서 #독서스타그램 #책스타그램 #신간 #북리뷰 #책리뷰 #책리뷰 #추천 #책추천

 

 

 

 

각종 산업에서 AI 인공지능에 대한 인기는 날이 갈수록 치솟고 있다. 소위 떡상하는 IT분야로 많은 나라들이 미래의 먹거리 산업으로 집중 육성 기술로 다루고 있다. 그런데 AI에는 아주 큰 장벽이 하나 있다. 바로 수학이다. 간단히 인공지능 응용 툴을 사용한다면, 수학이 그렇게 많이 필요한가 이해되지 않을 수 있는데, 조금만 깊게 들어가거나, 응용 툴을 더욱 제대로 활용하려면, 인공지능에 관련된 수학 이해는 필수 사항이다. 


프로그램 능력도 일정 수준 이상 올라가려면 많은 시간과 노력이 필요한데, 수학적 능력까지 요구하니, 각 나라마다 인공지능 인재 육성을 위해 다양한 정책을 펴고 있지만, 일반 프로그래머 양성과는 차원이 다른 어려움을 가지고 있다. 특히 이공 계통을 전공하지 않은 사람들은 더욱 어려울 수밖에 없다.


나도 개발자로 일하고 있어 전부터 인공지능, 신경망, 딥러닝에 대한 관심도 많았고, 현장에서도 인공지능 적용에 대한 이야기들이 많아지고 있어서, 틈틈이 이 분야 책을 보고 있는데, 나에게 수학 능력이 가장 약점임을 느끼고 있다. 수학을 전공했지만, 워낙 오래된 일이고, 인공지능은 통계와 함께 공업수학 같은 것이 더 도움이 되므로 따로 익힐 필요가 있었다.

 

이런 내 입장에서 '친절한 딥러닝 수학'은 신경망 관련 수학을 제대로 맛보게 해준 책이었다. 전에도 인공지능 수학 관련 책을 봤지만, 이 책은 결이 다르다. 보통 인공지능 수학 책을 보면, 다양한 주제를 대상으로 간단 간단하게 수학을 풀어나가는데, '친절한 딥러닝 수학'은 주제 하나하나를 아주 바닥까지 파보는 스타일의 책이다. 그런 만큼 신경망 수학이 어떤 것인지 제대로 맛볼 수 있다.

 

 

 

일단 '친절한 딥러닝 수학'은 이야기 전개 방식이 색다르다. 윤서, 지우, 도현이라는 3명의 등장인물이 나누는 대화를 통해, 신경망 이론을 배우게 된다. 만화로 된 인물 캐릭터가 각각의 대화 앞에 등장하다 보니, 만화를 보는 느낌이 강하다. 물론 아예 만화로 그려진 수학책 같은 것도 있기는 하지만, 책 속 내용을 다 만화로 구현했다면, 책 부피가 많이 두꺼워질 수밖에 없었을 것이다. 부피도 줄이고, 만화적 요소를 접목하기 위해 이런 방식을 선택한 것으로 보인다. 실제, 읽다 보면, 만화의 장면 같은 것이 자연스럽게 머릿속에 그려진다. 그리고 이렇게 만화적인 느낌을 주다 보니, 수학이라면 무조건 생기는 거부감이나 부담감 같은 것을 줄일 수 있다는 점이 강점인 책이기도 하다. 



 

하지만 '친절한 딥러닝 수학'이 만화처럼 아주 쉬운 내용만을 담고 있는 책은 아니다. 분명 부담감을 덜어주고는 있지만, 시그마, 행렬, 벡터, 미분, 편미분, 지수, 로그 같은 것들을 사용하고 있으므로 수학 지식을 충분히 가지고 있어야 한다. 그래서 개인적으로는 책 뒤에 있는 부록편은 먼저 살펴 보기를 추천한다. 챕터 1을 조금 보다가 수학에서 뭔가 막히면, 부록에 나온 수학 설명을 보는 것이 좋다. 이것도 이해가 안 된다면, 별도로 관련 파트의 수학 책을 먼저 봐야 한다. 일반적으론 책 내용을 하나하나 따라가면서 보면, 충분히 이해할 수 있는 수준이다. 다만, 신경망의 입력층, 출력층, 은닉층과 같이 많은 요소들이 나와서 이걸 행렬에 긴 식을 시그마를 동원해서 계산을 하다 보니, 이래저래 복잡해지고, 그 과정 중에 수식의 길을 잃을 수 있다.


그래서 여기서 또 한가지 방법을 추천하고 싶다. 노트와 연필을 준비해서 책과 함께 같이 일일이 계산해보라고 말하고 싶다. 수학 공부하는 스타일이 저마다 다르겠지만, 내 경우는 이렇게 하나하나 해보는 것이 머리에도 오래 남고, 어떤 부분을 모르는지 확실히 찾아낼 수 있어 좋다. 학창시절 수학은 눈이 아니라 손으로 공부하는 거라고 선생님에게 들었는데, 나도 그런 경우라서, 눈으로 보면, 다 이해 한 거 같지만, 다시 풀어 보려면 대부분 안 되곤 한다.  아울러 '친절한 딥러닝 수학'에 나오는 용어나 개념을 노트에 정리해서, 지속적으로 인공지능 관련 내용을 쌓아 두면, 유용할 거라 생각한다. 나도 그렇게 하려고 정리하고 있다.



 

'친절한 딥러닝 수학'에서 다루는 주제는 기본적인 신경망 이해, 순전파, 퍼셉트론, 편향, 다층 퍼셉트론, 가중치 처리 방법, 활성화 함수, 역전파, 목적함수, 기울기 소실, 합성곱 필터, 교차 엔트로피와 같은 것들이다. 어찌 보면, 그리 많은 내용을 다루고 있는 것은 아니다. 그러나 이 책은 대충 언급하고 넘어가거나, 그림만 잔뜩 그려 놓고, 개념만 설명하고 끝나는 그런 책이 아니다. 한 주제, 한 주제, 아주 꼼꼼히 파고 들어간다. 수식을 어떻게 전개하고, 왜 이런 것을 하는지, 시그모이드 함수를 쓰는 이유나, 값을 왜 이렇게 잡아서 넣었는지, 이렇게 값을 주면 안 되는 이유, 어떤 문제가 있고, 어떻게 개선을 하는 것이 좋은지 등등을 아주 구체적으로 담고 있다. 다른 책에서 봤던 내용들도 있었는데, 그때는 그냥 그러려니 하며, 지나친 것들을 여기선 일일이 건드리고 있었다. 신경망 이론에 대한 수학적 이해를 좀 더 깊게 할 수 있는 책인 것이다.



 

이렇게 각종 그림과 수학 식을 통해 인공지능 신경망 이론을 깊게 이해하고, 마지막 단계로 파이썬과 넘파이를 이용한 프로그래밍을 하게 된다. 이 파트도 나에겐 좀 남다른 느낌을 받았다. 왜냐하면, 보통 접하는 프로그래밍 파트들은 그냥 수식을 바로 코드로 바꿔 보여주는 정도인데, '친절한 딥러닝 수학'에서는 다시 한번 앞에 것을 복습해가면서, 그 수식을 어떻게 파이썬 코드로 바꿀 수 있는지, 이렇게 해보고, 저렇게 해보는 과정이 마치 내가 실제 프로그래밍하는 것과 같은 느낌을 주었기 때문이다. 그러면서 이렇게 코딩하면 어려운 인공지능 이론도 직접 코딩으로 구현할 수 있겠다는 근거 없는 자신감도 느꼈다. 


우리나라를 IT 강국으로 말하지만, 인공지능에 관해서는 현재 미국과 중국이 최강국이다. 활용 면이나 이론적으로 우리가 아직 많이 부족하다고 한다. 이런 격차를 줄이기 위해 인공지능 관련 수학적 기초를 확고히 다지는 것이 중요하다고 본다. 이런 거창한 국가적 의미를 떠나, 개인 프로그래머 입장에서도 인공지능, 신경망, 딥러닝을 제대로 활용하고, 프로그래밍 실력을 올리는데도 수학이 많은 도움이 될 것이다


그만큼 '친절한 딥러닝 수학'이 그 기초를 쌓는데 도움이 되어 줄 거라 생각한다. 제대로 된 신경망 이론 수학을 경험하고 구체적인 깊은 맛을 보고 싶다면, 이 책을 꼭 한번 보길 바란다. 아울러 '친절한 딥러닝 수학'과 함께 노트와 연필도 잊지 마시길.


"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 



IT종사자들이라면 IT관련해서 다방면으로 지식을 가져야 한다.

딥러닝이란 파트면 딥러닝 단독으로 쓰이는 개념이라기 보다는

다른 분야에 같이 걸쳐서 쓰이는 개념이라고 생각되는..

사진 설명을 입력하세요.

일단 요새 일본에서 나온 책하면 기본적으로 캐릭터를 달고 나오는 듯 하다.

사진 설명을 입력하세요.

책의 구성은 기본적으로 줄글로 설명하는게 아니라 등장인물의 대화로 이야기가 서술된다.

그러다 보니 딱딱한 줄글로 서술되는것보단 눈에 잘 들어오는듯?

사진 설명을 입력하세요.

이렇게 수학식이 많으면 이해가 안되서 일단은 뒤로 돌리고...

내용을 알든 모르든 책을 일단 보는것에 집중했다.

사진 설명을 입력하세요.

그래도 그림으로 표현되는 부분이 간혹가다 있어서 읽을만 했다.

이런 그림이라도 없었으면 완전히이해를 못했을듯한 느낌..

사진 설명을 입력하세요.

딥러닝을 구현하는 언어는 다양하지만 그중에 파이썬이 라이브러리로 잘 정립되어있다.

그래서 그런지 이책에서도

기초적인 파이썬 내용으로 정리 되었다.

사진 설명을 입력하세요.

하지만 수학을 조금더 알았으면 더 재미있을게 봤을듯 한 책.

친절한 딥러닝 수학
 
친절한 딥러닝 수학
저자
다테이시 겐고 지음, 김형민
출판
한빛미디어
발매
2021.03.02.
 

사진 설명을 입력하세요.

 



 

<친절한 딥러닝 수학>, 다테이시 겐고 지음, 김형민 옮김, 한빛미디어, 2021

 

머신러닝, 딥러닝 등 AI 기술의발달은 우리의 업무 환경을 빠르게 바꾸고 있다. 아직 체감되지 않는 부분도 있지만, 오늘도 누군가는 사람이 하던 일을 인공지능으로 대체하고자 노력하고 있다. 지금은단순 반복 작업을 줄이는 정도로 활용하고 있지만, 방대한 정보를 바탕으로 미래를 예측하는 인간으로서는불가능한 일을 인공지능이 대체할 수 있지 않을까 상상하곤 한다.

 

가령 인공지능이 한 기업의 기후변화 영향을 예측해 주요 경영의사결정에 근거를 제공하거나, 소비자 트렌드 변화를 감지해 제품 출시와 마케팅 전략을 수립할 수 있다든가.인공지능에 대한 이해가 깊지 않아 너무 초보적인 상상에 머무는 것 아닌가 싶긴하다.

 

딥러닝의 원리를 이해하면 실현 가능한 상상과 아직 실현하기 어려운 상상을 구분할 수 있지 않을까? 수학이라면 일찌감치 내려놓은 수포자로서 과연 이해할 수 있을까 싶었지만,<친절한 딥러닝 수학>을 통해 기본 원리만이라도 이해할 수 있길 기대하며 도전했다.

 

결론적으로는 절반쯤 이해했다. 신경망의 개념과 머신러닝 알고리즘과의차이점을 이해했고, 딥러닝과 관련된 각종 용어들을 반복해서 접하다 보니 낯설지 않게 되었다. ‘회귀’, 분류’, ‘가중치’, ‘편향등은 일상에서도 사용하는 단어이지만 전문 용어로서는 전혀다른 개념이라 많이 헷갈렸지만, 예시와 함께 설명되어 있어 비교적 쉽게 이해할 수 있었다.

 

회귀는 연속값() 분류는 연속값이 아니라 대상을 성격에 따라 그룹화(19)

 

가중치나 편향을 변경하는 조작은실제로는 그림 속에서 직선을 변경하는 작업과 같은 거야. 그러니까 처음부터 직선으로 분류할 수 없는문제는 아무리 가중치나 편향을 조절해도 결국 분류할 수 없어() 직선으로 분류할 수 있는 문제는선형분리 가능, 직선으로 분류할 수 없는 문제는 선형분리 불가능(61)

 

입력과 출력만 있는 퍼셉트론을 단층퍼셉트론() 퍼셉트론의 유닛을 겹쳐서 층을 늘린 것을() 다층 퍼셉트론이라고 해. () 다층 퍼셉트론이 바로 신경망이야(63~65)

 

입력값에서 출력값까지 순서대로 계산하는 순전파는 이해했으나, 역전파와합성곱 신경망에 이르러서는 개념정도 이해하는 데 그쳤다. 한 번 읽고 이해할 수 있다 생각하지 않았으니, 재독, 삼독하면 이해의 폭이 넓어지지 않을까 싶다.

 

신경망의 개념과 원리를 몰라도 딥러닝, 머신러닝을 구현하는 데아무 문제가 없는데 쓸데 없는 시간을 낭비한다 생각할 수도 있다. <친절한 딥러닝 수학>의 저자도 신경망과 관련된 프레임워크나 라이브러리 데이터셋등이 풍부해져서 간단하게 경함할 수 있어 신경망의 개념과 원리를 몰라도 구현할 수 있다고 이야기한한다. 하지만 신경망의 개념과 기본 원리를 알면 응용하고 활용하기 용이하다는 점도 함께 강조한다.

 

신경망의 개념과 원리, 적용된 수식에 대해 알고 싶다면 <친절한 딥러닝 수학>은 대체로 기대를 충족할 것이라 믿는다.

 

* 해당 도서는 출판사로부터 무상으로 제공받았으며, 제 주관에 따라 솔직하게 작성했습니다.

 

#인공지능 #딥러닝 #신경망 #기초수학 #확률 #미분 #선형대수 #함수 #벡터 #가중치 #편향 #최적화 #퍼셉트론 #엔트로피 #순전파 #역전파 # 오차역전파법 #경사하강법 #합성곱필터 #특징맵 #ReLU #풀링

딥러닝을 공부하다보면 번번이 막히는 부분이 수학이다.

이 부분을 이해하기 쉽게 설명해 주는 책을 여러 번 구매해 보았었지만, 아직까지 입맛에 맞는 책을 찾기가 어려웠다. 

이번에 한빛미디어에서 친절한 딥러닝 수학이라는 책이 나와서, 혹시나! 하는 마음으로 이 책을 선택했다. 

음... 솔직히 얘기하자면 대화식으로 진행되어서 무지 산만하다.

즉, 내가 원하는 부분으로 건너뛸 수 있는 책의 형태이지만, 음성 녹취록처럼 대화의 흐름을 따라가야 하는 아날로그 방식으로 기록이 되어서 그런 면이 있지 않을까 생각된다. 

특정 부분에 대해서 두 명의 화자가 대화 형식으로 기록이 이어지므로, 내가 알고 있던 부분은 건너뛰어, 바로 내가 궁금한 부분만 읽고 싶은데, 그렇게 하려면 대화를 쭉 스크린 하면서 읽을 수밖에 없다. 

그런 면에서 대화식으로 나름대로 친절하게 설명하려고 했던 시도는 좋았지만, 그 효과는 중간에 책을 덮게 만드는 것 같다. 

좋은 면을 찾자면, 딥러닝을 공부하는 사람이라면 꼭 알아야 할 부분들을 잘 챙겨줘서 목차로 만들어 주었다는 점이 아닐 까.

신경망, 순전파, 역전파, 합성곱 신경망, 신경망 구현의 순서로 목차가 구성되어 있고, 부록으로 수학 기초, 파이썬과 넘파이 기초를 다뤄주고 있다. 

내가 딥러닝을 어느 정도 공부했으므로, 아는 부분들이 군데군데 있어서 책에 집중하지 못했을 수 있다고 생각한다. 

아마 딥러닝을 정말 처음으로 접하는 독자라면 이 책에서 기초부터 다뤄주는 흐름을 지루하게 느끼지 않으면서 충분히 따라갈 수도 있다고 생각한다. 

결론, 정말 딥러닝을 처음으로 접하는 분들께는 도움이 되지만 어느 정도 공부를 하다가 기초 수학을 탄탄하게 다지려고 이 책을 선택했다면 중간에 대화의 흐름을 따라가는 것이 지루하고 힘들어서 중간에 읽기를 포기하게 되는 책이 아닐까 생각된다. 



출처: https://yesicakim.tistory.com/entry/서평-친절한-딥러닝-수학 [또하나의가능성]

친절한 딥러닝 수학.png

딥러닝과 수학 잘 아는 친구가 옆에서 도와주는 느낌입니다.

 

대충 어떻게 접근해야 할지 감이 오고 풀 수 있을 것 같은 문제인데 막상 풀기 시작하면 풀어갈수록 수식이 복잡해지는 문제를 만났던 경험이 떠오릅니다.

 

조금 복잡해 보이기는 하지만 못 풀 문제로는 안 보이는 문제. 하지만 시도할 때마다 번번이 꼬이고 막히는 문제. 결국 성격 드러내게 만드는 문제. 왜 안 풀리지 하며, 반에서 수학 잘하는 친구에게 문제를 들고 가 도움을 요청합니다. 그 친구가 한동안 문제를 요리조리 살펴보더니 씩 웃습니다.

도형이 관련된 문제라면 전혀 생각지도 못했던 곳에 줄을 한두 개 스윽 긋습니다.

방정식 문제라면 그렇지 않아도 복잡해 보이는 수식에 엉뚱한 값과 변수를 추가합니다.

어랏, 제대로 꼬아서 만들어진 듯 보였던 문제가 단순한 조합으로 바뀌는 놀라운 현상을 목격합니다.

'역시'하며 엄지를 치켜세워준 뒤 친구가 알려준 힌트를 바탕으로 문제를 풀어나가기 시작하자, 옆에서 구경하던 다른 친구가 한마디 거듭니다. '그렇게 모두 계산해도 되지만 계산하기 전에 이렇게 모아서 정리해보면 변수들끼리 상쇄되니까 계산할게 많이 줄어들어서 훨씬 편해.'

이런 무자비하게 똑똑한 친구들 같으니라구!

 

 

여러 딥러닝 책을 펼칠 때마다 주춤하게 만드는 빽빽한 행렬식과 잔뜩 늘어놓은 미분 연산자 표시.

내용이 궁금하다가도 스윽 훑어보기만 하는데 곳곳에 보이는 무지막지한 수식들.

과연 이해는 고사하고 제대로 읽을 수 있을지 진지하게 고민하다 책을 덮은 경험이 많습니다.

 

딥러닝이 있는 곳에 늘 함께 있는 수식, 수학에 거부감이 별로 없거나 관련 분야 종사자들에게는 익숙하겠지만, 처음 접하는 사람에게는 꽤 높은 진입장벽입니다. 딥러닝에 관심이 있지만, 관련 수식 때문에 차일피일 미루거나, 조금 더 접근하기 좋은 책을 찾다 보니 딥러닝을 시작하는 게 계속 늦어지고 미뤄집니다. 이런 수식에 대한 부담을 덜어주는데 많은 도움이 되리라 생각합니다.

 

 

본격적인 얘기는 2장에서 퍼셉트론으로 시작합니다. '처음부터 모르는 용어가 나오네' 하며 씁쓸해하지 않아도 됩니다. 뭔지 친절하게 설명해 줍니다.

내용이 진행됨에 따라 그리스 문자와 수식이 계속 나타납니다. 그렇더라도 갑자기 수식이 튀어나오지는 않고, 등장인물 둘이 서로 설명과 질문을 번갈아 하며 수식을 완성해 나갑니다. 수식이 복잡해지면 간결하게 표시하기 위하여 어떤 그리스 문자로 대체하는지 알려줍니다. 수식이나 익숙하지 않은 문자 때문에 힘들어하지 않도록 설명을 곁들이는 것도 잊지 않습니다.

 

복잡하지 않은 예제로 딥러닝의 개념과 수식을 설명합니다. 3장까지 순전파와 역전파를 얘기하는데 쉽게 쉽게 읽힙니다. 읽는 대로 모두 이해가 되면 좋겠지만, 이 부분은 개인마다 차이가 있을 수 있다고 생각합니다. 크게 부담스러운 분량도 아니라 다음 장을 읽다가 언제라도 다시 보는 것도 괜찮다고 생각합니다.

등장인물을 따라 직접 수식을 풀어본다면 시간은 걸리겠지만 이해도는 그만큼 높아지리라 봅니다.

 

읽어가다 보면 원리는 생각보다 간단하다는 느낌을 받습니다.

그 원리를 수식으로 풀어나가고, 궁극적으로 우리가 원하는 대로 결과를 도출하도록 필요한 개념과 수식을 구성해 나가는 게 쉽지 않다는 걸 어렴풋이 알 수 있습니다.

프로그램이 주어진 데이터를 통해 판단에 필요한 정보를 추출할 수 있도록 프로그램하는 문제입니다.

 

4장 합성곱 신경망은 순전파와 역전파를 기본으로 합성곱에 필요한 개념을 추가하여 수식을 구성하는 모습을 보여줍니다. 책에서 가장 많은 수식과 도표가 있는 장입니다. 등장인물들이 수식을 풀어가는 테크닉을 감상하는 것도 나쁘지 않다고 않은 것 같습니다.

5장은 2장부터 4장까지 내용을 파이썬으로 구현하는 것을 단계별로 보여줍니다. 수식을 코드로 구현하는 것 이상이 들어있습니다. 

 

 

여러 연구자들 덕분에 간결한 수식으로 딥러닝을 만날 수 있습니다. 고맙습니다.

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

사실 개발로 먹고 살아가면서 AI 분야는 한번쯤 공부해보고 싶다고 생각하는 분야입니다.

한편으로는 항상 수많은 수식 앞에 무릎 꿇게 되는 분야이기도 합니다.

그래서 저는 각종 고등 수학, 공학 수학 책을 사서 공부해보자 하고 있지만 그것도 쉽지만은 않습니다.

 

이 책은 제목대로 딥러닝과 관련된 수학을 최대한 친절하게 설명하려 노력합니다.

신경망에 관심이 있는 (저와 같은) "윤서",

신경망을 잘 알고 있는 Computer Vision 전공자 윤서 친구 "지우",

신경망을 공부하고 있는 윤서의 동생 "도현".

이 세 명의 대화를 통해 '신경망이란 도대체 무엇인가'라는 의문을 조금씩 풀어나갑니다.

이론적인 설명으로 시작해서 마지막 챕터에서는 Python을 통해 신경망을 구현하는 것으로 끝납니다.

 

이 책이 완전한 문과생을 대상으로 하진 않습니다.

여기서 "완전한 문과생"이란 고등학교 이후로 미적분은 본 적도 없는 분들을 말합니다.

적어도 대학에서 경상통계를 공부하는 경영, 경제, 통계 등의 전공자를 제외합니다.

(윤서는 이공계 출신이지만 컴퓨터 전공은 아닙니다)

 

대화를 하나 갈무리해보았습니다.

 

/*

윤서: 신경망을 공부하려면 당연히 수학 지식이 필요하겠지?

지우: 확률과 미분, 선형대수의 기초 정도만 알고 있으면 돼.

...

지우: 전부 복습하지 않아도 돼. 모르면 그때마다 찾아보는 식으로도 충분히 따라올 수 있을 거야.

*/

 

한편으로는 적어도 이 책은 이해해야 신경망 관련 수학을 공부할 수 있지 않을까 싶습니다.

즉, 이 책을 이해하는 것을 목표로 개념 하나하나 공부해나가면 언젠가 신경망 관련된 수식을 두려워하지 않는 날이 올 거라 생각합니다.

 

이 글을 쓰는 시점에 저는 책을 다 읽지 못했습니다.

공부해야할 것도 쌓여 있었고 이 책을 이해하기도 그렇게 쉽지 않았기 때문입니다.

하지만 나중에 신경망 분야를 다시 공부하고 싶을 때가 오면 이 책을 가장 먼저 보게 될 것 같습니다.

 

이전 서평에서 잠깐 언급했었지만, Python 언어의 인기 상승에는 Deep Learning의 유행이 크게 기여했다고 생각한다. 유행에 따라 많은 소프트웨어 개발자와 학생들이 Deep Learning 공부에 시간을 투자하기 시작했고, 가장 처음 어려움을 맞이하는 부분이 '수학'이었을 것이다. 분명히 세부적인 벡터의 내적, 합성함수의 미분 등은 고등학교 또는 대학교에서 어렴풋이나마 배우고 지나갔을 텐데, 이것을 엮어서 Deep Learning이 학습하는 과정을 '수식'으로 압축해서 설명하면서 어려움을 겪었던 경험은 나를 포함해서 다들 있었을 것이라고 본다.

이런 어려움으로 인해서 수학적 이해 없이 단순히 TensorFlow, PyTorch 같은 라이브러리를 단순 사용하게 된다면 내가 풀고자 하는 도메인의 문제가 조금만 변경되어도 응용하기가 쉽지 않을 것이다. 대부분의 Deep Learning 입문자들 역시 수학적 이해가 필요하고 중요하다고 생각하기 때문에 본 서평 도서 외에도 여러 Machine Learning을 입문을 위한 수학책들이 계속해서 출판되고 있는 것이라고 짐작해본다.

그럼 본 도서 외에도 여러 수학 책이 있는 데 이 책의 장점이 뭐냐고 물어본다면, 대화형 방식의 최대한 친절한 서술이라고 할 수 있겠다. 프로그래밍 개발 서적 중 Head First 시리즈와 유사한 형태로 서술을 하는데, 사실 이런 서술 방식에 대해서는 개개인의 호불호가 있어서 본 도서와 같은 '대화형' 방식을 선호하는 사람과 대학 교재 스타일의 '서술형' 방식을 미리 살펴보고 도서 구매에 참고하면 좋을 것 같다.

책의 구성은 신경망의 개념 -> 순전파 -> 역전파, 그리고 합성곱 신경망 개념 및 코드 레벨로 구현하는 총 5개로 이루어져 있으며 첫 3개 장이 굉장히 친절하게 서술되어 있었다. 특히, 처음 공부하는 사람들이 궁금해할 만한 활성화 함수를 선형 함수로 사용하면 어떤 어려움이 생기는지와 같은 내용을 각 장 후반부에 따로 수록하고 있는 점이 훌륭하다고 생각된다.

책을 다 읽어보면 결국 벡터의 내적과 미분 연산의 반복이므로 Deep Learning에 관심 있는 중고등 학생부터 수학 공부를 놓은 지 시간이 좀 지난 소프트웨어 개발자들도 큰 무리 없이 재밌게 읽어볼 수 있다고 생각한다. 다만, 책에서 서술하고 있는 수식 전개를 꼭 손으로 같이 따라 해보는 것을 강력히 추천한다!

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다

 

 

 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.“

 

 

인공지능, 머신러닝, 신경망에 대해 피상적으로만 알고 있었던 나에게 ‘친절한 딥러닝 수학’은 딥러닝로에 대해 막연히 알고 있던 개념을 실체적으로 이해할 수 있게 알려준 책이다. 다른 책에서는 개념만 간단하게 알려주고 넘어가는 부분을 이 책에서는 체계적이고 친절하게 설명해주고 있다.

 

물론 수학적 배경 지식이 있으면 내용을 이해하는데 도움이 되나 만약 그렇지 않다고 하더라도 책의 부록을 통해 필요한 수학적 개념(벡터, 행렬, 미분, 합성함수 등)을 설명해주고 있어 수학 배경 지식이 없는 경우 이 부분을 먼저 읽고 본문을 보면 도움이 될 것 같다. (이공계 관련 학과를 졸업했으나 수학과 담 쌓은지 꽤 오랜 시간이 지난 나의 수학 수준에도 책에 등장하는 수학은 그리 어렵지는 않았다)

특히 이 책은 대화체와 적절한 그림, 표를 통해 추상적인 개념을 알기 쉽게 설명하고 있다. 

 

20210418_191443.jpg

 

 

물론 대화체나 그림으로 내용 설명을 하다보니 지면을 많이 차지하여 더 깊은 내용을 다루지 못한다는 한계는 있다. 그러나 퍼셉트론, DNN, 가중치, 활성화 함수, 경사하강법, 델타계산, 역전파 순서로의 설명이 자연스럽고 각 파트의 개념을 대충 넘어가지 않고 차근하고 친절하게 정말 누구한테 강의를 듣고 있다는 느낌이 들 정도로 설명하고 있다.

딥러닝의 기초를 익히고자 하는 나와 같은 입문자에게 적극 추천한다.

 

ㅊㅎㄷㄹㄴ.jpg

 

일단 책 진행은 '머신러닝 알고리즘'과 거의 유사하다.

 

등장인물들이 대화 형식으로 풀어나가고,

대사 중간 중간에 그래프와 수식들이 거침없이 등장한다.

그리고 중간 중간 Python 코드도 들어있다.

 

딥잘알인 한명이 딥알못인 다른 하나한테 가르쳐주는 식이라 대체로 쉽게이야기를 풀어가는데,

 

다만 안타까운 점은 '그래.' '그렇네!'로 한줄씩 차지하는 대사 때문에 안그래도 한페이지에몇문장 안되는데 공간이 조금 낭비되는 듯한 느낌이 있다.

 

그리고 다소 과장된 애니대사같은 전개와 함께 도넛이나 마카롱 먹으면서끝나는 살짝 불필요한 듯한 요소가 있어서 독자에 따라 계속 읽다보면 조금 거슬릴 수도 있을 것 같다.

 

근데 구성자체는 밑바닥 딥러닝에서 코드 분량을 조금 줄이고, 필요한 수학적 이론을 쉽게 설명하기 위해 대화형식으로 풀어나간다는 느낌이라 제목에 맞게 잘 나온 책 같다.

 

그리고 이 책은 딥러닝을 위한 이론을 기초수학으로 최대한 쉽게 설명하는책이지, 그 기초수학을 부록에 포함하긴 했지만 깊지는 않아서, 이책을 읽기전에 기본적인 수학이나 Python 문법은 익히고 읽어야한다.

 

 

결론: 수학공부합시다!

 

https://blog.naver.com/aul-_-/222314475371 

 

 

친절한 딥러닝 수학 지은이 다테이시 겐고 옮긴이 김형민 펴낸곳 한빛미디어(주) 초판 1쇄 발행 2021년 3월 2일 AI가 인공지능이고 딥러닝은 인공지능 알파고가 학습한 과정이라는 정도의 이해 수준이었던 나에게 딥러닝의 개념을 확실하게 가르쳐준 책이다. 수학은 부록을 보고 이해하는 수준으로 넘어가고 본문에 나오는 수식들도 흐름만 따라가는 정도로 읽었다. 신경망은 머신러닝 알고리즘 중의 하나다. 지금까지 존재하고 있지 않던 혁신 기술이 아니라 다른 알고리즘과 마친가지로 회귀나 분류 문제를 해결하는 과정이다. 신경망이라는 건 유닛(뉴런이라고 생각하면 된다)들이 서로 연결된 것이고 그 유닛들 사이의 가중치를 학습하기 위해 머신러닝을 사용한다. 신경망의 원형은 1950년대에 처음 아이디어가 나와 한때 유행했던 퍼셉트론이다. 하지만 퍼셉트론은 단순한 문제밖에 풀 수 없는 단점으로 점점 잊혀져 갔다. 그러다 1980년대에 오차역전법이라는 방법으로 신경망을 학습시킬수 있다는걸 알게 되면서 다시 유행했다가 신경망 훈련에 필요한 학습 데이터가 부족해 다시 겨울이 시작 되었다. 2000년대에 인터넷이 보급되면서 많은 데이터를 비교적 쉽게 얻게 되면서 퍼셉트론은 다시 인기를 끌고 진보하게 된다. 퍼셉트론의 유닛을 겹쳐서 층을 늘리면 다층 퍼셉트론이 되고 이것이 신경망이다. 심층신경망의 가중치를 학습시키는 것을 딥러닝이라 한다. 신경망에 필요한 수학 지식은 확률과 미분, 선형대수의 기초 정도 이다. 신경망의 계산은 입력값에 가중치 행렬과 편향을 적용한 뒤 활성화 함수에 통과시키는 과정을 층마다 반복하면 된다. 행렬의 곱셈, 백터의 덧셈, 활성화 함수의 계산은 컴퓨터가 하므로 그 과정을 이해하고 프로그래밍 언어로 구현하기만 하면 된다. 정답이 예상했던 것과 달라 가중치나 편향을 갱신해서 예상한 답에 가까이 간다는 방식은 머신러닝의 알고리즘이 학습하는것과 똑같다. 가중치와 편향의 학습은 미분을 이용해서 오차의 합을 가장 작게 하는 것이다. 입력이미지와 가중치를 곱해서 더한 뒤 활성화 함수를 통과 시키는 과정을 반복하는것이 합성곱 신경망이라고 이해하면 된다. 한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

매달 딥러닝 책들이 유행 만큼  나오고 있는 데, 내용 자체는 별로 새롭지 않습니다.


그 내용은 DNN, CNN, RNN, LSTM, GAN 쯤을 다루는 정도, 즉 적당한 입문서에 해당 됩니다.

 

딥러닝 책이 나오고 꽤 많은 시간이 지났고 그 만큼 입문서는 꽤 많이 나온 것 같은 데 아직도 입문서는 계속 나올까....는 

개인적으로는 입문서의 근본적인 문제점 때문이라고 생각합니다.  


그 근본적인 문제점은 딥러닝 자체를 원리 만을 원하는 독자들은 없기 때문에 많은 딥러닝 책들이 코드와 함께 원리를 설명하기 때문입니다.


이 때문에 입문서를 읽어도 코드를 복붙하는 것으로 끝나고,  심한 경우에는 책에서 어려운 원리를 이해하기 보다는 이 코드를 쓰면 어떻게든 해결된다 수준으로 얼버무리는 경우가 꽤 있습니다.


사실 원리를 모르더라도 목적, 프로젝트의 상황 파악,  데이터에 대한 준비가 잘 되어 있으면, 딥러닝 모델을 블랙 박스처럼 사용해도 좋은 모델을 만드는 경우도 많습니다.   

 

제 경험상 원리를 아는 것도 좋지만, 아무리 딥러닝 모델을 잘 쌓아도 데이터가 안 좋으면  쓰레기가 나온다는 경험이 대부분이라서, 데이터에 더 집중하는 경우가 더 많았습니다.

 

그럼에도, 원리를 대충 아는 사람들은 딥러닝을 내내 사용하면서, 마음 속 한 구석에는 묘한 긴장감이 들 수 밖에 없는 데,

이는 딥러닝 모델이 최대 성능을 못 내고 있는 것이 아닐까라는 자신감 없음에서 나오는 것 같습니다.


[친절한 딥러닝 수학]은 이러한 부분을 보충하는 데 도움을 주는 책입니다.


[친절한 딥러닝 수학]은 딥러닝을 최대한 쉽게 설명하는 책입니다.


이 책의 대부분을 퍼셉트론, DNN, CNN 설명에 집중하고 있으며,  대화의 형식으로 길게 풀어 설명하고 있습니다.

 

[친절한 딥러닝 수학]은 딥러닝 입문서에서 중간 쯤에서 다루는 CNN에 끝나기 때문에 1~2 페이지에 끝내고 넘어가는 개념들도 최대한 자세하게 다룹니다. 


다른 입문서에서 쉽게 넘아가는 부분도 최대 10 페이지 이상으로 설명하는 경우도 꽤 있습니다.


이러한 과잉 친절로 인하여 딥러닝 모델을 작성해본 경험이 있는 분들이라면, 상당히 편하게 넘어갈 수 있고 일주일이면 2번 반복해서 읽을 수 있는 정도의 책입니다.



물론, 이 책이 쉽게 한다고 해서, 다른 책으로 이해하기 힘들었던 부분들을 눈으로 읽는 것만으로는 확실히 부족해서,

퍼셉트론 부분까지는 눈으로 읽을 수 있지만, DNN 부터는 노트로 쓰고 정리해야할 필요는 있습니다.


 

개인적으로 이 책에서 대단하다고 싶은 부분은 딥러닝을 공부하면서 다른 입문서에서 어려운 내용이니까 의문이 들더라도,

 다 설명하기에는 페이지가 많이 필요할 것 같아서  슬쩍 넘어가는 부분을 [친절한 딥러닝 수학]은 CNN 까지의 내용은 최대한 어떻게 해서든 이해하자는 느낌이 들정도로 정리해놓았다는 점입니다.

 

물론 이렇게 딥러닝 원리에 대해서 자세히 설명했다고 해서 코드 부분은 완전히 포기하지는 않았는 데, 이 부분은 친절한 딥러닝 수학이라고 해서 수학만 하다 보면 현실감이 전혀 없기 때문에 이 책으로 딥러닝에 입문하는 사람들은 지쳐버리기 때문이라고 생각합니다.

 

결론적으로 다른 입문서를 읽은 다음에 읽을 책으로는 상당한 가치가 있다고 생각합니다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

KakaoTalk_20210331_155252144.jpg

 

이전에 봤던 다른 책들과는 대화 형식으로 내용을 풀어가고 있다는 점에서 가장 큰 차이점을 갖습니다. 입문하는 사람들이 질리지 않고 접근하는데에는 좋은 방법이라고 생각합니다. 평소에 궁금하거나 헷갈리는 점을 등장인물이 질문함으로서 해결이 되는 경우도 있었습니다. 또한 챕터가 끝나면 필수적으로 이해해야 하는 개념을 부가적으로 설명해줌으로서 정리하는 부분이 따로 있는것도 좋았습니다.

 

이 책은 딥러닝 기초 - 순전파 - 역전파 - 합성곱 - 파이썬 구현의 순서로 챕터가 구성되어 있습니다.

 

딥러닝 기초와 순전파까지는 이해하기 쉽게 설명되어 있습니다. 하지만 역전파, 합성곱에 접어들면서 아쉬운 점이 있었습니다. 역전파부터는 수학적인 계산이 많이 등장하는데, 최대한 쉽게 설명하고자 노력한 것이 느껴졌습니다. 하지만 수학적인 부분에 중점을 두다 보니, 알고리즘이 어떠한 방식으로 흘러가고 설명한 개념들이 어떻게 활용되는지 전체적인 그림을 그리는데에는 어려움이 있었습니다.

 

이 책을 먼저 보기 보다는, 딥러닝의 개념적인 입문을 위한 책 혹은 강의를 하나 정도 보고 개념적인 내용이 정리된 뒤에 보는 것을 추천하고 싶습니다. 먼저 딥러닝, 순전파, 역전파 같은 것들이 어떻게 흘러가는지를 충분히 이해한 뒤에, 그것들을 채우고 있는 수학적인 개념을 채우는 용도의 책으로는 좋은 책이라고 생각합니다.

 

 

딥러닝 관련 책이 많이 나온 상태에서 언제나 부족한 점은 수학 전공자들이 아닌 상태에서는 수식에 대한 이해가 떨어지는 것입니다.

물론 프로그램을 하기 위해서는 수식을 완전히 이해를 하지 않아도 예제만으로도 원하는 결과를 얻을 수 있으나 진행사하이 늦어지는 것은 어쩔 수 없는 것이라고 봅니다.

 

본 도서는 그런 수학에 대한 설명을 하는 여러 책 중에서 그래도 쉽게 적용이 가능하게 되어 있습니다.

3명의 캐릭터가 나와서 대화식으로 필요성에 대해서 질문을 수행하고 답하면서 하나씩 단계별로 설명을 하고 있습니다.

 

5개의 챕터로 이루어진 도서는 1-4까지는 개념과 이해를 위한 설명을 하고 5장에서 예제로 파이선을 활용하여 머신러닝을 수행합니다.

 

쉽게 읽히면서 어렵지 않게 이해하고 예제를 실행하면서 딥러닝의 이해 도와주어 다른 도서를 이해하는데 도움을 줄 것으로 보입니다.

 

* 도서 지원을 받아 작성한 리뷰 입니다. 

SE-c203aa56-65ae-4d81-aeaa-84ab58d2e398.jpg

 

한줄평을 쓰기도 애매하다. 결론부터 말하자면 크게 추천하지 않는다.

 

 

 

모든 것은 개인차가 있는 것이니 어쩔 수 없고...

 

서평단으로 참여하고 있지만 그거와 상관없이 내가 마음에 안드는 건 안드는 것이니.

 

가장 먼저 '기초수학/친절한' 이라고 적혀있지만 절대로 기초수학이 아니며 친절하지 않다.

 

최소한 행렬이 뭔지 시그마 함수 등 고등수학 정도는 알고 있어야 한다고 생각한다.

 

 

어떻게 해서든 식을 최대한 간랸하게 나타내볼려고 하는 것 같지만,

 

결국 공대생에게는 익숙한 그리스 문자와 여러 첨자들이 등장하게 된다.

 

물론 이런 문자와 첨자들을 설명해주긴 하지만...

 

여러 줄에 걸쳐서 수식을 보여주고 이건 이렇게 정리할 수 있어! 라고 해도 어려워 보인다.

 

도저히 기초수학이라는 타이틀을 달고 있는 책이라고 보기 어렵다.

 

 

게다가 좋은 IDE가 넘쳐나는데 굳이 대화형 셀(>>>)에서 코드를 작성하게 한다.

 

다시 말해, 대상 독자를 누구로 겨냥했는지 감이 안오는 책이다.

 

 

책의 구성은 여성 2명, 남성 1명이 등장하여 서로 대화하는 형식으로 진행된다.

 

처음에는 선생님이 학생들한테 설명하듯이 서술해나갈 줄 알았지만 아니였다.

 

딥러닝 책을 대화 형식으로 풀어낸 것이 전부이다. 이런 부분이 이 책의 유일한 장점이라고 말할 수 있을 것 같다.

 

즉, 다른 사람이 특정 개념에 대해 물었을 때(면접 등), 책에서 설명한대로 말하면 된다는 것이다.

 

 

대화체가 마음에 안드는 점은 지면을 크게 잡아먹는다는 것이다.

 

때문에 같은 내용을 담은 딥러닝 책들에 비해 페이지 수가 많으며, 이에 따라 당연히 책 값도 올라간다.

 

또한 챕터4 합성곱 신경망은 굳이 들어가야 싶은 챕터이기도 한다.

 

 

딥러닝 수학을 쉽게 가르쳐주겠다고 어슬프게 대화형식으로 서술했다가 이도저도 아닌 책이 된 것 같다.

 

따라서 개인적으로는 이 책 보다는 혼자서 공부하는 머신러닝/딥러닝을 적극 추천한다.

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

인공지능(AI), 머신러닝, 딥러닝이라는 말이 요즘 자주 들립니다. 파이썬 라이브러리 같은 것이 잘되어 있어서 딥러닝을 간단하게 돌려볼 수 있었지만, 내부적으로 어떤 알고리즘으로 어떻게 돌아가는지는 잘 모릅니다. 이 때 필요한 책이 ‘친절한 딥러닝 수학’이 아닐까 싶네요. 딥러닝 관련 수학 기초를 쌓기에 괜찮은 책이라 생각합니다.

 

이 책은 세명의 학생이 대화로 딥러닝 수학 지식을 전달합니다. 그래서 그런지 다른 수학책과는 달리 책장이 나름 가볍게 넘어가는 것이 특징입니다. 

 

인공 신경망(딥러닝)은 인간의 뇌, 뉴런 네트워크가 기억을 형성하는 방식을 따릅니다. 계속 비슷한 패턴을 학습하는 방식으로 딥러닝(학습)이 이루어집니다. 이 때 나오는 용어에는 가중치, 편항이 있습니다. 이런 용어부터 기초 하나하나 이 책에서 배울 수 있습니다. 인공 신경망 공부의 시작은 가장 단순한 알고리즘인 퍼셉트론으로 시작합니다. 처음에는 생소한 용어가 많아 불편한데 읽다보면 적응이 됩니다.

 

마지막 장 5장에서는 파이썬을 이용하여 딥러닝(이미지 사이즈 판정, 손글씨 인식)을 어떻게 구현하는지 배웁니다. 첨자가 많아 더 복잡해 보이는 수학공식, 배열로 어수선한 파이썬 코드가 어려워 보여도 따라하다보면 그리 어렵지 않습니다.

 

이 책에 나오는 수학공식이 어렵게 느껴진다면 부록에 수록된 수학 기초가 도움이 될 것 같습니다. 시그마, 미분, 편미분, 합성함수, 벡터, 행렬, 지수, 로그 등을 설명합니다. 그리고 파이썬 기초도 부록에 있습니다.

 

파이썬으로 딥러닝을 쉽게 사용할 수는 있습니다. 근데 뭔가 응용을 하고 싶다면 기초를 알아야 하는데 그 기초가 되는 것이 수학입니다. ‘친절한 딥러닝 수학’으로 이런게 있다는 것만 알아도 모르는 사람보다는 경쟁력이 있다고 생각합니다. 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

딥러닝은 몇 년 전부터 4차 산업 혁명의 핵심 기술인 인공지능의 하위 항목으로 대두되는 기술이다. 인공지능은 소위 말하는 컴퓨터를 사용하는 알고리즘(문제 해결을 위해 순차적인 연산을 통해 결과를 만들어 내는 프로그램)의 일종이고, 그 안에는 크게 데이터 기반으로 만들어지는 머신러닝(기계학습)과 규칙 기반의 알고리즘들이 있다. 머신러닝 안에는 문제의 유형이나 데이터의 성격에 따라 수많은 학습 방법들이 존재한다. 그중에는 신경망으로 대표되는 딥러닝 또한 포함되어 있다.

딥러닝은 신경세포가 하는 역할을 모사하여 수학적인 모델로 만든 것이 그 시작이다. 여러 차례의 인공지능에 겨울이 찾아왔지만, 컴퓨터 하드웨어의 급격한 발전과 폭발적으로 늘어난 빅데이터, 그리고 결정적으로 고정관념의 탈피로 인해 극복할 수 있었다.

첫 번째 겨울은 단일 신경망인 퍼셉트론(Perceptron)이 복잡한 문제를 해결하기 어렵다는 데에서 나왔다. 소위 말하는 XOR 문제였다. <친절한 딥러닝 수학>에서는 XOR문제를 조금 더 알기 쉬운 상황에 대입해서 이야기해준다. 바로 "정사각형 찾기 문제"이다. 이를 풀기 위해선 너비와 높이가 특정 지점에 있는 사각형들을 찾아야 하는데, 하나의 퍼셉트론 만으로는 필요한 부분을 모두 감쌀 수가 없었다. 이를 해결하는 방법은 사실 너무 단순하였는데, 그 이상의 퍼셉트론을 사용함으로 간단히 해결되었다. 즉, 다층 퍼셉트론(Multi-Layer Perceptron), 딥러닝의 본격적인 시작이었다.

두 번째는 조금 어려운 말이지만, 경사 소실(Gradient Vanishing) 문제이다. 신경세포 모사의 너무나도 최선을 다한 나머지, 시그모이드(sigmoid)라는 특수한 형태의 활성 함수를 사용한 것이 문제였다. 활성 함수는 간단히 말해 생물학 시간에 배운 적이 있을법한 "역치"와도 비슷한 이야기이다. 일정 수준 이상의 입력이 들어와야 활성화시켜주는 함수인 것이다. 이를 통해 다층 퍼셉트론이 복잡한 문제도 해결할 수 있도록 도와주는 역할을 한다. 하지만 시그모이드라는 함수의 문제는 "학습"단계에서 큰 문제를 마주하는데, 너무 작거나 큰 값이 들어오게 되면 기울기가 0으로 수렴해버리는 문제이다. 이를 해결하기 위해 사용된 방법 또한 간단하면서 결정적이었다. 바로 단순한 형태의 ReLU(Rectified Linear Unit), 정류된 선형 유닛을 사용한 것이다. ReLU는 아주 간단한 방법으로 활성 함수 역할을 수행하는데, 단순히 0보다 작으면 무시하고, 0보다 크면 원래의 값을 그대로 출력하는 방식이다. 이는 시그모이드에 비해 훨씬 간단한 모양이면서, 기울기가 0이 되어버리는 문제를 일정 부분 해결해 주었다.

그 이후에 찾아온 겨울들은 학습에 걸리는 시간에 대한 문제와 많은 데이터의 부재에 의해 나타났었는데, 이 부분들은 시간이 크게 해결해 주었다.

 

<친절한 딥러닝 수학>은 책 제목 대로 쉽지는 않고, 친절하게 이러한 딥러닝에 대해 알려준다. 배경 지식에 상관없이 모두가 가볍게 읽을만한 책은 아니다. 개인적으로는 이과생, 그중에서도 수식과 프로그래밍에 대해 많이 접할 수 있는 학부에 다니고 있는 대학생 이상이 딥러닝에 처음 입문한다면 적당하게 읽을만한 책이라고 생각이 된다. 하지만 친절할 필요가 없다고 생각이 된다면, <밑바닥부터 시작하는 딥러닝> 책을 강력 추천한다.

 



목차

CHAPTER 1 신경망을 시작하자

CHAPTER 2 순전파를 배우자

CHAPTER 3 역전파를 배우자

CHAPTER 4 합성곱 신경망을 배우자

CHAPTER 5 신경망을 구현하자

APPENDIX A 수학 기초

APPENDIX B 파이썬과 넘파이 기초



주요 내용

  • 신경망 개념과 구조

  •  신경망이 문제를 해결하는 원리

  •  확률, 미분, 선형대수, 함수, 벡터

  •  퍼셉트론으로 이미지 판별하기

  •  신경망의 가중치와 편향

  •  최적화 문제와 목적 함수, 교차 엔트로피

  •  순전파, 역전파, 오차역전파법, 경사하강법

  •  합성곱 필터, 특징맵, ReLU, 풀링



각 장의 개요

이책의 주요 내용을 1장부터 살펴 봅니다.

1장 신경망을 시작하자 - 신경망 개념을 알아보고 머신러닝 알고리즘과 어떤 차이가 있는지 살펴봅니다. 신경망이 어떤 구조로 되어 있고 무엇을 할 수 있는지 그림과 간략한 수식으로 설명합니다.

2장 순전파를 배우자 - 퍼셉트론이라는 신경망을 구성하는 단순한 알고리즘 안에서 어떤 식으로 계산이 진행되는지 자세히 설명합니다. 이미지 사이즈를 판별하는 문제를 예로 들어 입력값에서 출력값까지 순서대로 계산하는 순전파를 배웁니다.

3장 역전파를 배우자 - 신경망에서 적절한 가충치와 편향을 어떻게 계산해서 구하는지 설명합니다. 미분을 사용해서 오차를 가능한 한 작게 만들도록 가중치와 편향을 갱신하지만 이러한 정공법으로는 계산이 너무 힘듭니다. 그래서 계산을 간단하게 해주는 오차역전파 법을 사용합니다.

4장 합성곱 신경망을 배우자 - 신경망의 기본적인 구조를 이해한 것을 바탕으로 합성곱 신경망을 이용한 이미지 처리 방법을 공부합니다. 합성곱 신경망 특유의 구조나 계산방식을 다루면서 가충치와 편향 갱신 방법을 설명합니다.

5장 신경망을 구현하자 - 2,3,4장에서 배운 신경망 계산방법을 파이썬으로 구현합니다. 2장과 3장에서 배운 기본적인 신경망을 사용해서 이미지 사이즈 판정을 해보고, 4장에서 배운 합성곱 신경망을 사용하여 손글씨 인식을 구현해봅니다.


총평

요즘 AI가 많이 핫해서 인공지능 분야로 개발자들이 몰리고 있습니다.

인공지능을 좀더 깊게 들어가면 필수적으로 수학을 해야 합니다. 이책은 어려운 인공지능 수학을 쉽게 풀어서 개념을 잘 설명 하고 있습니다. 수포자 개발자들에게 한줄을 빛이 되어 줄 책이라 생각합니다.





 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

친절한딥러닝수학.jpg

 

 

본 리뷰는 한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

개발자의 처우와 AI 분야의 구인, 관심이 늘어나면서 프로그래머가 아니었으나 딥러닝을 배우고자 하는 사람, 

프로그래머였으나 딥러닝/수학에 진입장벽이 있는 사람, 즉 초보자 들을 대상으로 하는 책이란 느낌을 확 받았습니다.

전반적으로 책의 디자인, 내용 구성, 전개방식이 하나하나 세세하게 짚어나가는 느낌을 받았습니다.

 

수학 기호라든지, 수식 해석, 전개 들은 아무리 친절하다해도 어쩔수없는 벽이 있어 보입니다.

예를 들어 오차역전파를 설명하는 부분에서 미분을 한 단계씩 전개하는 과정에서

제가 느꼈던 예상 독자층의 수준을 상상해봤을때 "아.. 이 부분을 이해할 수 있을까?" 하는 개인적인 염려도 들긴 했습니다.

 

그렇다해도 지금까지 봐왔던 서적들 보다는 확실히 '친절하다' 는 느낌을 받았고

이공계 출신 사람들은 잘 따라갈 수 있다고 생각했습니다.

 

그림이 많고 딥러닝을 모르는 등장인물에게 대화형식으로 하나하나 알려준다는 컨셉으로 진행하다보니

독자로 하여금 부담을 덜어줄거란 생각이 듭니다.

 

 

 

  • 표지와 구성
    • 인공 신경망 이해를 위한 기초 수학이라는 부제와 함께 친절한 딥러닝 수학이라는 제목이 크게 써있다.
    • 두 명의 젊은 여성, 그리고 한 명의 남성이 만화체로 그려져 있다.
    • 300페이지 가량의 부담없는 두께, 태권도 노란 띠나 병아리를 연상시키는 밝은 노란색의 표지.
    • 그리고 대화를 하듯 가끔 도넛도 사오면서 진행되는 질답형식의 본문.
    • 누가 봐도 "딥러닝 초보자님들! 이 책을 집으세요!" 라는 느낌의 디자인.
    • 책을 보내주신 한빛미디어에는 미안하지만 말리고 싶다. 

 

  • 책은 크게 두 부분으로 나뉜다.
    • 전반부는 수학. 경사하강법과 오차역전파를 다룬다.
    • 수식을 하나하나 자세하게 풀어서 설명해준다.
    • 후반부는 코딩. 파이썬으로 밑바닥부터 신경망을 구현한다.
    • 코드를 한 줄 한 줄 친절하게 읽어준다.
    • 그러나 둘 다 초보자가 보고 습득할 레벨은 아닌 것 같다.

 

  • Chapter 1은 표지와 내용이 제법 일치한다.
    • 신경망의 구조를 정말 친절히 알려준다.
    • 인공지능의 분류, 은닉층이 뭔지 등등

 

  • 수학 부분 (Chapter 2 ~ 4)
    • chapter 2 순전파까지가 이 책을 처음으로 딥러닝을 공부하려는 독자가 기대하는 레벨이 아닐까 싶다.
    • chapter 3 역전파에서 편미분이 등장하는 것까지 괜찮다. 피할 수 없다고 생각한다.
    • 그 뒤부터 페이지를 차지하는 수식의 비중이 점점 커지는데, 행렬 연산을 죄다 풀어서 보여주는 방식이라는데서부터 뭔가 잘못 되어간다는 느낌을 받기 시작한다.
    • 정말 초보자에게 읽힐 생각이었다면 그 전에 첨자를 위 아래에 몇개씩 달고 다니는 그리스 문자들이 등장하는 부분부터 다른 방식을 사용했어야 하는게 아닌가 싶다.
    • 저자도 이 부분들이 독자가 어려워하는 부분이라는 것을 잘 알고 있는 것으로 보인다. 
    • 최대한 식을 간단하게 축약하려고 노력하고 있고 각 항과 기호의 의미를 자세하게 설명하고 있기 때문에 이 부분이 그나마 위안이 된다.
    • 그렇다면 chapter 4 합성곱 신경망을 굳이 들어갔어야 하나 하는 의문이 생긴다.
    • 한 층만 해도 합성곱 필터에 붙는 첨자는 벌써 4개 (채널, 가로, 세로, 필터). 
    • 세 줄에 걸쳐 적힌 수식을 "좀 어려웠나? 이렇게 정리할 수 있어" 라고 정리한 식은 3중 시그마.
    • 이 책을 착실히 따라가서 수식을 볼 수 있게 되었다고 해도 책에서 목표로 하는 초보자에게는 너무 급격한 진도가 아닌가 싶다. 
    • learning rate가 너무 크면 학습이 어려운데. 하는 걱정이 든다. 

 

  • 코딩 부분 (Chapter 5)
    • 파이썬과 numpy를 사용해서 FCN(정사각형 찾기)와 CNN(MNIST)을 구현한다.
    • 사실 70페이지가 안 되는 분량에 소스코드와 그림이 모두 담겨있고,
    • 그 와중에 등장인물들이 대화를 해가며 코드를 설명한 정리 능력에 감탄했다.
    • 그런데 파이썬 문법과 numpy 문법에 대한 설명은 하나도 없고, 앞에서 나온 수식 구현에 집중한다.
    • 바꾸어 말하면 파이썬에서 함수를 만들어 쓰는 법이나 numpy로 내적(np.dot), 전치(np.transpose)하는 정도는 알고 있어야 한다.
    • 여기에서도 CNN이 들어가는 바람에 난이도가 급상승한 느낌이 든다. 

 

  • 대상 독자가 누구인지 잘 모르겠다.
    • 위에서 내용을 대강 정리했지만, 이 책을 막힘 없이 따라갈 수 있으려면 numpy에 어느 정도 익숙해야 한다.
    • 수학을 배우는 수학책이라는 관점에서도 행렬 연산과 시그마 정도는 익숙해야 하고, 위아래 첨자가 여러개 붙은 그리스 문자를 보고도 겁을 내지 말아야 한다.
    • 내 경험에 비추어 판단하면 딥러닝에 입문하는 이공대생 정도가 여기에 가깝다.
    • 그런데 numpy에 익숙한 사람을 상대로 .py도 주피터 노트북도 아닌 대화형 셀(>>>)에서 코드를 짜게 하고,
    • 그런데 책 뒤에 부록으로 실린 수학 기초에 극한과 미분의 개념행렬 곱셈 방법이 실려 있고,
    • 수학 기초 뒤에는 파이썬 기초가 있는데 숫자 계산 방법, import numpy as np 하는 방법 등이 친절하게 실려 있다.
    • 이런걸 모르는 사람이라면 본문 내용을 전혀 따라갈 수 없을 게 분명하다.

 

  • 미안하지만 솔직하게 말해야 할 것 같다.
    • 딥러닝에 필요한 수학을 배우고 싶다면 김성훈 교수님이나 Andrew Ng 교수님의 강좌가 나을 것 같습니다.
    • 밑바닥부터 뭔가 만들어보고 싶다면 같은 출판사에서 나온 밑바닥부터 시작하는 딥러닝이 나을 것 같습니다.

 

※ 한빛미디어 2021 도서 서평단 "나는 리뷰어다"의 일원으로 도서를 제공받아 작성한 리뷰입니다.

1. 표지

 

800x0.jpg

 

 

 

2. 책 정보

1. 분류

- 국내도서
    - IT 모바일
        - 인공지능, 전산수학

2. 책소개

줄거리

고등학교 수학으로 이해하는 인공 신경망
수학 기초는 약하지만 일단 개발부터 하고 보는 그대에게

수학을 어려워하는 마음을 깊이 공감하고 가능한 한 이해하기 쉽게 풀어냈다. 다양한 그림과 수식으로 신경망의 개념과 원리부터 경사하강법, 오차역전파법까지 설명하며 등장인물의 대화 속에서 자연스럽게 익힐 수 있도록 배려했다. 차근차근 쌓은 이론을 바탕으로 신경망을 구현해 이미지 크기를 판정해보고 손글씨도 식별해볼 수 있다. 수학이 약해 딥러닝이 낯설게 느껴졌다면, 딥러닝 이해에 필요한 수학 기초를 탄탄히 다지고 싶다면 이 책이 아주 좋은 안내자가 되어줄 것이다.

3. 저자 소개

이름

다테이시 겐고 

히스토리

사가대학교 졸업 후 몇 개의 개발 회사를 거친 뒤 2014년 LINE Fukuoka에 입사하여 데이터 분석 및 머신러닝을 전문으로 하는 조직을 신설하고 추천, 텍스트 분류 등 머신러닝을 사용한 제품을 담당했다. 2019년 스마트뉴스 주식회사에 입사하여 현재 머신러닝 엔지니어로 근무하고 있다.

3. 책에 대한 느낌

이 책을 처음 몇 페이지를 읽었을때 '미움받을 용기'라는 책이 생각났다. 책의 구성이 대화체로 되어 있기 때문이다. 대화체 방식은 잘못 사용하면 산만해질 수도 있다. 하지만 이 책에서는 오히려 대화체라서 딥러닝 수학 잘하는 친구한테 과외를 받는 느낌을 받았다. 배우려는 친구인 윤서가 가끔 던지는 질문은 나도 가끔 해보고 넘어간 생각들이라 더 몰입이 잘 된 것 같다.

책의 구성은 서점에서 흔히 볼 수 있는 책처럼 300페이지 정도의 분량이다. 하지만 보통 보던 책들과는 다르게 글자수가 매우 적다. 대화체로 이루어져 있다보니 그럴 수 있다고 생각한다. 그런데 놀라운건 적은 양의 글자로도 딥러닝에 사용되는 수학을 이해하기 쉽고 명확하게 설명한다는 점이다.

나는 이전에 딥러닝에 관련된 책들을 2~3권 정도 읽었었다. 여러 책들을 읽으면서 대략적인 수학적 흐름은 이해가됐다. 하지만 내가 읽었던 책들은 조금만 수식이 복잡해지면 설명을 생략한다. 항상 이 부분이 아쉬웠는데, 다른 공부 방법을 찾지 못해서 항상 대략적으로만 이해를 하고 넘어갔다.

이 책을 읽으면서 느꼈던 가장 좋은점은 애매하거나 복잡하다고 설명을 생략하지 않는다는 점이다. 그리고 차근차근 순서대로 진행되는 것이, '아! 이런 방식으로 딥러닝이 발전해 온 것이구나.'라고 할 정도로 자연스럽다. 예를들어, 갑자기 역전파를 설명하는 것이 아니라, 순전파에서 퍼셉트론 → DNN → 가중치, 활성화 함수 → 경사하강법, 델타계산 → 역전파 순서로 이전에 설명한 것과 다음에 설명할 것의 흐름이 자연스럽게 이어지게 설계되어 있다.

그래서 나는 이 책은 딥러닝을 시작하는 초보 연구자들이나 딥러닝에 사용되는 수학을 대략적으로만 알고 있던 사람들에게 매우 매우 추천한다.

 

 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

근래에 딥러닝 기초 관련 서적을 많이 접하고 있다.

신경망에 이어서 수학적 지식을 보충하기 위해

친절한 딥러닝 수학을 선택하였다.

 

이 책은 인공지능 신경망에 흥미를 가지고

기초부터 제대로 이해하고 싶은 개발자를 대상으로 한다.

개발자인 나에게는 딱 적합한 도서이다.

 

책에서는 인물을 3명 등장시키고,

대화를 통해서 궁금증을 해소시켜 나가는 방식이다.

독자가 궁금해할 궁금증과 해답을 제시함으로써

하나씩 단계적으로 이해를 시켜나가는 과정이 상당히 좋았다.

 

나는 SW 개발자임에도 AI 분야는 초보이기에

인공지능 관련 서적을 자주 공부하려 한다.

 

그러나 여러 AI 기초 서적을 접하면서 느낀 것은

저자가 기초부터 아무리 쉽게 설명하려 해도

한계가 있다는 것이다.

 

개인적인 생각으로는

미분, 벡터, 행렬 등의 수학 지식을 채우고

신경망, 딥러닝 등의 기초를 여러 서적들을 통해

충분히 반복하며 학습해야 이해 수준이 깊어질 것 같다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

0. 도서 정보

 - 도서명 : 친절한 딥러닝 수학

 - 저자 : 다테이시 겐고

 - 구매링크 : 교보문고

 

 

1. 서평

 1) 서평

   이 도서는 딥러닝의 기본이 되는 퍼셉트론, 경사하강법, 역전파 등의 이론을 윤서, 지우, 도현이라는 가상의 세 인물이 나누는 이야기로 풀어내었다. 지우(딥러닝전공자) 가 윤서(프로그래머) 에게 딥러닝 이론에 대한 것을 알려주는 형식으로 진행이 되기에 수식을 처음 접하시는 분들이 조금이나마 읽기 편하도록 제작이 되었다. 특히, 개인적으로 관심있게 본 부분은 각 챕터 끝부분의 'COLUMN' 부분이다. 해당 'COLUMN' 에서는 도현(전공학부 학생, 동생) 이 윤서(누나) 에게 짜투리 상식 혹은 책을 읽다가 궁금했던 부분을 알려주는 데 이 부분을 주의깊게 읽었다. 왜냐하면, 딥러닝에 대한 이론은 다른 도서에서도 다 소개하는 부분인데 반하여, 해당 부분은 그냥 모르고 지나가기 일쑤이기 때문이다. 책의 뒷 부분에는 python의 numpy 모듈을 통하여 딥러닝을 구현하는 방법도 소개되어 있다. 

 

 

 2) 추천하는 분

  - 딥러닝을 기초부터 시작하고 싶어하시는 분

  - 수식에 대한 접근에 있어 두려움을 가지시는 분

 3) 추천하지 않는 분
  - Tensorflow, Pytorch 등 최신의 라이브러리를 통하여 딥러닝을 구현하고 싶으신 분(해당 라이브러리에 대한 소개는 없음.)

  - 수식의 이해에 있어 어려움이 없으신 분(예시가 많기에 오히려 불편할수도 있을거 같음.)

7775.jpg

 

신경망 알고리즘과 AI 기술이 급속도로 발전하고 있고, 최근에는 머신러닝 관련 프레임워크나 라이브러리가 정말 훌륭한 수준으로 출현하고 있다. 개발자들은 이러한 프레임워크나 라이브러리를 가져다 쓰면 바로 머신러닝과 관련된 프로그램을 구현할 수 있다. 하지만 결과를 위해서 가져다 쓰기만 한다면 어느 부분에선가 막히는 경우가 생길 것이다. 기초를 잘 익히고 탄탄하게 해 놓으면 이를 기반으로 응용을 할 수 있으니 신경망 안에서 일어나는 것들에 대한 학습이 필요하다고 생각한다. 그런 의미에서 한빛미디어에서 출간된 '친절한 딥러닝 수학'은 딥러닝에 필요한 기초 지식 특히 수학과 관련된 부분을 잘 다루고 있다.

 

이 책의 대상독자는 신경망에 흥미를 가지기 시작했고 그 내부를 제대로 이해하고 싶은 개발자를 대상으로 한다. 실제로 이 책에 나온 인물 중 한명이 이에 해당한다.

 

7776.jpg

 

이 책에는 3명의 캐릭터가 등장하는데, 딥러닝에 흥미가 생기고, 업무에서 신경망을 사용할 기회가 많아진 프로그래머 윤서, 대학에서 컴퓨터 비전을 전공한 윤서 윤서 대학 친구 지우, 컴퓨터 사이언스 수업을 통해 신경망을 공부하고 있는 도현, 이렇게 3명의 대화를 통해 신경망이란 도대체 무엇인가?에 대한 궁금증을 풀어준다.

머신러닝, 신경망, 기초 수학 등 일반적으로 딱딱할 수 있는 내용을 3명의 대화를 통해서 옆의 사람에게 설명하 듯 내용을 전달하고 있다. 3명의 대화를 읽다보면 3명의 캐릭터를 먼저 보게 되는데, 각 캐릭터의 표정이 대화의 분위기에 따라 변하기 때문에, 지루하지 않게 대화의 내용을 읽을 수 있다. 대화 중간에 삽입된 그림이나 수식은 대화에서 설명된 내용을 이해하기 쉽게 돕거나 부연 자료로 활용된다.

 

7777.jpg

 

저자 다테이시 겐고는 이 책을 통해 얻은 기초지식을 어떻게 활용할지는 독자들에게 달려있다고 얘기한다. 신경망은 매일매일 발전하고 있고, 다양한 분야에서 많은 성과를 이루고 있는데, 단순히 배우고 끝나는 것이 아닌 신경망의 가치와 그 활용방법을 생각하고 실천으로 옮겨주길 바라는 마음을 이 책에 담고 있다.

이 책은 총 5장으로 구성되어 있는데, 

1장은 신경망의 개념을 알아고보 머신러닝 알고리즘과의 차이점을 얘기한다.

2장은 퍼셉트론이라는 신경망 구성 알고리즘안에서 일어나는 계산을 설명한다.

3장은 신경망에서 적절한 가중치와 편향을 어떻게 계산해서 구하는지 설명한다.

4장은 합성곱 신경망을 이용한 이미지 처리 방법을 공부한다.

​5장은 2,3,4 장에서 배운 신경망 계산 방법을 파이썬으로 구현한다.

 

이 책에 수록된 소스는 한빛미디어 홈페이지에 가면 참고할 수 있다.

https://www.hanbit.co.kr/src/10388

 

5장까지의 내용을 읽었다면 자연스럽게 딥러닝, 신경망이 어떤 방식으로 구현되어 있는지 이해될 것이다. 이 책을 읽음으로써 많이 알려져있지만 그 내부는 몰랐고, 또 수학이라는 필수적인지만 어려운 학문의 내용을 지루하지 않고 재미있게 읽힐 수 있는 좋은 기회라고 생각한다.

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

#친절한딥러닝수학 #딥러닝 #신경망 #퍼셉트론 #나는리뷰어다 #한빛미디어

 

이번에 리뷰할 책은 한빛미디어의 인공신경망 이해를 위한 기초수학 친절한 딥러닝 수학입니다.

 

책의 구성

책의 제목에서 느껴지는 것이 무엇일까요?

바로 "친절한" 입니다.^^

이 책은 인공신경망을 공부하려고 하는 윤서와 대학에서 컴퓨터 비전을 전공한 지우, 그리고 장래희망이 머신러닝으로 무엇인가를 만들고 싶은 윤서의 도현이의 이야기 입니다.

 

윤서의 부탁을 거절하지 못하는 지우는 치즈케이크와 같이 단것을 좋아하는 학생입니다.

딥러닝에 대해 공부하고 싶은 윤서는 딥러닝에 대해 아는것이 거의 없는 처음 배우는 학생인데 컴퓨터 비전을 전공한 지우를 통해서 하나 하나 깨우치게 되는 내용입니다.

 

이 책은 대화체로 구성이 되어 있습니다.

 

 

딱딱해 보이는 수식처럼 보이지만 이렇게 물어 보고 거기에 대답하는 형식으로 되어 있다 보니 그냥 현실에서 친구에게 모르는 부분~

살짝 이해가 안되는 부분을 다시 물어 보고 거기에 자세하게 답변을 해 주는 지우 입니다.

 

 

한개의 단원이 끝나면 이렇게 배운 내용을 정리해 주는 형식으로 되어 있습니다.

 

책의 내용

책의 내용은  친절한 딥러닝 수학입니다.

이 책은 딥러닝을 배우면서 거기에서 필요한 수학을 채워 나가는 형식입니다.

인공지능에 필요한 수학은 미분,함수,행렬,선형대수 등이 필요하게 됩니다.

하지만 이러한 미분,함수,행렬,선형대수를 배워도 이것이 딥러닝에 어느 부분에 필요한지 알수가 없습니다.

물론 수학을 잘 하는 학생이 딥러닝에 대해 배울때 훨씬 도움이 될 수 있습니다.

 

이 책은 딥러닝의 신경망에 대해 배웁니다.

신경망을 배우면서 필요한 수학함수가 나옵니다.

이 수학함수에 대해 배우게 됩니다.

즉 딥러닝에 필요한 수학~ 이 수학이 어디에서 어떻게 사용되는지를 배웁니다.

 

이 책이 필요한 분

1. 신경망을 공부하려고 하는 분

2. 딥러닝의 느낌은 아는데 수학때문에 딥러닝 공부가 어려우신 분

3. 딥러닝을 딱딱하게 배우지 않고 그냥 친구와 대화하면서 묻고 답하는 형태로 공부하고 싶은분

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

1.png

 


 

한빛미디어에서 해당 책을 지원받아 리뷰를 작성합니다. 해당 책은 딥러닝의 순전파, 역전파, 합성곱 필터, 신경망 구현으로 나뉘어 수학적 원리를 소개한 후 파이썬으로 직접 구현을 합니다.

 

 

2.png

 

 

 

 

경사하강법을 배우는데 직접 숫자를 대입해 보면서 가장 오차가 적은 곳을 찾아가는 학습을 할 수 있습니다.

 

 

3.png

 

 

 

역전파를 학습하는데 있어 편미분을 대신하는 델타가 나옵니다. 신경망의 파라미터들을 일일히 미분하지 않고 델타라는 개념을 통해 복잡함을 줄일 수 있는 내용이 나옵니다.

 

 

4.png

 

 

 

위의 쓰여있듯이 이 델타를 구하기 위한 계산법이 신경망 학습의 핵심이라고 한다. 즉 역전파에서 마지막 출력층으로 부터 입력층에 이르는 델타들을 구하는 것이라 볼 수 있다.

 

 

5.png

 

 

 

내용을 간단히 정리하면, "신경망 학습 -> 목적 함수를 가장 작게하는 가중치를 찾는 최적화 문제 풀기 -> 경사하강법을 사용해서 풀기 -> 직접 가중치를 편미분하는 것이 어렵다 -> 가중치가 부여된 입력을 편미분 = 델타" 와 같다고 할 수 있다.

 

 

7.png

 

 

 

합성곱 필터에 대해서도 나와있다. 위의 사진으로 내용을 대체한다.

 

 

8.png

 

 

 

마지막으로 여태까지 배운 내용을 바탕으로 신경망을 구현한다. 먼저 순전파, 역전파를 구현하고 이후 MNIST와 같은 예제들을 구현한다.

 

 

 

책의 내용을 토대로 간단히 정리해 보자면 이렇다.

 

 

1. 순전파: 학습 데이터를 순전파시키고 가로세로비가 높은지 낮은지 판단한다. (책에서는 가로세로비를 판단하는 신경망이 예제로 나왔다.)

 

2. 역전파: 예측 결과를 바탕으로 각 층 정답 레이블과의 오차(델타)를 계산한다.

 

3. 파라미터 갱신: 게선된 오차(델타)를 바탕으로 편미분을 구해서 파라미터를 갱신한다.

 

 

이 책을 딥러닝 초보자 분들이 읽어보신다면 딥러닝의 안에 들어있는 수학의 기초적 원리를 파악하는데 도움이 되리라 생각한다.

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
친절한 딥러닝 수학
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
친절한 딥러닝 수학
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
친절한 딥러닝 수학
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실