본문 바로가기

도서,강의 리뷰

[리뷰] 검색 엔진을 위한 딥러닝

이 리뷰는  책쓰는 프로그래머 협회(이하 '책프협')의 이벤트를 통해 지원 받은 책의 리뷰 입니다 :)

 

우선 제가 본 도움이 이 책이 도움 될 수 있는 대상들을 이야기 해보겠습니다. 

 

""" 리뷰어가 생각한 이 책이 도움되는 사람 순위 """

 

1) 자바 개발자이며 자바 프로젝트에 딥러닝을 적용하려는 사람

2) 자바 개발자 및 자바 공부를 초중급 수준까지 공부한 사람(+ 간단한 토이 프로젝트까지 해본 수준)

3) 딥러닝은 공부를 꽤 해오고 그걸 활용한 프로젝트와 캐글도 참여해보았으며, 서비스 차원에서 딥러닝이 검색엔진에 어떻게 적용되는지 알고 싶은 사람(+ 자바는 거의 모른다 , 이럴 경우 책에서 제공하는 코드는 활용하기 힘듭니다.)

 

 

사실 3)의 경우는 도움이 많이 된다고 하기 힘듭니다. 왜냐면 이 책은 '자바'로 대부분의 코드가 이루어져 있습니다. 

저의 경우도 파이썬만을 주로 써왔기에 자바는 학부생 시절 2과목 정도 이수하였지만, 너무나 오래되서 거의 생각이 안나는 수준입니다. 그런 제가 왜 3) 을 굳이 넣었냐면, 검색엔진을 구성하면서 딥러닝이 어떻게 적용되느지 알 수 있었기 때문이다. 

 

 

검색엔진은 아직 손대지 못한 영역이지만 딥러닝의 저렇게 적용되는 구나라고 느낄 수 있었습니다. 

사실 이 책에서 쓰이는 딥러닝은 그렇게 깊은 내용들은 아니라고 생각합니다.

거의 다 자연어처리 관련한 이론들을 적용하는데 nlp 업계에서는 bert 가 이제 기본이라고 할 수 있는데 이 책에서 다루는 딥러닝 알고리즘은 거기까지 가지 않습니다. 머신러닝과 딥러닝의 기초적인 알고리즘 정도를 도입하는 수준입니다. 

하지만 실제 서비스에 적용하는 부분을 고민하고 실습하는 코드들이기에 실무적인 면에서는 깊이 있다고 생각합니다. 

 

 

 

 

 

 

항상 it 서적을 사는 사람들은 어떤 언어로 코드가 이뤄져있으며 어떤 내용을 구현하는지를 중요시한다고 생각한다. (나 역시 마찬가지다) 그러니 저자가 책의 내용을 시작하기 전에 얘기하는 이러한 안내는 책을 구매 전에 서점에서 한 번 보거나 해야된다고 생각한다. 

 

어쨋든 자바를 잘 모르는 본인의 관점으로 책을 한 번 살펴보겠습니다. 

 

 

 

 

 

1장에서는 딥러닝과 검색 엔진에 대한 기초적인 이론을 이야기 합니다. 

쿼리 구문 분석에 대한 설명과 인덱스가 뉴런과 어떤 식으로 만날 수 있을까 하는 접근법에 대한 이야기 합니다. 

 

 

 

 

 

 

 

2장부터 루씬과 자바 실습코드로 word2vec 과 같은 Nlp 의 기본 개념들을 구현합니다. 검색 엔진의 관점에서 다루기에 실무적인 면에서 딥러닝 자연어처리의 기초 이론이 어떻게 적용되는지 알 수 있습니다. (참고로 번역서이기에 영어를 기준으로 합니다) 

 

3장부터 rnn, lstm 의 딥러닝의 기초적인 모델들을 이용해서 쿼리를 어떻게 활용하고 확징시킬지 철저하게 검색 엔진 관점에서 다룹니다. 딥러닝에 대한 기본적인 설명을 하기에 딥러닝에 대한 기초이론을 미리 공부할 필요는 없다고 생각합니다. (물론 따로 딥러닝 공부를 하고 이 책을 보면 더 좋긴 합니다)

 

 

 

 

 

 

 

 

TF-IDF,  word2vec 가 뒤에 장에 나오는 걸 볼 수 있는데 , 자연어처리에서는 이를 먼저 배우고 rnn, lstm 을 배운다. 하지만 이 책은 검색엔진의 관점에서 딥러닝을 다루기에 이러한 순서로 진행되지는 않는다. 

 

 

정리하겠습니다. 

 

대상 독자들에 대해서는 서두에 이야기를 하였습니다. 

장점을 말하면, 검색엔진에 대한 이해도를 높일 수 있고 여기에 딥러닝을 어떻게 적용하고 고민했는지 이를 확인할 수 있었습니다. 루씬을 다루는 것도 도움이 많이 됩니다. 

 

단점은 파이썬 코드로 이루어진 것이 아닌 겁니다. 딥러닝 프레임워크와 데이터 분석은 대부분 파이썬 기반으로 이루어지지만, 이 책은 자바로 코드가 이루어져있습니다. 이 단점은 파이썬만을 할 줄 아는 저에게만 통용됩니다. 자바 개발자에게는 오히려 굉장한 장점이라고 생각합니다. 새로 언어를 공부할 필요 없으며 원래 하던 자바에 딥러닝 공부를 하면서 적용만 하면 되기 때문입니다.

 

 

 

이상 책에 대한 리뷰를 마치겠습니다 :)