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

한빛출판네트워크

신경망 첫걸음

수포자도 이해하는 신경망 동작 원리와 딥러닝 기초

한빛미디어

번역서

판매중

  • 저자 : 타리크 라시드
  • 번역 : 송교석
  • 출간 : 2017-04-03
  • 페이지 : 296 쪽
  • ISBN : 9788968483509
  • 물류코드 :2350
초급 초중급 중급 중고급 고급
4.6점 (17명)
좋아요 : 10

인류에겐 이런 딥러닝 입문서가 필요했다

 

딥러닝 입문자가 늘고 있지만, 수학 이론을 공부하자니 갈 길이 멀고 원리를 무시한 채 코딩부터 하자니 응용이 불가능하다. 수학 공식과 통계 이론을 달달 익혀야 딥러닝을 배울 수 있는 것은 아니다. 딥러닝을 관통하는 핵심은 신경망이고, 신경망의 기초는 행렬을 통한 가중치 계산뿐이다. 동작 원리를 이해하면 응용과 구현은 자연히 따라온다. 

이 책은 전공을 불문하고 행렬곱과 다항식 미분에 필요한 사칙연산만 할 수 있다면 누구나 신경망을 이해하고 나아가 파이썬으로 구현할 수 있음을 보여준다. 수학 공식을 최소화하고 친절한 그림과 명료한 문장으로 개념을 설명한다. 기존의 많은 자료에서 너무 어렵게 혹은 너무 간단히 넘어갔던 가중치, 오차 역전파, 경사 하강법 등을 철저히 일반인의 눈높이에서 학습할 수 있다.

 

신경망첫걸음.jpg

 

 

저자

타리크 라시드

Tariq Rashid

20년 경력의 베테랑 개발자. 물리학 학사와 머신러닝 및 데이터 마이닝 석사 학위가 있으며, 런던 파이썬 미트업 그룹을 이끌고 있다. 천체물리학, 공공 에너지, 보안 기기, 성능 튜닝, 금융 분야 수치 컴퓨팅, 웹 감정 분석, 통신 네트워크 등 다양한 분야에서 오픈소스와 함께 즐겁게 일했다. 영국 정부의 IT 혁신 사업을 이끌어 오픈소스 도입에 앞장서기도 했다. 기술과 수학을 많은 사람에게 전파하고 싶은 마음에 일반인 대상으로 파이썬과 신경망을 가르치고 있고, 집필과 강연 활동을 펼치고 있다.

역자

송교석

고려대학교 졸업 후 카네기 멜런 대학교에서 컴퓨터 과학 석사 학위를 받았다. 안랩에서 10년간 근무했으며 분사한 노리타운스튜디오의 대표이사를 역임했다. 최근에 인공지능 스타트업 메디픽셀을 설립해 대표를 맡고 있으며, CT 영상 분석을 통한 폐암의 조기 진단 등 의료 분야에 인공지능을 활용하는 개발 프로젝트를 진행하고 있다.

 

프롤로그

 

PART 1 인공 신경망의 동작 원리

1장 인간에게는 쉽고 기계에게는 어려운

2장 간단한 예측자

3장 분류는 예측과 그다지 다르지 않습니다

4장 분류자 학습시키기

5장 분류자 1개로는 충분치 않을 수 있습니다

6장 대자연의 컴퓨터, 뉴런

7장 신경망 내의 신호 따라가기

8장 솔직히 행렬곱은 유용합니다 

9장 3계층 신경망에 행렬곱 적용하기

10장 여러 노드에서 가중치 학습하기

11장 여러 노드에서의 오차의 역전파

12장 다중 계층에서의 오차의 역전파

13장 행렬곱을 이용한 오차의 역전파

14장 가중치의 진짜 업데이트

15장 가중치 업데이트 예제

16장 데이터 준비하기

 

PART 2 파이썬으로 인공 신경망 직접 만들기

17장 파이썬

18장 인터랙티브 파이썬 = IPython

19장 파이썬 시작하기

20장 파이썬으로 인공 신경망 만들기

21장 MNIST 손글씨 데이터 인식하기

 

PART 3 더 재미있는 것들

22장 나만의 손글씨 데이터

23장 신경망의 마음속 들여다보기

24장 회전을 통해 새로운 학습 데이터 만들기

 

에필로그

 

부록 A 기초 미분

부록 B 라즈베리 파이에서의 신경망 구현

수포자도 이해하는 신경망 동작 원리와 딥러닝 기초

전 세계 독자가 주목한 정말 쉬운 머신러닝 입문서

 

머신러닝과 딥러닝의 기초는 바로 신경망입니다. 신경망을 이해하지 못하면 계층, 활성화 함수, 역전파 등 머신러닝의 주요 개념을 익히는 데에도 한계가 있습니다. 수학을 공부한 사람은 물론 많은 개발자도 이 신경망이라는 장벽에 부딪혀 딥러닝에 입문하는 데 어려움을 겪고 있습니다. 

 

신경망은 실제로는 그렇게 어렵지 않습니다. 알기 쉽게 가르쳐주는 사람이 없었던 것뿐입니다. 이 책은 나이나 전공을 불문하고 사칙연산만 할 수 있다면 누구나 신경망을 이해할 수 있고, 나아가 파이썬만으로 구현할 수 있다는 것을 보여줍니다. 수학 공식을 최소화하고 친절한 그림과 명료한 문장으로 개념을 설명하는 데 초점을 뒀습니다. 전 세계 5개국에서 번역 출판되었고, 저자는 해외에서 이 책을 토대로 발표 및 교육 활동을 펼쳐 좋은 반응을 얻은 바 있습니다. 수포자라고 해서 딥러닝까지 포기할 필요는 없습니다. 이 책과 함께 다시 도전해보세요!

 

 

추천사

이 책을 읽으며 아이작 아시모프가 떠올랐다. 아시모프는 대단히 기술적인 주제를 흥미로운 이야기로 풀어내는 능력이 탁월했고, 덕분에 누구든 그의 책을 읽고 즐기고 나아가 기술 과학의 근본을 이해할 수 있었다. 신경망을 설명하는 많은 글을 봤지만, 이 책만큼 내 머리에 의미 있게 다가온 책은 없었다. 

_데이비드 L. 파넬 (아마존 독자)

 

신경망은 실제보다 어렵게 가르쳐지고 있다. 이 책은 아주 단순한 어휘로 신경망을 잘 설명하는 입문서다. 나는 이 책을 친구와 가족에게 추천하고 있다. 수학을 잘 모르더라도 부록에서 미분과 연쇄 법칙을 설명하므로 따라 하기 쉽다. 이론을 넘어서 단계별 파이썬 구현(손글씨 인식)과 신경망의 정확도를 올릴 방법까지 다루는 흔치 않은 책이다.

