Python Machine Learning By Example [예제로 배우는 머신 러닝 알고리즘]
- 원서명Python Machine Learning By Example: Easy-to-follow examples that get you up and running with machine learning (ISBN 9781783553112)
- 지은이요우시 리우(Yuxi(Hayden) Liu)
- 옮긴이남궁영환
- ISBN : 9791161752037
- 25,000원
- 2018년 09월 07일 펴냄
- 페이퍼백 | 320쪽 | 188*235mm
- 시리즈 : acorn+PACKT, 데이터 과학
책 소개
소스 코드 파일은 여기에서 내려 받으실 수 있습니다.
요약
머신 러닝은 이제 거의 모든 비즈니스에서 필수적인 기술로 자리잡고 있다. 하지만 이런 인기에도 불구하고 많은 사람이 여전히 머신 러닝에 장벽을 느끼고 있다. 이 책은 파이썬부터 머신 러닝에서 필요한 소프트웨어 설치, 다양한 머신 러닝 알고리즘 소개뿐 아니라 비즈니스 문제의 활용 방법까지 알기 쉽게 소개한다. 실행 결과를 바로 확인할 수 있는 소스 코드와 친절한 설명으로 머신 러닝의 기초를 확실히 다질 수 있을 것이다.
이 책에서 다루는 내용
█ 파이썬을 적극 활용한 데이터 추출, 가공, 탐색 기술
█ 파이썬을 이용해서 다차원상에서 데이터를 시각화하고 의미 있는 피처 추출해내기
█ 상황을 제대로 예측하기 위해 분석 방법 자세히 살펴보기
█ 파이썬을 이용한 머신 러닝 분류 및 회귀 알고리즘 구현
█ 야후와 구글의 금융 데이터로 주식 시장의 주가 분석 및 예측
█ 머신 러닝 모델의 성능 평가와 최적화
█ 머신 러닝과 파이썬으로 다뤄보는 실제로 접할 수 있는 재미있는 문제들
이 책의 대상 독자
데이터 과학에 관심이 있는 사람 중 머신 러닝을 이용하는 누구에게나 도움이 될 것이다. 다만 파이썬 프로그래밍의 기본 지식은 갖추고 있어야 한다.
이 책의 구성
1장, ‘파이썬과 머신 러닝 시작하기’에서는 파이썬을 이용해서 머신 러닝 분야를 경험할 수 있는 방법을 설명한다. 파이썬과 머신 러닝의 기본 내용을 충실히 다루고, 실제 프로그램을 실행할 때 필요한 소프트웨어 설치 방법을 소개한다.
2장, ‘텍스트 분석 알고리즘을 이용한 20 뉴스그룹 데이터세트 분석’에서는 데이터 수집, 피처(feature), 데이터 전처리 같은 중요한 개념을 설명한다. 아울러 차원 축소화 기술, 주성분 분석(PCA), KNN(K-nearest neighbors) 알고리즘도 다룬다.
3장, ‘나이브 베이즈를 이용한 스팸 메일 탐지’에서는 분류(classification)의 기본 개념, 나이브 베이즈 알고리즘 및 실제 코드 구현, 분류 성능 평가, 모델 선택과 튜닝, 교차 검증 등을 종합적으로 학습한다. 스팸 메일 탐지 같은 예제를 통해 실제로 어떻게 동작하는지도 살펴본다.
4장, ‘SVM을 이용한 뉴스 토픽 분류’에서는 다중 클래스 분류, 서포트 벡터 머신(SVM)의 기본 개념과, 이들을 토픽 분류에 적용시키는 방법을 알아본다. 아울러 커널 머신, 오버피팅, 정규화 같은 중요한 개념도 살펴본다.
5장, ‘트리 기반 알고리즘을 이용한 클릭스루 예측’에서는 의사결정 트리와 랜덤 포레스트 알고리즘에 대해 자세히 알아보고, 이를 광고 클릭스루 비율 문제에서 어떻게 활용하는지 학습한다.
6장, ‘로지스틱 회귀를 이용한 클릭스루 예측’에서는 로지스틱 회귀 분류기를 자세히 설명한다. 아울러 범주형 변수 인코딩, L1 정규화, L2 정규화, 피처 셀렉션, 온라인 러닝, 스토캐스틱 그래디언트 하강(SGD) 같은 중요한 개념도 자세히 다룬다.
7장, ‘회귀 알고리즘을 이용한 주가 예측’에서는 야후나 구글 금융 데이터를 비롯해 여러 데이터를 이용해 주식 시장의 주가 예측을 분석한다. 아울러 금융 업계에서 풀기 어려운 문제와 금융 관련 기본 개념도 간략하게 소개한다.
8장, ‘모범 사례’에서는 여러분이 배우고 실제로 개발하는 데 꼭 필요한 지식과 주의 사항, 요령을 소개한다.
이 책에서 다루는 여러 가지 프로젝트를 충실히 익히고 나면 파이썬 기반의 머신 러닝 에코시스템의 전체 개념이 더욱 명확하게 정립될 것이다.
목차
목차
- 1장. 파이썬과 머신 러닝 시작하기
- 머신 러닝은 무엇이고, 왜 필요한가
- 머신 러닝의 개요
- 머신 러닝 알고리즘의 역사
- 데이터를 이용한 일반화
- 오버피팅, 언더피팅, 바이어스 분산 트레이드오프
- 교차 검증을 이용한 오버피팅 방지
- 정규화를 이용한 오버피팅 방지
- 피처 선택과 차원 축소화를 통한 오버피팅 방지
- 전처리, 탐색 작업, 피처 엔지니어링
- 결측값 처리
- 레이블 인코딩
- 원 핫 인코딩
- 스케일링
- 다항형 피처
- 파워 변환
- 비닝
- 모델의 조합
- 배깅
- 부스팅
- 스태킹
- 블렌딩
- 보팅과 평균화
- 소프트웨어 설치와 설정
- 문제 해결과 도움 요청 방법
- 요약
- 2장. 텍스트 분석 알고리즘을 이용한 20 뉴스그룹 데이터세트 분석
- NLP란
- newsgroups 데이터
- 데이터 확보
- 피처에 대해 생각해보자
- 시각화
- 데이터 전처리
- 클러스터링
- 토픽 모델링
- 요약
- 3장. 나이브 베이즈를 이용한 스팸 메일 탐지
- 분류란 무엇인가
- 분류의 유형
- 텍스트 분류 애플리케이션
- 나이브 베이즈란
- 예제를 통한 베이즈 정리의 이해
- 나이브 베이즈의 메커니즘
- 나이브 베이즈의 구현
- 분류기의 성능 평가
- 모델 튜닝과 교차 검증
- 요약
- 4장. SVM을 이용한 뉴스 토픽 분류
- 3장 복습과 IDF
- SVM
- SVM의 원리
- SVM 구현
- SVM 커널 함수
- 선형 커널 함수와 RBF 커널 함수의 비교
- SVM을 이용한 뉴스 토픽 분류
- 추가 예제: SVM를 이용해 심전도 데이터로 태아 상태 분류
- 요약
- 5장. 트리 기반 알고리즘을 이용한 클릭스루 예측
- 광고 클릭스루 예측이란
- 수치형 데이터와 범주형 데이터
- 의사결정 트리 분류기
- 의사결정 트리 생성
- 트리 분할 측정 기준
- 의사결정 트리 구현
- 의사결정 트리를 이용한 클릭스루 예측
- 랜덤 포레스트: 의사결정 트리의 피처 배깅
- 요약
- 6장. 로지스틱 회귀를 이용한 클릭스루 예측
- 원 핫 인코딩: 범주형 피처를 수치형 피처로 변환
- 로지스틱 회귀 분류기
- 로지스틱 회귀
- 로지스틱 회귀의 동작 원리
- 그래디언트 하강을 통한 로지스틱 회귀 모델 학습
- 그래디언트 하강 기법과 로지스틱 회귀를 이용한 클릭스루 예측
- 스토캐스틱 그래디언트 하강 기법을 이용한 로지스틱 회귀 모델 학습
- 정규화 기법을 이용한 로지스틱 회귀 모델 학습
- 온라인 러닝을 이용한 대규모 데이터세트 학습
- 다중클래스 분류 처리
- 피처 셀렉션과 랜덤 포레스트 비교
- 요약
- 7장. 회귀 알고리즘을 이용한 주가 예측
- 유가 증권 시장과 주가
- 회귀의 기본 개념
- 회귀 알고리즘을 이용한 주가 예측
- 피처 엔지니어링
- 데이터 확보와 피처 생성
- 선형 회귀
- 의사결정 트리 회귀
- 서포트 벡터 회귀
- 회귀 성능 평가
- 회귀 알고리즘을 이용한 주가 예측
- 요약
- 8장. 모범 사례
- 머신 러닝 워크플로우
- 데이터 준비 단계에서 참고할 모범 사례
- 모범 사례 1: 프로젝트의 목표를 완전히 이해할 것
- 모범 사례 2: 관련된 모든 필드를 수집할 것
- 모범 사례 3: 필드 값에 대한 일관성을 유지할 것
- 모범 사례 4: 결측 데이터 처리
- 학습 데이터세트 생성 단계에서 참고할 모범 사례
- 모범 사례 5: 수치형 값을 지닌 범주형 피처 판단
- 모범 사례 6: 범주형 피처로 인코딩 여부 결정
- 모범 사례 7: 피처 선택 여부를 결정하고 선택할 경우 어떻게 할지도 결정한다
- 모범 사례 8: 차원 축소화 여부를 결정하고 선택할 경우 어떻게 할지도 결정한다
- 모범 사례 9: 피처 스케일링 여부 결정
- 모범 사례 10: 도메인 전문성을 이용한 피처 엔지니어링 수행
- 모범 사례 11: 도메인 전문성 없이 피처 엔지니어링 수행
- 모범 사례 12: 각 피처가 생성 과정 문서화하기
- 모델 학습, 평가, 선정 단계에서 참고할 모범 사례
- 모범 사례 13: 적절한 알고리즘 선택
- 모범 사례 14: 오버피팅을 줄일 것
- 모범 사례 15: 오버피팅과 언더피팅이 있는지 진단할 것
- 모델 배포, 모니터링 단계에서 참고할 모범 사례
- 모범 사례 16: 모델 저장, 로딩, 재사용
- 모범 사례 17: 모델 성능 모니터링
- 모범 사례 18: 정기적으로 모델 업데이트
- 요약