Top

파이썬으로 데이터 마이닝 시작하기 [데이터의 수집, 로딩, 변환, 클러스터링, 예측까지]

  • 원서명Python Data Mining Quick Start Guide: A beginner's guide to extracting valuable insights from your data (ISBN 9781789800265)
  • 지은이나단 그리넬치(Nathan Greeneltch)
  • 옮긴이조종희
  • ISBN : 9791161753669
  • 21,000원
  • 2019년 12월 19일 펴냄
  • 페이퍼백 | 212쪽 | 188*235mm
  • 시리즈 : acorn+PACKT, 데이터 과학

책 소개

요약

요즘 가장 인기 있는 프로그래밍 언어인 파이썬을 활용한 데이터 마이닝 기법을 소개한다. 다양한 예제와 데이터 마이닝 기법으로 유용한 인사이트를 어떻게 얻어낼 수 있는지를 배운다. 파이썬 라이브러리를 사용한 데이터 시각화 기법도 함께 소개한다.

이 책에서 다루는 내용

■ 데이터셋 요약 및 데이터 시각화 기법 탐구
■ 분석 작업을 위한 데이터 수집과 구성
■ 데이터 포인트를 그룹에 할당하고 클러스터링으로 시각화하기
■ 데이터에 대한 연속적 및 카테고리적 예측 학습
■ 데이터 클리닝, 노이즈 제거, 차원 감소
■ scikit-learn의 파이프라인 특징을 사용한 데이터 처리 모델 연속화
■ 파이썬의 pickle 모듈을 이용한 데이터 처리 모델 구현

이 책의 대상 독자

파이썬을 활용한 데이터 마이닝과 분석 분야의 초보자를 대상으로 한다. 독자가 파이썬 프로그래밍 경험이 거의 없으며 고등학교 수준 이상의 수학 실력을 갖추지 못한 것으로 가정하고 서술했다. 이 책에 사용된 모든 파이썬 라이브러리는 많은 플랫폼에서 무료로 구할 수 있으므로, 인터넷에 접속할 수 있다면 책에 나오는 개념을 배우고 연습할 수 있을 것이다.

이 책의 구성

처음 세 장은 데이터 마이닝 프로젝트의 구조적인 내용을 다룬다. 여기에는 데이터 마이닝 파이썬 환경의 생성, 다양한 소스로부터의 데이터 로딩, 다운스트림 분석을 위한 데이터 변환을 포함한다. 나머지 장에서는 주로 개념을 다루며, 신입 사원을 교육하는 것처럼 대화체로 서술했다.
1장. ‘데이터 마이닝과 파이썬 도구 입문’에서는 독자의 소프트웨어 환경에서 파이썬을 시작하는 법을 다룬다. 파이썬, pandas, scikit-learn, seaborn 같은 인기 있는 라이브러리를 설치하는 법을 알려준다. 환경을 설정하고 나면 다음 설명을 따라갈 수 있을 것이다.
2장. ‘기본 용어와 종합적 사례’에서는 데이터 마이닝에서 요구되는 기본적 통계와 데이터 용어를 소개한다. 이 장의 끝에서는 종합적 예제를 다루고, 다음 장에서 소개할 여러 기법을 보여준다. 2장을 읽으면 분석이 의미하는 사고의 과정과 업무에서 맞닥뜨리게 될 문제를 해결하기 위한 절차를 좀 더 명확히 이해할 수 있다.
3장. ‘데이터의 수집, 탐구, 시각화’에서는 데이터베이스, 디스크, 웹에서 데이터를 불러오는 기본적인 방법을 살펴본다. 기본적인 SQL 질의와 pandas의 액세스 및 검색 함수를 다루며, seaborn을 사용한 주요 플롯 형태를 소개한다.
4장. ‘분석을 위한 데이터 클리닝 및 준비’에서는 데이터 클리닝과 차원 감소의 기본을 다룬다. 어떻게 미지의 값을 처리하고, 입력 데이터를 리스케일하고, 카테고리 변수를 다룰지 이해하게 될 것이다. 또한 고차원 데이터의 문제를 필터, 래퍼(wrapper), 변환 기법 등의 특징 감소 기법을 사용해 문제를 어떻게 해결하는지 알아본다.
5장. ‘데이터의 그룹화와 클러스터링’에서는 데이터 마이닝을 위한 클러스터링 알고리즘 설계 배경과 사고 과정을 설명한다. 그리고 실무에서 사용하는 클러스터링 기법을 소개하고 모의 데이터를 사용해 이들을 비교한다. 이 내용을 배우면 평균 분리, 밀도, 연결성에 기반한 클러스터링 알고리즘 간의 차이를 알게 될 것이다. 또한 데이터의 플롯을 해석하고 클러스터링이 여러분의 데이터 마이닝 프로젝트에 어느 정도 적합한지에 대한 인사이트를 얻을 수 있다.
6장. ‘회귀와 분류를 이용한 예측’에서는 손실 함수와 기울기 하강을 통한 예측 모델 학습을 다룬다. 그다음 과대적합, 과소적합 및 적합 과정에서의 모델 정규화를 위한 페널티 접근의 개념을 살펴본다. 그리고 표준적인 회귀 및 분류 기법들과 각각의 정규화된 버전을 다룬다. 교차 검증과 그리드 검색을 포함한 모델 튜닝의 베스트 프랙티스를 다루면서 마무리한다.
7장. ‘고급 주제: 데이터 처리 파이프라인의 생성과 사용’에서는 scikit-learn 기법을 사용해 파이프라인을 생성하고 적용하는 전략을 살펴본다. 이어서 구현 시점에서 일어나는 파이썬 관련 문제를 다룬다.

