Top

파이썬으로 풀어보는 회귀분석 [단순선형회귀분석부터 고급 회귀분석까지]

  • 원서명Regression Analysis with Python: Learn the art of regression analysis with Python (ISBN 9781785286315)
  • 지은이루카 마싸론(Luca Massaron), 알베르토 보스체티(Alberto Boschetti)
  • 옮긴이윤정미
  • ISBN : 9791161752501
  • 30,000원
  • 2018년 12월 24일 펴냄
  • 페이퍼백 | 384쪽 | 188*235mm
  • 시리즈 : acorn+PACKT, 데이터 과학

책 소개

소스 코드 파일은 여기에서 내려 받으실 수 있습니다.

본문에 쓰인 컬러 이미지는 여기에서 내려 받으세요.
요약

파이썬을 이용해 데이터 분석과 모델 구축, 그리고 성능 향상에 필요한 다양한 기법을 제공한다. 단순선형회귀분석부터 다중선형회귀분석, 로지스틱회귀분석, 그리고 라소 리지 회귀분석, 베이지안 회귀분석, 회귀 트리, 베깅 및 부스팅 등의 고급 회귀분석에 이르기까지 다양한 방법을 기술한다. 또한 데이터의 준비 과정과 데이터를 처리하는 방법, 모델에 데이터를 공급하는 방법에 대해서도 다룬다. 이 책은 파이썬 코드로 제공된 예제를 따라가면서 쉽게 이해할 수 있도록 구성됐다.

이 책에서 다루는 내용

■ 선형회귀분석이 데이터 과학의 주역인 이유 확인
■ 데이터셋으로부터 회귀모델을 생성하고 성능 평가
■ 예측을 필요로 하는 실제 문제에 다중 선형 회귀 분석 적용
■ 로지스틱회귀분석을 사용해 훈련 및 테스트 포인트 분류 방법 학습
■ 다양한 데이터 정리와 데이터 준비 기술을 사용해 데이터 행렬 생성
■ 과잉 적합 문제를 해결하기 위한 몇 가지 기술 적용
■ 특성 생성 및 다항식 확장을 통한 과소 적합 문제 해결
■ 선형모델을 대형 데이터셋으로 확장하고 데이터를 처리하는 방법 학습

이 책의 대상 독자

데이터 과학과 통계, 수학에 대한 기본적인 이해를 가진 파이썬 개발자를 대상으로 한다. 또한 데이터 과학이나 통계학의 배경지식을 꼭 필요로 하지는 않지만, 데이터셋에 대한 회귀분석을 가장 효과적으로 수행하는 방법을 배우려는 모든 연공서열의 데이터 과학자에게 적합한 책이다. 여기서는 단순하고 이해하기 쉬우면서 효과적인 기법을 선보인다. 이 책은 파이썬을 사용해서 더 빠르고 더 나은 선형모델을 만들고 결과모델을 파이썬이나 원하는 컴퓨터 언어로 배포할 수 있는 지식을 제공할 것이다.

이 책의 구성

