Top

머신 러닝 알고리즘 [파이썬 예제와 함께 배우는 머신 러닝]

  • 원서명Machine learning algorithms: A reference guide to popular algorithms for data science and machine learning (ISBN 9781785889622)
  • 지은이주세페 보나코르소(Giuseppe Bonaccorso)
  • 옮긴이정사범
  • ISBN : 9791161752778
  • 35,000원
  • 2019년 02월 28일 펴냄
  • 페이퍼백 | 400쪽 | 188*235mm
  • 시리즈 : acorn+PACKT, 데이터 과학

책 소개

소스 코드 파일은 여기에서 내려 받으실 수 있습니다.

요약

머신 러닝에 대한 소개와 파이썬 활용 방법을 소개하고 있다. 단계별로 다음과 같은 머신 러닝 알고리즘을 쉽게 구현할 수 있는 방법에 대해 배울 수 있다.

  1. 데이터 기반 애플리케이션에 사용되는 통계와 수학 이론
  2. EM 알고리즘, PCA, 베이지안 회귀 등의 기술
  3. 다양한 데이터를 이용한 패턴 인식과 예측
이 책에서 다루는 내용

■ 머신 러닝의 중요한 요소 학습
■ 특징 선택 및 특징 엔지니어링 프로세스 이해
■ 선형 회귀의 성능과 오차간 상충성(trade-offs) 평가
■ 다양한 유형의 알고리즘을 사용해 데이터 모델을 구축하고 해당 모델의 작동 방법 이해
■ SVM 파라미터를 최적화하는 방법
■ 군집화 실행
■ 자연어 처리와 추천 시스템의 개념 이해
■ 사전 지식 없이 머신 러닝 아키텍처 구축

이 책의 대상 독자

머신 러닝이 처음인 사람이나 데이터 과학 분야에 입문하고자 하는 IT 전문가를 위한 것이다. 무엇보다 파이썬 언어에 익숙해야 한다. 더욱이 대부분의 내용을 완전히 이해하기 위해서는 기초 수학 지식(선형 대수학, 확률 이론)이 필요하다.

이 책의 구성

1장, ‘머신 러닝 개요’에서는 머신 러닝에 대해 소개하고 지능형 애플리케이션을 만드는 데 있어 가장 중요한 접근 방식의 기본 개념을 설명한다.
2장, ‘머신 러닝 핵심 요소’에서는 정보 이론의 몇 가지 요소와 학습 능력의 개념을 포함한 가장 일반적인 머신 러닝 문제의 수학적인 개념을 설명한다.
3장, ‘특징 선택 및 특징 엔지니어링’에서는 데이터셋을 전처리하고 가장 중요한 정보를 제공하는 특징을 선택하며, 원 데이터의 차원을 축소하는 데 사용되는 핵심기술인 특징 선택 및 특징 엔지니어링에 대해 설명한다.
선형 회귀 연속 선형 모델의 구조를 선형 회귀 알고리즘에 초점을 맞춰 설명한다. 또한 릿지(Ridge), 라소(Lasso) 및 엘라스틱넷(ElasticNet) 최적화와 다른 고급 기술도 다룬다.
5장, ‘로지스틱 회귀’에서는 로지스틱 회귀(Logistic Regression)와 확률적 경사 하강 알고리즘SGD에 초점을 맞춰 선형 분류의 개념을 소개한다. 이외에 중요한 평가 척도를 설명한다.
6장, ‘나이브 베이즈’에서는 베이즈(Bayes) 확률 이론을 설명하고, 가장 널리 알려진 나이브 베이즈(Naive Bayes) 분류기 구조에 대해 설명한다.
7장, ‘지지 벡터 머신’에서는 선형 비선형 분류 문제에 초점을 맞춰 분류 관련 알고리즘을 소개한다.
8장, ‘의사 결정 나무와 앙상블 학습’에서는 계층적 의사 결정 과정에 대해 설명하고, 의사 결정 나무 분류, 부트스트랩, 배깅 트리, 보팅 분류기의 개념에 대해 설명한다.
9장, ‘군집화’에서는 기초 군집화의 개념을 소개하고, k-평균 알고리즘을 설명하며, 최적의 군집 수를 결정하기 위한 다양한 접근 방법을 소개한다. 후반부에서는 DBSCAN과 같은 스펙트럼 군집화와 같은 다른 군집화 알고리즘에 대해 설명한다.
10장, ‘계층적 군집화’에서는 9장, ‘군집화’에서 설명한 내용에 이어서 응집 군집화(agglomerative clustering)의 개념을 소개한다.
11장, ‘추천 시스템 개요’에서는 추천 시스템에서 가장 잘 알려진 알고리즘인 추천 시스템에 대해 설명한다. 이 시스템에는 콘텐츠-기반 및 사용자-기반 전략, 협업 필터링, 교대 최소 제곱 방법이 있다.
12장, ‘자연어 처리’에서는 단어 바구니(BOW, Bag of Words)의 개념을 설명한다. 또한 자연어 데이터셋을 효율적으로 처리하는 데 필요한 기술을 소개한다.
13장, ‘NLP에서 토픽 모델링 및 감정 분석’에서는 토픽 모델링의 개념을 소개하고, 가장 중요한 알고리즘인 잠정적 의미 분석(latent semantic analysis)과 잠재 디리클레 할당(latent Dirichlet allocation)을 설명한다. 후반부에서는 감정 분석 문제에 대해 설명하고, 이를 해결하기 위한 접근 방법을 설명한다.

