처음 배우는 데이터 과학 - 통계, 수학, 머신러닝, 프로그래밍까지 데이터 과학자를 꿈꾸는 히치하이커를 위한 최고의 안내서
필드 케이디 지음, 최근우 옮김 / 한빛미디어 / 2018년 2월
평점 :
절판


개인적으로 머신러닝(딥러닝)이 화두로 떠오른 이후로, 가벼운 관련 서적들을 읽어보고 있다. 이 책도 그런 입문서의 하나로 볼 수 있을 것 같다.

통계, 수학, 머신러닝, 프로그래밍까지 데이터 과학자를 꿈꾸는 히치하이커를 위한 최고의 안내서

표지에 있는 문구인데, 굳이 밑줄을 그어보라고 하면 “안내서”가 적당할 것이다.

원서가 어떤 책인가 싶어 검색해보니 아마존의 별점은 그리 나쁘진 않았다. 별 4개 미만의 후기들은 “다루는 영역이 넓은 만큼 깊이가 부족하다”는 의견이었다.

이 책의 장점이라면 “안내서”로서의 제 역할을 한다는 것이 아닐까. 나와 같이 데이터 과학이라는 분야가 생소한 사람들에겐 다음으로 나아가기 위한 “안내서”로써의 역할은 충분히 하는것 같다. 각 챕터별 마지막에 ‘주요용어’를 정리해주고 있고, 깊지는 않지만 나름 쉬운 설명으로 개념을 전달해준다. (물론 설명을 읽어도 잘 이해가 안가는 부분도 있기마련…)

아마 데이터 과학 분야의 대부분의 큰 주제는 다 다루는게 아닌가 싶을 정도다. 그게 오히려 아쉬운 부분으로 다가오기도 했다. 데이터베이스 SQL에 대한 내용에서 부터 “의사소통과 문서화”, 프로그래밍 습관과 프로그래밍 언어의 주요 개념, 메모리 관리, 자료구조까지… 이런 부분도 충분히 중요한 내용이라 할 수 있겠지만, 이보다는 그 외의 주제들에 대해 반발자국만 더 들어가는 내용이었으면 어땠을까 하는 아쉬움이 남는다.

개인적으로 파이썬을 다시 보는 중이라 책의 예제들도 작성하면서 pandas나 matplotlib 라이브러리를 어떤 때 어떻게 쓰는지도 볼 수 있어 좋았다. 다만, 책 중반 이상을 지나가면서 주제가 어려워져서 그런지 “위키피디아 조회수 예측 예제”, “주식 관련 신문 기사의 감정 분석 예제” 와 같이, 참고할만한 예제 코드를 담고 있지만 코드와 관련한 설명이 없다보니 다소 힘을 잃는 느낌이다.

책표지


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
러닝 HTTP/2 - 핵심만 쏙쏙, HTTP/2 적용 실무 가이드
스티븐 루딘.하비에르 가르사 지음, 강재준 옮김 / 한빛미디어 / 2018년 1월
평점 :
장바구니담기


HTTP 가 없는 웹을 생각할 수 있을까? 하지만 웹 어플리케이션을 개발하면서 HTTP 를 심각하게 고민하지는 않는다… 뭐랄까 그냥 당연히 있어야할 **공기** 같은 것이랄까?


그도 그럴것이 프로토콜 레벨의 구현은 이미 프레임워크나 라이브러리에서 다 해주고 있으니, 프로토콜 스펙 문서를 정독해가면서 개발하지는 않는다. 하지만 시간이 지나면서  HTTP 에 대해 제대로 몰라서 생기는 문제들이 생기고 자연스럽게 [HTTP 완벽 가이드] 요런 책도 읽어보게 된다.


HTTP/2 에 대한 글이나 기사는 봤지만, 개인적인 관심사의 우선순위나 낮다보니 거의 아는게 없었는데, 이 책을 읽을 기회가 생겼다.


우선 이책을 장점은 

1. 200 페이지도 되지 않는 얇은 책이다. (참고로 앞서 언급한 [HTTP 완벽 가이드] 는 700 페이지가 넘는다.) 

2. HTTP2 의 새로운 기능만 단순히 설명하는 책이 아니다.

3. 관련 레퍼런스를 많이 소개해준다.


목차를 보면 알겠지만, 우선 HTTP 의 발전 과정을 간략히 정리해준다. 이어서 본격적으로 HTTP/2 에 대한 이야기에 앞서 HTTP/2가 나올 수 밖에 없었던 이유에 대해서 설명해 주는데, 개인적으로는 이 부분(3장)이 가장 마음에 들었다. 오래된 프로토콜의 문제점이 무엇이었는지, 그리고 그런 문제점들을 이겨내기위해 어떤 기법들이 사용되고 있었는지, 성능에 연관된 지표들은 어떤 것 들이 있는지 등. 막연하게 알고 있던 내용뿐만 아니라 처음 알게된 용어나 내용도 적지 않았다. 어찌보면 HTTP/2 의 새로운 기능보다 여기서 알게된 내용이 더 도움이 되는지도 모르겠다.


이후 HTTP/2 로의 전환에 앞서 고려해야할 사항들과, 지금까지 성능향상을 위해 사용한 방법들이 HTTP/2 에서는 오히려 마이너스 요인이 되는 기법들. 그리고 드디어 HTTP/2 프로토콜에 대해 자세히 알려준다. 모든 기술이 그렇듯이 덮어놓고 이게 가장 좋다고 말할 수 는 없다는 것이다. 물론 책에서도 말하고 있지만, 대부분의 경우에서 HTTP/2 가 더 나은 성능을 발휘하지만, 그 반대의 케이스도 있다는 것을 알고 있어야 한다는 것. 


