리얼월드 머신러닝

생생한 현장의 실무 예제로 배우는

머신러닝 시스템은 데이터에서 일반적인 방법으로 발견하지 못할 귀중한 통찰력과 유형을 찾을 수 있도록 도와준다. 《리얼월드 머신러닝》에서 보여주는 머신러닝 기법은 트렌드를 파악하고 행동을 예측하며 사실에 근거해서 추천하는 방법을 알려준다.

이 책은 실무 개발자에게 머신러닝 프로젝트 실행 기술을 가르치고자 고안된 실용 가이드다. 학문적 이론과 복잡한 수학을 깊이 들어가지 않고도 효과적인 머신러닝 시스템을 성공적으로 구축 및 배치하려고 준비하는 독자를 위해 생생한 현장의 머신러닝 사례와 함께 소개한다.

 

도서 상세 이미지

《리얼월드 머신러닝》은 추상적 이론과 복잡한 수학을 과용하지 않고 성공적인 머신러닝 실무자가 되는 데 필요한 개념과 기술을 가르쳐 준다. 관련 예제를 파이썬으로 바로 실습함으로써 데이터 수집, 모델링, 분류 및 회귀 기술을 익힐 수 있으며, 모델 유효성 검사, 최적화, 확장성 및 실시간 스트리밍과 같은 가장 중요한 작업들도 탐구한다. 위 과정을 마치고 나면 여러분의 강력한 머신러닝 시스템을 스스로 구축하고 배포하고 유지할 수 있을 것이다.

1부에서는 머신러닝의 기본적인 개념을 설명하고 2부에서는 라이브러리를 활용해 머신러닝 모델을 만드는 전체 과정을 보여준다. 일반적인 데이터, 텍스트 데이터, 빅데이터와 관련된 3개의 예제를 통해 자세하고 다양하게 배울 수 있으며, 또한 이 과정에서 발생하는 어려움을 해결하는 방법을 알 수 있다. 책에서 얻은 간접 경험이 실제로 머신러닝을 사용하는 일에 많은 도움이 될 것이다.

★ 이 책에서 다루는 내용 ★

  • 미래 행동 예측하기
  • 성능 평가와 최적화
  • 특성 추출
  • 고급 자연어 처리
  • 영화 감상평 분석 및 추천

헨릭 브링크(Henrik Brink)

헨릭 브링크는 업계 및 학계에서 광범위한 머신러닝 경험을 한 데이터 과학자이자 소프트웨어 개발자이다.

조셉 리처드(Joseph Richards)

조셉 리처드는 응용 통계와 예측 분석 전문 지식을 갖춘 선임 데이터 과학자다. 헨릭과 조셉은 업계에서 가장 많이 사용하는 기계 학습 솔루션 개발 업체인 와이즈닷아이오(Wise.io)의 공동 창립자다.

마크 페더롤(Mark Fetherolf)

마크 페더롤은 데이터 관리와 예측 분석을 전문으로 하는 회사인 누미나리 데이터 사이언스(Numinary Data Science)의 창립자이자 사장이다. 마크는 사회 과학 연구, 화학공학, 정보 시스템 성능, 생산 용량 계획, 케이블 TV 및 온라인 광고 응용 프로그램 분야에서 통계학자 및 해석학 데이터베이스 개발자로 일했다.

정종현

동국대학교 컴퓨터공학과에 재학. 동국대학교 컴퓨터공학과 홍정모 교수와 ‘인공 신경망에게 월광 소나타 가르치기’를 시작으로 머신러닝에 입문했다. 지금은 CNN을 이용한 IoT 프로젝트를 진행하면서 열심히 배우고 있다.

유선우

