jinforea***
2024-12-27

다들 연말을 잘 보내고 계실까요?
2024년의 마지막 달에 한빛미디어에서 보내주신 책은
파이썬과 통계학을 모두 잡을 수 있는 한 권을 보내주셨습니다.
파이썬으로 배우는 통계학 교과서가 2판으로 따끈따끈하게 출시됐습니다!
기존의 파이썬으로 배우는 통계학 교과서 초판과 비교하자면
초보자가 보다 쉽게 통계학을 학습할 수 있도록
구현 순서를 하나씩 따라가며 해설하고 있습니다.
1판은 2019년에 발간되었기 때문에 2025년을 앞둔 지금
코드를 실행할 때 변경된 부분이 많을 것 역시 예상됩니다.
파이썬 실습 코드를 최신 버전으로 점검 및 수정하는 것도 빼먹지 않았습니다.
추가적으로, 통계 기법의 종류 중 데이터사이언스의 근간이 되는
기술통계와 추론통계 등에 대한 실습량을 늘리고
저자가 데이터를 다루는 데 매우 중요하다 생각하는 것들,
예를 들면 층화분석, 도수분표, 분산분석 등에 대한 설명을 강화했습니다.
챕터 1에서는 통계학의 기본에 대해 이해하는 시간을 갖습니다.
통계학이 무엇인지, 그리고 통계학에는 기술통계와 추론통계가 있는데,
왜 기술통계와 추론통계가 필요한지에 대해 고민합니다.
챕터 2는 파이썬으로 통계학을 배우기 위해서,
파이썬 환경 구축과 주피터 노트북을 설치하고
파이썬의 기초 문법, 넘파이와 판다스에 대해 알아봅니다.
챕터 3부터 본격적인 통계학을 다루고 있습니다.
먼저 기술통계를 다루게 되는데, 통계적 시각으로 수식을 읽는 방법을 정립하고
도수분포, 1변량 통계와 다변량 통계, 층화 분석이 무엇인지를 배운 후 그래프를 활용해 구현하고자 합니다.
챕터 4는 확률과 확률 분포입니다.
제가 학생때는 필수로 고등학교에서 확률과 분포라는 과목 하에 배운 내용들을 다루고 있는데,
확률론, 즉 확률로 수치를 표현하는 것에 대한 이론,
확률 분포, 이항 분포, 정규 분포 등 확률로 나타낼 수 있는 분포에 대해 그 방법과 원리를 학습합니다.
챕터 5에서는 통계적 추정이 무엇인지 학습합니다.
통계적으로 무언가를 추정하고 추론한다는 것의 의미를 이해하기가
생각보다 어렵다고 생각하는데, 이 모호한 개념을 책에서는 이해하기 쉽게 말로 풀어 설명하고 있습니다.
모집단에서 표본 추출하는 과정을 시뮬레이션해보고,
모평균 및 모분산을 추정하며
정규 모집단에서 파생된 확률 분포를 그려보기도 하며 구간 추정의 개념도 다뤄봅니다.
챕터 6은 통계적 가설 검정입니다.
통계학, 데이터사이언스, 사회복지 등을 전공하셨더라면 들어보셨을 t검정 등이 여기에 속합니다.
모평균에 대한 단일 표본 t검정, 평균값 차이의 검정, 분할표 검정에 대해 알아보고
검정 결과를 어떻게 해석하는 지를 배울 수 있는데, 이 부분이 중요한 것 같습니다.
검정에 대해 어느정도 이해했다면,
이제 실제로 파이썬에서 다룰 수 있는 통계 모델을 챕터 7에서 다뤄봅니다.
선형(linear) 모델이 무엇인지, 어떻게 만드는지 원리를 이해하고
데이터는 선형 모델에서 어떻게 표현하는지, 모델에는 무엇이 있는지도 학습한 다음
파라미터를 추정하는 두 가지 방법을 다루고 있습니다.
최대 우도화라고도 불리는 가능도 최대화(maximum likelihood method)는
어떤 확률변수에서 표집한 값을 토대로 확률변수의 모수를 구하는 방법이 있고,
다른 방법은 모델의 예측값과 실제 관측값 사이의 차이를 최소화하여 파라미터를 추정하는
손실 최소화 방식도 다뤄봅니다.
다양한 방법으로 파라미터를 추정해보고, 예측 정확도를 평가해보고
가장 우수한 정확도를 출력한 파라미터를 선택하는 플로우로 학습해봅니다.
챕터 8에서는 각각 정규 선형모델을 다룹니다.
연속형 독립 변수가 하나인 경우에는 단순회귀를 사용하지요?
단순 회귀, 정규 선형 모델의 평가, 독립 변수가 여럿인 모델을 파이썬으로 구현해봅니다.
특히 이 과정에서는 소스 코드를 책에서 그대로 보여주고 있고,
이 코드를 github에서 손쉽게 접근이 가능합니다.
일반화 선형 모델을 다루는 챕터 9에서는
일반화 선형 모델이 무엇인지 기본 개념을 우선적으로 다룹니다.
이름이 다소 생소하실 수 있는데, 로지스틱 회귀가 가장 대표적인 그 예입니다.
일반화선형모델은 어떻게 모델을 평가하는 지, 그리고 푸아송 회귀를 추가적으로 학습합니다.
본 책의 마지막 챕터에서는 통계학과 머신러닝을 연결지어
머신러닝의 개념을 정확히 이해하고,
정규화와 리지 회귀, 라소 회귀의 정의를 다루고 있습니다.
그리고 이 통계적 개념을 파이썬에서 어떻게 구현해낼지를
코드 한 줄 한 줄씩 따라가며 설명해주고 있습니다.
마지막으로, 선형모델과 신경망의 개념을 연결지어
파이썬으로 신경망 모델을 구현하는 것까지 학습하게 됩니다.
본 책
파이썬으로 배우는 통계학 교과서는,
파이썬으로 구현해봄직한 통계학 개념의 범위를 매우 넓게 커버하고 있습니다.
통계에 대한 세부적인 팁보다는 통계적 용어, 기본 수식, 파이썬으로 구현하기에 집중하여
통계학 기초를 파이썬 기반으로 다지기 위해 작성된 책입니다.
본 책에 대해 가장 큰 장점이라 생각하는 것은
같은 내용을 글 -> 수식 -> 파이썬 코드로 설명하기 때문에
자칫 모호하거나 오해할 수 있는 추상적인 통계학 개념을
점차 깊이 있기 이해하고, 와닿을 수 있도록 신경쓴 것이 많이 느껴졌습니다.
통계를 모르는 개발자 분들께서 통계학적 개념을 쌓고 싶으시거나,
파이썬을 배우신 지 오래 되지는 않았지만 통계학에 대한 개념도 같이 가져가고 싶으신 분들께 추천합니다.
