고성능 파이썬 - 파이썬 성능 잠재력을 끌어내는 실용적인 개발 전략서, 2판
미샤 고렐릭.이안 오스발트 지음, 오현석 옮김 / 한빛미디어 / 2021년 5월
평점 :
장바구니담기


Python 입문서나 Python 머신러닝/딥러닝(Tensorflow, PyTorch 등) 입문서를 떼고, 소소한 과제가 아닌 경진대회나 실제 업무를 접하면 필연코 한계를 절감합니다. 성능, 속도 같은 한계에 부딪히기도 하지만, 이 코드가 돌아가는데 왜 돌아가는지 이 방법과 저 방법의 차이가 무엇인지 모르는 답답함도 정말 사람 속을 뒤집어 놓습니다.

이런 때에 읽어 보길 권합니다. 이 책을 입문서를 떼기 전에 봤다면 그냥 미리 사 둬도 좋습니다. 어차피 겪을 문제라서 구글 검색부터 하느라 시간을 많이 보내기 보다는, 구글 검색을 하더라도 이 책으로 시작하면 필요한 결과를 더욱 빨리 찾을 겁니다.

우리나라는 특히 많은 Java 개발자가 파이썬을 익힐 때에도 이 책은 쓸 만합니다. 파이썬이 어떤 특장점으로 인기가 있는지 설명하며 목차를 훑어 봐도 Java에서 했던 개발작업에 상응하는 부분이나 파이썬스럽게 할 수 있는 방법을 알려 줍니다. 저도 Python은 나중에 배웠는데 기본 함수보다 Numpy를 많이 쓰는 이유를 몰랐던 기간이 길었습니다. 물론 이 책을 보고 안 것은 아니지만(검색을 했죠.) 더 빨리 알았다면 쓸 데 없는 고집을 부리지 않고 더 효과적으로 개발할 수 있었겠다는 생각은 듭니다. Cython이나 다른 성능향상 방안도 소개가 잘 되어 있습니다. 용기내어 해볼 만하겠습니다.

더불어 비동기 I/O나 multiprocessing을 다룬 장도 고개가 끄덕여졌습니다. 팀원들이 실제로 개발할 때에 꼭 신경쓰거나 적용해야 했던 모듈입니다. 알고 입사했던 팀원도 있지만, 들어와서 열심히 익힌 팀원도 있었습니다. GPU와 docker를 다룬 장도 흥미로웠습니다. 분량이 많지는 않은데, 이 책을 통해 존재를 알았다면 필요한 주제를 검색해내기가 더 쉬워질 거라 봅니다. 이런 식으로 파이썬 요소 요소에서 성능을 높힐 팁이 빼곡합니다. 1판부터 더 일찍 만났으면 좋았겠습니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
MongoDB 완벽 가이드 - 실전 예제로 배우는 NoSQL 데이터베이스 기초부터 활용까지, 3판
크리스티나 초도로우 외 지음, 김인범 옮김 / 한빛미디어 / 2021년 3월
평점 :
장바구니담기


몽고DB가 충분히 원숙해진 후인 3.4 버전 때에 경험 많은 엔지니어에게 배우며 적당한 트래픽 환경에서 운영했던 행운을 누렸던 터라, RDB를 굳이 쓰지 않아도 되는 사안에는 자연스럽게 몽고DB를 기준으로 생각하곤 합니다. 그러다 보니, <몽고DB 완벽 가이드(3판)>는 세 번째 읽는 몽고DB 교재입니다.


실전 예제로 배우는 NoSQL DB라는 홍보문구 답게 질의 예제를 충분히 다룹니다. 더불어 운영 관점에서 복제(replica)와 샤딩과 더불어 서버 관리와 모니터링에 분량을 상당히 할애합니다. 몽고DB를 몽고DB 답게 하는 Replica와 sharding 내용이 충분한 편입니다. 몽고DB와 Spark를 엮어 쓰며 고생스러웠던 적이 몇 번 있었던 경험이 떠올랐습니다. 설치/배포 관련해서도 리눅스 운영체제 설정이나 가상화 관련해서도 조언을 줍니다.제가 처음 배우던 때에 이런 책이 있었으면 좋았겠습니다.


3판은 버전 4가 나온 후에 나왔기에 버전 4의 강점에 대해서도 많이 다룹니다. 일례로 공간 정보(Geospatial) 인덱스 예제가 참 상세해서 만족스러웠습니다. 몽고DB가 지도 기반 서비스에도 아주 효용이 크다는 점을 아주 잘 알 수 있었습니다. 텍스트 검색 관련 예제도 마찬가지로 볼 만했습니다.


다만, WiredTiger Storage Engine 외에 In-Memory Storage Engine도 언급은 할 법한데 제가 놓쳤는지는 몰라도 다루지 않았습니다. 대세 엔진은 아닌지 모르겠지만 Redis를 굳이 쓰지 않아도 되는 좋은 선택지 중 하나라고 보았으므로 살짝 아쉬웠습니다. 번역 면에서는 한국어로 번역한 용어를 처음 언급할 때나 소제목으로 쓸 때에는 영어 원문을 병용하면 좋았을 텐데 일관적이지 못합니다. 해당 기능을 익히는 데에는 별 문제가 없긴 하겠습니다.


