머신 러닝은 이제 거의 모든 비즈니스에서 필수적인 기술로 자리잡고 있다. 하지만 이런 인기에도 불구하고 많은 사람이 여전히 머신 러닝에 장벽을 느끼고 있다. 이 책은 파이썬부터 머신 러닝에서 필요한 소프트웨어 설치, 다양한 머신 러닝 알고리즘 소개뿐 아니라 비즈니스 문제의 활용 방법까지 알기 쉽게 소개한다. 실행 결과를 바로 확인할 수 있는 소스 코드와 친절한 설명으로 머신 러닝의 기초를 확실히 다질 수 있을 것이다.
저자 소개
지은이 : 요우시 리우 (Yuxi Liu) 캐나다 토론토의 다국적 온라인 미디어 회사에서 메시징 앱 최적화를 담당하고 있는 데이터 과학자다. 소셜 그래프 마이닝, 소셜 개인화, 사용자 통계 분석과 관심사 예측, 스팸 탐지, 추천 시스템과 관련된 일을 주로 한다. 수년간 데이터 과학자로서 다양한 온라인 광고 회사에서 일한 경력이 있으며 광고 최적화, 클릭스루 비율과 변환 비율 예측, 클릭 위조 탐지 등에 머신 러닝 관련 전문 지식을 적극적으로 적용해왔다. 캐나다의 토론토 대학교(University of Toronto)에서 학위를 마쳤으며 석사 학위 과정 중 5개의 논문을 미국전기전자학회에서 발간하는 IEEE 트랜잭션스(IEEE Transactions)와 IEEE 콘퍼런스(IEEE Conference) 등에 게재했다. 웹사이트에서 데이터를 수집하고 가치 있는 인사이트를 뽑아내는 일에서 큰 즐거움을 느끼며 금융 투자에도 대단히 열정적이다.
옮긴이 : 남궁영환 고려대학교 컴퓨터학과(학사/석사)와 서던캘리포니아 대학교(석사)를 졸업하고, 플로리다 대학교에서 데이터 마이닝을 주제로 컴퓨터공학 박사 학위를 취득했다. 삼성SDS연구소에서 클라우드 컴퓨팅, 빅데이터 인프라 플랫폼, 데이터 과학/분석에 관한 다양한 최신 기술의 연구/개발 과제를 수행했다. 현재 아마존 웹 서비스(Amazon Web Services)에서 프로페셔널 서비스 빅데이터 컨설턴트(Professional Services Big Data Consultant)로 활동 중이다.
목 차
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: 정기적으로 모델 업데이트 __요약
출판사 서평
# 이 책에서 다루는 내용 #
- 파이썬을 적극 활용한 데이터 추출, 가공, 탐색 기술 - 파이썬을 이용해서 다차원상에서 데이터를 시각화하고 의미 있는 피처 추출해내기 - 상황을 제대로 예측하기 위해 분석 방법 자세히 살펴보기 - 파이썬을 이용한 머신 러닝 분류 및 회귀 알고리즘 구현 - 야후와 구글의 금융 데이터로 주식 시장의 주가 분석 및 예측 - 머신 러닝 모델의 성능 평가와 최적화 - 머신 러닝과 파이썬으로 다뤄보는 실제로 접할 수 있는 재미있는 문제들
# 이 책의 대상 독자 #
데이터 과학에 관심이 있는 사람 중 머신 러닝을 이용하는 누구에게나 도움이 될 것이다. 다만 파이썬 프로그래밍의 기본 지식은 갖추고 있어야 한다.
# 이 책의 구성 #
1장, '파이썬과 머신 러닝 시작하기'에서는 파이썬을 이용해서 머신 러닝 분야를 경험할 수 있는 방법을 설명한다. 파이썬과 머신 러닝의 기본 내용을 충실히 다루고, 실제 프로그램을 실행할 때 필요한 소프트웨어 설치 방법을 소개한다. 2장, '텍스트 분석 알고리즘을 이용한 20 뉴스그룹 데이터세트 분석'에서는 데이터 수집, 피처(feature), 데이터 전처리 같은 중요한 개념을 설명한다. 아울러 차원 축소화 기술, 주성분 분석(PCA), KNN(K-nearest neighbors) 알고리즘도 다룬다. 3장, '나이브 베이즈를 이용한 스팸 메일 탐지'에서는 분류(classification)의 기본 개념, 나이브 베이즈 알고리즘 및 실제 코드 구현, 분류 성능 평가, 모델 선택과 튜닝, 교차 검증 등을 종합적으로 학습한다. 스팸 메일 탐지 같은 예제를 통해 실제로 어떻게 동작하는지도 살펴본다. 4장, 'SVM을 이용한 뉴스 토픽 분류'에서는 다중 클래스 분류, 서포트 벡터 머신(SVM)의 기본 개념과, 이들을 토픽 분류에 적용시키는 방법을 알아본다. 아울러 커널 머신, 오버피팅, 정규화 같은 중요한 개념도 살펴본다. 5장, '트리 기반 알고리즘을 이용한 클릭스루 예측'에서는 의사결정 트리와 랜덤 포레스트 알고리즘에 대해 자세히 알아보고, 이를 광고 클릭스루 비율 문제에서 어떻게 활용하는지 학습한다. 6장, '로지스틱 회귀를 이용한 클릭스루 예측'에서는 로지스틱 회귀 분류기를 자세히 설명한다. 아울러 범주형 변수 인코딩, L1 정규화, L2 정규화, 피처 셀렉션, 온라인 러닝, 스토캐스틱 그래디언트 하강(SGD) 같은 중요한 개념도 자세히 다룬다. 7장, '회귀 알고리즘을 이용한 주가 예측'에서는 야후나 구글 금융 데이터를 비롯해 여러 데이터를 이용해 주식 시장의 주가 예측을 분석한다. 아울러 금융 업계에서 풀기 어려운 문제와 금융 관련 기본 개념도 간략하게 소개한다. 8장, '모범 사례'에서는 여러분이 배우고 실제로 개발하는 데 꼭 필요한 지식과 주의 사항, 요령을 소개한다.
이 책에서 다루는 여러 가지 프로젝트를 충실히 익히고 나면 파이썬 기반의 머신 러닝 에코시스템의 전체 개념이 더욱 명확하게 정립될 것이다.