1장, ‘회귀분석–데이터 과학의 주역’에서는 회귀분석이 데이터 과학에 실제로 유용한 이유, 데이터 과학을 위해 파이썬을 신속하게 설정하는 방법과 예제를 통해 책 전체에 사용된 패키지의 개요를 소개한다.
2장, ‘단순선형회귀분석 접근’에서는 먼저 회귀 문제를 설명하고 리그레서를 적합시킨 다음 알고리즘의 수학 공식에 깔려 있는 의미를 부여함으로 단순한 선형회귀분석을 제시한다. 그런 다음 더 높은 성능을 위해 모델을 튜닝하는 방법과 모든 파라미터를 깊이 있게 이해하는 방법을 배울 것이다. 마지막으로 기울기 하강에 대해 설명한다.
3장, ‘다중회귀분석 실행’에서는 단순선형회귀분석을 확장해 여러 특성에서 예측 정보를 추출하고 실제 예측 작업을 해결할 수 있는 모델을 만든다. 또한 특성 행렬에 대처하고 개요를 완성하기 위해 강화된 2장에서 설명한 확률적 기울기 하강 기술과 다중 공선성, 상호작용 및 다항식 회귀에 관해 다룬다.
4장, ‘로지스틱회귀분석’에서는 선형모델에 대한 지식의 기초를 계속해서 제공한다. 필요한 수학적 정의부터 시작해 선형회귀를 이진 및 다중 클래스 분류 문제로 확장하는 방법을 보여준다.
5장, ‘데이터 준비’에서는 최상의 방법으로 데이터를 준비하기 위해 수행할 수 있는 작업과 특히 데이터가 누락돼 이상치가 존재하는 것과 같은 비정상적인 상황에서 데이터를 처리하는 방법 등 모델에 데이터를 공급하는 법을 설명한다.
6장, ‘일반화 달성’에서는 좀 더 복잡한 기술로 들어가기 전에 모델을 철저하게 테스트하고 최상의 상태로 튜닝해 간결하게 만들고 실질적인 최신 데이터를 얻는 데 필요한 핵심 데이터 과학 방법을 소개한다.
7장, ‘온라인과 일괄 학습’에서는 빅데이터에서 클래시파이어를 훈련하는 모범 사례를 설명한다. 먼저 일괄 학습과 그 한계에 대해 초점을 맞추고 그 다음 온라인 학습을 소개한다. 마지막으로 온라인 학습의 이점과 해싱 트릭의 효과를 결합한 빅데이터의 사례를 보여준다. 8장, ‘고급 회귀 방법’에서는 몇 가지 고급 회귀분석 방법을 소개한다. 수학적 공식에 너무 깊이 들어가지 않고 실용적인 적용을 주시하면서 최소 각도 회귀, 베이지안 회귀 및 힌지 손실을 포함한 확률적 기울기 하강에 대한 아이디어를 다루고 배깅 및 부스팅 기술을 접한다.
9장, ‘회귀모델의 실제 응용’에서는 선형모델로 해결되는 실제 데이터 과학 문제의 네 가지 실용적인 사례로 구성된다. 궁극적인 목표는 주어진 문제에 접근하는 방법과 해결 방법에 대해 추론을 어떻게 발전시켜 나가는지 보여줌으로 발생할 수 있는 유사한 문제에 대한 청사진으로 활용할 수 있게 하는 것이다.

저자/역자 소개

지은이의 말

선형모델은 학자와 실무자에게 잘 알려져 있으며 오랫동안 연구돼 왔다. 그리고 선형모델은 통계, 경제 및 다른 정량적인 분야 연구에 관한 지식 체계의 중요한 요소였으며, 데이터 과학으로 채택돼 수많은 신병 훈련소의 강의 계획서에 포함되고 여러 실용 서적의 초반부에 배치됐다.
결과적으로 선형회귀, 로지스틱회귀(분류 변형) 그리고 더 복잡한 문제를 해결하기 위해 원래의 선형회귀 패러다임이 공식에 적용된 다양한 유형의 일반화된 선형모델에 관한 모노그래프, 책, 논문 등을 광범위하게 이용할 수 있다.
그러나 이와 같이 풍부한 쓰임새에도, 개발자 또는 데이터 과학자로서 데이터를 통해 학습해야 하는 애플리케이션이나 API를 신속하게 생성해야 할 때 선형모델의 구현 속도와 용이성을 실제로 설명하는 책은 보지 못했다.
물론 선형모델의 한계를 잘 알고 있다(불행히도 약간의 단점이 있다). 또한 어떤 데이터 과학 문제에 대해서도 고정된 해결책은 없다는 것을 잘 알고 있다. 그러나 현장에서의 경험에 비춰 볼 때 다음과 같은 선형모델의 장점을 쉽게 무시할 수는 없다.

■ 본인이나 경영진 또는 누군가에게 어떻게 작동하는지 쉽게 설명할 수 있다.
■ 숫자 및 확률 추정, 순위 지정과 많은 수의 클래스까지 분류를 처리할 수 있으므로 데이터 문제와 관련해 유연성이 있다.
■ 처리해야 하는 데이터의 양에 상관없이 신속하게 훈련할 수 있다.
■ 모든 생산 환경에서 빠르고 쉽게 구현할 수 있다.
■ 사용자에 대해 실시간 응답이 가능하도록 확장이 가능하다.

빠르고 구체적인 방법으로 데이터의 가치를 전달하는 것이 무엇보다 중요하다면, 이 책을 따라가면서 선형모델이 얼마나 도움이 되는지 살펴보자.

지은이 소개

루카 마싸론(Luca Massaron)

데이터 과학자이며 마케팅 연구 책임자로 다변량 통계 분석, 머신 러닝 및 고객 통찰력을 전문한다. 10년 이상의 경험을 바탕으로 추론, 통계, 데이터 마이닝 및 알고리즘을 적용해 실생활 문제를 해결하고 이해관계자의 가치를 창출해 왔다. 이탈리아에서 웹 이용자 분석의 선구자가 된 이후, 캐글러(Kaggler)의 상위 10위를 달성하는 데 이르기까지 데이터와 분석에 관한 모든 것에 항상 열성적이었으며 전문가와 비전문가 모두에게 데이터 기반 지식 검색의 잠재력을 일깨워줬다. 불필요한 정교함보다는 단순함을 선호한다. 데이터 과학에서 본질적인 것만 수행해도 많은 것을 성취할 수 있다고 믿는다.