버전 4.0이 나온지 엊그제 같은데 4.2를 거쳐 벌써 4.4 버전이군요. 발전이 참 빠릅니다. 때문에 내년쯤 되어 팀원이 몽고DB 교재를 필요로 한다면 새로 나올 책을 사야 하지 않을까 싶기도 합니다. 이 책도 4판이 나오려나요? 기대하고 있겠습니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
GAN 첫걸음 - 파이토치 신경망 입문부터 연예인 얼굴 생성까지
타리크 라시드 지음, 고락윤 옮김 / 한빛미디어 / 2021년 3월
평점 :
절판


타리크 라시드 씨가 <신경망 첫걸음>에 이어 <GAN 첫걸음>을 내놓았습니다.

<신경망 첫걸음>이 제게 참 유익했기에 이번 책도 평소 관심사와 엮여서 무척 기대했습니다. 팀 업무에 쓸 머신러닝 학습 데이터가 부족해서 만들어 볼까 생각해 왔던 중이었기 때문입니다.

내용은 정말 알찹니다. 저자가 입문자인 독자를 배려하여 Google Colab을 써서 실습하도록 했기에 장소에 구애 받지 않고 공부하기에도 딱 좋습니다.

그러나 읽고 나서 첫번째로 들었던 생각은 독자 대상이 좀 애매하지 않은가 하는 의문이었습니다. 이 책은 <신경망 첫걸음> 다음으로 나오기는 했지만 후속작은 아닌 모양입니다. <신경망 첫걸음>을 실습까지 마친 독자에게는 초반이 다소 심심할 수 있습니다. 반대로 읽지 않았던 독자는 전작을 신경 쓸 필요 없이 설치와 설정을 거의 신경 쓰지 않아도 되는 Colab 환경에서 맘편히 GAN 공부를 시작할 수 있습니다.

두번째로 든 생각은 너무 짧다는 아쉬움이었습니다. GAN 하면 먼저 떠오르는 사람 얼굴 합성을 좀 다루다 끝나는 느낌을 받았습니다. 사진을 명화 스타일로 변환하기도 기대했는데 말입니다. 저자는 머리말에서부터 GAN의 모든 것을 다루지 않는다고 선언했으니 원망할 도리는 없습니다. 이 책이 잘 팔려서 GAN 두걸음 같은 후편이 나와줘도 좋겠습니다. 홀로서기를 달성한 개발자라면 이 책만으로도 충분하긴 할 겁니다. 좀 더 곱씹어 보고 실습하며 체득하렵니다. 그게 정석이겠습니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
진지한 파이썬 - 파이썬 작동 원리에서 확장, 테스트, 배포, 최적화까지
쥘리앵 당주 지음, 김영하 옮김 / 한빛미디어 / 2021년 1월
평점 :
장바구니담기


업무로 파이썬을 쓴 지 벌써 5년째인데, 그동안은 파이썬으로 만든 프로그램을 패키징할 필요가 없었습니다. 하둡, 스파크 등 서버에서 동작하면 그만이었습니다. 그러다 최근에 서버가 아닌 곳에 배포할 필요가 생겼습니다. 당연히 구글 검색해 보면 자료가 많이 나와서 그런가 보다 하고 있다가 이 책을 만났습니다.

이 책은 입문단계를 벗어난 파이썬 초보 개발자가 업무로서 체계적으로 노하우를 축적하며 협업하기 위한 소양을 갖추도록 합니다. Java, Spring Framework로 개발하던 사람들은 Python에서도 일대일 대응하는 도구나 개념이 있길 바라는데 그 정도는 다 갖췄다고 잘 설명해 줍니다. 책 내용을 숙지했다면 어디 가서 파이썬 개발 업무로 마냥 모르는 건 절대 없는 인재가 되지 않을까 합니다.

제가 특히 감탄한 부분은 배포, 단위 테스트, 데커레이터, ORM이었습니다. 이제까지 제가 야매로 해왔기에 모르는 부분이 많다는 건 잘 알았습니다만, 뭐가 비었는지 명쾌하게 알지 못했습니다. 이 책을 찬찬히 보니 제가 파이썬으로 좀 더 원숙할 수 있겠다는 생각도 들었습니다. 선배 역할을 해주는 책이라 하겠습니다.


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


코세라로 머신러닝 강좌를 듣다가 이해가 좀 힘들어서 예전에 샀던 책을 다시 펼쳐 들었습니다.


저 유명한 앤드류 응 교수의 코세라 딥러닝 강좌와는 찰떡궁합이랄까요? 어색한 번역이 섞여서 좀 더 어렵게 느껴지던 부분을 말끔히 해소해 주었습니다. 다만 표지에 적힌 대로 '수포자도 이해하는' 수준까지는 아니라고 봅니다. 휙 어려워지는 지점이 나옵니다. 그래도 완독하시길 바랍니다. 완벽히 이해하지는 못하더라도 신경망이라는 게 잘 돌아가는 개념이라는 사실을 잘 알게 됩니다. 인공지능, 머신러닝과 그리 친하지 않았던 입문자는 바로 구글 텐서플로나 파이토치 책을 잡기보다는 이 책을 후딱 떼는 게 더욱 도움이 되리라 단언합니다.

더불어 장 별 끄트머리에 나오는 정리가 잘 된 코드만 보지 말고, 책 중간 중간에 나오는 코드를 실제로 타이핑해가며 읽는 게 더욱 좋겠습니다. 이 정도 계산은 구글 Colab에서 수행해도 충분하니 어디서든 웹 브라우저를 켜고 공부를 이어 나가기 편합니다.



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