hji7***
2024-02-25

밑바닥부터 시작하는 딥러닝』 시리즈, 이번엔 강화 학습이다! 강화 학습 핵심 이론부터 문제 풀이, 심층 강화 학습까지 한 권에!
우연히 이 시리즈 책 4권중 3권을 읽었습니다. 첫번째 책은 거의 7년전에 읽었기 때문에 두 편의 리뷰가 어떠했는지 다시 찾아보았습니다. 아마 "딥러닝"이라는 말이 낯설었던 7년전에는 어떻게 해야 하나하는 두려움을 가지고 첫 번째 책을 읽었던 것 같습니다. 그리고, "딥러닝"이란게 이런거구나, 하며 약간의 안도감을 느끼게 해준 책이었던 것 같네요. 그래서 두번째 책도 읽었고, 딥러닝이 어떻게 음성인식분야에서 사용되고 있는지 이해하게 되었습니다.
이번엔 "강화학습"이라는 분야를 다루는 책입니다. 사실 저는 딥러닝이나 인공지능을 사용하는 업무를 하지 않고, 평생을 수포자로 살아왔기 때문에 엄청난 수식이 몰려 나오는 인공지능 관련 책들은 읽으면 멀미 할 것 같은 느낌을 받는데요.
하지만, 업계 분위기라는 걸 느끼기 때문에, 언젠가는 반강제적으로 인공지능 관련 업무를 하게 될 거라 예상하고 있습니다. 따라서, 이해못하더라도 꾸준히 읽으면서 익숙해지려고 노력하는 편입니다. 그래서 그 '언젠가'가 된다면, 바로 뛰어들어서 사용할 수 있을 만큼은 되려고요.
그런 면에서 이 책 그리고 이 책의 시리즈는 보석같다고 말할 수 있습니다. 수포자인 제가 공식을 읽으면서 무슨 말인지 이해할 것 같았거든요. 너무 쉽게 그리고 차근 차근 단계를 밟아가며 "강화학습"(그리고 딥러닝)을 설명하고 있기 때문입니다.
당장 책의 모든 내용을 기억하고 사용하려는 사람이라도 그리고 저처럼 기억은 못하더라도 정리해 두고 나중에 써먹고 싶은 사람이라도, 충분히 쉽게 책장을 넘길 수 있게 설명하고 있습니다. 심지어, 파이썬 코드로 저자가 말하는 내용이 얼마나 간단하게 코딩되는지를 보여주고 있는데요. 저같이 수포자라하더라도 코딩을 좀 해본 사람들은 파이썬을 배우지 않았다 하더라도 읽을 만큼 충분히 쉬운 코드로 설명하고 있기 때문에 (저 처럼) 공식에 구토반응이 있다면 코드로 이해할 수 있을 것같습니다.
제 기억에, 어떤 공식을 코드로 넘기는 건, 의외로 힘든 일이었습니다. 코드를 먼저 봐도 공식을 먼저 봐도 같이 봐도 납득이 안되는 경우도 꽤 많았거든요. 그런데, 인공지능 분야는 의외로 공식에 대한 라이브러리들이 잘 추상화 되어 있어서, 그런 라이브러리를 사용하면 코드가 짧고 간결해지는 것 같습니다.
특히 7장 부터는 DeZero라는 라이브러리를 사용합니다. 이게 제가 읽지 못했던 이 시리즈 3편에서 만든 라이브러리더라고요. 3년전에 3편이 나왔을 때, 무슨생각으로 구해읽지 않았나 싶더군요. 그래도 다른 인공지능 라이브러리들고 비슷하게 만들어져 있기 때문에 3편을 읽지 않아도 코드를 읽고 이해하는 건 문제 없었습니다.
인간의 지식을 활용하는 지도 학습이 도달할 수 있는 수준은 학습 데이터에 반영된 인간의 실력까지입니다. 한편 강화 학습은 스스로 새로운 경험을 쌓아가며 학습하기 때문에 이런 한계가 없습니다. 이론적으로는 인간을 뛰어넘을 수 있는 것이죠. 실제로 알파고 제로는 인간의 수준을 한참 넘어섰습니다. 그래서 알파고 제로 또한 강화 학습의 가능성을 보여준 중요한 연구입니다
본문 330 페이지
상상력을 자극하는 표현이 있어서 가져왔습니다. 근래 인공지능의 눈부신 발전은 결과적으로 미래에 대한 예측이 힘들게 만들고 있는데요. 그 이유는 인공지능이 정말 인간을 넘어 설수 있느냐 없느냐의 문제가 있기 때문입니다. 인공지능이 인간을 넘어설 수 있을까? 라는 질문에 "강화학습"을 설명하는 저자는 알파고 제로의 예를 보여줍니다. 알파고 제로는 이세돌 구단을 이긴 "알파고 리"와는 다른 학습 방법을 사용한 인공지능인데요. 인간이 만들어 놓은 정석이나 기보를 학습한게 아니라 스스로 바둑의 룰을 가지고 학습한 버전이기 때문입니다.
( 어떤 책에서는 알파고 제로가 인간이 3000년동안 만들어 놓은 "바둑의 정석"을 넘어선 전략을 찾아냈다고 설명하기도 하는데요. ) 여하튼, 알파고 제로의 바둑 실력은 인간을 넘어선건 확실한 상황입니다. 그럼 인공지능이 인간을 넘어설 수 있을까요? 바둑처럼 룰이 있는 '게임'에서는 그럴지도 모르지만, 일반적인 모든 분야에서 그렇게 될 거라는 건 아닌것 같습니다.
그런데, 얼마전 엔비디아의 '젠슨 황'이 프로그래머가 될 필요가 없다는 식의 발언을 했다는 기사를 접했습니다. 인공지능이 발전하면 프로그래머들이 할 일을 인공지능이 해줄 수 있고, 그 결과 코딩 기술이 아니라 다른 걸 공부해야 한다는 생각이었을 거라 짐작합니다.
하지만, 이런 류의 발언에는 빠진 부분이 있습니다. "지도학습이 도달할 수 있는 수준은 학습 데이터에 반영된 인간의 실력까지"라는 개념입니다. 즉 인간이 만들어 낼 수 없는 결과물은 인공지능도 할 수 없는 겁니다. 다만 게임의 룰이 정의 가능한 바둑같은 상황에서는 넘어설 수 있다는 건데요. 어떤 근거로 모든 분야의 룰을 정할 수 있다고 자부한다고는 설명하지 않습니다. 전문가이니 그 사람 말이 맞을 거라 보는 것 뿐이죠.
인공지능이 극단적으로 발전한다면, 아마 누군가가 만든 코드 또는 개념이 인터넷에 공개되는 즉시 (지금은 몇 달 걸리지만요) 인공지능을 사용하는 모두가 공유할 수 있게 되겠지만, 그건, 거기까지 입니다. 항상 시장을 지배하는 제품을 만드는 사람들은 한발 더 앞서는 사람들이었습니다. 스마트폰 시장을 만든 스티브 잡스의 일을 인공지능이 할 수 없는 거죠.
그러나 인공지능이 발전하게 되면, 지식노동이라는 걸 하는 사람들은 머리 터지게 공부할게 많아질 것 같긴 합니다. 프로그래머들은 대충 코드 작성하는 것만 공부해서는 먹고 살지 못할 거란 예측은 가능하거든요.
그래서 이 책 처럼 밑바닥 부터 개념을 설명하는 책이 귀중한 것 아닐까 싶습니다.
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."