
8
머신러닝이 놀라운 결과를 쏟아내고, 데이터 과학자와 데이터 엔지니어의 몸값이 높아지면서
수많은 사람들이 머신러닝에 관심을 가지고 공부한다. 이런 현상이 벌어지면서 최근 가장 각광
받는 언어가 파이썬이다.
파이썬은 고수준 언어이면서 배터리 포함이라는 개념하에 다양한 도구를 기본 제공하므로 누
구나 쉽게 데이터 전처리나 데이터 분석에 사용할 수 있다. 하지만 파이썬에 능통한 프로그래
머라고 해도 파이썬이 너무 고수준 언어라서 이를 실행해주는 운영체제나 컴퓨터 시스템 전반
을 충분히 이해하지 못할 때가 많다.
데이터 과학에서 다루는 데이터의 양은 일반적인 개발자가 다루는 양보다 훨씬 많으므로, 대용
량 자료구조를 처리하는 과정에서 병렬 처리의 어려움이나 메모리 장벽, 성능 저하 등을 더 자
주 겪는다. 이럴 때는 저수준의 최적화 기법이나 시스템을 이해하면 도움이 된다.
이 책은 파이썬 프로그래머들이 간과하기 쉬운 성능이라는 측면을 다루는 귀중한 책이다.
1
판
에서 다뤘던 최적화, 프로파일링, 병렬 처리, 확률적 프로그래밍 등에 더해
2
판에서는 최근 머
신러닝에 쓰는 팬더스
Pandas
나 주피터 노트북,
Numba
, 넘파이
NumPy
등의 과학기술 계산을 더
자세히 설명한다. 파이썬으로 프로그래밍에 입문했거나, 빅데이터나 머신러닝 등을 다뤄야 하
는 개발자에게 이 책이