현재 동국대학교 컴퓨터공학과에 재학 중이며 공역자 정종현과 함께 ‘인공 신경망에게 월광 소나타 가르치기’를 통해 머신러닝에 입문했다. 현재는 아파치 스파크를 이용해 대량의 사용자 데이터에서 유의미한 정보를 추출하는 프로젝트를 진행 중이다. 이 책에 소개된 머신러닝 기법들을 현업 데이터에 적용하고 있다.

  • [01부] 머신러닝 작업흐름
    • ▣ 01장: 머신러닝이란 무엇인가?
      • 1.1 기계가 학습하는 방법
      • 1.2. 데이터에 근거한 결정
        • 1.2.1. 전통적 접근법
        • 1.2.2. 머신러닝 접근법
        • 1.2.3. 머신러닝의 다섯 가지 이점
        • 1.2.4. 문제점
      • 1.3. 머신러닝 작업흐름 따라가기: 데이터에서 배포까지
        • 1.3.1. 데이터 수집 및 준비
        • 1.3.2. 데이터로 모델 가르치기
        • 1.3.3. 모델 성능 평가
        • 1.3.4. 모델 성능 최적화
      • 1.4. 고급 기법으로 모델 성능을 높이기
        • 1.4.1. 데이터 전처리 및 특성 공학
        • 1.4.2. 온라인 방식으로 모델을 지속해서 개선
        • 1.4.3. 모델의 데이터 크기와 속도 확장
      • 1.5. 요약
      • 1.6. 이번 장에 나오는 용어
    •  
    • ▣ 02장: 실무현장 데이터
      • 2.1. 시작하기: 데이터 수집
        • 2.1.1. 어떤 특성을 포함해야 하는가?
        • 2.1.2. 목표 변수에 대한 실측 자료를 어떻게 얻을 수 있는가?
        • 2.1.3. 얼마나 많은 훈련 데이터가 필요한가?
        • 2.1.4. 훈련 집합이 충분히 대표성을 띄는가?
      • 2.2. 모델링을 위한 데이터 전처리
        • 2.2.1. 범주형 특성
        • 2.2.2. 결측 자료 다루기
        • 2.2.3. 간단한 특성 추출
        • 2.2.4. 데이터 정규화
      • 2.3. 데이터 시각화 사용
        • 2.3.1. 모자이크 분포도
        • 2.3.2. 상자 분포도
        • 2.3.3. 밀도 분포도
        • 2.3.4. 산점도
      • 2.4. 요약
      • 2.5. 이번 장에 나온 용어
    •  
    • ▣ 03장: 모델링과 예측
      • 3.1. 머신러닝 모델링의 기본
      • 3.1.1. 입력과 목표 간의 관계 찾기
        • 3.1.2. 좋은 모델을 찾는 목적
        • 3.1.3. 모델링 방법의 종류
        • 3.1.4. 지도 학습 대 비지도 학습
      • 3.2. 분류: 버킷으로 예측하기
        • 3.2.1. 분류기를 만들고 예측하기
        • 3.2.2. 복잡한 비선형 데이터 분류
        • 3.2.3. 여러 계급으로 분류하기
      • 3.3. 회귀: 수치 예측
        • 3.3.1. 회귀기 구축 및 예측
        • 3.3.2. 복잡한 비선형 데이터에 대한 회귀 수행
      • 3.4. 요약
      • 3.5. 이번 장에 나온 용어
    •  
    • ▣ 04장: 모델 평가와 최적화
      • 4.1. 모델 일반화: 신규 데이터에 대한 예측 정확도 평가
        • 4.1.1. 문제: 과적합과 모델 낙천주의
        • 4.1.2. 해결책: 교차 검증
        • 4.1.3. 교차 검증 시 주의사항
      • 4.2. 분류 모델 평가
        • 4.2.1. 계급 단위 정확도와 혼동 행렬
        • 4.2.2. 정확도 절충과 ROC 곡선
      • 4.2.3. 다중 계급 분류
      • 4.3. 회귀 모델 평가
        • 4.3.1. 간단한 회귀 성능 측정 사용
        • 4.3.2. 잔차 검사
      • 4.4. 매개변수 튜닝을 통한 모델 최적화
        • 4.4.1. 머신러닝 알고리즘과 조율 매개변수
        • 4.4.2. 그리드 탐색
      • 4.5. 요약
      • 4.6. 이번 장에 나온 용어
    •  
    • ▣ 05장: 특성 추출의 기본
      • 5.1. 동기: 특성 공학이 유용한 이유는?
        • 5.1.1. 특성 추출이란 무엇인가?
        • 5.1.2. 특성 추출을 해야 하는 다섯 가지 이유
        • 5.1.3. 특성 추출과 특정 분야 전문 지식
      • 5.2. 기본적인 특성 추출 과정
        • 5.2.1. 예제: 행사 추천
        • 5.2.2. 날짜 및 시간 특성 다루기
        • 5.2.3. 간단한 텍스트 특성으로 작업하기
      • 5.3. 특성 선택
        • 5.3.1. 전진 선택과 후진 제거
        • 5.3.2. 데이터 탐색을 위한 특성 선택
        • 5.3.3. 현업 특성 선택 예제
      • 5.4. 요약
      • 5.5. 이번 장에 나온 용어
    •  
  • [02부] 실제 적용
    • ▣ 06장: 예제: 뉴욕 시 택시 데이터
      • 6.1. 데이터: 뉴욕 시 택시 운행 정보와 요금 정보
        • 6.1.1. 데이터 시각화
        • 6.1.2. 문제 정의 및 데이터 준비
      • 6.2. 모델링
        • 6.2.1. 기본적인 선형 모델
        • 6.2.2. 비선형 분류기
        • 6.2.3. 범주형 특성 포함하기
        • 6.2.4. 날짜 및 시간 특성 포함
        • 6.2.5. 모델 통찰
      • 6.3. 요약
      • 6.4. 이번 장에 나오는 용어
    •  
    • ▣ 07장: 고급 특성 추출 기법
      • 7.1. 고급 텍스트 특성
        • 7.1.1. 단어 주머니 모델
        • 7.1.2. 주제 모델링
        • 7.1.3. 내용 확장
      • 7.2. 이미지 특성
        • 7.2.1. 간단한 이미지 특성
        • 7.2.2. 물체와 형태 추출
      • 7.3. 시계열 특성
        • 7.3.1. 시계열 데이터의 유형
        • 7.3.2. 시계열 데이터를 바탕으로 한 예측
        • 7.3.3. 고전적 시계열 특성
      • 7.3.4. 사건 흐름에 대한 특성 추출
      • 7.4. 요약
      • 7.5. 이번 장에 나온 용어
    •  
    • ▣ 08장: 고급 자연 언어 처리 예제: 영화 감상평 평점
      • 8.1. 데이터 및 사용사례 탐구
        • 8.1.1. 데이터셋 훑어보기
        • 8.1.2. 데이터셋 조사
        • 8.1.3. 사용사례란 무엇인가?
      • 8.2. 기초 자연 언어 처리 특성 추출 및 초기 모델 구축
        • 8.2.1. 단어 주머니 특성
        • 8.2.2. 나이브 베이즈 알고리즘으로 모델 구축하기
        • 8.2.3. tf-idf 알고리즘으로 단어 주머니의 특성들을 정규화하기
        • 8.2.4. 모델 매개변수 최적화
      • 8.3. 고급 알고리즘과 모델 배치 고려사항
        • 8.3.1. Word2vec 특성
        • 8.3.2. 랜덤 포레스트 모델
      • 8.4. 요약
      • 8.5. 이번 장에 나온 용어
    •  
    • ▣ 09장: 머신러닝 작업 흐름 확장
      • 9.1. 확장하기 전에
        • 9.1.1. 중요 차원 식별
        • 9.1.2. 확장하는 대신 훈련 데이터를 부차 표집하기?
        • 9.1.3. 확장 가능한 데이터 관리 시스템
      • 9.2. 머신러닝 모델링 파이프라인 확장
        • 9.2.1. 학습 알고리즘 확장
      • 9.3. 예측 확장
        • 9.3.1. 예측량 높이기
        • 9.3.2. 예측 속도 높이기
      • 9.4. 요약
      • 9.5. 이번 장의 용어
    •  
    • ▣ 10장: 예제: 디지털 디스플레이 광고
      • 10.1. 디스플레이 광고
      • 10.2. 디지털 광고 데이터
      • 10.3. 특성 추출과 모델링 전략
      • 10.4. 데이터의 크기와 모양
      • 10.5. 특잇값 분해
      • 10.6. 자원 추정 및 최적화
      • 10.7. 모델링
      • 10.8. k 최근접 이웃
      • 10.9. 랜덤 포레스트
      • 10.10. 기타 현업 고려사항
      • 10.11. 요약
      • 10.12. 이번 장에 나온 용어
      • 10.13. 요점 및 결론
    •  
    • ▣ 부록: 인기 있는 머신러닝 알고리즘

예제코드 관련 GitHub 페이지