필자는 학부 때는 머신러닝을 배우다가 백엔드 개발자로 전향한 사람이다. 최근에는 나름 인프라 쪽도 공부를 하면서 시스템에 대해서도 배우고 있는데 머신러닝 시스템 설계라는 주제가 꽤 흥미롭게 다가와서 관련 책을 읽어보게 되었다.

머신러닝 시스템 설계

이 책은 머신러닝 + 시스템 설계라는 주제를 가지고 있다. 그리고 머신러닝 기초 -> 머신러닝 실무 관련 지식 -> 인프라 / 시스템 순으로 설명을 하고 있다. 그 중 머신러닝 기초와 인프라 / 시스템 쪽은 필자가 읽을만 했는데 실무 관련 지식들은 자세히 보지 못하였다. 이 책의 구성이 꽤 괜찮다고 느껴지는 건 머신러닝 시스템 설계를 어떻게 해야할지 감이 잘 안 잡히는 사람에게는 어느정도 청사진을 그려줄 수 있다는 점이고, 필자가 거기에 해당되었기 때문이다. 목차는 아래 사진과 같다.

012345
목차

어떻게 보면 이 책의 초반에서 "비즈니스와 머신러닝의 목적"이라는 부분이 있듯이 비즈니스 관점에서도 머신러닝을 다루고 있다. 어떻게 보면 공학 쪽은 결국에는 필수적으로 비즈니스와 연결되는 부분을 고려해야하는 것 같다. 따라서 이 책에서는 이해관계자들의 관점에서도 머신러닝을 바라보고 있으며 그런 부분도 흥미롭게 읽었다.

연구가 계속되면서 크기가 커지기 시작하면 한 사이클을 돌리는데 걸리는 시간이 오래걸리기 마련이고, 그 사이클의 주기를 줄이는 것이 다른 어떤 부분보다도 중요하게 될 때가 있다. 그래서 현대 소프트웨어 개발 분야에서 CI/CD 관련한 논의가 많이 일어나고, 어플리케이션 오케스트레이션 부분도 발전하게 된 걸 것이다. 이러한 관점을 책의 chapter 9에서 연속 학습로 다루고 있으니 한 번 읽어보면 좋을 것 같다.

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

이 책을 읽고, 첫번째로 들었던 생각은 기대했던 것보다 업무에서 쓸 수 있을만한 좋은 내용들이 곳곳에 있었다는 것이다. 근데 그런 것에 비해서 정말 입문(AWS를 처음 쓰는 사람)하는 사람이라면 별로 안 와닿는 내용이었을 수도 있을 것 같았다. 왜냐하면 중간중간 정말 실무에서 알면 좋을 만한 내용들을 담고 있었던 반면에 실습 부분은 정말 너무 쉬운 내용을 담고 있었기 때문이다. 예를 들어 EC2를 설명하는 장에서 EBS의 스펙들도 알려주고, ALB, NLB도 알려주고, X-Forward-For 과 같은 개념도 알려주는데 실제로 만드는 것은 EC2를 만들고 접속해보는 것까지 해본다...ㅠㅠ

그래서 "나는 정말 AWS를 처음 써본다!" 하는 사람은 이 책의 5장까지만 보고, 정말 이 책을 보면 좋을 만한 사람은 ec2, rds, s3 같은 서비스를 이미 만들어보고, 개발경력이 1년정도 있는 사람같다. 왜나하면 처음 aws를 접할 때는 서비스 스펙 같은 건 신경쓰지 않고, 프리티어에서 공짜로 쓸 수 있는 걸 쓸 거라고 생각하고, 필자 또한 그랬다. 근데 실제로 돈을 내보거나 devops를 하시는 분들은 가격같은 것도 신경을 많이 써야한다. 그러면 이 책에서 설명하는 해당 스펙의 장단점, 그리고 여러 서비스들을 어떻게 조합하는지가 중요해진다. 

업무에 바로 쓰는 AWS 입문

특히나 이 장의 처음에는 IAM에 대해 설명하고 있는데, 난 처음 aws 접할 때 IAM이 뭔지도 모르고 ec2를 만들어 쓰곤 했는데 여러 서비스를 조합하고, 회사에 들어가게 되면 그 때부터 IAM이 중요하게 된다. 그래서 IAM을 첫번째 장에 넣은 것도 저자의 의도였을 것이라고 본다. (베스핀 글로벌에서 교육을 받았을 때도 IAM을 배우는 것부터 시작했다.) 또한, 초반에는 (필자가) 주요하게 쓰는 서비스 ec2, rds 등을 설명하고 나중에는 dynamodb, api gateway 같이 자주 쓰지 않는 서비스가 나왔기 때문에 저자가 책의 구성에도 신경을 썼다고 생각한다.

 마지막으로 한줄평을 하자면 처음 읽을 때는 너무 쉬운 내용을 다루고 있는게 아닌가 하다가도 가면갈수록 좋은 내용, 꿀팁을 알려줘서 기대 이상이였다.

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다

+ Recent posts