상세 이미지

저자/역자 소개

지은이의 말

인기 있는 무료 파이썬 라이브러리들을 활용한 데이터 마이닝을 소개한다. 이 책은 대화체로 쓰여졌고, 독자에게 인사이트를 주는 동시에 읽기 쉬운 책이 되고자 했다. 데이터 마이닝은 당신의 데이터로부터 전통적 분석 기법으로는 발견하기 힘든 인사이트를 발견하기 위해 설계된 분석 기법의 통칭이다. 데이터 마이닝의 분야는 광대하므로, 이 책의 주제는 데이터 마이닝 영역의 적합성뿐만 아니라, 이에 관련한 머신 러닝과 인공지능의 영역까지 고려해서 선택됐다. 전반부에서는 데이터의 수집, 로딩, 변환 등에 익숙해질 수 있도록 돕고, 후반부에서는 개념적인 내용을 다룬다. 이 개념은 먼저 직관적인 원리부터 소개되고 크게 변환, 클러스터링, 예측으로 나뉜다. 주요 요소 분석, k-means 클러스터링, 서포트 벡터 머신, 랜덤 포레스트와 같이 인기 있는 여러 기법은 후반부에서 다룬다. 그리고 파이프라인과 당신의 분석 모델을 구현하는 것으로 마무리한다.

지은이 소개

나단 그리넬치(Nathan Greeneltch)

인텔 소속의 엔지니어로, 인공지능 컨설팅 부서에서 데이터 마이닝과 분석 전문가로 일하고 있다. 지난 10년 동안 스타트업과 제조 분야 대기업에서 파이썬 분석 업무를 해왔다. 분석 분야에 새로 입문한 신입 사원과 엔지니어를 정기적으로 멘토링하고 있으며, 인텔에서 수시로 강연을 통해 지식을 공유하고 있다. 일리노이주 에반스턴에 위치한 노스웨스턴 대학교에서 물리화학을 전공했으며, 작은 분자의 진동 신호 표면 향상을 주제로 박사 논문을 썼다. 미국 남동부에서 자랐으며, 가족의 반은 아칸소 출신이고 나머지 반은 플로리다 출신이다.

옮긴이의 말

데이터 마이닝의 개념은 학계와 산업계에 소개된 지 오래됐다. 하지만 고급 통계 패키지나 컴퓨터 프로그래밍을 경험해보지 못한 사람도 쉽게 이해하고 간편하게 활용할 수 있는 안내서는 지금껏 찾기 힘들었다.
이 책은 데이터 마이닝 패키지 혹은 컴퓨터 프로그래밍 관련 경험이 없는 독자도 차근차근 쉽게 따라 할 수 있도록 쓰여졌다. 알기 쉬운 예제와 파이썬 프로그램을 활용한 해결 방법을 제공하고 있으므로, 데이터 마이닝에 관심이 있는 학생과 직장인에게 좋은 입문서가 될 것이다.
이 책이 우리나라에서 데이터 마이닝의 대중화를 앞당기는 데 조금이나마 도움이 되길 바란다.

옮긴이 소개

조종희

데이터를 활용한 비즈니스 환경에서의 과학적인 의사 결정 및 업무성과의 최적화가 주요 업무 분야다. 포드자동차, JP모건 체이스, 빅토리아 시크릿 등의 세계적인 브랜드에서 10년 넘게 마케팅 분석 관련 경력을 쌓았다. 카네기 멜론 대학교에서 분석적 마케팅 전공으로 MBA를 마쳤다. 「하버드 비즈니스 리뷰 코리아」의 객원 번역가로 활동했으며 미국 조지아대학교, 한양대학교 등에서 강의했다.

목차