상세 이미지

저자/역자 소개

지은이의 말

점점 더 중요해지고 있는 머신 러닝에 대한 소개서다. 따라서 IT 전문가 및 분석가뿐 아니라 모든 사람에게 중요한 내용을 담고 있다. 머신 러닝과 같은 기술의 엄청난 힘을 이용하려는 과학자와 엔지니어에게 예측 분석, 분류, 군집화 및 자연어 처리를 위한 기술을 소개한다. 물론, 모든 세부 사항을 상세하게 다룬다는 것은 매우 어렵다. 이런 이유로, 몇 가지 주제는 간략하게 설명해 사용자가 기본 개념에만 초점을 두도록 했고 참고 도서를 통해 심화 학습을 할 수 있도록 관련 문헌 정보를 제공했다.

지은이 소개

주세페 보나코르소(Giuseppe Bonaccorso)

12년 이상의 경력을 겸비한 머신 러닝 및 빅데이터 컨설턴트다. 이탈리아 카타니아 대학(University of Catania) 전자 공학과에서 학위를 받았다. 이후 이탈리아 토르 베르가타(Tor Vergata)의 로마 대학 및 영국 에식스(Essex) 대학에서 대학원 전문 과정을 이수했다. 공공 행정, 군대, 공공 시설, 의료, 진단 및 광고 등 다양한 비즈니스 환경에서 IT 경력을 쌓았다. 또한 자바(Java), 파이썬(Python), 하둡(Hadoop), 스파크(Spark), 테아노(Theano) 및 텐서플로(TensorFlow)를 비롯한 많은 기술을 사용해 프로젝트를 수행하고 관리한 경험이 있다. 주요 관심사는 인공 지능, 머신 러닝, 데이터 과학 및 철학 분야다.

옮긴이의 말

2016년 우리는 상당한 충격을 받았다. 알파고라는 인공지능(AI) 기술이 인간을 이겼다는 사실을 접하게 됐기 때문이다. 사실 AI 기술은 지난 수십 년 동안 연구돼 왔지만 인간을 능가하리라고는 생각하지 못했기 때문일 것이다. 하지만 2016년의 딥마인드의 알파고는 이러한 고정관념을 깨버렸고 AI 연구에 활기를 가져왔다. 이후에도 우리는 여러 뉴스를 통해 현실에서 AI를 이용한 성과가 공개돼 왔다는 사실을 매스컴을 통해 접해 왔다. 물론 기업 현장에서도 AI, 머신 러닝에 대한 관심이 예전보다 많이 높아졌고, 이를 이용해 혁신과 새로운 가치를 만들기 위해 노력하고 있다. 기업뿐 아니라 학계에서도 다양한 연구와 지원이 이뤄지고 있다. 다만 현재의 AI는 모든 것을 해결해주는 만능이 아니다. 즉 나름의 장단점을 갖고 있다. 예를 들어 AI가 결정한 내용에 대해 최종 사용자가 이해하는 데 어려움이 있다 보니 현장에 적용하는 데 어려운 점이 있다. 하지만 이러한 한계에 대한 부분도 ‘설명 가능한 AI(AIeXplainable AI)’를 통해 해결하려고 노력하고 있다. 이러한 새로운 기술에 대한 장단점을 분석하고 단점을 개선하려는 노력들 덕분에 AI가 실생활에 유용하게 사용되는 범위는 넓어질 것이라 생각한다. 이러한 측면에서 우리는 머신 러닝에 사용되는 여러 가지 유용한 알고리즘에 대한 방법의 이해와 구현이 필요하고, 이를 기반으로 여러 가지 이슈 사항을 해결하는 새로운 기술 개발 또한 필요할 것이다. 이 책은 이러한 필요성을 느끼는 사람들에게 데이터 전처리와 머신 러닝 방법을 소개하기 위한 것이다. 특히 파이썬을 활용해 머신 러닝을 구현해보려고 하는 사람에게 많은 도움이 될 것이라 생각한다. 각 장별로 해당 주제에 대한 간략한 설명과 파이썬으로 구현하는 예제는 현장에서 업무를 수행하는 엔지니어가 참고할 만한 내용을 담고 있다. 부디 이 책이 해당 업무에서 고군분투하고 있는 여러분들이 업무를 수행하는 데 일조할 수 있길 바란다.