_네이선 (아마존 독자)

  • 서론

    신경망, 인공지능, 기계학습이두각을 띄고 있는 지금, 신경망 이론은 현재 최고의 컴퓨터 공학 핫 이슈로 자리잡았다. 연구자들의 고유한 권한이던 신경망 이론은 이제 많은 대중들에게도 관심을 받고 있으며 많은 컴퓨터 전공자들, 비전공자들이 이 분야에 대해 공부를 하고 있다. 그런 상태에서 본도서를 접한다면, 그 어떤 책보다도 가볍고 쉽게, 흥미를떨어트리지 않고 신경망 이론을 공부할 수 있을 것이다.

     

    1. 이 책은 어떤 책인가요?

    이 책은 신경망 이론에 대한 기본적인 지식을 최대한 상세하게, 쉽게, 그리고 실습 가능하게 다룬 책이다. 책에서 가장 강조하는 부분은수학적 배경지식 없어도 쉽게 이해할 수 있다는 점이고 또한 그렇기에 배경지식을 설명하는 부분이 꽤 많이 등장한다.그림을 통해 쉽게 다양한 내용을 이해할 수 있으며 신경망 이론의 기본적인 개념부터 Python을통해 직접 실습할 수 있게끔 구성되어있다.

     

    2. 대상 독자

    대상 독자는 아무래도 초심자일 것이다. 신경망 이론 자체가 심도 있게연구하려면 상당히 어려운 주제인데, 그럼에도 이렇게 쉽게 읽히는 책이라면 분명 책 자체가 깊이 있게공부하려던 사람들을 위하기 보단 처음 접하는 사람들을 위한 것이라는 걸 알 수 있다.

     

    3. 책의 장점

    무엇보다 상세한 설명, 배경지식 없어도 할 수 있다는 것이 가장 큰메리트이다. 대부분의 필요한 개념적인 설명은 책에서 전부 다루고 있으며 프로젝트 실습 또한 간단하게해 볼 수 있는 수준의 쉬운 내용들을 위주로 포함하고 있어 보다 쉽게 접근 할 수 있다. 또한 책 자체가가볍고 어디서든 들고 다니며 읽기 편하기 때문에 전공 책 치고는 상당히 가벼운 마음으로 읽을 수 있는 책으로 보인다.

     

    4. 책의 단점

    심도 있는 공부를 하기 위한 전공자들에게는 이 책의 설명이 지나치게 자세하여 내용 자체가 가볍게 느껴질 수 있다. 주변 전공자들에게 보여준 결과 다 아는 내용이라는 평가가 많았으며 전공자들에게는 효력이 없을 것으로 보인다. 여담이지만 도서의 크기나 내용의 심도 치고는 비싼 편으로 보인다. 만약이 책을 전공자의 입장에서 사서 읽으라고 한다면 동일한 가격의 더욱 내용이 자세한 책을 사지 않을까 싶다.

     

     

  • 키워드: 신경망, AI, Artificial Intelligence, 인공지능, 첫걸음, 한빛미디어, 파이썬

    1. 책의 주제

    이 책은 <신경망 첫걸음>이라는 제목에 걸맞게 현재 세상에서 활약하고 있는 모든 인공지능 시스템(예: 아마존 Alexa, 애플 Siri 등)의 기본이 되는 신경망(Neural Network)의 원리를 소개한다.

    책의 부제가 수포자도 이해하는 신경망 동작 원리와 딥러닝 기초라고 되어있다. 지금까지 봤던 어떤 인공지능 책보다 쉽고 명확하게 개념을 설명했다는 점에서 설득력 있는 부제라고 생각한다.

    2. 책의 구성

    이 책은 총 두 개의 장과 부록으로 이루어져있다. 첫 번째 장은 이론(Theory)에 대한 내용이고 두 번째 장은 Python을 통한 인공 신경망 학습실습을 다루고 있다. 세 번째 장은 지금까지 배웠던 내용보다 약간 더 깊이있는 내용을 가볍게 소개한다. 끝으로 부록에서는 수포자를 위한 미분(calculus)을 설명한다.

    1. 인공 신경망의 동작 원리
    2. 파이썬으로 인공 신경망 직접 만들기
    3. 더 재미있는 것들
    4. 부록

    3. 신경망이란 무엇인가?

    신경망(Neural Network)은 인간 뇌의 기본단위인 뉴런(Neuron)을 컴퓨터로 모델링한 것으로 현재 세상에서 활약하는 인공지능 기술의 근간이 되는 이론이다. 위키피디아는 아래와 같이 설명한다.

    인공신경망(人工神經網, 영어: artificial neural network, ANN)은 기계학습과 인지과학에서 생물학의 신경망(동물의 중추신경계중 특히 뇌)에서 영감을 얻은 통계학적 학습 알고리즘이다. - 출처: 인공신경망(위키피디아)

    4. 이 책을 추천하는 이유

    필자가 AI를 배워야겠다고 생각한 게 이미 5년이 지났다. 그 동안 여러 가지 핑계로 학습하지 못하다가 이번 리뷰를 진행하면서 "이제는 더 이상 미룰 수 없다"라는 생각을 했다. 다행히도 이러한 결심을 하고 난 뒤 처음 만난 책이 한빛미디어에서 출간한 <신경망 첫걸음>이었다. 책 제목 그대로 정말 쉽다. 아마도 그 이유는 저자가 욕심을 부리지 않았기 때문인 것 같다. 가장 기본이 되는 내용을 수학 미분부터 파이썬 그리고 이론까지 AI 입문자를 대상으로 설명을 해서 큰 도움이 되었다.

    만약 수학 때문에 AI를 배우고 싶지만 못 배운다고 생각하거나 어떤 책을 활용해야 할지 고민하는 분이 계시다면 이 책으로 시작하면 좋을 것 같다.

    5. 아쉬운 점

    전반적인 번역 품질이 좋고 다정다감하게 글이 작성되어있고 오타도 거의 없어서 쉽게 읽혔다. 다만, 간혹 번역투의 한글 표현이 보여서 아쉬웠다.

    참고로 이 책은 온라인에서 무료로 볼 수 있다. 다만 영어라는 벽을 넘어서야 한다.

    6. 총평

    컴퓨터공학을 나오면 당연히 C언어와 JAVA를 기본으로 알 것이라고 사람들이 기대하는 것처럼 인공지능(AI) 또한 앞으로 기본지식이 될 것임에 틀림없다. 한 마디로 싫든 좋든 인공지능(AI)에 대한 기본 지식이 없으면 IT를 하는 사람의 앞 날은 그리 밝지 않을 것이다. 꼭 AI와 관련된 업무를 하지 않더라도 AI를 이해해야 하는 시대를 우리는 살게 될 것이다.

    그렇다면 어떻게 해야할까? <신경망 첫걸음>을 읽으라. 저렴한 가격에 AI를 이해하는 여정을 시작할 수 있을 것이다.

    P.S. 이 책에 대한 리뷰는 한빛미디어의 후원으로 작성되었음을 말씀드립니다.

     

  • MarkdownPad Document

    신경망 첫걸음 리뷰

    "좋았다"를 넘어서서 "감사하다" 란 생각으로 마무리한 책입니다.

    선택 동기

    "말로만 할 수 있는건 싫어요."

    • 머신러닝 최신의 기술들은 신경망 기반의 발전된 알고리즘들입니다.

      퍼셉트론, 다층 퍼셉트론, 순전파, 역전파.. 활성함수 등.. 개념을 알고있고 말로도 할 수 있었으나 무언가 공허했습니다. 왜 일까? 고민해보았을때, 저의 해답은 최신 논문을 보면 이해가 안되는 수식이 많고 저자가 제안하는 솔루션이 왜 더 좋은지 감이 잘 잡히지않았습니다.

    "기초가 부족해요"

    • 그 원인은 저의 기초 부족이라고 결론을 내렸습니다. 미적분, 해석학, 선형대수 등의 아이디어를 뒷받침하는 수학이론들과 이 이론을 현실로 구체화하는 프로그래밍 능력의 부족 이라고 결론 내렸습니다. 과거 "텐서플로 첫걸음" 책에서 텐서플로 프로그래밍에 대해 도움을 받았고 무엇보다 상대적으로 얇은 책 두께에 가벼운 마음으로 다가설 수 있는 "첫걸음 시리즈" 였기에 이 책을 선택하게 되었습니다.

    장점

    "정말 수포자도 이해하네.."

    • 저의 기초부족은 꽤 오래전부터 인지하고 있었습니다만, 참 쉽지않았습니다. 마치 더하기를 어렴풋이 아는 상태에서 방정식 곱하기를 배우는 느낌이랄까요? 개념이 둥둥 떠다니는데 서로 연결은 안되는 기분이었습니다.

    미분은 극한을 배운 후에 이해할 수 있다는데 왜 그럴까?

    왜 지수 n을 n-1 로 해주고 상수는 사라질까?

    ...이런 의문이 해결되지않은 상태가 지속되던 상태에서 이 책을 만났고 미분에 관한 이야기는 부록에서 정말 통쾌하게 해결되었습니다.한발짝 한발짝 점진적으로 설명해주는 저자 설명에 감탄하며 너무너무 뿌듯하게 읽은 책이었습니다.

    "점진적 설명"

    • 위의 개념 설명때처럼 저자는 Python 코드 작성 또한 조금씩, 단계적으로 나아갑니다.신경망을 구현하는 것이 최종목표이며, 이 목표를 위해 Task들을 잘게 쪼개서 하나씩 단계적으로 작성해나갑니다. 물론 이 코드들이 왜 이렇게 되는지는 이전의 이론설명의 장에서 모두 설명한 것들이므로 순차적으로 이해하며 읽어내려온 독자들은 코드구현에 집중할 수 있습니다.

    단점

    "단점을 발견하지못했습니다"

    • 전 이 책에서 단점을 발견하지못했습니다. 제가 모르던 부분을 명확히 알게해준 고마운 책이어서 그럴 수 있겠습니다. 어떻게든 짜내보려 순차적인 내용구성이나 신경망만을 다룬 것이 단점이 될까 생각해보았으나, 이것은 집필 의도에 해당하며 단점이 아닌 전략이라고 생각했습니다.

    결론 및 활용

    • 세상 모든 지식이 그렇듯이, 하위 개념들을 알고있는 것이 상위 개념을 학습하는 시간을 단축시킵니다. 인공지능 분야에서 거론되는 최신의 기술들은 신경망에서 출발하며 신경망 또한 여러 개념들을 합친 상위 개념입니다. 이러한 개념 계층구조에서 생각해보았을 때, 본 책은 개념 사이를 잘 연결시켜 전달해주는 느낌을 받았습니다. 단순히 "좋았다!" 보다 "감사하다!" 란 느낌으로 책을 읽었습니다.

    • 신경망에만 집중하는 책이다 보니 분량이 그렇게 많지않을 수 있습니다. 대신, 깊이가 있습니다. 개인적으로 추천드리는 활용법은 손코딩입니다. 책의 반 정도는 신경망 이론 설명이고 나머지 반은 파이썬으로 신경망 구현하기 입니다. 여기서 구현과정을 보고 책을 덮고 손으로 써보는 것이 도움이 많이 되었습니다. 코드를 키보드로 입력해보는 것도 좋지만, 손으로 하는 것은 또 다른 의미를 가진다고 생각합니다. 출력 디바이스인 손과, 디바이스 컨트롤러인 뇌가 출력과정에서 지속적으로 연결되어 일어나는 작용이 저의 경험 상, 기억에 영향을 미쳤습니다.

    Easy Come, Easy Go (쉽게 얻는 것은 쉽게 잃는다.)

  • 서론

    언젠가부터 페이스북에서 신경망이니 텐서플로우니 CNN이니 많은 글들이 올라왔다. 우리 동네 개발자 그룹에서도 관련 스터디를 진행했다. 나도 올해 하반기부터는 이쪽 공부를 해야겠다고 마음먹었는데 운 좋게 이책을 빨리 만날 수 있었다. 그리고 나같은 입문자가 보기에 너무도 좋은 책이었다!

    Liked

    수포자도 이해시키는(?) 책

    이 책의 표지에는 수포자도 이해하는 신경망 동작 원리와 딥러닝 기초라고 나와 있다. 나의 케이스에 맞춰서 이 책의 난이도를 설명하자면 고등학교 다닐때 수리 가형에 60~70점 맞았고 편입공부하면서 수학 공부를 했었던 나에게도 쉽지는 않았다. 수식의 컨셉은 대략 이해가 갔지만 미분하는 과정이 쉽게 이해가 가지 않았다. 그러나 이 책의 부록을 보고 꾸준히 읽었더니 이해가 가기 시작했다. 정리하면 쉽지는 않았지만 이해 못할 정도는 아니었다.

    행렬과 미분

    고등학교 다닐 때 행렬을 배운다. 대학교에서도 선형대수에서 행렬을 배운다. 그런데 행렬을 어디서 어떻게 응용하는 지는 배우지 않는다. 이 책은 신경망에서 행렬이 어떻게 큰 도움을 주는지 가르쳐준다.또한 경사 하강법이라는 접근 방식을 통해서 미분이 신경망에 어떻게 응용되는지 가르쳐 준다.

    난 이런 부분이 너무 좋았다. 왜냐하면 이론으로만 배운 학문이 어떻게 응용되는지를 배우는 것은 내가 배운 이론이 참 쓸모있는 것이었다는 뿌듯함을 안겨주기 때문이다.

    이론 반 실습 반

    이 책의 구성은 딱 절반 신경망 이론을 배우고 딱 절반 실습을 진행한다. 신경망에 대한 컨셉을 이해하고 이후에 컨셉에 대한 구현과 응용 등 기술적 디테일에 대해서 실습을 한다. 그러므로써 둥둥 떠있는 이론을 확실이 머릿속에 넣어주는 책이다.

    책의 편집

    이 책은 올 칼라이다. 올 칼라의 그래프를 보는 것도 좋았지만 문법이 강조되어있는 코드와 중요한 키워드를 칼라로 보여주어서 좋았다. 특히 일반 흑백책에서 볼드로 되어있는 키워드들보다 훨씬 보기 좋았다.

    책의 번역

    이 책의 내용만 본다면 아마 많은 분들이 이 책이 번역된 책이라는 것을 모를 것 같다. 다른 리뷰들을 보니 이렇게 느끼신 분들이 많은 것 같다.

    얇은 책

    내가 리뷰마다 책의 두께에 대해서 적는데, 그 이유는 나의 의지의 능력 때문이다. 두꺼운 책은 내 의지로는 읽기 어렵다. 나 같은 분들에게 정보를 제공하고자 함이다. 이 책은 300쪽이고 얇고 술술 읽히는 부분이 많아서 참 좋다.

    Learned

    신경망 이론

    당연히 이책을 통해서 신경망의 기초 이론에 대해서 배울 수 있었다. 신경망이 등장하게 된 배경, 오차를 통해서 학습하는 과정 등과 신경망 관련 용어들을 배웠다.

    우리 팀 내에서 관련 일을 하시는 분들이 계신데 그 분들의 대화를 조금이나마 이해할 수 있을 것 같아서 기분이 좋다.

    파이썬 기초

    나는 자바 혹은 자바 스크립트를 주로 작성하는 개발자인데 항상 파이썬이 궁금했다. 매번 설치만 하고 말았는데 이번에 코드를 좀 작성해봐서 재미있었다.

    Lacked

    간혹 오타가 있는 것을 제외하고는 이 책의 부족한 점을 느끼지 못했다.

    Longed For

    신경망 두번째 걸음

    이 책 덕분에 신경망에 대해서 첫걸음을 내딛을 수 있었다. 그 다음 스텝에 대한 좋은 책도 내주셨으면 한다.

    정리

    요새 인공지능과 관련 학문이 아주 핫이슈이다. 사람들이 많이 걱정하기도 하고 기대를 하기도 한다. 어찌 되었든 인류는 이 학문으로 많은 변화를 경험할 것 같다. 그 변화를 준비하는데 이 책이 참 좋은 것 같다. 이 책 서두에 적혀있는 대로 꼭 개발자가 아니더라도 행렬과 미분을 알고 있다면 이 책을 읽을 수 있다. 강력 추천한다.


    본 포스팅은 한빛리더스 14기로서 해당 책을 제공받아 작성한 솔직한 후기입니다.

  • 인공 신경망은 딥러닝의 기초가 되는 개념으로, 컴퓨터가 마치 생물 두뇌의 신경망처럼 스스로 학습을 해 나갈 수 있는 구조입니다. 몇 년 전부터 딥러닝에 관련된 읽을거리들이 인터넷에 많이 올라오고 딥러닝을 다루는 책들도 나오기 시작하고 있지만, 머신러닝에 이제 막 관심을 두기 시작한 초심자에게는 여전히 학습 장벽이 높은 듯합니다. 특히 다른 딥러닝 책을 읽으면서 여실히 느껴왔던 점은 딥러닝 기본 원리에 대한 이해가 스스로 부족하다는 것이었습니다. 그러던 중에 한빛리미디어에서 타리크 라시드의 <신경망 첫걸음>이라는 책이 출간되었다는 소식을 듣게 되었고, 한빛리더스 리뷰어 기회를 통해 책을 접하게 되었습니다. 읽고 싶던 책이라서 더욱 더 반가웠습니다.

     

    타리크 라시드의 <신경망 첫걸음>은 인공 신경망의 개념을 초심자들이 아주 쉽게 이해할 수 있도록 설명하고 있습니다. 책 표지에 나온 '수포자도 이해할 수 있다'라는 부제처럼, 미분이 무엇인지까지의 수학 지식만 머리 속에 가지고 있다면 책 내용을 술술 따라갈 수 있고, 심지어 프로그래밍도 알 필요가 없습니다. 책의 1부에서는 신경망의 개념을 다루고, 2부에서는 일반인의 입장에서 파이썬 프로그래밍을 시작하는 방법부터 손글씨 데이터셋으로 글씨를 인식하는 코드 작성을 따라해보면서 인공 신경망 개념을 익힐 수 있게 도와 줍니다.

     

    이 책에서는 은닉층이 존재하는 3개 이상 계층의 신경망에서 어떤 일이 일어나는지 차례 차례 설명을 하고 있습니다. 신경망의 입력에 가중치를 곱해 출력을 만들어내는 과정을 그림으로 자세하게 보여주고 있는 것이 장점입니다. 그림도 한 눈에 알아보기 쉽게 되어 있습니다.

     

    인터넷에 나오는 글을 읽다 보면 가중치를 통한 신경망 학습에서 오차 역전파라는 단어가 많이 나오는데, 역전파가 어떤 식으로 동작하는지 쉽게 설명되어 있는 곳은 찾아보기 힘듭니다. 그 원리를 어려운 수식 없이 이해할 수 있게 풀어 설명된 책은 이 책이 처음인 것 같습니다. 그만큼 초보자가 처음 신경망을 공부하기에 이 책이 탁워한 선택이라고 생각합니다.

     

    이 책의 장점은 프로그래밍을 전혀 모르는 사람도 파이썬 코드를 작성하는 방법을 통해 따라할 수 있게 도와준다는 점입니다. 다른 책들과 비슷하게 이 책에서도 프로그래밍 언어로 파이썬을 사용하고, 행렬 계산은 numpy, 시각화는 pyplot 라이브러리를 사용하고 있습니다. 파이썬이 딥러닝을 구현하기 좋은 쉽고 간편한 도구로 인정받고 있는 것 같습니다. 이 책에 나온 예제를 따라해보면 데이터셋만 있다면 다른 데이터들도 학습을 시켜볼 수 있을 것 같은 자신감이 생깁니다.

     

    어려운 수식 대신 쉬운 말로 신경망 학습 원리가 풀어쓰여져 있어서 그 개념을 매우 쉽게 이해할 수 있는 책이었습니다. 머신러닝을 하다가 기초 원리가 갑자기 생각이 안 날 때 이 책을 다시 보면 기억나고 좋을 것 같아 추천합니다.

  • 어쩌다보니 딥러닝의 입문서에 해당하는 책을 3권째 집어들었다. 3권째쯤 보다보니 이제 내용보다는 중요 개념을 어떤 식으로 설명하고있고, 어떤 배경을 가진 사람들이 읽으면 좋을 책인지를 더 관심있게 보게 되었다. 마침 3권의 책이 모두 다른 특징을 갖고 있어서 흥미롭게 읽고 자연스럽게 복습도 되었다. 내가 딥러닝 강의를 할 것은 아니기에 더이상 입문용 책은 고르지 않기로 마음먹고, 이 기회에 3권의 책이 어떻게 다른지 정리해 두고자 한다.

    딥러닝 입문에 필요한 내용은 Gradient Descent(경사 하강법)과 Backpropagation(역전파) 두가지다. 이 두 개념을 어떻게 설명하는지에 따라 특징들이 나뉘었다.


    밑바닥부터 시작하는 딥러닝

    (리뷰 보기)

    • 대상 독자: 프로그래밍에 익숙하고 수학은 많이 까먹은 개발자들

    딥러닝 입문용 책 중 가장 유명하고 많이 팔린 책이 아닐까 싶다. 프로그래머의 관점에서 신경망을 최소한의 라이브러리로 구현하는데 중점을 둔다.

    Backpropagation 을 설명할 때 계산 그래프를 적극 활용한다. 계산 그래프에 익숙해지면 아주 기본적인 미분 개념만으로도 역전파를 손쉽게 구할 수 있다. Chain Rule이나 편미분같은 장벽을 돌아갈 수 있는 방법이 아닐까 싶다.

    (하지만 제도권 교육에 익숙한 나같은 사람에겐 계산 그래프 또한 생소한 개념이었다. 오히려 Chain Rule과 편미분을 같이 소개해준 뒤에 계산 그래프가 더 잘 이해가 되었다.)

    TensorFlow가 계산 그래프 기반으로 구현되었기 때문에 여기에 익숙해지면 TensorFlow 학습에 큰 도움이 된다.

    스탠포드의 CS231n 수업에서 많이 활용한 개념인데 이 책도 강의를 많이 참고한 터라 CS231n 수업의 부교재로 써도 손색이 없다.

    Batch Normalization, 다양한 최적화 기법(Momentum, Adam 등), CNN 등 입문용 책 중 다루는 범위가 가장 넓다.

    딥러닝 첫걸음

    • 대상 독자: 공학에 익숙한 모든 사람들

    Backpropagation 과 Gradient Descent 를 설명할 때 수식을 적극 활용한다. 구현 코드도 Matlab 기반이므로 공학 베이스를 가진 사람들이 접근하기 용이하다.

    반대로 이야기하면 그 외의 사람들에겐 다소 어렵게 느껴진다. 공학이 익숙하지 않은 사람들과 이 책으로 스터디를 진행해 보았는데, 쏟아지는 수식과 기호들이 손에 잘 잡히지 않았다.

    다루는 내용이 많지 않기 때문에 수학적 베이스가 탄탄하다면 딥러닝에 대해 빠르게 훑어볼 수 있는 책이라 생각된다.

    신경망 첫걸음 (이 포스트의 주인공)

    • 대상 독자: 수학이 어려운 모든 사람들

    부제에 ‘수포자도 이해하는…’ 이라는 문구가 들어가 있는데 이 책을 가장 잘 표현하는 말이라 생각된다.

    회귀, 행렬, 역전파 등의 개념을 최대한 직관적으로 설명하기 위해서 많은 노력을 기울인다. 수식을 내어놓고 수식의 원리를 설명하는 방식이 아니라, 한 눈에 이해되지만 최적화된 방법은 아닌 접근에서부터 시작해서 아주 자연스럽게 수식을 유도해낸다.

    (개인적으로는 최종 Output layer의 오차를 Hidden layer로 전파시키고 이를 이용해서 Backpropagation 공식을 완성시키는 과정이 감명깊었다. 이 내용을 편미분과 Chain Rule의 조합으로만 접근하면 상당히 긴 수식을 전개해야만 하는데, 좀 더 단순화되고 직관적인 방식으로 절대 까먹지 않을 것 같다.)

    1부에서는 일부러 코드를 배제하고 개념 설명에 집중한 것도 좋았다. 개인적으로는 개념이 이해되지 않은 상황에서는 코드가 큰 도움이 되지 않았다. 심지어 잘 이해되지 않은 상황에서 코드만 따라 쳐보고 잘 돌아가니 이해했다고 착각하는 경우도 있었기에 이런 접근법이 내게는 더 유용했다.

    부록의 기초 미분은 부록으로 빠져있기엔 아까울정도로 훌륭했다. 신경망을 이해하는데 필요한 정도의 미분을 아주 자세하고 직관적으로 설명해주고 Chain Rule까지 물흐르듯 이해된다. 수학에 막연한 두려움을 가지고 있는 사람들을 위해 부록으로 따로 뺀 모양인데 그런 사람들일수록 꼭 읽어봤으면 하는 부분이다.

    2부에서 파이썬으로 구현하는 부분은 사실 너무 광범위한 내용을 짧은 분량 안에 담으려고 해서 실질적으로 도움이 될 것인지에 대해서는 의문점이 남는다.

    프로그래밍이 익숙한 사람들은 어떻게든 여러 자료들을 참고해가며 이해하겠지만, 그렇지 않은 사람들을 대상으로 쓴 내용 치고는 함수의 사용법은 인터넷을 검색해보라는 식으로는 쉽지 않아보인다. 차라리 프로그래밍에 익숙한 사람을 가정하고 numpy 관련 내용을 좀 더 자세히 설명하는 것이 유용하지 않았을까 하는 의견이다.

    대상 독자와 분량을 감안하여 최적화 기법과 CNN등은 대부분 빠져있는데, 그래도 신경망 학습에 필수적인 Batch Gradient 정도는 소개해주었으면 하는 아쉬움이 남는다. (처음 Batch Gradient를 이해하고 구현해보려 했을 때 많은 삽질을 겪은 개인적 경험때문일 것이다.)


    남들은 불과 며칠만에도 딥러닝의 기본은 다 떼고 맘껏 이것저것 응용해보는데, 어쩌다보니 상당히 오랜 시간동안 기본서만 붙들고 있어서 스스로가 처량하게 느껴지기도 한다. 이 글을 읽는 누군가가 나보다는 더 빠르게 학습해 나갈 수 있을 것이라는 점에 위안을 삼고 이제 나도 다음 스텝으로 넘어가봐야겠다.

  • 딥러닝이라는 분야가 최근에 생긴 학문은 아니지만, 최근들어 인기가 급속하게 늘고 있는것은 확실합니다.

    주변에 많은 개발자가 있기 때문인지 상당히 많은 주변사람들이 딥러닝 또는 머신러닝에 관심이 있으며, 심지어

    개발과 전혀 관련없는 사람들도 딥러닝에 대한 것을 알고있습니다.

    얼마전에는 구글의 딥마인드가 알파고라는 인공지능 바둑 프로그램으로 이세돌 9단에게 승리하면서 많은 사람들에게 놀라움을 주기도 했습니다.

     

    이렇게 딥러닝이 많은 인기를 얻고 있지만 많은 사람들이 어떻게 딥러닝에 대한 공부를 시작해야 할지 감을 잡지 못하고 막연한 두려움을 느끼고 있습니다.

    AI와 딥러닝 같은 기술이 막연하게 엄청 어려울 것이라고 생각하기 때문입니다.

    <신경망 첫걸음>은 딥러닝의 기초를 공부하고 싶지만 이런 두려움 때문에 시작하지 못하거나 다른 딥러닝 서적을 읽다가 포기한 사람들에게 추천할만한 책입니다.

    심지어 수학이나 개발 지식이 없더라도 이해할 수 있도록 부록을 통해 미분의 원리에 대해서도 설명하고 있습니다.

     

    이 책은 크게 3부로 나뉘어 있습니다.

    1부에서는 정말 개발에 대한 기초지식이 전혀 없는 사람에게 설명하는 것처럼 기초를 차근차근 설명해주고, 딱 결과만 말해주는 것이 아니라 어떤 과정을 통해서

    이런 결과가 생겼는지 이해하기 쉽게 설명하고 있습니다.

    2부에서는 파이썬을 이용해서 실습을 하는 과정이 있는데, 파이썬을 전혀 사용해본적 없는 사람도 따라할 수 있도록 파이썬 설치 방법부터 기초적인 파이썬 문법도 함께 설명하고 있습니다.

    손글씨 데이터를 직접 학습시켜서 분석하는 과정을 통해 재미있는 결과를 확인할 수 있습니다.

    3부에서는 앞서 학습시킨 내용에 추가로 더 현실적인 데이터를 이용해서 신경망의 결과를 확인하고, 역으로 계산하는 내용을 확인하기도 합니다.

     

    중간중간 설명이 생략된 부분이 있어서 아쉽긴 했지만, 전반적으로 쉽게 신경망의 개념을 잡을 수 있는 책이었습니다. 이 책을 읽고나서 신경망에 대해 더 흥미가 생길정도였으니 입문자에게 정말 괜찮은 책이라고 생각합니다.

    파이썬 코드를 직접 작성해서 숫자를 직접 판독했을때 이론으로만 접근했던것 보다 확실한 재미를 느낄 수 있었습니다.

    만약 이 책을 읽기전의 저와 같은 신경망에 대해 관심이 있지만 아직 시작하지 못하고 싶은 사람이 있다면 추천해주고 싶은 책입니다.

  • "신경망, 첫걸음을 걷고"

     

    첫걸음, 어디를 향하든 첫걸음은 아주 중요하다. 첫걸음에 경사를 만나면 몇 걸음 지나지 않아 돌아서게 되고 너무 평평하면 금세 지루해져 주저 않고 만다. 

    인공지능 세상으로 가는 첫걸음도 마찬가지이다. 

    인공지능이라는 단어는 "알파고"의 등장으로 친숙하지만 막상 공부를 하기 위해 시작하고자 하면 막막함이 앞선다.  

    인공지능이라는 분야의 영역이 넓을 뿐만 아니라 깊이도 상상을 초월하기 때문이다. 

    그래서인지, 주변을 보면 유행을 따라 안갯속에 가려진 인공지능이라는 산을 등반하고자 하는 많은 사람들이 몇 걸음 가지 않아 되돌아 서는 경우를 쉽게 볼 수 있다. 

    정상으로 가는 수많은 길을 보며 어디로 가야 할지 모를 뿐만 아니라 아무리 걸어도 높이를 가늠할 수 없을 정도로 높은 정상에 겁을 먹고 쉽게 지쳐 버리는 것이다.   

    이 책은 인공지능이라는 산을 등반하는 입문자에게 좋은 가이드가 되어 줄 책이다. 

    신경망 첫걸음, 인공지능 분야에 관심을 가지고 있는 저자가 이 책을 손에 들게 된 이유는 인공지능이라는 분야에 가장 기초적인 부분이 신경망의 이해라 생각했기 때문이다. 신경망은 우리가 흔히 듣는 인공지능의 머신러닝, 딥러닝의 기본이 되는 분야이다. 

    이 책은 신경망의 첫걸음인 동시에 인공지능의 첫걸음인 것이다. 

    이 책을 왜 선택해야 되는지에 대해 이야기해 보았으니 이제 대략적인 책의 내용을 살펴보자.

    책의 표지를 보면 당당하게 써놓은 글이 보인다. "수포자도 이해하는 신경망 동작 원리와 딥러닝 기초"

    대부분의 사람들이 '수포자'라는 단어를 보고 반가움을 느꼈을 것이다. 마치 동지애를 느끼는 것과 같이 공감대를 이끌어 내는 단어이다. 

    저자도 인공지능에 두려움을 느꼈던 이유 중 하나가 수학이라는 문턱이었다. 

    다시 학창 시절로 돌아가 머리를 싸매고 공부하며 다시는 보지 말자고 이별했던 통계와 미분, 적분을 다시 만날 자신이 없었던 것이다. 

    그런 우리에게 수포자도 이해할 수 있다는 말은 반갑지 않을 수 없다. 

     

     

    [신경망, 동작의 원리 알아보기!]

    책의 시작은 인간과 기계의 구분에서부터 시작한다. 우리는 인간이기 때문에 인간 중심으로 생각하는 경향이 있기에 이러한 편견의 시각을 깨고 시작하는 것이다. 

    그리고 기계의 입장에 서서 간단한 예측과 분류를 하는 방법을 시작으로 컴퓨터가 데이터를 통해 학습하는 원리에 대해서 설명하기 시작한다. 

    이어서 인공지능 분야에 조금이나 관심을 가졌다면 익숙한 단어들이 등장하기 시작한다.  뉴런, 역전파, 가중치 등... 이러한 것이 이에 해당한다. 

    설명 속에는 어렵지 않게 입문자가 이해할 수 있는 예제들과 그림들로 가득 차 있다. 생소한 단어들에 겁내지 않아도 된다. 처음 위에 단어들을 접하여도 쉽게 이해할 수 있도록 되어 있기 때문이다. 

     

    [파이썬으로 인공지능 따라가기]

    인공지능과 가장 친한 프로그래밍 언어라고 한다면 많은 사람들이 파이썬을 가장 먼저 떠올릴 것이다.

    파이썬은 데이터를 처리하기에 아주 적합한 언어이며 인공지능과 아주 가까운 언어이다. 

    비전공자도 손쉽게 배울 수 있기에 많은 사람들이 미리 만들어 놓은 데이터 관련된 모듈들을 풍부하게 가지고 있다.

    [아직 프로그래밍을 시작하지 않았거나 모듈에 대한 개념이 생소하다면 내가 만들지 않아도 쉽게 가져와 쓸 수 있는 도구들이 많이 있다는 뜻으로 이해하면 된다.]

    파이썬이 인공지능 분야에 많이 사용된 것에는 "텐서 플로우"도 한몫하고 있다.

    [텐서 플로우(TensorFlow)는 기계 학습과 딥러닝을 위해 구글에서 만든 오픈소스 라이브러리이다.]

    텐서 플로우는 인공지능의 수많은 어려운 개념을 깊이 있게 알지 못해도 대략적인 개념을 바탕으로 인공지능에 접할 수 있도록  도와준다. 

    이와 같은 파이썬에 대한 내용을 친절히 가이드해주고 있다. 

    비전공자들을 위해 파이썬의 설치부터 시작하여 인공지능 분야에 많이 사용하는 배열, 객체에 대한 기초적인 부분까지 간략하게 설명하고 있다. 

    [파이썬에 대한 지식이 있는 사람들이라면 이 부분은 뛰어넘어도 좋다.]

    기본 개념을 지나면 파이썬을 활용하여 인공지능 신경망을 만드는 부분을 소개한다. 앞에서 배운 이론을 직접 구현하는 과정을 함께 해 보면서 실질적으로 우리가 사용하게 되는 부분을 가이드해 주고 있다. 

     

    [호기심 자극]

    신경망의 이론과 이것을 바탕으로 프로그래밍에 적용하는 방법을 배우고 마지막으로 이 책이 선택한 것은 호기심이다. 

    인공지능의 높은 정상으로 가는 길이 힘들지만은 않다고 말하고 있다. 그 길을 즐겁게 간다면 힘든 것도 모른 체 어느새 정상에 오를 수 있다고 말하고 있다. 

    손글씨 데이터를 신경망을 통해 컴퓨터가 학습하는 과정을 보여줌으로써 앞으로 내가 학습하게 될 세상에 대해 즐거움을 더하고 있다. 

    이 책을 덮으며 가장 먼저 느꼈던 점은 "재미있게 잘 읽었고 앞으로 공부하게 될 부분이 재미있을 것 같다는 것이다."

    어떠한 학문에 즐거움을 느끼고 앞으로 나아갈 길에 설렘을 느낀다면 성공적인 첫걸음이라고 생각한다. 

    분명 나아가다 어려움에 봉착하겠지만 이러한 즐거운 첫걸음이 힘이 되어 또다시 나아가게 해줄 것이다. 

    인공지능을 시작하는 입문자들에게 좋은 책이 되어줄 것이라 생각한다. 



    출처: http://digitalbourgeois.tistory.com/30 [글자국]


  • [개요]
    이 책의 부제는 '수포자도 이해하는 신경망 동작 원리와 딥러닝 기초'이다. 이 책의 뒷면에는 '인류에겐 이런 딥러닝 입문서가 필요했다'라고 적혀 있다. 두 문구 다 사실이다.

     
    [소개]
    한빛미디어의 첫걸음 시리즈는 작고 귀여운 크기에 부드러운 배색을 적용하여 출간된다. 이 도서도 받아보면 2만 5천원이라는 가격에 비해서 '에게~' 소리가 나올 정도로 작다. 그런데 정작 공부하다 보면 내용은 알차다. 두께가 얇아 보이지만 실제 페이지 수는 300쪽에 달한다. 필요한 내용은 다 들어가 있다. 편집도 수학 공식을 최소화하고 그림을 많이 넣어서 언제 어디서 보더라도 부담이 없다.
     
    [내용]
    딥러닝의 핵심은 신경망이다. 그리고 신경망은 행렬을 통해 가중치를 곱해서 계산된다. 이 책은 신경망에 대한 기초 이해와 행렬 계산, 그리고 이를 통한 간단한 딥러닝 구현에 초점을 맞춘다. 저자가 동작 원리를 이해하면 구현은 오히려 쉽다고 생각하는 것인지, 책의 절반에 달하는 140페이지까지 실제 파이썬 구현 코드는 한 줄도 나오지 않는다. 1부 전체가 신경망이란 무엇이고 어떤 원리로 계산되는지에 대한 설명이다. 그런데도 전혀 지루하지가 않다. 초등학생도 이해할 수 있을 정도로 쉽게 알려주기 때문이다.
     
    [장점]
    이 책은 첫걸음 중의 첫걸음이다. 나같이 학창시절에 수학을 포기한 사람들을 위한 책이다. "텐서플로 첫걸음"과 "딥러닝 첫걸음"과 같은 다른 첫걸음 시리즈 도서를 보기 전에 보면 좋은 책이다. 사실 시중에는 이미 많은 딥러닝/머신러닝 도서가 있고, 각각은 나름의 장단점들이 있다. 몇 권을 집어 들고 공부해보아도 내 머리의 한계인 것인지 어느 정도 진행되다가 다 막히는 부분이 있었다. 그런데 이 책은 그렇지 않았다. 전혀 어렵지 않게 끝까지 다 볼 수 있었다. 그동안 본 책 중에서 이 정도로 친절하게 신경망 동작 원리를 풀어준 책은 단 한 권도 없었다.
     
    [단점]
    한 가지는 아쉬웠다. 이 책은 파이썬의 아나콘다 패키지 설치하고 Jupyter Notebook과 numpy, matplotlib 등의 추가 패키지를 사용해서 간단한 딥러닝 모델을 직접 만들어보는데, 아나콘다 패키지 자체에 대한 설치와 환경설정 과정이 상세히 나와 있지는 않다. 설치는 다 되어있다고 가정하고 바로 Jupyter Notebook 입문부터 들어간다. 내 경우에는 한글 윈도우 10 64비트에 아나콘다 최신 버전을 설치해서인지, 진도를 나가던 중 Matplotlib 라이브러리가 알 수 없는 에러를 뱉어내서 꽤 고생했다. (알고 보니 간단한 문제였는데, 다른 분들께 도움이 되기를 바라며 출판사 홈페이지의 오/탈자 부분에 해결책을 달아두었다.)
     
    [번역]
    사실 이 리뷰를 쓰기 직전까지도 이 책이 일서 번역본인 줄 알았다. 보통 [일본어 -> 한국어] 번역이 [영어 -> 한국어] 번역보다 훨씬 자연스럽게 나오기 때문이다. 그런데 이 신경망 첫걸음은 Make Your Own Neutral Network라는 영문 도서의 번역이었다. 그런데도 한글 문장 하나하나가 대단히 자연스러웠다. 어색한 영문 번역 투는 찾아보기가 힘들 정도다. 독자를 배려한 완성도 높은 번역을 진행해주신 번역자의 노고에 별 다섯 개를 드리고 싶다.
     
    [결론]
    IT 업계에 종사하는 사람들은 평소에도 높은 압박감에 시달린다. 유행하는 기술은 자고 일어나면 바뀌고, 내가 쓰는 기술과 미래를 위해서 알아야 하는 기술들은 그 간극이 하루하루 커간다. 주변이나 SNS의 유명인들은 머신러닝이네~ 딥러닝이네~ 이야기를 하지만, 정작 내가 그런 공부를 하려면 수학/통계에 대한 이론적 이해가 필요하다. 혹자는 수학의 정석부터 다시 펴본다지만, 안 그래도 밀린 공부가 한가득한 대부분의 개발자는 딥러닝 같은 분야에는 쉽게 손을 대지 못한다. 이 책은 딥러닝 공부를 준비하는 사람들을 위해 수학(행렬과 미분)의 기초와 신경망 기초를 아주 쉬우면서도 든든하게 잡아준다. 이 분야의 어려운 용어들도 하나하나 최대한 풀어서 설명하고 있어서, 정말 딥러닝을 위한 첫걸음을 디디는 데 많은 도움이 되는 책이다.
     

     

  • 신경망 첫걸음은 딥러닝에 대해 알고 싶지만 무엇을 공부해야할지 몰랐던 분들께 강력하게 추천드립니다. 첫술에 배부를 수 없겠지만 이 책은 첫술을 온전하게 떠먹을 수 있는 좋은 책이라 생각합니다. 이 책에 나온 내용과 예제에서 핵심 개념을 이해하셨다면 그 다음 단계로 딥러닝 관련 책을 보며 깊이를 키워나가면 좋을 것 입니다.

     

    좀 더 자세한 리뷰는 아래 포스팅에 정리해 두었습니다.

    http://hyunjong-lee.github.io/review/2017/05/11/Make_Your_Own_Neural_Network.html

  • 우선, 이 책은 신경망의 기초를 다루는 입문용 책이다.

    딥러닝과 신경망의 입문수준을 넘어선 사람에게는 이 책을 추천하지 않는다.

    입문자가 아닌 분들에게는 더 수준 높은 책을 찾아보길 권한다.

    ------------------------------------------------------------------------

     

    이 책을 보기 전 까지 딥러닝 특히 신경망에 대한 이해가 전무한 상태에서 

    신경망에 대한 약간의 두려움(?)이 있었다.

     

    과연 이렇게 얇은 책으로 어느 정도나 이해 할 수 있을까.

     

    그러나 책의 Part1 부분을 읽고나서 이런 우려를 상당부분 덜어낼 수 있었다.

     

    인공 신경망의 동작원리를 다룬 Part1 은 책 전체 분량의 절반에 달한다.

    상당부분의 지면을 동작원리 설명에 투자한 격이다.

     

    내용을 보면 정말 천천히 쉽게 쉽게 설명을 해 나간다. 

     

    물론 책 전면에서 말하는 '수포자'도 이해하기 위해서는 두번의 고비가 있다.

     

    첫번째는 행렬곱의 이해

    수학에 대한 기억이 있는 사람이라면 어렵지 않겠지만, 보통 수포자들은 수학에 대한 거부감이 있기 때문에

    행렬곱이 쉽지는 않을 수 있다. 다만, 책에서 정말 천천히 나아가기 때문에 따라가기만 한다면 충분히 넘어설 수 있다.

     

    두번째는 14장 가중치 업데이트

    이 부분은 저자도 책에서 좀 까다로운 부분이라 인정한다. 

    미분을 알아야 하고, 수식이 꽤 복잡하게 나오기 시작한다.

    아마도 이 부분이 가장큰 고비라 볼 수 있다.

     

    저자는 친절하게도 미분에 대해 책의 맨 뒤쪽의 부록을 통해서 상세한 설명을 추가해 놓았다.

    굳이 안좋은 추억일 수 있는 고교수학책을 펼치지 않아도 이 책에서 요구하는 미분에 대한 이해가 필요한 수준까지만

    적절한 분량과 쉬운 설명으로 설명한다.

     

    이렇게 책 전체 분량중 절반을 읽고 나면 직접 신경망을 만들어 볼 수 있는 Part2가 시작된다.

    파이썬을 사용해서 만들어보게 되는데, 여기에서도 저자는 친절하게 파이썬의 기초 부터 설명한다.

    물론, 파이썬 전체를 설명하지는 않고 신경망을 만들어 볼 때 필요한 수준까지만 설명한다.

     

    프로그래밍 언어를 다뤄본 사람이라면 상당히 빠르게 진행이 가능하고, 경험이 없더라도 천천히 따라하면서 

    직접 코딩을 해보면 충분히 필요한 수준에 도달 할 수 있다.

     

    이렇게 파이썬을 통해 직접 만들어 봄으로써, 실제 신경망의 학습과 결과에 대한 이해가 깊어진다. 

     

    책의 전반적인 구성은 이렇게 초보자 눈높이에 맞춰있다.

    개념에 대해서는 매우 쉽게 쓰려고 노력했고 (물론 깊이는 부족하나, 이 책은 입문용 책이다.)

    실제 실습 부분은 매우 단순하게 구성되어 있다.

     

    딥러닝이나 신경망이 어렵게 느껴지고 부담스러운 사람에게 이처럼 쉬운 책은 더 이상 없다고 생각한다.

     

  • 안녕하세요


    오늘은 한빛 미디어에서 내놓는 요새 핫한 '첫걸음' 시리즈 중의 하나인 신경망 첫걸음 책을 리뷰해보고자 합니다.


    예전에 한빛미디어에서 나왔던 텐서플로 첫걸음은 조금 난감한 감이 있었습니다. 책이 진짜 첫 걸음에 관련된 내용이었고, 심지어 일반 웹상으로 공개되었기 때문에 돈을 주고 사는데도 난감했었죠.


    하지만!


    이번 책은 다릅니다.



    따란~


    저 푸르스름한 영롱한 신경망 그림과 함께 저의 사그리다 파밀리아 책갈피 님께서 우정 출연 해주셨습니다. (은근 슬쩍 스페인 여행 자랑..)


    책의 내용은 약 250 페이지 정도 되는 분량이지만, 약 100페이지 넘게 신경망을 차근차근 한 스텝씩 배워나갑니다. 작년부터 시작된 머신 러닝, 인공지능, 딥 러닝 열풍이 불고 있어서 IT에 발을 담그고 있는 모든 사람들이 관심을 가지고 보고 있습니다. 저 3가지의 공통된 주제는 바로 '신경망'입니다. 뉴럴 넷웍 Neural Network 이라는 어떻게 보면 가장 좋은 퍼포먼스를 보여줌과 동시에 가장 이해하기 어려운 내용을 담고 있는 머신러닝 모델이기도 합니다.


    이 책을 할 수 있는 한 가장 쉽게 풀어낸 책이 이 책임을 단번에 알 수 있습니다.


    저는 기존에 머신 러닝과 관련하여 앤듀르 응 교수의 코세라 강의를 시청한 적이 있습니다. (아쉽게도 완강은 하지 못햇죠..) 응 교수님도 나름 쉽게 강의 한다고 열심히 노력했지만, 결국 수학 수식이 간간히 등장하면서 많은 이들을 (저를 포함하여) 좌절하도록 한  강의였지요.


    하지만 이 책은 조금 다릅니다.



    정말 불가피하게 경사 하강법이라던가, 역전파 알고리즘이 어떻게 동작하는지를 설명하기 위해서 잠시 미분의 개념을 가져와서 설명을 한 이후에는 최대한 쉽게 설명하려고 노력한 흔적이 역력합니다. (심지어 미분의 개념을 잘 모르는 독자가 있을 까봐 부록에 미분에 관련된 내용을 달아 놓았습니다.)


    머신러닝의 가장 기본 연산이 되는 행렬 곱부터 시작하여 차례차례 신경망에서 이것이 왜 필요한지를 친근하게 설명하는 점이 이 책의 가장 큰 장점이지 않을까 생각합니다.



    심지어 두께도 이렇게 얇습니다. 책 크기도 작고 글씨도 나름 큰 편에 속하니, 읽으시는 것에는 부담은 없다고 생각합니다.


    하지만 역시 장점이 있으면 단점이 존재 할 수 밖에 없는데요.


    단점은 이 책의 예제 프로젝트로 등장하는 내용은 손글씨 인식 (MNIST 손글씨 인식) 프로젝트를 유일하게 신경망의 사용 예시 프로젝트로 들고 있습니다. 신경망으로 할 수 있는 작업은 더 다양한데 (화제가 되었던 알파고와 같은 바둑을 두는 신경망이라던가..) 손쉽게 접근할 수 있는 비전을 사용한 프로젝트라는 것에서는 납득이가는 부분이지만, 다른 한 가지 더 예제를 추가 했다면 얼마나 좋을까 하는 아쉬움이 남는 대목입니다.


    이런 아쉬운 점을 제외하더라도 이 책은 처음으로 신경망에 대하여 학습하고자 하는 사람에게, 또는 인공지능의 가장 기본인 신경망에 대하여 알고 싶은 분께 강력 추천하는 책임은 분명합니다.


    제가 석사 과정을 할 때 신경망을 통해서 실험을 진행한 적이 있었는데, 그 전에 이 책을 미리 읽어볼 기회가 있었더라면 더 실험을 잘 할 수 있지 않았을까 하는 아쉬움이 들 정도였으니 말 다한것 같습니다.


    그럼 "신경망 첫 걸음" 책 리뷰는 여기서 마치도록 하겠습니다 :)


    모두 다음 포스팅까지 안녕~

  • 확실히 초보자에게 딱 맞춘 그런 책 같습니다. 인공지능 분야를 처음 접하는데도 술술 잘 넘어 갔습니다. 관심은 있으나 해볼 엄두를 못 내신 분들에게 강력 추천 합니다.

  • 디테일한 설명에 그림과 수식을 함께 하여 이해를 더욱 높인 점이 좋았습니다.
    보는 내내 어렵다는 느낌은 없었습니다. 미분까지 등장하지만 부록에서 따로 기초를 다뤄주었기에
    거침없이 읽어나갈 수 있었습니다.
     
    또한 파이썬을 통해 실습을 해볼 수 있도록 지면을 구성한 점이 좋았습니다.
    파이썬을 처음 접하더라도 설치부터 기초 문법까지 필요한 것들을 알려주기에
    파이썬도 같이 배워볼 수 있는 좋은 기회가 되었습니다.
     
    자세한 리뷰는 개인 블로그에서 보실 수 있습니다 ^^

     

  • 최근들어 저는 딥러닝에 관심을 갖게 되어 '딥러닝 첫걸음'을 읽은 적이 있었습니다. 사실 컴퓨터를 전공하고 있지만, 수학에는 많이 약해서 따라가는데 어려움이 많았는데요, '신경망 첫걸음'은 책의 서문에 '누구나 쉽게' 이해하고 공부할 수 있다는 내용이 나와있어서 용기를 내고 책을 읽어 보았습니다.

     

     

    크게 세 부분으로 나뉘어져 있고, '이론-실습(python)-응용' 이라고 보시면 됩니다.

     

    '신경망'이라는 것이 상당히 생소하기도 했고, 아무리 쉽게 설명하려고 해도 받아들이는 입장에서 어렵지 않을까 걱정했었는데, 책을 펴보는 순간 그러한 걱정은 모두 없어졌습니다.

     

     

    위의 사진을 보시면, 정말 친절하게 설명되어있는 것을 확인하실 수 있죠?

     

    이러한 친절한 설명과 컬러로 인쇄된 다양한 자료들이 신경망에 대한 이해를 도왔던 것 같습니다.

     

     

    이전에 제가 봐왔던 프로그래밍 책들은 보통 짧은 이론 설명 후, 간단한 실습 진행을 하는 방식을 택하였는데, 독특하게도 이 책은 긴 이론 설명을 차근차근 모두 해내고 나서 실습을 진행하는 방식입니다.

     

    그래서 Part1에서 신경망에 대한 이론에 대해서 배울 수 있었다면, 이를 토대로 Part2에서 Python으로 직접 신경망을 구현하는 실습을 하게 되는데, 이러한 일련의 과정들이 굉장히 저한테 맞는 방식인 것 같습니다.

     

    또한 라즈베리파이 제로에서 Ipython을 통해 실습을 진행할 수 있도록 자세한 안내가 나와있고, 모든 실습 예제가 라즈베리파이 제로에서 동작하는 만큼 저사양 PC에서도 무리없이 실습을 따라해 볼 수 있다는 것도 이 책의 장점 중 하나입니다.

     

     

    이 책을 읽으면 좋을 독자들

     

    딥러닝, 신경망에 대해서 처음 배우는 사람들도 무리없이 읽을 수 있습니다.

    python은 간단한 기본 문법정도 다룰 줄 알면 더 좋고, 수학을 잘 하지 못하는 사람들도 쉽게 볼 수 있어서 누구나 편한 마음으로 읽을 수 있을 것으로 예상합니다.

     

    어떻게 읽으면 좋을까?

     

    저는 Part1을 읽으면서 간단한 용어 정리를 하면서 읽었습니다. 이런저런 용어가 많이 나와서 헷갈릴 수도 있기 때문입니다.

    또한, 신경망에서 전파, 역전파 등의 과정을 설명할 때에는 직접 그림을 그려서 계산을 해보는 식으로 한 단계씩 따라하면서 읽었습니다. 확실히 이런 방식으로 읽으니까 더 이해도 잘되고 기억에 남는 것 같습니다.

     

    이 책이 좋은 이유

     

    수학을 몰라도, 딥러닝/신경망을 잘 몰라도 누구나 쉽게 읽을 수 있다는 점.

    저사양 PC에서도 모든 실습을 진행할 수 있다는 점.

  • 인공지능은 학부때 전공과목 중 하나로 배우긴 했으나 오랜 세월이 흐른 지금은 뭔가 선명하지 않고, 이해하기 어려웠던 기억만 남아있음. 하여 최근 인공지능 관련하여 많은 내용이 넘처나고 있지만 선뜻 시작하기 어려웠음. 

     

    책을 만난 방식 
    미루고 미루던 어느날. 
    한빛미디어 리뷰어 모집 공고를 보고 도전!
    즉, 이 리뷰는 무료로 도서를 제공받아서 읽어보고 작성하는 것임. 

    첫인상과 구성 
    책에 대한 첫 인상은 일단 얇고, 그림이 많아서(?) 어쩐지 마음에 들었음. 
    책은 4개 파트로 구성되는데 동작원리 부분이 대략 절반을 차지함. 
    1. 인공 신경망의 동작원리 (p.25 ~ p.140, 116쪽) 
    2. 파이썬으로 인공 신경망 직접 만들기 (p.143 ~ p.232, 90쪽) 
    3. 더 재밌는 것들 (p.235 ~ 252, 18쪽)
    4. 부록 (p.255 ~295, 41쪽)

    전체적인 감상평 
    이해하는데 어렵지 않게 1장이 설명되어 있음. 
    2장은 1장의 내용을 파이썬으로 구현하였는데 비 전공자들도 이 정도의 설명만으로 파이썬에 접근 가능할런지는 모르겠음. 내가 비 전공자가 아니기 때문에 알 수 없는 부분임. 
    3장은 조금 더 실습하고자 하는 사람들을 위한 것이고
    4장 부록도 예상보다는 정성껏 작성한 것으로 보임. 


    다만, 표지에 "수포자도 이해하는" 이라고 되어 있어서 수학이 안나올 줄 알았는데 조금 나옴. 
    학교다닐때는 직접 손으로 풀어야 했지만, 이제는 함수만 알면 시키면 되니까 예전보다 무섭지는 않은듯. 

    아쉬운 점은 요즘 나오는 용어들, 그러니까 신경망, 머신러닝, 딥러닝에 대한 간략한 설명도 있었으면 보다 도움이 됐을텐데 싶음. 

  • < 이 책은 한빛 미디어 '나는 리뷰어다'로 부터 책을 지원받아 작성된 글입니다.>

     

     


    [ 책소개 ]

     

    인류에겐 이런 딥러닝 입문서가 필요했다

     

    딥러닝 입문자가 늘고 있지만, 수학 이론을 공부하자니 갈 길이 멀고 원리를 무시한 채 코딩부터 하자니 응용이 불가능하다. 수학 공식과 통계 이론을 달달 익혀야 딥러닝을 배울 수 있는 것은 아니다. 딥러닝을 관통하는 핵심은 신경망이고, 신경망의 기초는 행렬을 통한 가중치 계산뿐이다. 동작 원리를 이해하면 응용과 구현은 자연히 따라온다. 

    이 책은 전공을 불문하고 행렬곱과 다항식 미분에 필요한 사칙연산만 할 수 있다면 누구나 신경망을 이해하고 나아가 파이썬으로 구현할 수 있음을 보여준다. 수학 공식을 최소화하고 친절한 그림과 명료한 문장으로 개념을 설명한다. 기존의 많은 자료에서 너무 어렵게 혹은 너무 간단히 넘어갔던 가중치, 오차 역전파, 경사 하강법 등을 철저히 일반인의 눈높이에서 학습할 수 있다.

     

    자세한 소개 : Link

     

     

    "신경망 어렵지 않아요!"

     

      이 책의 가장 좋은 점은 책 자체의 내용이 어렵지 않고 비전공자와 수학을 어려워하는 사람에게도 쉽게 접근할 수 있도록 해준다.

    나도 컴퓨터를 전공하고 있지만 수학을 보면 머리가 아프고, 어렵게 생각하는 사람 중 한명이다. 신경망이라는 단어만 보고도 '정말 어려운 내용이겠다!' 라고 지레 겁부터 먹었다. 책을 펴기 전까지는.

     

     책의 내용은 정말 간단하고 그림으로 쉽게 설명되어 있어서 어렵지 않게 이해할 수 었다.

     

     

     

    "파이썬을 이용한 신경망"

     

     책 자체는 이론을 설명해주는 책이기 때문에 파이썬에 대한 설치방법 등에 대한 자세한 내용은 나오지 않고 개념, 그리고 IPython의 사용법을 간단하게만 설명해주고 있어서 그런 부분에 대해서는 검색을 통해 알아보는 것이 좋을 것 같다. 책 취지에 맞게 신경망에 대해서 배우고 그것을 실습해보기 위해 파이썬이라는 것을 쓰는 것이지, 파이썬을 알려주기 위한 책은 아니기 때문인 것 같다.

     

     

     

    "이론도 좋지만 실습으로 더욱 쉽게!"

     

     백문이 불여일견이라고 이론을 아무리 설명해도 어떻게 사용하는지 모르면 이해하기 어렵다. 책에서는 파이썬을 이용하여 손글씨를 인식하는 것을 예제로 풀어나가고 있다. 그렇기 때문에 신경망을 조금 더 쉽게 이해할 수 있었다. 실습을 통해 차근차근 부분에 대해서 설명을 하고 있기 때문에 이해도를 높여준 것 같다. 그러나 파이썬을 처음 입문하는 사람은 파이썬 코드를 해독하기 위해서 조금의 시간이 필요할 수 있다.

     

     

     

    "배열 시각화하기"

     

     

    예제 중에 있던 배열을 시각화 하는것을 한번 해보았다. 끝 부분에 나오는 손글씨를 인식시키는 부분은 이미 학교 수업중에 해본 것이라 따로 해보지는 않았다. 그래도 신경망을 처음 공부하시는 분께는 실습을 해보라고 말씀드리고 싶다. 재미있는 부분이다.

     

     

     [ 마무리 ]

     

     

     책이 깔끔하고 간단하지만 안에 내용은 꽉 차있는 책.

     

    디자인    ★★★★☆

    내용       ★★★★☆

    난이도    ★☆☆☆☆

     



결재하기
배송료 : 0원배송료란?

배송료 안내

  • 책, 아이템 등 상품을 3만원 이상 구매시 무료배송
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

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

닫기

리뷰쓰기

닫기
* 도서명 :
신경망 첫걸음
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

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

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

오탈자 등록

닫기
* 도서명 :
신경망 첫걸음
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
신경망 첫걸음
구입처*
구입일*
부가기호*
부가기호 안내

* 회원가입후 도서인증을 하시면 마일리지 500점을 드립니다.

* 한빛 웹사이트에서 구입한 도서는 자동 인증됩니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한됩니다.

* 절판도서, eBook 등 일부 도서는 도서인증이 제한됩니다.

닫기

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

자료실