친절한 그림과 코드가 훌륭하다.

벌써 봄날씨가 가득합니다. 올해도 여김없이 서평단 기회를 가져다준 한빛미디어 관계자분들께 감사드립니다.

항상 많은 도움이 되는 리뷰가 되도록 노력하겠습니다.

 

오늘 책은 알기쉬운 비유와 기초 수학으로 시작하는 그로킹 딥러닝이라는 도서입니다. 

구글 딥마인트 리서치 사이언티스트인 앤드루 트라스크가 저술했고, 박상현 역자가 옮겼다. 인공신경망을 연구하는 저자로서 이번 도서 역시 제목에서 알수있듯이 딥러닝에 관한 도서이다. 딥러닝을 처음 접하는 입문자에게 필요한 이론 도서인 셈이다. 파이썬을 기본으로 코드가 구성되지만 코드의 양은 그렇게 많지 않다. 

 

2장은 머신러닝에 관련된 내용으로 파라미터릭 모델과 넌파라미터릭 모델 및 지도, 비지도 학습의 패러다임에 대해 소개한다. 딥러닝에 대해 본격적으로 공부하기 전 컴퓨터가 어떻게 학습하는지 알아보는 것이다. 3장부터 본격적인 순전파 신경망에 대해 알아본다. 결국 딥러닝의 최종목표는 예측이다. 미래에 어떤 일이 일어날지 과거의 데이터를 기반으로 확률적으로 알아보는 것이다. 이 때 여러 입력이 있을 수 있으며, 출력도 한 개 또는 그 이상일 수 있다. 이러한 다양한 문제를 모델로 구축하는 것이 딥러닝의 핵심이다. 

 

수포자도 이해할 수 있는 딥러닝 입문

이러한 확률을 계산하는데 있어 다양한 수학적 기법이 사용되는데 그 중 모델의 최소값, 즉 미분해서 0이 되는 지점을 찾기위해서는 경사하강법 등이 필요하다. 4장은 이러한 기법을 코드를 통해 살펴볼 수 있는데, 넘어가 5장에서 이를 좀 더 일반화시키고 있다. 

 

정규화와 함께 오버피팅의 원인등을 알아보는 8장,9장에서는 활성화 함수에 대해서도 알아보는데, 대표적인 sigmoid와 tanh의 차이와 함께 언제 무엇을 사용해야 하는지도 보여준다. 나아가 10장부터는 딥러닝의 대표적인 모델인 CNN과 RNN에 대해 살펴본다. RNN의 비중이 좀 더 많은 단어주머니 모델 및 임베딩 등의 내용을 다루며 연속적인 언어 모델링에서 딥러닝이 어떻게 사용되는지 알 수 있다. 

 

13장부터는 딥러닝 프레임워크에 대해 알아본다. 우리가 잘 알고 있는 텐서플로, 파이토치, 케라스 모두 딥러닝 프레임워크 중 하나이다. 결국 코드를 좀 더 간단하게 하여 딥러닝 구축을 손쉽고 빠르게 하며 성능도 높여주는 것이 목적이다. 복잡한 모델을 디버깅하거나 내부적인 동작을 좀 더 깊이 알고싶을 때 어떻게 사용되는지도 알 수 있다. 

 

처음에 이 책에서는 수포자도 이해할 수 있다고 했다. 결국 복잡한 수식이 나오지 않았다는 뜻인데, 실제로 수식을 거의 없애고 도식과 간단한 코드로 나타냈다. 이공계열을 전공하지 않았지만 딥러닝을 배워야하는 독자에게 필요한 책이다. 비유와 그림이 이 책의 내용을 잘 안내하고 있으며, 딥러닝, 머신러닝, 신경망 구현, 모델링 등에 대해 잘 설명하고 있으며 번역도 훌륭하게 이뤄진 도서이다. 많은 독자들에게 추천하는 바이다.

 

 

"이 리뷰는 한빛미디어의 지원을 받아 작성되었습니다"