목차
  • 1장. 데이터 마이닝과 파이썬 도구 입문
    • 기술적, 예측적, 처방적 분석
    • 이 책에서 다루는 것과 다루지 않는 것
    • 추가적인 학습을 위한 추천 도서
    • 데이터 마이닝을 위한 파이썬 환경 설정
    • 아나콘다와 콘다 패키지 관리자 설치하기
      • 리눅스에 설치하기
      • 윈도우에서 설치하기
      • 맥 OS에서 설치하기
    • 스파이더 IDE 시작하기
    • 주피터 노트북 실행하기
    • 고성능 파이썬 설치하기
    • 추천 라이브러리와 설치 방법
    • 추천 라이브러리
    • 요약

  • 2장. 기본 용어와 종합적 사례
    • 기본적 데이터 용어
    • 샘플 스페이스
    • 변수의 종류
    • 데이터 형태
    • 기본적 요약 통계량
    • 파이썬을 활용한 데이터 마이닝 예제
      • 데이터를 메모리에 로딩하기: pandas를 통해 데이터 보기와 데이터 관리하기
      • 데이터 플롯과 탐구: seaborn의 능력 체험하기
      • 데이터 변환: scikit-learn을 활용한 PCA와 LDA
      • 분리를 계량화하기: k-means 클러스터링과 실루엣 스코어
      • 의사 결정 혹은 예측
    • 요약

  • 3장. 데이터의 수집, 탐구, 시각화
    • 데이터 소스의 형태와 pandas에 데이터 적재하기
      • 데이터베이스
      • 기본적 SQL 질의
      • 디스크
      • 웹 소스
      • URL
      • scikit-learn이나 seaborn에 포함된 데이터 사용
    • pandas로 데이터 접근, 검색, 점검하기
    • seaborn에서의 기본적 플롯
    • 데이터 시각화를 위한 인기 있는 형태의 플롯들
      • 스캐터 플롯
      • 히스토그램
      • 조인트 플롯
      • 바이올린 플롯
      • 페어플롯
    • 요약

  • 4장. 분석을 위한 데이터 클리닝과 준비
    • scikit-learn 변환 API
    • 입력 데이터 클리닝
      • 결측값
      • 결측값 찾기와 제거하기
      • 결측값을 대체하기 위한 임퓨팅
    • 특징 스케일링
      • 정규화
      • 표준화
    • 카테고리 데이터 처리
      • 순서적 인코딩
      • 원핫 인코딩
      • 레이블 인코딩
    • 고차원 데이터
    • 차원 감소
      • 특징 선택
      • 특징 필터링
      • 래퍼 기법
    • 변환
      • PCA
      • LDA
    • 요약

  • 5장. 데이터의 그룹화와 클러스터링
    • 클러스터링 개념 소개
    • 그룹의 위치
      • 유클리디안 공간(센트로이드)
      • 비유클리디안 공간(메디오이드)
    • 유사성
      • 유클리디안 공간
      • 비유클리디안 공간
    • 종료 조건
      • 알려진 숫자의 그룹의 경우
      • 알려지지 않은 숫자의 그룹의 경우
      • 품질 스코어와 실루엣 스코어
    • 클러스터링 기법들
      • 평균 분리
      • k-means
      • 계층적 클러스터링
      • 클러스터의 숫자를 찾기 위해 덴드로그램 재사용하기
      • 덴드로그램 그리기
    • 밀도 클러스터링
    • 스펙트럼 클러스터링
    • 요약

  • 6장. 회귀와 분류를 이용한 예측
    • scikit-learn 추정기 API
    • 예측 개념 소개
      • 예측 모델 표기법
    • 수학적 도구
      • 손실 함수
      • 기울기 하강
      • 품질 체계 적합하기
    • 회귀
      • 회귀 모델 예측 지표
      • 회귀 예제 데이터
      • 선형 회귀
      • 다변량 형태로 확장
      • 처벌 회귀를 활용한 규칙화
      • 규칙화 처벌
    • 분류
      • 분류 예제 데이터
      • 분류 모델 예측의 지표
      • 복수 클래스 분류
      • 로지스틱 회귀
      • 규칙화된 로지스틱 회귀
      • 서포트 벡터 머신
      • C를 사용한 소프트 마진
      • 커널 트릭
      • 트리 기반 분류
      • 의사 결정 트리
      • 랜덤 포레스트
    • 예측 모델의 튜닝
      • 교차 검증
      • 검증 데이터 개론
      • K-fold 기법을 이용한 복수의 검증 데이터셋
      • 초모수 튜닝을 위한 그리드 서치
    • 요약

  • 7장. 고급 주제: 데이터 처리 파이프라인의 생성과 사용
    • 당신의 분석 파이프라인 생성
      • scikit-learn의 파이프라인 객체
    • 모델 구현하기
      • pickle 모듈을 통해 모델을 연속화하고 저장하기
      • 연속화된 모델을 로딩하고 예측하기
    • 파이썬에서의 구현 문제
    • 요약

도서 오류 신고

도서 오류 신고

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

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

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

정오표

정오표

[p.72 3행]
내림차순으로 정렬한다.
->
오름차순으로 정렬한다.

[p. 77 1행]