옮긴이 소개

정사범

의사 결정과 최적화 방법론에 관심이 많다. 세상에 존재하는 다양한 데이터를 이용해 여러 가지 문제를 해결하는 일을 하고 있다. 다양한 책과 현장 경험을 통해 데이터 수집, 정제, 분석, 보고 방법에 대한 지식을 얻는 것에 감사하고 있다. 에이콘출판사에서 출간한 『RStudio 따라잡기』(2013), 『The R book(Second Edition) 한국어판』(2014), 『예측 분석 모델링 실무 기법』(2014), 『데이터 마이닝 개념과 기법』(2015), 『파이썬으로 풀어보는 수학』(2016), 『데이터 스토리텔링』(2016), 『R에서 객체지향 프로그래밍 사용하기』(2016), 『파이썬 프로그래밍 개론』(2016), 『산업인터넷(IIOT)과 함께하는 인더스트리 4.0』(2017), 『장고 마스터하기』(2017), 『텐서플로로 구현하는 딥러닝과 강화학습』(2017)을 번역했다.

목차

목차
  • 1장. 머신 러닝 개요
    • 소개-초기의 기계
    • 학습
    • 지도학습
      • 비지도학습
      • 강화학습
    • 머신 러닝을 넘어서: 딥러닝과 생체-적응 시스템
    • 머신 러닝과 빅데이터
    • 심화 학습
    • 요약

  • 2장. 머신 러닝의 핵심 요소
    • 데이터 형식
      • 멀티클래스 전략
        • 일대다
        • 일대일
    • 학습 능력
      • 부적합과 과적합
      • 오류 측정
      • PAC 학습
    • 통계적 학습 접근
      • MAP 학습
      • 최대-우도 학습
    • 정보 이론의 요소
    • 참고 문헌
    • 요약

  • 3장. 특징 선택과 특징 엔지니어링
  • scikit-learn 토이 데이터셋
    • 훈련 및 테스트 집합 만들기
    • 범주형 데이터 관리
    • 누락된 특징 관리
    • 데이터 스케일링 및 정규화
    • 특징 선택 및 필터링
    • 주성분 분석
      • 음수 미포함 행렬 분해
      • 희소 PCA
      • 커널 PCA
    • 원자 추출 및 딕셔너리 학습
    • 참고 문헌
    • 요약

  • 4장. 선형 회귀
    • 선형 모델
    • 2차원 예제
    • scikit-learn을 이용한 고차원 선형 회귀
      • 회귀 분석 표현
    • 릿지, 라소 및 엘라스틱 넷
    • 랜덤 샘플 합의 -기반 견고한 회귀
    • 다항회귀
    • 이소토닉 회귀
    • 참고 문헌
    • 요약

  • 5장. 로지스틱 회귀
    • 선형 분류
    • 로지스틱 회귀
    • 구현 및 최적화
    • 확률적 경사 하강 알고리즘
    • 그리드 검색을 통해 최적의 하이퍼파라미터 찾기
    • 분류 측정 방법
    • ROC 곡선
    • 요약

  • 6장. 나이브 베이즈
    • 베이지안 이론
    • 나이브 베이즈 분류기
    • scikit-learn에서 나이브 베이즈
      • 베르누이 나이브 베이즈
      • 다항 나이브 베이즈
      • 가우시안 나이브 베이즈
    • 참고 문헌
    • 요약

  • 7장. 지지 벡터 머신
    • 선형 지지 벡터 머신
    • scikit-learn 구현
      • 선형 분류
      • 커널-기반 분류
        • 방사형 기저 함수
        • 다항식 커널
        • 시그모이드 커널
        • 사용자 정의 커널
      • 비선형 예
    • 제어된 지지 벡터 시스템
    • 지지 벡터 회귀
    • 참고 문헌
    • 요약

  • 8장. 의사 결정 나무와 앙상블 학습
    • 이진 의사 결정 나무
      • 이진 의사 결정
      • 불순도 측정
        • 지니 불순도 지수
        • 교차-엔트로피 불순도 지수
        • 오분류 불순도 지수
      • 특징 중요도
    • scikit-learn을 이용한 의사 결정 나무 분류
    • 앙상블 학습
      • 랜덤 포레스트
        • 랜덤 포레스트에서 특징 중요도
      • 아다부스트
      • 그레이디언트 트리 부스팅
      • 투표 분류기
    • 참고 문헌
    • 요약

  • 9장. 군집화 개요
    • 군집화 기초
      • k-평균
        • 최적 군집 수 찾기
      • DBSCAN
      • 스펙트럼 군집화
    • 실측 자료에 근거한 평가 방법
      • 균질성
      • 완전성
      • 조정된 랜드 지표
    • 참고 문헌
    • 요약

  • 10장. 계층적 군집화
    • 계층적 전략
    • 병합적 군집화
      • 덴드로그램
      • scikit-learn에서 병합 군집화
      • 연결 제약 조건
    • 참고 문헌
    • 요약

  • 11장. 추천 시스템 개요
    • 나이브 사용자 -기반 시스템
      • scikit 학습을 이용한 사용자 -기반 시스템 구현
    • 콘텐츠 -기반 시스템
    • 모델 없는(또는 메모리-기반) 협업 필터링
    • 모델 -기반 협업 필터링
      • 단일값 분해 전략
      • 교대 최소 자승 전략
      • 아파치 스파크 MLlib으로 최소 자승 교체하기
    • 참고 문헌
    • 요약

  • 12장. 자연어 처리
    • NLTK 및 내장형 코사인
      • 말뭉치 예제
    • 단어 바구니 전략
      • 토큰화하기
        • 문장 토큰화
        • Word 토큰화
      • 불용어 제거
      • 언어 감지
      • 어간 추출
      • 벡터화
        • 카운트 벡터화
        • Tf-idf 벡터화
    • 로이터 말뭉치에 따른 샘플 텍스트 분류기
    • 참고 문헌
    • 요약

  • 13장. NLP에서 토픽 모델링과 감정 분석
    • 토픽 모델링
      • 잠재 의미 분석
      • 확률적 잠재 의미 분석
      • 잠재 디리클레 할당
    • 감정 분석
      • NLTK를 이용한 VADER 감정 분석
    • 참고 문헌
    • 요약

  • 14장. 딥러닝과 텐서플로 개요
    • 딥러닝 살펴보기
      • 인공 신경망
      • 딥 아키텍처
        • 완전 연결층
        • 컨볼루션층
        • 드롭아웃층
        • 순환 신경망
    • 텐서플로 소개
      • 그레이디언트 계산하기
      • 로지스틱 회귀
      • 다층 퍼셉트론을 이용해 분류 실행하기
      • 이미지 컨볼루션
    • 케라스 내부 빨리 들여다 보기
    • 참고 문헌
    • 요약

  • 15장. 머신 러닝 아키텍처 만들기
    • 머신 러닝 아키텍처
      • 데이터 수집
      • 정규화
      • 차원 축소
      • 데이터 증강
      • 데이터 변환
      • 모델링/그리드 탐색/교차 검증
      • 가시화
      • 머신 러닝 아키텍처용 scikit-learn 도구
        • 파이프라인
      • 특징 결합
    • 참고 문헌

도서 오류 신고

도서 오류 신고

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

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

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