알베르토 보스체티(Alberto Boschetti)

신호 처리와 통계 분야의 전문 지식을 갖춘 데이터 과학자로, 통신공학 박사 학위를 가지고 있다. 현재 런던에서 거주하며 일하고 있다. 자연어 처리(NLP, Natural Language Processing) 및 머신 러닝부터 분산 처리에 이르기까지 프로젝트에서 일상적인 문제에 직면하고 있다. 자신의 일에 매우 열정적이며 항상 데이터 과학 기술의 최신 개발, 모임, 회의 및 기타 이벤트에 대해 최신 정보를 얻으려고 노력한다.

옮긴이의 말

데이터가 가속화되고 있는 상황 속에서 이 책은 데이터를 정리하고 분류해 모델을 구축하고 성능 향상을 위해 튜닝하는 다양한 기법을 제공한다.
단순선형회귀분석부터 시작해 선형회귀분석, 로지스틱회귀분석 그리고 라소 리지 회귀분석, 베이지안 회귀분석, 회귀 트리, 베깅 및 부스팅 등의 고급 회귀분석에 이르기까지 다양한 방법을 기술한다. 또한 이를 위해 데이터를 올바르게 준비하고, 모델이 최상의 성능을 발휘할 수 있도록 데이터를 처리하는 방법에 대해서도 설명한다.
이러한 모든 기법은 예제와 함께 제시되며, 각 예제는 데이터 분석에 많은 강점을 가지고 있는 파이썬 코드를 사용해 쉽게 이해할 수 있도록 구성돼 있다.
또한 후반부에 제시된 실용적인 사례는 구체적인 문제 해결 방법을 단계적으로 제시함으로, 실생활에서 발생할 수 있는 유사한 문제에 대한 청사진으로 활용할 수 있을 것이다.

옮긴이 소개

윤정미

가톨릭대학교에서 수학 전공으로 학사를, 이화여대대학원에서 컴퓨터 전공으로 석사를 마쳤다. 이후 The Graduate Center of the City University of New York에서 컴퓨터공학 박사 학위를 받았다. 대학에서 데이터베이스와 시뮬레이션 등을 강의했고, 1990년부터 현재까지 유한대학교 IT소프트웨어공학과 교수로 재직 중이다.
「병렬 컴퓨터상에서 GPSS 구현을 위한 알고리즘」, 「통계 기반 교통 시뮬레이션의 애니메이션화」 등 다수의 논문을 썼고, 『쉽게 풀어 쓴 비주얼 베이직』(생능출판사, 2008), 『오라클』(기한재, 2015) 등의 저서가 있다. 지난 몇 년 동안 교내 파이썬 동아리를 지도하며 파이썬 프로그래밍과 실무, 응용 분야에 많은 관심을 가져왔다.

목차

