[도서리뷰] 케라스 창시자에게 배우는 딥러닝 개정 2판

    저는 개인적으로 딥러닝 프레임워크 중에서 케라스(Keras)를 많이 선호합니다. 딥러닝을 텐서플로우로 시작하였고, 다소 어려웠던 텐서플로우 초기 버전에서 텐서플로우 2.0부터는 케라스를 기본으로 하여 텐서플로우도 이제 많은 사람들이 쉽게 딥러닝을 다룰 수 있게 도와줬기 때문입니다.

     

    그런 고마운 케라스라는 존재를 만든 창시자 분이 직접 도서를 집필하였는데요. 1판의 경우 2018년에 나와서 많은 2019년 ~ 2020년에 대규모 변화가 있었던 텐서플로우의 비해 약간 늦은 감이 있어 현재 시점으로는 보기에 힘들 수 있는데요. 개정 2판이 나오면서 도서 역시 현재 버전에 맞게 다양하게 바뀌었습니다.

     

    양장본

    케라스 창시자에게 배우는 딥러닝, 양장본
    양장으로 된 도서

     

    게다가 도서는 양장으로 되어 있어서 책 받침대에 놓거나 그냥 보기에도 상당히 편합니다. 저는 양장으로 된 도서는 무조건 사모으고 싶은 충동을 느끼는데 케라스의 창시자가 알려주는 책이며 내용도 상당히 방대하여 케라스를 전문적으로 다루려는 혹은 다루고 있는 많은 엔지니어분들이 바이블 형태로 보기에 정말 좋은 것 같습니다.

     

    도서 내용

    도서를 읽은 소감으로 말을 하자면, 바이블 수준의 도서이다 보니 하나부터 열까지 모든 것을 알려주려는 저자의 노력이 보입니다. 머신러닝을 오래 하였고, 다양한 도서를 봤었는데 "이것까지 알려준다고?"라는 생각이 들 정도의 책이었다고 해야 할까요?

     

    프랑소와 숄레
    케라스 창시자, 프랑소와 숄레

     

    그래서 이 책을 한권만 마스터해도 케라스 책 몇 권을 본 효과는 날 것이라 자부할 수 있는 것 같습니다. 게다가 잘못된 지식을 전달하는 저자들도 있었는데 창시자의 말이기 때문에 잘못된 지식이 나올 가능성은 제로에 수렴하니, 말을 검증하거나 왜 이렇게 말을 하지?라는 생각 없이 지식을 교정하면서 습득을 하였습니다.

     

    제가 이렇게 말을 하는 이유는 책이 다소 어려울 수도 있습니다. 용어를 정확히 알려주려는 것과 어려운 수학적인 공식을 최소화하면서 독자들에게 머신러닝을 이해시키는 부분이 초반부에 상당히 많이 나옵니다. 그렇기 때문에 책의 초반부는 약간 어려울 수 있지만, 이해를 한다면 중요한 지식을 습득할 수 있다고 생각합니다.

     

    텐서 연산 설명 부분
    텐서 연산을 설명하려는 모습

     

    위의 페이지는 책의 일부를 찍은 것인데요. 개발자의 사고가 아니라 창시자의 사고다 보니 하나부터 열까지 설명을 하려는 모습이 이렇게 보입니다. 그러다 보니 완전 이쪽을 모르는 분이 보기에는 다소 어려울 수 있을 텐데요. 그렇다고 그런 분들에게 비추하는 책은 아닙니다.

     

    케라스 도서 목차
    목차

     

    일단 이해가 안 되시는 부분이 있다면 과감히 넘어가시고, 이해가 쉬워지는 부분부터 봐도 무방하기 때문입니다.

     

    개발 환경

    해당 책에 있는 예제는 현재 github에 모두 공개가 되어 있고, 구글 코랩(Google Colab)으로 진행할 수 있지만 회사에서의 사용하는 제 데탑 컴퓨터가 고성능의 GPU가 깔려 있기 때문에 많은 예제들을 회사 컴퓨터와 집에 있는 데탑으로 병행하여 진행해 보았습니다.

     

    CPU : Intel(R) Core(TM) i7-9700 CPU @ 3.00 GHz
    Memory : 32GB
    GPU : NVIDIA TITAN RTX 24GB

     

    책의 평점

    방대함(알참) : 10점
    책의 구성 : 10점

     

    일단 책의 내용에 대해서는 케라스를 쓰는 사람에게 이보다 좋은 책은 없다고 생각합니다. 이 책만큼 좋은 케라스 도서는 개별적인 포커스를 둔(ex: 자연어 처리) 책 정도이지 케라스를 전반적으로 습득하기에는 이 책만 읽어도 충분할 정도로 난이도가 어느 정도 있습니다.

     

    너무 쉬우면 책은 술술 읽힐지 모르나 남는 게 없지만, 이 책은 적당히 난이도가 있으면서도 많은 사람들을 포용하려는 노력도 보입니다. 

     

    독자 수준별 읽어야 할 방법

    머신러닝 생초보

    머신러닝 생초보의 경우 책이 너무 어려워서 "아 머신러닝은 나랑 안 맞는구나"라는 생각을 할지 모를 텐데요. 이해가 진짜 죽어도 안 되는 부분은 일단 넘어가고 쉬운 부분부터 하시는 것을 추천드립니다. 아니면 뭔지 모르고 그냥 따라 해 보는 것도 좋을 거라 생각합니다. 그렇게 한 바퀴를 돌고 머신러닝이 어떤 것인지 감이 오면, 다시 처음부터 읽어서 좀 더 어려운 부분을 습득하고 머신러닝 예제를 자기 것으로 할 수 있게 예제를 살짝 바꿔보면서 하는 방법도 좋습니다.

     

    머신러닝 중급자 이상

    머신러닝을 어느 정도 하였고, 소스를 충분히 이해를 하신 분들이라면 머신러닝의 코드보다는 작동 원리나 저자의 철학 등을 이해해보는 것도 좋다고 생각합니다. 

     

    책의 한줄 평

    어려우면서 쉬운 케라스 바이블

     

     

    제가 한줄 평을 어려우면서 쉬운 케라스 바이블로 정한 이유는 책이 설명하고자 하는 것들은 케라스를 처음 접하는 사람들에게는 비교적 어려운 주제일 수 있으나, 이를 그림과 자세한 설명으로 쉽게 풀이해준다는 것입니다. 그래서 딥러닝을 잘 모르는 분들은 몸에서 거부를 할 수 있으나, 막상 보면 설명을 매우 잘하는 1타 강사같은 느낌으로 책을 읽으실 수 있을 겁니다.

     


     

    해당 도서는 길벗 출판사에게 도서를 증정받아 리뷰를 작성한 포스팅으로 책을 받은 후 약 3주 정도 직접 예제 등을 수행하면서 작성한 포스팅입니다. 저의 경우 도서의 전반적인 구성이 마음에 들어 회사 동료들에게 추천하거나 회사에서 도서를 몇 권 구비하여, 동료들이 볼 수 있게 책꽂이에 놓을 예정입니다.

     

    댓글

    Designed by JB FACTORY