많은 입문자들이 데이터 분석 입문 언어로 R언어를 뽑고 있다. 파이썬과 다르게 R만의 장점이 있다는 것이다. 이 책은 R언어의 입문을 다루는 책이다. 따라서 초보자들이 R스튜디오를 설치하는 방법부터 시작해 데이터 분석을 시작하기에 적합한 책이다. 


이 책에서 소개하는 관점은 다음과 같다.


-전공을 막론하고 초보자가 쉽게 이해하고 따라 할 수 있는 상세한 설명

-데이터 분석에 대해 체계적으로 이해할 수 있도록 기초부터 단계적으로 설명

-분석 결과를 가시적으로 표현하는 시각화 기법에 대한 기본 설명

-현장 밀착형 데이터 핸들링 기법 및 분석 기법에 대한 예시 활용



본인의 실력에 맞게 알맞은 학습 로드맵을 정할 수 있다. 입문기를 다루고 있으며, R이라는 언어의 진입장벽은 낮기 때문에 7일만에 끝낼 수 있다.



챕터 구성은 초보자도 쉽게 이해할 수 있게 구성되어 있다. 프로그램 설치부터 기본기 다지기, 패키지와 함수에 관한 내용까지 다룬다. 패키지란 R언어에 필요한 기능을 추가하는 요소이다. 따라서 사용자가 필요한 패키지를 다운받아 쉽게 설치해 사용한다. 초보자에게는 패키지를 어떻게 활용하는지만 배워도 빠른 속도로 진도를 나아갈 수 있다.



이제 실제 프로젝트를 진행하면 폴더 관리가 중요하다. 코드 실행에 있어 작업 폴더 영역을 설정하고 데이터가 있는 폴더를 구분해 좀 더 직관적인 코드와 구성이 가능하다.



데이터 프레임은 R언어에서 중요한 데이터 타입이다. 리스트형의 확장 형태인 데이터 프레임은 데이터 분석을 좀 더 용이하게 해준다.



R언어의 코드는 직관적이고 간단하며 사용자위주이다. 단 몇줄만으로도 의미있는 데이터 분석이 가능하다는 것이다. 보시다시피 단 한줄로도 변수의 중첩 부분을 정렬해 데이터를 나타낼 수 있다.



R언어에서는 패키지에 대한 이해가 필수이다. 물론 최근의 대부분의 프로그래밍 언어는 패키지와 라이브러리를 활용한 코딩이 대세를 이루기 때문에 패키지와 라이브러리를 원활히 사용할 줄 알아야 한다.


R언어는 CRAN이라는 R언어 패키지 매니저를 통해 관리된다. 따라서 간단한 명령어를 이용해 패키지를 설치할 수 있다. 데이터 분석과 R언어에 필수적인 패키지와 유용하게 사용되는 패키지가 많이 소개되고 있다.



워드클라우드란 단어의 빈도에 따라 글자의 크기를 달리해 시각적으로 빈도가 높은 단어와 낮은 단어를 쉽게 구분할 수 있도록 지원한다. 워드클라우드를 생성할 단어 데이터만 정돈되 있다면, 단 2줄만으로도 워드클라우드를 생성할 수 있다.



ggplot2 패키지는 막대그래프, 꺽은선 그래프, 히스토그램, 산점도 등을 다양한 차트와 그래프를 나타낼 수 있는 R언어의 필수급 패키지입니다. 데이터를 이용한 그래프와 제목, 축 등 다양한 디자인 요소와 함께 googleVis패키지와 함께 사용하면 더욱 좋다.



R언어는 파이썬과 다른 언어들과 함께 데이터 분석에 있어 중요한 도구이다. 그 언어를 사용하는데 있어 수많은 입문서와 활용서들이 존재한다. 그 중 이 책은 R언어를 전혀 모르는 사람부터 시작할 수 있는 훌륭한 입문서이다. 쉬운 구성한 간단한 코드 구성 및 패키지 활용까지 다양하게 알려주고 있다. 


"

여러분을 위한 가장 기초의 R언어 입문서

"

+ Recent posts