마지막 장으로 HTTP/2 그 다음은 무엇일지 이야기한다. 짧은 내용이지만 내용이 흥미로웠다. OS 의 커널에 구현되었기에 변경하기 어려운 특징을 가진 TCP 와 UDP을 기반으로 TCP 스택을 사용자 공간(브라우저) 옮기므로써(TCP스택의 구현) 개발자가 네트워크 스택에 대한 제어권을 얻게 되어 더 빠른 개발과 배포를 할 수 있기에 TCP 에서 UDP로의 전환에 대해 언급한다. 그리고 구글이 개발한 QUIC(Quick UDP Internet Connection) 을 간단히 소개한다. 


얇은 책 두께에 비해 내용은 반대로 아주 알찬 책임이 틀림없다. 웹 관련 개발자라면 누구나 꼭 읽어볼 만한 책이라고 추천해주고 싶다.




댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
처음 배우는 머신러닝 - 기초부터 모델링.실전 예제.문제 해결까지
김승연.정용주 지음 / 한빛미디어 / 2017년 10월
평점 :
절판


“처음…”, “… 첫걸음” 시리즈의 책들을 다 보진 못했지만, 근래 본 책은 다소 기대에 못 미쳤다. 그런데 이 책을 리뷰 서적 중 하나로 선택한 이유는 ‘헬로 데이터 과학’의 저자이며, ‘데이터 지능’ 팟케스트도 진행하고 계신 김진영님의 추천 때문이다. (그런데 어디서 추천했는지 찾을 수가 없다. 혹은 다른 책을 추천했는지도 모르겠으나… 이 책에 앞부분에 나오는 첫번째 추천글이 김진영님의 글이니 맞을꺼라 생각한다.)

딥러닝의 인기를 실감하면서 개발자로서 이 현상을 어떻게 받아들여야 하는지 아직 확신이 없다. 데이터 과학자와 개발자라는 영역을 정확히 구분하긴 어렵지만, 분명 서로의 직업군을 형성하고 있는 것은 사실이다. 그런데 이게 애매해 지고 있다. 딥러닝의 발전과 함께 비전문가도 쉽게 딥러닝(또는 머신러닝)을 사용하는 시대가 곧 올꺼라고들 하는데, 개발자의 필수 기술로 요구될 것은 너무 자연스럽기 때문이다. 특히 백앤드 개발자에게는 더욱 그렇지 않을까…

이 책은 제목처럼 배경지식이 없는 사람을 위한 머신러닝 입문서이다. 머신러닝의 개념과 함께 다양한 방법론의 알고리즘으로 무엇을 할 수 있는지를 알려준다. 우선 이 책의 장점을 들자면,

  • 잘 짜여진 구성
  • 쉬운 설명
  • 적절한 예제

크게 세 파트로 나눠져 있고, 각 파트는 기본개념, 모델, 구현에 대한 내용을 담고 있다. 개인적으로 파트2인 ‘머신러닝 주요 모델’이 가장 좋았다. 다양한 데이터형에 대한 설명을 시작으로 ‘데이터 표준화’에 대한 부분을 읽고 많은 깨달음을 얻었다. 이미 데이터는 주변에(개인적으로나, 회사에서나) 널려있는데, 이런 데이터를 이용하기 위해 먼저 어떻게 고민해봐야 할 지에대한 나름의 가이드를 얻은 것 같아서 좋았다. 그리고 다양한 방법론과 각 알고리즘이 적지않은 수식들과 함께 설명되어 있는데, 밸런스가 아주 적절했다. 수식에만 너무 빠지지도 않고, 그렇다고 수식을 대충 넘기지도 않는다. 이 수식이 무엇을 의미하는지, 왜 필요한지에 대한 설명에 더 힘을 쏟고 있다. 물론 나의 부족한 수학지식에 수식 자체를 100% 이해하고 넘어가지는 못하지만, 어떤 문제를 해결하기 위해 이 알고리즘이 어떤 역할을 하는지에 대한 이해는 충분히 되었다고 생각한다. 그리고 책에도 반복적으로 언급하는 것 처럼.

…(중략) 특별한 구현 없이 라이브러리로 바로 사용할 수 있습니다.

그렇다. 이미 다양한 머신러닝 라이브러리가 있고, 그것을 이용하면 그만인 것이다. 책에서도 다양한 라이브러리들을 소개하고 있고, 실전 예제에서 그 라이브러리들을 이용한다. 즉, 중요한 것은 내가 풀고자 하는 문제에 어떤 방법, 어떤 알고리즘을 활용할 것인지에 대해서 아는 것이 아닌가 생각해본다. 그런 의미에서 이 책이 큰 도움이 되어 줄 것 같다.

개인적으로 이전에 읽은 ‘밑바닥부터 시작하는 딥러닝’ 에서 봤던 용어나 수식들이 적잖게 등장해서 이해하는데도 조금은 도움이 되었던 것 같다.

책표지


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
밑바닥부터 시작하는 딥러닝 - 파이썬으로 익히는 딥러닝 이론과 구현 밑바닥부터 시작하는 딥러닝 1
사이토 고키 지음, 개앞맵시 옮김 / 한빛미디어 / 2017년 1월
평점 :
구판절판


수포자도 이해되는 설명과 코드도 담백하다. 군더더기가 전혀 없는 책이라고 생각됨!!

댓글(0) 먼댓글(0) 좋아요(1)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
인사이드 머신 에이콘 임베디드 시스템 프로그래밍 시리즈
존 스토크스 지음, 전동환.안익진 옮김 / 에이콘출판 / 2007년 3월
평점 :
장바구니담기


개인적으로는 중반까지의 기본적인 개념과 원리만으로도 충분히 읽을 가치가 있었던 책!

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