책 소개
소스 코드 파일은 여기에서 내려 받으실 수 있습니다.
본문에 쓰인 컬러 이미지는 여기에서 내려 받으세요.
요약
이 책을 읽다 보면 ‘머신 러닝이 이렇게 쉬운 거였어?’라는 생각이 들기도 하고, 수학이나 프로그래밍 언어를 잘 몰랐어도 직관적으로 머릿속에 쏙쏙 들어오는 머신 러닝 개념에 흥미를 느끼고 있는 자신을 발견하게 될 것이다. 몇 줄의 R 코드로 머신 러닝이 어떻게 작동되는지 눈으로 직접 확인할 수 있고 최신의 기법까지 내 손으로 직접 짜 볼 수 있는 짜릿한 경험과 자신감을 제공해 주는 것이 이 책의 매력이다. 머신 러닝을 즐겁게 시작하고 싶은 독자 여러분에게 이 책을 추천해본다!
이 책에서 다루는 내용
■ R의 힘을 이용해서 실제 데이터 과학 응용으로 일반적인 머신 러닝 알고리즘 구축
■ 분석을 위한 데이터 정제 및 준비와 결과를 시각화하기 위한 R 기술 이해
■ 여러 종류의 머신 러닝 모델을 찾아 데이터 요구사항 충족 및 분석 문제를 해결하기 위한 최고의 모델 파악
■ 베이지안과 최근접 이웃 방법을 이용한 데이터 분류
■ 의사결정 트리, 규칙, 서포트 벡터 머신을 구축한 값 예측
■ 선형 회귀를 이용한 수치 값 예측과 신경망을 이용한 데이터 모델링
■ 머신 러닝 모델의 성능 평가와 개선
■ 텍스트 마이닝, 소셜 네트워크 데이터, 빅데이터에 특화된 머신 러닝 기법
이 책의 대상 독자
이 책은 데이터를 실전에 사용하고 싶은 사람들을 위한 책이다. 머신 러닝에 대해 이미 조금은 알고 있지만 R을 사용해보지 않았거나 R에 대해 조금 알지만 머신 러닝은 처음일 수 있다. 어떤 경우든 이 책을 통해 빠르게 학습하고 응용할 수 있게 될 것이다. 기본적인 수학과 프로그래밍 개념을 조금이라도 아는 것이 머신 러닝을 배우는 데에 도움 되겠지만, 이전의 경험은 필요 없다. 오직 필요한 것은 호기심뿐이다.
이 책의 구성
1장, '머신 러닝 소개'에서는 기계 학습자(machine learner)를 정의하고 구분해주는 용어와 개념을 살펴보고 학습 작업을 적절한 알고리즘에 매칭하는 방법을 제시한다. 2장, '데이터의 관리와 이해'에서는 R을 이용해서 데이터를 직접 다룰 수 있는 기회를 제공한다. 데이터를 로딩하고 탐색하고 이해하는 데 사용되는 필수 데이터 구조와 절차를 설명한다. 3장, '게으른 학습: 최근접 이웃 분류'에서는 단순하지만 강력한 머신 러닝 알고리즘을 이해하고 첫 번째 실제 작업인 암의 악성 샘플 식별에 적용하는 방법을 알려준다. 4장, '확률적 학습: 나이브 베이즈 분류'에서는 최첨단 스팸 필터링 시스템에서 사용하고 있는 확률의 핵심적인 개념을 소개한다. 독자는 자신만의 스팸 필터를 개발하는 과정에서 텍스트 마이닝의 기초를 배운다. 5장, '분할 정복: 의사결정 나무와 규칙 기반의 분류'에서는 예측을 정확하고 쉽게 설명하는 두 학습 알고리즘을 탐색한다. 이 방법은 투명성이 중요한 작업에 적용된다. 6장, '수치 데이터 예측: 회귀 방법'에서는 수치 예측에 사용되는 머신 러닝 알고리즘을 소개한다. 이 기법은 통계 분야에 아주 많이 포함돼 있으므로 수치 관계를 이해하는 데 필요한 필수 척도도 함께 알아본다. 7장, '블랙박스 방법: 신경망과 서포트 벡터 머신'에서는 복잡하고 강력한 두 종류의 머신 러닝 알고리즘을 다룬다. 수학이 위협적으로 보일 수 있겠지만, 내부 작동을 보여주는 예제와 함께 간단한 용어로 진행할 것이다. 8장, '패턴 찾기: 연관 규칙을 이용한 장바구니 분석'에서는 많은 소매업체가 채택한 추천 시스템의 알고리즘을 접할 수 있다. 소매업체가 나의 구매 습관을 나보다 더 잘 아는 이유가 궁금한 적이 있었다면 8장에서 그 비밀을 밝혀준다. 9장, '데이터 그룹 찾기: k-평균 군집화'에서는 관련 아이템을 군집화하는 절차를 알아본다. 이 알고리즘을 활용해서 온라인 커뮤니티에서 프로파일을 식별할 것이다. 10장, '모델 성능 평가'에서는 머신 러닝 프로젝트의 성공 여부를 측정하고 미래 데이터에 대해 학습자의 신뢰할 만한 성능 추정치를 얻는 방법에 대한 정보를 제공한다. 11장, '모델 성능 개선'에서는 머신 러닝 대회의 최상위 팀이 사용하는 방법을 밝힌다. 경쟁이 심하거나 단순히 데이터를 최대한 활용하고 싶다면 이런 기술을 레퍼토리에 추가할 필요가 있다. 12장, '특화된 머신 러닝 주제: 머신 러닝의 최첨단 분야를 탐구한다. 빅데이터로 작업하는 것부터 R 작업을 더 빠르게 하는 것까지 12장에서 다루는 주제는 R로 할 수 있는 범위를 넓히는 데 도움이 된다.
목차
목차
- 1장. 머신 러닝 소개
- 머신 러닝의 기원
- 머신 러닝의 사용과 남용
- 머신 러닝 성공 사례
- 머신 러닝의 한계
- 머신 러닝의 윤리
- 기계의 학습 방법
- 데이터 저장소
- 추상화
- 일반화
- 평가
- 실전 머신 러닝
- 입력 데이터 타입
- 머신 러닝 알고리즘 타입
- 입력 데이터와 알고리즘 매칭
- R을 이용한 머신 러닝
- R 패키지 설치
- 패키지 로딩과 언로딩
- 요약
- 2장. 데이터의 관리와 이해
- R 데이터 구조
- 벡터
- 팩터
- 리스트
- 데이터 프레임
- 행렬과 배열
- R을 이용한 데이터 관리
- 데이터 구조 저장, 로드, 제거
- CSV 파일에서 데이터 가져오기와 저장하기
- 데이터 탐색과 이해
- 데이터 구조 탐색
- 수치 변수 탐색
- 중심 경향 측정: 평균과 중앙값
- 분산 측정: 사분위수와 다섯 숫자 요약
- 수치 변수의 시각화: 상자그림
- 수치 변수 시각화: 히스토그램
- 수치 데이터의 이해:균등 분포와 정규 분포
- 분산 측정:분산과 표준 편차
- 범주 변수 탐색
- 중앙화 경향 측정: 모드
- 변수 간의 관계 탐색
- 관계 시각화: 산포도
- 관계 관찰: 이원교차표
- 요약
- R 데이터 구조
- 3장. 게으른 학습: 최근접 이웃 분류
- 최근접 이웃 분류의 이해
- k-NN 알고리즘
- 거리로 유사도 측정
- 적절한 k 선택
- k-NN 사용을 위한 데이터 준비
- k-NN 알고리즘이 게으른 이유
- k-NN 알고리즘
- 예제: k-NN 알고리즘으로 유방암 진단
- 1단계: 데이터 수집
- 2단계: 데이터 탐색과 준비
- 변환: 수치 데이터 정규화
- 데이터 준비: 훈련 및 테스트 데이터셋 생성
- 2단계: 데이터로 모델 훈련
- 4단계: 모델 성능 평가
- 5단계: 모델 성능 개선
- 변환: z-점수 표준화
- k대체 값 테스트
- 요약
- 최근접 이웃 분류의 이해
- 4장. 확률적 학습: 나이브 베이즈 분류
- 나이브 베이즈 이해
- 베이즈 방법의 기본 개념
- 확률의 이해
- 결합 확률의 이해
- 베이즈 정리를 이용한 조건부 확률 계산
- 나이브 베이즈 알고리즘
- 나이브 베이즈를 이용한 분류
- 라플라스 추정량
- 나이브 베이즈에서 수치 특성 이용
- 베이즈 방법의 기본 개념
- 예제: 나이브 베이즈 알고리즘을 이용한 휴대폰 스팸 필터링
- 1단계: 데이터 수집
- 2단계: 데이터 탐색 및 준비
- 데이터 준비: 텍스트 데이터 정리 및 표준화
- 데이터 준비: 텍스트 문서를 단어로 나누기
- 데이터 준비: 훈련 및 테스트 데이터셋 생성
- 텍스트 데이터 가시화: 단어 구름
- 데이터 준비: 자주 사용하는 단어의 지시자 특성 생성
- 3단계: 데이터에 대한 모델 훈련
- 4단계: 모델 성능 평가
- 5단계: 모델 성능 개선
- 요약
- 나이브 베이즈 이해
- 5장. 분할 정복: 의사결정 트리와 규칙 기반의 분류
- 의사결정 트리의 이해
- 분할 정복
- C5.0 의사결정 트리 알고리즘
- 최고의 분할 선택
- 의사결정 트리 가지치기
- 예제: C5.0 의사결정 트리를 이용한 위험 은행 대출 식별
- 1단계: 데이터 수집
- 2단계: 데이터 탐색과 준비
- 데이터 준비: 랜덤한 훈련 및 테스트 데이터셋 생성
- 3단계: 데이터에 대한 모델 훈련
- 4단계: 모델 성능 평가
- 5단계: 모델 성능 개선
- 의사결정 트리의 정확도 향상
- 다른 것보다 더 비싼 실수
- 분류 규칙 이해
- 분리 정복
- 1R 알고리즘
- 리퍼 알고리즘
- 의사결정 트리에서 규칙 구성
- 무엇이 트리와 규칙을 탐욕스럽게 만드는가?
- 예제: 규칙 학습자를 이용한 독버섯 식별
- 1단계: 데이터 수집
- 2단계: 데이터 탐색과 준비
- 3단계: 데이터에 대한 모델 훈련
- 4단계: 모델 성능 평가
- 5단계: 모델 성능 개선
- 요약
- 의사결정 트리의 이해
- 6장. 수치 데이터 예측: 회귀 방법
- 회귀의 이해
- 단순 선형 회귀
- 보통 최소 제곱 추정
- 상관관계
- 다중 선형 회귀
- 예제: 선형 회귀를 통한 의료비 예측
- 1단계: 데이터 수집
- 2단계: 데이터 탐색 및 준비
- 특징 간 관계 탐색: 상관 행렬
- 특징 간 관계 시각화: 산포도 행렬
- 3단계: 데이터에 대한 모델 훈련
- 4단계: 모델 성능 평가
- 5단계: 모델 성능 개선
- 모델 명시:비선형 관계 추가
- 변환:수치 변수를 이진 지시 변수로 전환
- 모델 명시: 상호작용 영향 추가
- 모두 합치기: 개선된 회귀 모델
- 회귀 트리와 모델 트리의 이해
- 트리에 회귀 추가
- 예제: 회귀 트리와 모델 트리로 와인 품질 평가
- 1단계: 데이터 수집
- 2단계: 데이터 탐색 및 준비
- 3단계: 데이터에 대한 모델 훈련
- 의사결정 트리 시각화
- 4단계: 모델 성능 평가
- 평균 절대 오차로 성능 측정
- 5단계: 모델 성능 개선
- 요약
- 회귀의 이해
- 7장. 블랙박스 방법: 신경망과 서포트 벡터 머신
- 신경망의 이해
- 생물학적 뉴런에서 인공 뉴런으로
- 활성 함수
- 네트워크 토폴로지
- 계층 개수
- 정보 이동 방향
- 계층별 노드 개수
- 역전파로 신경망 훈련
- 예제: ANN으로 콘크리트 강도 모델링
- 1단계: 데이터 수집
- 2단계: 데이터 탐색 및 준비
- 3단계: 데이터 대한 모델 훈련
- 4단계: 모델 성능 평가
- 5단계: 모델 성능 개선
- 서포트 벡터 머신의 이해
- 초평면을 이용한 분류
- 선형적으로 분리 가능한 데이터의 경우
- 비선형적으로 분리 가능한 데이터의 경우
- 비선형 공간을 위한 커널의 사용
- 초평면을 이용한 분류
- 예제: SVM으로 OCR 수행
- 1단계: 데이터 수집
- 2단계: 데이터 탐색 및 준비
- 3단계: 데이터에 대한 모델 훈련
- 4단계: 모델 성능 평가
- 5단계: 모델 성능 향상
- 요약
- 신경망의 이해
- 8장. 패턴 찾기: 연관 규칙을 이용한 장바구니 분석
- 연관 규칙의 이해
- 연관 규칙 학습을 위한 아프리오리 알고리즘
- 규칙 흥미 측정:지지도와 신뢰도
- 아프리오리 원칙을 이용한 규칙 집합의 구축
- 예제: 연관 규칙으로 자주 구매되는 식료품 식별
- 1단계: 데이터 수집
- 2단계: 데이터 탐색 및 준비
- 데이터 준비:거래 데이터를 위한 희소 행렬 생성
- 아이템 지지도 시각화:아이템 빈도 그래프
- 거래 데이터 시각화:희소 행렬 도표화
- 3단계: 데이터에 대한 모델 훈련
- 4단계: 모델 성능 평가
- 5단계: 모델 성능 개선
- 연관 규칙 집합 정렬
- 연관 규칙의 부분집합 구하기
- 연관 규칙을 파일이나 데이터 프레임에 저장
- 요약
- 연관 규칙의 이해
도서 오류 신고
정오표
정오표
[p.358 : 표 거래번호 2]
{flowers, get well card, soada}
->
{plush toy bear, flowers, balloons, candy bar}
[코드 : 4장]
4장 실행 중 아래 코드에서 오류가 났다면 sms_spam.csv 파일 1072 레코드에 2byte 문자가 섞여 있기 때문이다. 해당 문자를 삭제하고 실행하면 된다.