-
-
파이썬 넘파이 - 딥러닝 머신러닝을 위한
문용준.문성혁 지음 / 잇플ITPLE / 2020년 6월
평점 :
이 책에 대해서 한 마디로 설명하면 제목에서 알 수 있듯이 파이썬 넘파이(NumPy)에 대해서 자세하게 설명해 주는 책이에요. 그럼 파이썬 넘파이(NumPy)는 무엇인가 하면, 행렬이나 일반적으로 대규모 다차원 배열을 쉽게 처리 할 수 있도록 지원하는 파이썬의 라이브러리로 데이터 구조 외에도 수치 계산을 위해 효율적으로 구현된 기능을 제공해주고 있어요.
그렇다면 넘파이는 구체적으로 어디에 활용이 되는가 하면, 막강한 머신러닝과 딥러닝 프로그래밍을 활용하여 애플리케이션 개발자에게 새로운 가능성을 열어주는 AI(인공 지능) 개발에 기반이 되는 파이썬의 라이브러리에요. 파이썬의 라이브러리 등을 통해서 머신러닝이나 딥러닝을 활용함으로써 훨씬 더 정밀한 사용자 프로필과 개인화, 추천이 가능하며, 스마트 검색, 음성 인터페이스 또는 지능적인 가상비서를 구현하거나 그 외의 다양한 방법으로 앱을 개선할 수 있다. 심지어 보고 듣고 반응하는 애플리케이션도 만들 수 있죠.
AI 개발에 사용되는 파이썬의 라이브러리에는 R의 강력하고 유연한 데이터프레임을 가져오는 판다스(Pandas)와 자연어 처리(NLP)에서는 이름도 유명한 NLTK와 빠른 속도가 장점인 스페이시(SpaCy)가 있지만, 넘파이는 워낙 보편적으로 사용되는 터라 텐서 연산에서 사실상 표준 API 역할을 한다고 해요. 그리고 구글이 만든 텐서플로우(TensorFlow)와 페이스북의 파이토치(PyTorch) 그리고 체이너(Chainer), 아파치 MXNet(Apache MXNet), 테아노(Theano) 등 현재의 모든 라이브러리가 사실상 파이썬을 가장 우선시하는 프로젝트이기도 해요.
이 책은 크게 13개의 챕터로 나누어져 있어요. 먼저 챕터1에서 배열(Array) 구조 이해로 시작해서 파이썬과 넘파이 모듈 차이점을 설명하고, 점차 나아가면서 넘파이를 배우기 위한 머신러닝 입문을 위한 수학과 파이썬에 대한 핵심 노하우가 자세히 설명 있는 책이에요. 무엇보다 사례 중심으로 책을 보면서 사례를 하나하나 풀어가고, 코드를 한 줄 한 줄 따라 하다보면 수학을 잘 하지 못해도 어느새 머신러닝에서 필요한 기초수학에 대한 큰 틀을 잡아가고 파이썬과 넘파이에 대해서 이해하고 익힐 수 있게 체계적으로 구성되어 있어요.
이에 필요한 대표적인 프로그래밍 언어는 요즘 뜨는 언어인 파이썬(Python)이에요. 특히 파이썬은 인공지능에 있어 탁월한 언어이며, 특히 파이썬의 라이브러리는 다른 언어에서는 따라올 수 없을 정도로 독보적이라 하고 그 라이브러리 중 대표격이 바로 이 책이 소개하는 넘파이죠. 그러나 수학책을 옆에서 참고해야할 정도로 그리 호락호락하지 않은 내용들이에요. 이 책은 무엇보다 이러한 조금은 생소한 넘파이에 대해서 좀 더 현실적이고 풍부한 예제로 비교적 쉽게 공부할 수 있도록 잘 구성된 책이에요.