목차
  • 1장. 회귀분석-데이터 과학의 주역
    • 회귀분석과 데이터 과학
      • 데이터 과학의 가능성 답사
      • 데이터 과학의 난제
      • 선형모델
      • 이 책의 목표
    • 데이터 과학을 위한 파이썬
      • 파이썬 설치
      • 파이썬 2와 파이썬 3의 선택
      • 단계별 설치
      • 패키지 설치
      • 패키지 업그레이드
      • 과학용 배포판
      • Jupyter 혹은 IPython 소개
    • 선형모델을 위한 파이썬 패키지와 함수
      • NumPy
      • SciPy
      • Statsmodels
      • Scikit-learn
    • 요약

  • 2장. 단순선형회귀분석 접근
    • 회귀 문제 정의
      • 선형모델과 지도 학습
      • 선형모델 제품군
      • 단순선형회귀를 위한 준비
    • 기초부터 시작
      • 선형관계 측정
    • 선형회귀로 확장
      • Statsmodels를 사용한 회귀
      • 결정계수
      • 계수의 의미와 중요성
      • 적합값 평가
      • 상관관계는 인과관계가 아니다
      • 회귀모델을 이용한 예측
      • Scikit-learn을 사용한 회귀
    • 비용 함수 최소화
      • 제곱오차를 사용하는 이유
      • 의사 역행렬 및 기타 최적화 방법
      • 작업에서의 기울기 하강
    • 요약

  • 3장. 다중회귀분석
    • 여러 특성 사용
      • Statsmodel로 모델 구축
      • 공식을 대안으로 사용
      • 상관행렬
    • 기울기 하강 재방문
      • 특성 조정
      • 비표준화 계수
    • 특성 중요도 평가
      • 표준화된 계수 검사
      • R2으로 모델 비교
    • 상호작용 모델
      • 상호작용 발견
    • 다항식 회귀
      • 선형 대 3차 변환 테스트
      • 더 높은 차수의 솔루션 제공
      • 과소 적합과 과잉 적합 소개
    • 요약

  • 4장. 로지스틱회귀
    • 분류 문제 정의
      • 문제의 공식화: 이진 분류
      • 클래시파이어의 성능 평가
    • 확률 기반 접근법 정의
      • 로지스틱 함수와 로짓 함수에 대한 추가 정보
      • 몇 가지 코드 확인
      • 로지스틱회귀의 장점과 단점
    • 기울기 하강의 재방문
    • 다중 클래스 로지스틱회귀
    • 예제
    • 요약

  • 5장. 데이터 준비
    • 숫자 특성 조정
      • 평균 중심화
      • 표준화
      • 정규화
      • 로지스틱회귀 사례
    • 정성적 특성 인코딩
      • Pandas를 이용한 더미 코딩
      • DictVectorizer와 one-hot encoding
      • 특성 해셔
    • 수치 특성 변환
      • 잔차 측정
      • 비닝 방법
    • 누락된 데이터
      • 누락 데이터 대체
      • 누락된 값 추적
    • 이상치
      • 응답에서의 이상치
      • 예측변수의 이상치
      • 이상치 제거 또는 교체
    • 요약

  • 6장. 일반화 달성
    • 샘플 외 데이터 검사
      • 샘플 분할 테스트
      • 교차 검증
      • 부트스트래핑
    • 특성의 그리디 선택
      • 마델론 데이터셋
      • 특성의 일변량 선택
      • 재귀적 특성 선택
    • 그리드 검색에 의한 최적화된 정규화
      • 리지 (L2 정규화)
    • 최적의 파라미터를 위한 그리드 검색
      • 무작위 그리드 검색
    • 라쏘 (L1 정규화)
      • 엘라스틱 넷
    • 안정성 선택
      • 마델론 실험
    • 요약

  • 7장. 온라인과 일괄 학습
    • 배치 학습
    • 온라인 미니 배치 학습
      • 실제 예제
      • 테스트셋 없는 스트리밍 시나리오
    • 요약

  • 8장. 고급 회귀 방법
    • 최소 각도 회귀
      • LARS의 시각적 쇼케이스
      • 코드 예제
      • LARS 정리
    • 베이지안 회귀
      • 베이지안 회귀 정리
    • 힌지 손실이 있는 SGD 분류
      • 로지스틱회귀와 비교
      • SVR
      • SVM 정리
    • 회귀 트리(CART)
      • 회귀 트리 정리
    • 배깅과 부스팅
    • 배깅
      • 부스팅
      • 앙상블 정리
    • LAD를 이용한 기울기 부스팅 리그레서
      • LAD를 사용한 GBM 정리
    • 요약

  • 9장. 회귀모델의 실제 응용
    • 데이터셋 다운로드
      • 시계열 문제 데이터셋
      • 리그레션 문제 데이터셋
      • 다중 클래스 분류 문제 데이터셋
      • 랭킹 문제 데이터셋
    • 회귀 문제
      • 리그레서 대신 클래시파이어로 테스트
    • 불균형 및 다중 클래스 분류 문제
    • 순위 문제
    • 시계열 문제
      • 공개 질문
    • 요약

도서 오류 신고

도서 오류 신고

에이콘출판사에 관심을 가져 주셔서 고맙습니다. 도서의 오탈자 정보를 알려주시면 다음 개정판 인쇄 시 반영하겠습니다.

오탈자 정보는 다음과 같이 입력해 주시면 됩니다.

(예시) p.100 아래에서 3행 : '몇일'동안 -> 며칠동안

정오표

정오표

[p.80 코드 7행]
def correlation(var1,var2,bias=0):
return covariance(standardize(var1), standardize(var2),bias)
->
def correlation(var1, var2, bias=0):
return covariance(standardize(var1), standardize(var2), bias) / (np.std(var1) * np.std(var2))

[p.190 팁]
Jupiter
->
Jupyter

prediction=5
->
precision=5