본문 바로가기
한빛미디어

파이썬을 활용한 베이지안 통계 (Think Bayes) - 앨런 B. 다우니

by 두재 2022. 7. 24.

머신 러닝이 정말 마법처럼 보일 수 있지만 실제 논문을 보게 되면 꽤나 수학적인 것을 알 수 있다. 꽤 가끔 베이즈, 베이지안이라는 단어를 볼 수 있다. 머신 러닝에는 미적분도 많이 사용되지만, 확률과 통계 지식이 정말 많이 사용된다. 그중 우리가 주로 볼 수 있는 것은 베이즈 정리이다. 아마 이때 베이즈라는 이름을 알게 될 수 있을 것이다. 좀 더 자세히는, Variational AutoEncoder (VAE)를 공부할 때 베이즈 정리, posterior, prior 등등의 용어들을 볼 수 있다. 그리고 베이즈 정리는 아니지만, 노이즈를 다루게 되면 확률과 통계 지식이 많이 필요하게 된다. 디노이징 논문을 보다 보면 알 수 있다.

본 책에서는 베이지안 통계를 다루는데, 파이썬을 이용한다. 베이지안 통계는 베이즈 정리에 기반한 이론인데, 베이즈 정리는 두 확률 변수의 posterior와 prior 사이의 관계를 나타내는 정리이다. 좀 더 쉽게, 다른 방향으로 말하면, 어떤 새로운 관측들이 있을 때 내가 가지고 있던 가설이 얼마나 더 맞게 되었는지, 아니면 더 신뢰할 수 없게 되었는지를 알 수 있는 정리이다. 사실 처음 배우면 꽤 이해하기 어려운 내용들이다. 나같은 경우도 수업에서도 들었고 논문을 읽으며 찾아보기도 했는데 그렇게 해서야 얼추 이해가 되었다. 아직도 정말 백 퍼센트 완벽한 수준은 아니다. 이 책은 그래도 읽어볼 만한 것 같은데, 정말 내용이 알차다. 이 책은 내가 연구할 때 꽤 도움이 될 것 같아서 시간을 좀 내 제대로 한 번 읽어보려고 한다.

 

책은 다음과 같이 생겼다. 오레일리 책들의 디자인은 꽤 수집욕을 불러일으킨다.

 

책에 대한 설명인데, 수학 기호 대신 코드를 사용하여 설명한다는 점이 인상깊었다. 사실 논문들을 읽다 보면, 결국에는 그렇게 어려운 내용이 아닌데 복잡한 수식들로 도저히 읽지 못하게 만드는 경우가 있다. 이 책에서는 코드와 이산적 개념으로 설명한다고 하며, 프로그래밍을 할 줄 아는 사람들에게 더 이해하기 쉬울 것이라고 말하는데 약간의 감동이 있었다.

다만 맨 밑 줄에 "하지만 우리는 사이파이를 사용하므로, 각 분포의 특성을 알 필요는 없다"고 하는데 조금 별로였다. 뭐 연구를 할 사람들이 아니라면 Scipy와 같은 패키지만 적극 활용하여 실험을 돌려보면 좋겠지만, Scipy 내부가 정확히 어떻게 돌아가는지 이해를 못 하면서 책에 써져 있는 코드만 따라 하는 것은 좀 부정적이다.

 

목차는 다음과 같다.

  1. 확률
  2. 베이즈 정리
  3. 분포
  4. 비율 추정
  5. 수량 추정
  6. 공산과 가산
  7. 최솟값, 최댓값 그리고 혼합 분포
  8. 포아송 과정
  9. 의사결정분석
  10. 검정
  11. 비교
  12. 분류
  13. 추론
  14. 생존 분석
  15. 표식과 재포획
  16. 로지스틱 회귀
  17. 회귀
  18. 켤레사전분포
  19. MCMC
  20. 근사 베이지안 계산

 

 

각 챕터마다 다음과 같이 한 페이지로 간략하게 설명을 해주는데 이론으로 들어가기 전 갈피를 잡을 수 있어서 좋았다.

 

몇 가지 느낀 점은 대부분 영어를 안 쓰고 한국어로 되어 있는데 또 그렇게 어색하지는 않은 것 같다. 그리고 MCMC나 Approximate Bayesian까지 다루는 것을 보면 나름 전문적인 내용도 담고 있기에 정말 좋았다. 

그리고 거의 대부분의 챕터에서 이론을 설명할 때 어떤 예시 문제와 함께 설명을 한다. 그 문제는 물론 설명하고자 하는 이론이 사용되는 것인데, 이 덕분에 막연히 이론적이라고 보일 수 있는 내용이 실생활과 좀 연관 지어지는 것 같다. 그리고 페이스북 면접 문제들도 종종 있어서 직업을 구할 때에도 도움이 될 것 같다. 이 베이즈 정리가 별 거 아닌 것 같으면서도 정말 중요하고 기본적인 이론이라서 개발자를 뽑을 때 많이 물어보는 것 같다.

 


정말 나에게 딱 필요한 책이었다. 베이즈 정리가 스스로 공부한다고 하면 은근 막연한데, 이 책으로 공부할 만한 것 같다.

머신 러닝과 데이터 사이언스에서 필수적으로 요구되는 지식인 베이즈 정리를 이 분야 사람들, 그리고 아직 자세히 모르는 사람들이 쉽게 이해할 수 있도록 만들어 놓았다. 논문들로 공부를 하기보다 이 책을 읽고 난 후 논문을 읽어보면 훨씬 깊게 이해할 수 있을 것이다.

 

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