신경망 첫걸음 - 수포자도 이해하는 신경망 동작 원리와 딥러닝 기초 머신러닝/딥러닝 첫걸음 시리즈
타리크 라시드 지음, 송교석 옮김 / 한빛미디어 / 2017년 4월
평점 :
장바구니담기


신경망 첫걸음 리뷰

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

선택 동기

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

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

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

"기초가 부족해요"

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

장점

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

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

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

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

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

"점진적 설명"

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

단점

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

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

결론 및 활용

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

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

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


댓글(0) 먼댓글(0) 좋아요(1)
좋아요
북마크하기찜하기 thankstoThanksTo