책 소개
본문에 쓰인 컬러 이미지는 여기에서 내려 받으세요.
요약
과거 오랜 기간 어려움을 겪었던 문제의 해결 방안이 등장하면서 최근 몇 년 사이 머신 러닝 분야는 발전 속도는 가히 폭발적이다. 특히 신경망 기반 접근 방법은 딥러닝이라는 기술로 큰 도약을 이뤘다 하겠다. 이 책에서는 이러한 머신 러닝에서 폭넓게 사용되는 핵심 알고리즘을 비롯해 최근 각광받고 있는 다양한 딥러닝 관련 대표 알고리즘들을 친절하고 자세하게 설명한다. 이미지 분류 등에서 높은 성능 향상을 보인 컨볼루션 신경망(CNN) 외에도 제한된 볼츠만 머신(RBM), 심층 신뢰망(DBN), SdA 등을 예제 데이터와 파이썬 코드를 이용해 직접 익힐 수 있게 한다. 뿐만 아니라 캐글(Kaggle)에서 높은 성능을 보인 기법도 쉽게 참고할 수 있게 한 점이 돋보인다. 참고 문헌으로 제공하는 풍부한 연구 지식을 통해서도 실력을 향상시킬 수 있을 것으로 기대한다.
이 책에서 다루는 내용
■ 첨단 딥러닝 알고리즘에 대한 실질적이고 이론적인 이해를 돕기 위한 최고 수준의 데이터 과학자의 성과 비교
■ 모든 기술에 대해 깔끔하게 설명된 코드와 테스트 실행 결과를 통해 신규 기술이 실제로 접할 수 있는 문제의 적용과 해결
■ 대규모의 복잡한 데이터 자동화와 이를 통해 장시간 작업을 필요로 하는 문제점의 극복 방안
■ 강력한 피처 엔지니어링 기술을 사용한 기존의 입력 데이터와 분석 모델의 정확도 향상방법
■ 분석 결과의 일관성을 향상시키기 위한 여러 가지 학습 기술 활용 방법
■ 폭넓은 비지도 학습 기법을 이용해 데이터셋에 숨겨진 패턴/구조 분석과 이해
■ 어렵고 과감한 도전이 필요한 문제에 대한 전문가들의 효과적이고 반복적으로 검증에 초점을 맞춘 방법 소개
■ 여러 가지 분석 모델을 함께 묶어 활용하는 강력한 앙상블 기술을 통해 딥러닝 모델을 더 효과적으로 만드는 방법
이 책의 대상 독자
최근 몇 년 사이 급부상한 고급 분석 모델링 기술에 초점을 맞춰 이 책을 읽기 바란다. 이 책은 많은 경험을 보유한 데이터 과학자와 기존 기술을 새로운 환경에 적용하려는 개발자에 상관없이 고급 분석 알고리즘을 공부하고자 하는 독자 모두를 대상으로 한다.
이 책의 구성
1장, '비지도 머신 러닝'에서는 데이터셋에 담긴 패턴과 구조를 파악하기 위해 비지도 학습을 어떻게 적용하는지 알아본다.
2장, 'DBN(Deep Belief Networks)'에서는 RBM과 DBN 알고리즘이 어떻게 동작하는지 자세히 설명한다. 이를 어떻게 사용하는지 알게 될 것이다. 그리고 결과에 대한 퀄리티를 향상시킬 수 있는 능력도 확실히 얻을 수 있을 것이다.
3장, 'SdA'에서는 고차원 입력 데이터의 피처 모델 학습에 SdA를 적용하는 방법을 통해 딥 아키텍처 형태로 모델을 만드는 방법을 계속 살펴본다.
4장, '컨볼루션 신경망(CNN)'에서는 컨볼루션 신경망(Convnet)를 어떻게 적용하는지 소개한다.
5장, '준지도 학습'에서는 다양한 준지도 학습을 어떻게 적용하는지 설명한다. 주요 기법으로는 CPLE, 자가 학습(self-learning), S3VM 등이 있다
6장, '텍스트 피처 엔지니어링'에서는 앞에서 다룬 모델에 대한 효과를 더욱 높일 수 있도록 데이터를 잘 준비하는 기술에 대해 알아본다.
7장, '피처 엔지니어링 II'에서는 (1) 데이터 퀄리티 문제를 완화하거나, (2) 머신 러닝에 도움이 되는 형식으로 데이터를 변환하든지, 또는 (3) 해당 데이터를 창의적으로 향상시키기 위해 데이터를 자세히 조사하고 정보를 얻는 방법 등을 소개한다.
8장, '앙상블 기법'에서는 세련된 모델 앙상블을 구현하는 방법과 분석 모델 솔루션에 대한 로버스트니스를 갖게 하는 기법 등을 살펴본다.
9장, '파이썬 머신 러닝 관련 추가 툴'에서는 우선 데이터 과학자가 사용할 수 있는 최신 툴 중 어떤 것들이 있는지 자세히 알아본다. 또한 이러한 툴이 어떤 장점이 있는지도 확인한다. 이 외에도 이 책의 앞부분에서 소개하는 툴과 기술을 일관된 작업 프로세스에 어떻게 적용하는지에 대해서도 살펴본다.
부록, '장별 코드 준비 사항'에서는 장 별로 준비해야 하는 라이브러리들과 이 책을 학습하는 데 필요한 툴을 요약 정리한다.
목차
목차
- 1장. 비지도 머신 러닝
- 주성분 분석(PCA)
- PCA: 기초
- PCA 활용
- K-평균 클러스터링
- 클러스터링: 기초
- 클러스터링 분석
- 클러스터링 환경 변수 튜닝
- SOM(Self-organizing maps)
- SOM 알고리즘의 기초
- SOM 알고리즘 활용
- 참고 문헌
- 요약
- 주성분 분석(PCA)
- 2장. 심층 신뢰망(DBN)
- 신경망: 기본 개념
- 신경망의 구성
- 네트워크 토폴로지
- 제한된 볼츠만 머신(RBM)
- RBM의 소개
- 토폴로지
- 학습
- RBM 애플리케이션
- RBM 애플리케이션 추가 사항
- RBM의 소개
- 심층 신뢰망(DBN)
- DBN 학습
- DBN 애플리케이션
- DBN 검증
- 참고 문헌
- 요약
- 신경망: 기본 개념
- 3장. SdA
- 오토인코더
- 오토인코더 소개
- 토폴로지
- 학습
- dA
- dA 응용
- 오토인코더 소개
- SdA
- SdA 응용
- SdA 성능 평가
- 참고 문헌
- 요약
- 오토인코더
- 4장. 컨볼루션 신경망(CNN)
- CNN의 소개
- 컨볼루션 신경망 토폴로지
- 컨볼루션 레이어
- 풀링 레이어
- convnet 학습
- 종합 정리
- CNN의 응용
- 컨볼루션 신경망 토폴로지
- 참고 문헌
- 요약
- CNN의 소개
- 5장. 준지도 학습
- 소개
- 준지도 학습의 이해
- 준지도 학습 알고리즘의 실제
- 자가 학습
- 자가 학습 구현
- 자가 학습 구현에 대한 세부 조정
- 자가 학습
- CPLE
- 참고 문헌
- 요약
- 6장. 텍스트 피처 엔지니어링
- 소개
- 텍스트 피처 엔지니어링
- 텍스트 데이터 정제
- BeautifulSoup을 이용한 텍스트 정제
- 구두점과 토큰화 관리
- 단어의 태깅 및 카테고리화
- 텍스트 데이터에서 피처 생성
- 어근 추출
- 배깅과 랜덤 포레스트
- 준비된 데이터의 테스팅
- 텍스트 데이터 정제
- 참고 문헌
- 요약
- 7장. 피처 엔지니어링 II
- 소개
- 피처 세트 생성
- 머신 러닝 애플리케이션을 위한 피처 엔지니어링
- 피처의 학습 정도 향상을 위한 리스케일링 기술의 이용
- 도출된 변수의 효과적인 생성
- 숫자가 아닌 피처의 재해석
- 피처 셀렉션 기술의 이용
- 피처 셀렉션 수행
- 머신 러닝 애플리케이션을 위한 피처 엔지니어링
- 실제 문제에서 피처 엔지니어링
- RESTful API를 통한 데이터 확보
- 모델의 성능 테스트
- 트위터
- 피처 엔지니어링 기술을 이용한 변수 도출 및 선택
- RESTful API를 통한 데이터 확보
- 참고 문헌
- 요약
- 8장. 앙상블 기법
- 앙상블의 소개
- 평준화 기법
- 배깅 알고리즘을 이용
- 랜덤 포레스트를 사용
- 부스팅 기법 응용
- XGBoost를 이용
- 스태킹 앙상블 사용
- 실제 문제에 앙상블 응용
- 평준화 기법
- 다이내믹 애플리케이션에서 모델 사용
- 모델 로버스트니스 이해
- 위험 요소 모델링 파악
- 모델 로버스트니스 관리 전략
- 모델 로버스트니스 이해
- 참고 문헌
- 요약
- 앙상블의 소개
- 9장. 파이썬 머신 러닝 관련 추가 툴
- 대안 개발 툴
- 라자냐 소개
- 라자냐 학습
- 텐서플로 소개
- 텐서플로 학습
- 모델을 반복적으로 향상시키기 위한 텐서플로 사용
- 라이브러리 사용 시 알아둘 점
- 라자냐 소개
- 참고 문헌
- 요약
- 대안 개발 툴
도서 오류 신고
정오표
정오표
[p.24 : 코드 블록]
import matplotlib.cm as 츠
->
import matplotlib.cm as cm
[p.27 : 그림 캡션]
최초 2개의 주성분을 점으로 표시한 결과
->
최초 10개의 주성분을 점으로 표신한 결과