머신 러닝 워크북 : 북윈도
리뷰 0 위시 120

머신 러닝 워크북 요약정보 및 구매

머신 러닝, 자바로 실습하고 이해한다 | 머하웃, 스프링 XD, 하둡, 스칼라, 스파크, R

상품 선택옵션 0 개, 추가옵션 0 개

출판사 길벗
저자 제이슨 벨
ISBN 9791187345008 (1187345008)
정가 35,000원
판매가 31,500원(10% 할인)
배송비 무료배송
포인트 정책 설명문 닫기

00포인트

포인트 정책 설명문 출력

선택된 옵션

관심상품

상품 정보

사은품
상품 기본설명
머신 러닝, 자바로 실습하고 이해한다 | 머하웃, 스프링 XD, 하둡, 스칼라, 스파크, R
상품 상세설명
머신 러닝, 자바와 다양한 도구로 실습하면서 이해한다!

자바와 다양한 도구로 실습해보면서 머신 러닝의 개념과 도구 사용법을 배운다. 머신 러닝의 정의, 머신 러닝을 계획하는 방법부터 시작하여 의사결정트리, 베이지안 네트워크, 인공 신경망, 연관 규칙 학습, 서포트 벡터 머신, 클러스터링이 무엇이고, 어디에 활용되는지 배운다. 각 알고리즘에 어떤 도구를 사용해야 하는지 자바를 포함하여 머신 러닝에서 사용되는 다양한 도구(머하웃, 스프링 XD, 하둡, 스쿱, 피그, 맵리듀스, 스칼라, 스파크, R, Rjava)를 설치하고 사용해본다. 머신 러닝 알고리즘과 도구 전반을 책 한 권으로 살펴보면서 각 기법과 도구의 특징을 배울 수 있다.





목차
1장 머신 러닝이란 무엇인가?
__1.1 머신 러닝의 역사
____앨런 튜링
____아서 사무엘
____톰 미첼
____요약
__1.2 머신 러닝 알고리즘의 종류
____지도 학습
____비지도 학습
__1.3 인간의 개입
__1.4 머신 러닝의 활용
____소프트웨어
____주식 매매
____로보틱스
____의학과 헬스 케어
____광고
____소매업과 전자 상거래
____게임 분석
____사물인터넷
__1.5 머신 러닝을 위한 프로그래밍 언어
____파이썬
____R
____매트랩
____스칼라
____클로저
____루비
__1.6 이 책에서 사용한 소프트웨어
____자바 버전 확인하기
____웨카 툴킷
____머하웃
____스프링 XD
____하둡
____통합개발환경(IDE) 사용하기
__1.7 데이터 저장소
____UC 어바인 머신 러닝 저장소
____인포침스
____캐글
__1.8 요약

2장 머신 러닝 계획하기
__2.1 머신 러닝 순환 주기
__2.2 모든 것은 질문으로 시작된다
__2.3 데이터가 없어요!
____지역 사회에서 시작하기
____경진대회
__2.4 하나로 모두 해결한다?
__2.5 프로세스 정의하기
____계획
____개발
____테스팅
____보고
____개선
____프로덕션
__2.6 데이터 팀 구성하기
____수학과 통계
____프로그래밍
____그래픽 디자인
____전문 지식
__2.7 데이터 처리
____내 컴퓨터 사용하기
____컴퓨터 클러스터
____클라우드 기반 서비스
__2.8 데이터 스토리지
____물리 디스크
____클라우드 기반 스토리지
__2.9 사생활 데이터 보안
____문화 규범
____세대적인 기대
____사용자 데이터의 익명성
____‘오싹한 선’을 넘지 마라
__2.10 데이터 품질과 정리
____입력 여부 확인
____타입 확인
____길이 확인
____범위 확인
____포맷 확인
____브리트니 딜레마
____국가 이름에는 어떤 것들이 있나?
____날짜와 시간
____데이터 정리에 관한 마지막 생각
__2.11 입력 데이터에 대해 생각해보기
____원시 텍스트
____CSV
____JSON
____YAML
____XML
____스프레드시트
____데이터베이스
__2.12 결과 데이터에 대해 생각해보기
__2.13 실험을 두려워하지 마라
__2.14 요약

3장 의사결정트리로 작업하기
__3.1 의사결정트리의 기본
____의사결정트리의 사용
____의사결정트리의 장점
____의사결정트리의 한계
____여러 가지 알고리즘
____의사결정트리는 어떻게 작동하는가?
__3.2 웨카의 의사결정트리
____필요 사항
____훈련용 데이터
____웨카를 사용하여 의사결정트리 만들기
____분류에서 자바 코드 만들기
____분류기 코드 테스트하기
____미래의 반복적인 작업 생각해보기
__3.3 요약

4장 베이지안 네트워크
__4.1 조종사부터 클리피까지
__4.2 약간의 그래프 이론
__4.3 약간의 확률 이론
____동전 던지기
____조건부 확률
____복권 당첨
__4.4 베이즈 이론
__4.5 베이지안 네트워크는 어떻게 작동하는가?
____확률 부여하기
____결과 계산하기
__4.6 노드의 개수
__4.7 전문가의 도움
__4.8 베이지안 네트워크 안내
____베이지안 네트워크를 위한 자바 API
____네트워크 계획하기
____네트워크 코딩하기
__4.9 요약

5장 인공 신경망
__5.1 신경망이란 무엇인가?
__5.2 인공 신경망 활용
____고빈도 매매
____신용 대출
____데이터 센터 관리
____로봇 공학
____의료 모니터링
__5.3 인공 신경망 뜯어보기
____퍼셉트론
____활성화 함수
____다층 퍼셉트론
____역전파
__5.4 인공 신경망을 위한 데이터 준비
__5.5 웨카를 사용한 인공 신경망
____데이터 세트 만들기
____웨카로 데이터 읽어 들이기
____다층 퍼셉트론 조정하기
____네트워크 훈련시키기
____네트워크 변경하기
____테스트 데이터 크기 늘리기
__5.6 자바에서 신경망 구현하기
____프로젝트 만들기
____코드
____CSV를 Arff로 변환하기
____신경망 실행하기
__5.7 요약

6장 연관 규칙 학습
__6.1 연관 규칙 학습은 어느 분야에서 사용되는가?
____웹 사용 로그 마이닝
____맥주와 기저귀
__6.2 연관 규칙 학습은 어떻게 이루어지는가?
____지지도
____신뢰도
____향상도
____확신도
____프로세스 정의하기
__6.3 알고리즘
____Apriori
____FP-Growth
__6.4 장바구니 마이닝
____원시 데이터 다운로드
____이클립스에서 프로젝트 설정하기
____아이템 데이터 파일 설정하기
____데이터 설정하기
____머하웃 실행시키기
____결과 검사하기
____모두 합치기
____추후 개발
__6.5 요약

7장 서포트 벡터 머신
__7.1 SVM이란 무엇인가?
__7.2 SVM은 어디에 사용되는가?
__7.3 기본 분류 원칙
____이진 분류와 다중 클래스 분류
____선형 분류기
____신뢰성
____함숫값 최대화와 최소화
__7.4 SVM으로 분류하는 방법
____선형 분류 사용하기
____비선형 분류 사용하기
__7.5 웨카에서 SVM 사용하기
____LibSVM 설치하기
____분류 실습
____자바와 함께 LibSVM 사용하기
__7.6 요약


8장 클러스터링
__8.1 클러스터링이란 무엇인가?
__8.2 클러스터링은 어디에 사용되는가?
____인터넷
____비즈니스와 소매업
____법 집행
____컴퓨터 작업
__8.3 클러스터링 모델
____k-means는 어떻게 작동하는가?
____클러스터 개수 계산하기
__8.4 웨카를 사용한 k-means 클러스터링
____데이터 준비하기
____워크벤치를 이용한 방법
____명령줄을 사용한 방법
____코드를 사용한 방법
__8.5 요약

9장 스프링 XD로 하는 실시간 머신 러닝
__9.1 데이터 파이어호스 잡기
____실시간 데이터 사용 시 고려 사항
____실시간 시스템의 활용 가능성
__9.2 스프링 XD 사용하기
____스프링 XD 스트림
____입력 소스, 싱크, 프로세서
__9.3 트위터 데이터로부터 배우기
____개발 계획
____트위터 API 개발자의 애플리케이션 설정하기
__9.4 스프링 XD 설정하기
____스프링 XD 서버 시작하기
____샘플 데이터 만들기
____스프링 XD 셸
____스트림 101
__9.5 스프링 XD와 트위터
____트위터 자격 인증 설정하기
____첫 트위터 스트림 만들기
____다음에 할 것은?
__9.6 프로세서 소개
____어떻게 스트림 내 프로세서 작업이 이루어지는가?
____나만의 프로세서 만들기
__9.7 실시간 감성 분석
____기본적인 분석이 이루어지는 방법
____감성 프로세서 만들기
____스프링 XD Taps
__9.8 요약

10장 배치 처리로 하는 머신 러닝
__10.1 빅데이터인가?
__10.2 배치 처리할 데이터의 고려 사항
____크기와 빈도
____데이터가 많은가?
____처리 방법은?
__10.3 배치 처리의 실전 예제
____하둡
____스쿱
____피그
____머하웃
____클라우드 기반 맵리듀스
____실습 시 주의사항
__10.4 하둡 프레임워크 사용하기
____하둡 아키텍처
____싱글노드 클러스터 설정하기
__10.5 맵리듀스 작업 방법
__10.6 해시태그 마이닝
____스프링 XD의 하둡 지원
____이 예제의 목표
____해시태그란 무엇인가?
____맵리듀스 클래스 만들기
____기존 데이터에 ETL 수행하기
____머하웃으로 제품 추천하기
__10.7 판매 데이터 마이닝
____제 커피숍에 오신 걸 환영합니다!
____작은 규모로 시작하기
____Core 메서드 작성하기
____하둡과 맵리듀스 사용하기
____피그를 사용하여 매출 데이터 마이닝하기
__10.8 배치 작업 일정
__10.9 요약

11 장 아파치 스파크
__11.1 스파크는 하둡의 대안인가?
__11.2 자바, 스칼라 또는 파이썬?
__11.3 스칼라 단기 속성 코스
____스칼라 설치하기
____패키지
____데이터 타입
____클래스
____함수 호출하기
____연산자
____흐름 제어
__11.4 스파크 다운로드와 설치
__11.5 스파크 간단 입문
____셸 시작하기
____데이터 소스
____스파크 테스트
____스파크 모니터
__11.6 스파크와 하둡 맵리듀스 비교
__11.7 스파크로 독립 실행형 프로그램 만들기
____스칼라에서 스파크 프로그램
____스칼라 빌드 도구 설치하기
____자바에서 스파크 프로그램
____스파크 프로그램 요약
__11.8 스파크 SQL
____기본 개념
____RDD에서 SparkSQL 사용하기
__11.9 스파크 스트리밍
____기본 개념
____스칼라로 첫 스트림 만들기
____자바로 첫 스트림 만들기
__11.10 MLib: 머신 러닝 라이브러리
____디펜던시
____의사결정트리
____클러스터링
__11.11 요약

12장 R로 하는 머신 러닝
__12.1 R 설치하기
____OS X
____윈도
____리눅스
__12.2 첫 실행
__12.3 R-Studio 설치하기
__12.4 R의 기본
____변수와 벡터
____행렬
____리스트
____데이터 프레임
____패키지 설치하기
____데이터를 로드하기
____데이터 그리기
__12.5 간단한 통계
__12.6 단순 선형회귀
____데이터 만들기
____초기 그래프
____선형 모델 회귀 분석
____예측하기
__12.7 기본적인 감성 분석
____단어 목록을 로드하는 함수
____감성 지수를 채점하는 함수 작성하기
____함수 테스트하기
__12.8 Apriori 연관 규칙
____arules 패키지 설치하기
____훈련용 데이터
____거래 데이터 가져오기
____Apriori 알고리즘 실행하기
____결과 검사하기
__12.9 자바에서 R로 접근하기
____rJava 패키지 설치하기
____R에서의 첫 자바 코드
____자바 프로그램에서 R 호출하기
____이클립스 프로젝트 설정하기
____자바/R 클래스 만들기
____예제 실행하기
____R 작업 확장하기
__12.10 R과 하둡
____RHadoop 프로젝트
____RHadoop에서 간단한 맵리듀스 작업
____R에서 소셜 미디어 연결하기
__12.11 요약

부록 A 스프링 XD 빨리 시작하기
부록 B Hadoop 1.x 빨리 시작하기
부록 C 유용한 유닉스 명령어
부록 D 추가 읽을거리

찾아보기
출판사 서평
머신 러닝, 어떻게 사용할 것인가?당신이 궁금해하는 그 질문을 컴퓨터에게 던져라!
매장 어디에 상품을 두면 더 잘 팔릴까? -> 각 매대의 판매량을 분석하자
요즘 유행하는 건 뭐지? -> 해시태그를 모아 트렌드를 알아보자
사람들은 이 문제를 어떻게 생각할까? -> 트위터의 글을 수집해 긍정적인지 부정적인지 살펴보자
이 모든 질문의 대답을 컴퓨터가 대신 답하도록 만들어라. 자바로 배운다!
주 도구로 웨카와 이클립스를 사용하여 머신 러닝을 학습한다. 웨카에서 제공하는 데이터 분석 알고리즘인 의사결정트리, 베이지안 네트워크, 서포트 벡터 머신, 클러스터링을 실습한다. 또한, 웨카가 만들어 내는 자바 코드를 분석하고 활용 방법을 배운다.

다양한 도구로 머신 러닝의 전체 상을 살펴본다!
머신 러닝으로 결과를 얻으려면 데이터를 수집하고 변환한 다음, 데이터 분석 알고리즘을 사용하여 모은 데이터를 처리해야 한다. 전체 과정을 도구 하나로 모두 처리할 수는 없다. 데이터의 성격에 따라 선택하는 도구도 달라진다. 머하웃, 스프링 XD, 하둡, 스쿱, 피그, 맵리듀스, 스칼라, 스파크, R, rJava를 설치하고 사용해보면서 각 도구의 특징을 알고 적재적소에 사용하자.[지은이 서문]데이터, 데이터, 데이터. 뉴스에서도, 보고서나 백서에서도, 심지어 텔레비전에서도 빅데이터와 데이터 과학을 이야기한다. 소셜 미디어, 전화기, 사물인터넷 기기, 센서, 그외 무엇이든 데이터를 만드는 것이라면 거기서 나오는 데이터를 모두 수집하고 연구하여 뭔가 의미 있는 작업을 해야 한다고 압박한다.
영업 전략에서 중요한 것은 데이터의 양과 속도다. 홍수처럼 밀려오는 데이터를 경험해 본 사람들은 데이터를 빠르게 처리할 수 없다고 말하며 데이터 관련 서비스를 계속 이용하라고 말한다. 이 말에도 일리가 있겠지만, 그대로 따르기 전에 잠시 이 문제를 생각해보자.
데이터 마이닝과 머신 러닝은 수 년 전부터 우리 주위에 있었다. 최근 빅데이터를 둘러싼 대형 매체는 데이터의 양에 집중하고 있다. 자세히 들여다보면 적용하는 머신 러닝 알고리즘은 수 년 전과 변한 게 없다. 달라진 것은 적용되는 규모다.
데이터를 만드는 여러 조직을 보면 (개인적인 생각이지만) 정말 미미하다. 구글, 페이스북, 트위터, 넷플릭스 그리고 몇몇 기업이 알고리즘 학습과 도구로 가득한 뉴스 헤드라인 대부분을 독차지한다.
여기서 여러분이 가진 진짜 문제는 이것이다.
"나는 데이터를 어떻게 적용해야 하는가?"
이 책에서도 머신 러닝의 빅데이터 측면을 살펴본다(무시할 수 없는 주제다). 그러나 데이터에서 통찰력을 얻는 큰 그림의 작은 요소에 불과하다.
여러 가지 도구를 배우면서 자신의 작업에 맞는 도구를 찾는 과정임을 기억하라. 출판사에서는 하둡을 가르쳐주었으면 하겠지만, 하둡이 모든 작업에 항상 적절한 도구는 아니다. 이 책의 목적
이 책은 머신 러닝을 다룬다(빅데이터가 아니다). 이 책은 데이터에서 통찰력을 얻는 여러 가지 방법을 다룬다. 책의 마지막 페이지까지 여러 가지 머신 러닝 방법을 살펴보고, 실무에 사용할 수 있는 코드를 설명한다. 자신의 문제에 알맞게 머신 러닝 기술을 적용하는 방법을 배우기를 바란다.
이 책을 활용하는 데 있어 옳고 그른 방법은 없다. 처음부터 차근차근 시작하여 끝까지 읽어도 좋고, 필요할 때 알고 싶은 부분만 찾아서 읽어도 좋다.‘실습(Hands-On)’은 실습이다
내가 읽었던 많은 머신 러닝 책은 모두 심오한 이론을 다루었다. 그게 나쁘다는 것은 아니다. 복잡한 수식이 가득한 심도 있는 이론을 찾고 있다면 그 열정을 칭찬하고 싶다. 나는 실습을 통해 학습하거나 프로젝트에 접근하고자 한다. 나의 철학은 단순하다.
ㆍ질문에서 시작하라
ㆍ배워야 하는 이론을 찾아라
ㆍ배우기 쉬운 예제를 많이 찾아라
ㆍ예제를 프로젝트에 적용하라
나는 소프트웨어 개발자로서 많은 예제를 살펴보기 좋아한다. 또한, 직접 개발하는 시간뿐만 아니라, 선생님으로서 학생들에게 간단한 메시지를 주는 것도 좋아한다. 키보드 위에서 바쁘게 움직이는 손가락, IDE에서 코딩하며 보내는 시간, 멋지게 일이 처리되는 모습 등을 이 책에서 전달하고 싶다.
모든 사람에게는 자신만의 학습 스타일이 있다. 이 책은 가장 일반적인 방법을 다루고 있으므로 모든 사람에게 도움이 되리라 믿는다.“수학을 먼저 배울까요?”
좋아하는 축구팀이 다른 팀보다 낫다, 지미 페이지가 제프 백보다 훌륭한 기타리스트다(나는 제프 백을 더 좋아한다) 같이 영원한 논쟁거리가 몇 가지 있다. 머신 러닝을 시작하기 전에 수학을 얼마나 알아야 하는가 역시 또 하나의 논쟁거리다.
머신 러닝을 직접 하는 것과 머신 러닝 이론을 배우는 것은 전혀 별개의 문제다. 이론을 배우려면 수학적인 배경이 필요하다. 그러나 이 책은 실습을 통해 머신 러닝에 접근한다. 지금 당장 개발자가 이용할 수 있는 수많은 머신 러닝 도구를 손에 쥐고, 이 도구들이 어떤 원리로 움직이는지는 굳이 알 필요 없다. 배워야 하는 것은 도구를 어떻게 활용할 것인가다. 어떻게든 노력하여 어려운 작업을 마무리한다면 당연히 칭찬 받고 격려 받을 만하다.
"그래도 박사학위는 필요하다"
이 말은 여러분을 멈칫하게 만들 것이다. 데이터 분석을 시작하기도 전에 또는 여러분이 데이터 과학자라고 말하기도 전에 필요한 지식 수준에 대한 긴 논쟁을 하는 데 화가 날 것이다.
개인적으로 몇 년을 투자해 석사나 박사학위를 취득한다면 이 길을 좀 더 거리낌 없이 갈 수 있다. 학위 취득은 실용적이며 책을 읽고 직접 실행해보는 것이 좋다.
학구적인 것은 중요하다. 수학, 통계, 데이터 마이닝에 관한 수많은 온라인 강좌, 논문, 웹사이트, 서적은 마음속 열망을 채우기에 충분하다. 나도 이런 리소스를 많이 이용한다.
그러나 나는 직접 데이터를 다루고, 메서드를 시험해보고, 결과를 살펴보는 것을 가장 좋아한다. 여러분이 선형회귀 이론을 다시 공부해야 한다면 다른 읽을 거리도 많고, 이 책에서도 물론 다룰 것이므로 안심하라.
누구나 데이터 과학자가 될 수 있을까? 머신 러닝팀은 다양한 재능을 가진 사람들로 구성하는 것이 더 현실적이다. 이는 2장에서 더 자세히 이야기하겠다.
그러므로 다른 사람들이 프로젝트에 박사 인력을 들여올지 말지 논의하는 동안 여러분은 의사결정트리를 만들어 가능 여부를 확인해보라. 이 책으로 무엇을 배울 것인가?
처음부터 끝까지 이 책을 모두 읽는다면 머신 러닝의 일반적인 활용, 처리하는 다양한 방법, 실시간 처리와 배치 처리를 배울 수 있다.
물론 원하는 부분만 참조하는 것도 괜찮다. 각 장과 예제는 다른 장을 참조하지 않아도 학습할 수 있도록 작성했다.
이 책의 목적은 실습으로 일반적인 머신 러닝 개념을 다루는 것이다. 무료 도구와 라이브러리를 사용하여 여러분이 가진 데이터에서 통찰력을 얻기에 부족하지 않을 것이다.이론과 실무 균형 맞추기
머신 러닝과 데이터 마이닝에 관한 책은 많지만, 이론과 실무적인 예제 사이에서 균형을 맞춘 책은 많지 않다. 이 책을 기획할 때 실무와 사용하기 쉬운 예제의 중요성을 강조하고 단계별로 설명하고자 했다.
이론은 중요하지 않다는 말이 아니다. 무엇을 배우고 싶은지, 어떻게 배울 것인지가 이 책을 읽는 방법을 결정한다.
처음 두 장은 여러 도구와 실제 결과를 사용하여 머신 러닝을 계획하면서 머신 러닝과 데이터 마이닝을 정의한다. 주요 장(3장부터 8장)에서는 학습하고 확인하고 기억할 수 있도록 만든 실무적인 가이드와 설명을 곁들인 부분 코드, 기타 유용한 정보 등을 이용하여 머신 러닝의 여러 가지 이론을 살펴본다.
마지막으로 실시간 처리, 배치 처리 방법, 각각을 어떻게 통합하는가를 배운다. 그리고 아파치 스파크와 통계학에 뿌리를 둔 R을 알아본다. 각 장의 개요
1장은 "머신 러닝이란 무엇인가?"라는 질문과 머신 러닝의 정의, 어디에서 사용되는가, 접하게 될 알고리즘의 종류가 무엇인지를 다룬다. 또한, 머신 러닝의 인간적인 측면과 앞으로 여러분의 모델과 작업이 경쟁력을 가지려면 무엇이 필요한지 이야기한다.
실제 코딩에 앞서 계획이 필요하다. 2장에서는 머신 러닝을 계획하는 데 집중한다. 계획에는 데이터 과학팀과의 관계, 가공, 필요한 스토리지 정의, 사생활 보호, 데이터 정리, 만병통치약 같은 하나의 솔루션이 없다는 사실을 이해하는 것이 포함된다. 2장에서는 처리에 앞서 데이터를 관리하는 데 도움이 되는 몇 가지 편리한 리눅스 명령으로 작업한다.
의사결정트리는 일반적인 머신 러닝 방법이다. 결과나 모델 속에 관측된 움직임과 여러 입력 자료(시그널과 특성)를 사용하여 새로운 데이터가 들어올 때 결과를 예측한다. 3장에서는 데이터와 웨카를 사용한 예제 코딩으로 의사결정트리 디자인을 살펴본다.
베이지안 네트워크는 랜덤 변수 집합의 조건부 의존성을 나타낸다. 4장에서는 간단한 예제를 통해 어떻게 베이지안 네트워크가 작동하는지 알아보고 거기에 사용하는 코드를 살펴본다.
중추 신경계에서 영감을 얻은 신경망 모델은 딥러닝 시스템에서 여전히 사용되고 있다. 5장에서는 머신 러닝의 한 분류인 신경망 모델이 어떻게 작동하는지 보여주고 네트워크로 입력 정보를 전달하는 예제를 선보인다.
장바구니 분석에 관심이 있다면 6장을 주목하자. 6장에서는 연관 규칙 학습을 배우고, 대형 데이터 내에서 관계를 찾아본다. Apriori 알고리즘이 오늘날 대형 소매 유통 산업에서 어떻게 사용되는지 면밀히 살펴볼 것이다.
서포트 벡터 머신은 지도 학습 모델로서 데이터를 분석하여 패턴을 인지하는 방법이다. 7장에서 텍스트 분류와 기타 예제를 살펴본다.
8장에서는 클러스터링을 다룬다(개체를 그룹 짓는 방법이다). 클러스터링은 마케팅의 세그먼트 분석 같은 것에 가장 적합하다. 최초 학습 단계에서 시행착오법을 시도하려는 경우 최고의 머신 러닝 방법이다.
9장과 10장은 튜토리얼이다. 9장의 예제는 실시간 처리에 관한 것이다. 스프링 XD(데이터 소화 엔진)를 사용하고 스트리밍 트위터 API를 사용하여 트윗이 생길 때마다 수집한다.
10장에서는 배치 처리로서 머신 러닝을 다룬다. 9장에서 모은 데이터로 하둡 클러스터를 만들고 여러 가지 작업을 수행해본다. 또한, 스쿱으로 데이터베이스에서 데이터를 얻고, 머하웃으로 고객에게 추천하고, 하둡과 피그로 고객 데이터를 분석하는 일반적인 이슈를 다룬다.
11장에서는 머신 러닝 영역에 새로 들어온 도구를 다룬다. 아파치 스파크를 살펴보고, 스칼라 언어를 소개한다. 스칼라는 인메모리 데이터를 대상으로 SQL 같은 쿼리를 수행한다.
R은 전 세계 통계학자들이 오랫동안 사용해온 언어다. 12장에서는 R 언어를 살펴보면서 이전 장에서 다룬 머신 러닝 알고리즘을 수행한다. 책의 소스 코드
책에서 소개한 코드는 깃허브에서 내려받을 수 있다. 주소는 https://github.com/jasebell/mlbook이다. 또한 와일리 출판사의 웹사이트에서도 내려받을 수 있다.
주소는 http://as.wiley.com/WileyCDA/WileyTitle/productCd-1118889061.html이다.
예제는 모두 자바로 작성되어 있다. 다른 언어로 지식을 확장하고 싶다면 깃허브에서 검색해보라. 흥미로운 예제를 찾을 수 있다.
코드는 각 장별로 구분되어 리포지토리 폴더에 저장되어 있다. 추가 라이브러리가 필요하다면 README파일을 참고하라. [옮긴이 서문]옮긴이 서문을 요청 받고 글을 쓰려고 [머신 러닝(Machine Learning)] 원서를 옆에 두어 보았다. 같이 고생한 책이 곁에 있어줘야 안심이 된다. 사실 지난 가을에 책을 받으면서, ‘깨끗하게 읽고 책장에 기념으로 잘 모셔 둬야지’ 했는데, 마시던 커피를 같이 마시는 바람에 책에는 세월의 훈장처럼 얼룩과 주름이 생겼다. 이해가 안 되는 부분에는 의사 선생님 뺨칠 정도의 악필로 알 수 없는 신경질적인 기호를 휘갈겨 두었다. 기계학습의 성공 스토리를 보며 ‘이걸 증권매매에 어떻게 활용하면 좋을까?’ 머릿속에는 지금도 그 생각뿐이다. 기계학습을 알게 된 것은 한국투자공사에 계시는 친한 형님 덕분이었다. 그 당시 매트랩으로 서포트 벡터 머신을 구현했는데, SVM이 뭔지 몰라 코딩보다 기계학습 공부를 먼저 해야 했다. SVM 덕분에 ‘기계학습'이란 존재를 알게 되었다. 직접 코딩하여 SVM, k-Means(이 책에서도 소개한다)를 주가 예측과 종목 분류에 테스트해본 적이 있는데 아직 좋은 성과를 얻진 못했다. 연장은 좋은데 목수가 신통치 못한 탓이다. 또한, 아직은 엉성한 로보어드바이저 플랫폼을 만들고 있다. 플랫폼에 사용하려는 포트폴리오 전략 중에는 주가의 움직임이 유사한 종목끼리 그룹을 만들고 분류된 그룹 내에서 펀더멘털(PER, 성장성, 이익모멘텀 등)을 이용한 투자매력도를 측정하여 롱온리 또는 롱숏 포트폴리오를 만드는 것도 있다. 주가의 움직임이 비슷한 종목을 묶을 때 이 책에서도 나오는 클러스터링 분석(Clustering Analysis)을 활용한다. 나의 이런 소박하고 엉성한 프로젝트도 있지만, 해외에는 흥미로운 프로젝트가 많다. 가령 미국 버클리대학에서 만든 딥러닝 프레임워크 ‘caffe’ 는 수많은 사물을 학습시키고, 확률적 추론을 통해 사진속 사물이 무엇인지 알아낸다고 한다. 아직 완벽하지는 않지만 http://demo.caffe.berkeleyvision.org/에 가면 데모를 볼 수 있다.

사실 이 책은 특정 분야를 심도 있게 다루는 것이 아니라 ‘이런 것도 있고 저런 것이 있다’ 정도로 기계학습을 소개하지만, 그저 말로만 풀고 마는 것이 아니라 초보적인 실습과 코딩에 발을 하나씩 담가둔다. 기계학습에 입문하고 싶은 프로그래머와 프로그래머는 아니지만 기술에 안목 있는 전문가를 위한 책이다. 누구를 가르치려고 준비하다 보면 절로 공부를 하게 된다는 말이 있는데 책을 번역하면서 나 역시 공부를 하게 되었다. 가령 초평면(Hyper-plane)이라는 용어는 골치 아픈 개념이었다. 초파리처럼 성가시고 초파리를 연상시키는 이 단어가 눈으로 볼 수 있는 것이 아니어서 머릿속으로 상상해야 한다. 중간중간 도시 전설 같은 에피소드는 고속도로의 졸음운전방지 휴게쉼터 같은 존재다.책을 번역하면서 이해가 안 되는 부분이 여럿 있었는데, 그중에는 아무리 봐도 이건 틀린 것 같아 원저자에게 ‘이 부분 잘못 쓴 거 아닌가요?’ 라고 나름 정중하게 이메일을 보내기도 했다. 사실 원저자의 성실한 답변을 기대하지는 않았다. 서양권 사람들과 이메일을 주고 받다보면 복장이 터지는 경우가 많았기 때문이다. 열심히 긴 문장으로 메일을 보내면, 그들은 단문으로 답장을 한다. 다행히 원저자는 나름 긴 문장의 답변을 보내왔지만, 결론은 ‘자신은 틀리지 않았다’였다. 아무리 봐도 틀린 것 같아 뒷목잡고 쓰러질 일이었다. 기계학습을 공부하고 싶은 분들이 많을 것이다. 나의 전공은 기계학습이나 심지어는 데이터 사이언스가 아니다. 놀랍게도 경제학이다. 사실 전문 프로그래머 중에도 전공이 아닌데 그저 좋아서 입문하여 직업이 된 사람이 많아 그리 놀라운 일은 아니다. 나는 경제학 시간에 교수님이 칠판에 이리 저리 지우고 그려놓은 수요와 공급곡선을 보면서 ‘수요 공급곡선이 움직이며 이론을 알려주는 프로그램이 있으면 얼마나 좋을까?’하는 공상에 빠져 있던 학생이었다. 키보드를 누르면 모니터에 글자가 찍히는 게 신기했던 1학년때부터 친구와 공대 전산실에 들락날락 거리며 프로그래밍을 익혀왔고 지금도 업무가 프로그래밍이 아니지만 그저 재미있어 프로그래밍을 해오고 있다. 몇 년 전부터 불어 닥치는 빅데이터, 기계학습 열풍에 휩쓸려 기계학습을 배우려면 뭘 해야 하나 여기 저기 알아보았는데 공통된 의견은 선형대수, 확률통계, 알고리즘, 프로그래밍이 필요하다는 것이다. 프로그래밍의 경우 특히 어려워하는 분이 많은데, 나는 농담 반 사기 반 “사칙연산만 할 수 있으면 누구나 할 수 있다”라고 말하고 있다. 더구나 깃허브에 가면 좋은 기계학습 관련 오픈 소스 프로젝트가 많아 잘 선택하고 집중하여 활용하면 처음부터 직접 프로그래밍을 하지 않아도 좋은 결과를 얻으리라 본다. 프로그래밍에 초보인 분들은 초보자에게 쉽고 기계학습에 좋은 언어라고 추천되는 자바, R, 파이썬으로 시작하면 좋을 것이다. 프로그래밍 언어는 아니지만 웨카도 좋은 선택이다. 웨카나 프로그래밍 언어를 필기도구 삼아 수학, 확률통계, 알고리즘을 배워 나가면 어떨까? 근사하지 않을까? 왠지 사기 같은 소리지만 믿고 따라 해도 손해보지는 않을 것이다.감사의 글
책을 번역하는 동안 아낌없는 지원을 해주신 한동훈님, 이원휘님께 감사드립니다. 번역에 도움을 주시려고 여러 권의 책을 보내주셔서 놀랐습니다. 특히 오역이나 빠진 번역을 지적해주신 이원휘님 덕분에 이 책이 2016년에 빛을 보게 되었다고 생각하고 책을 저자나 역자 혼자 쓰는 게 아니라는 걸 절실히 느꼈습니다.
상품 정보 고시
도서명 머신 러닝 워크북
저자 제이슨 벨
출판사 길벗
ISBN 9791187345008 (1187345008)
쪽수 456
출간일 2016-04-30
사이즈 183 * 235 * 19 mm /839g
목차 또는 책소개 1장 머신 러닝이란 무엇인가?
__1.1 머신 러닝의 역사
____앨런 튜링
____아서 사무엘
____톰 미첼
____요약
__1.2 머신 러닝 알고리즘의 종류
____지도 학습
____비지도 학습
__1.3 인간의 개입
__1.4 머신 러닝의 활용
____소프트웨어
____주식 매매
____로보틱스
____의학과 헬스 케어
____광고
____소매업과 전자 상거래
____게임 분석
____사물인터넷
__1.5 머신 러닝을 위한 프로그래밍 언어
____파이썬
____R
____매트랩
____스칼라
____클로저
____루비
__1.6 이 책에서 사용한 소프트웨어
____자바 버전 확인하기
____웨카 툴킷
____머하웃
____스프링 XD
____하둡
____통합개발환경(IDE) 사용하기
__1.7 데이터 저장소
____UC 어바인 머신 러닝 저장소
____인포침스
____캐글
__1.8 요약

2장 머신 러닝 계획하기
__2.1 머신 러닝 순환 주기
__2.2 모든 것은 질문으로 시작된다
__2.3 데이터가 없어요!
____지역 사회에서 시작하기
____경진대회
__2.4 하나로 모두 해결한다?
__2.5 프로세스 정의하기
____계획
____개발
____테스팅
____보고
____개선
____프로덕션
__2.6 데이터 팀 구성하기
____수학과 통계
____프로그래밍
____그래픽 디자인
____전문 지식
__2.7 데이터 처리
____내 컴퓨터 사용하기
____컴퓨터 클러스터
____클라우드 기반 서비스
__2.8 데이터 스토리지
____물리 디스크
____클라우드 기반 스토리지
__2.9 사생활 데이터 보안
____문화 규범
____세대적인 기대
____사용자 데이터의 익명성
____‘오싹한 선’을 넘지 마라
__2.10 데이터 품질과 정리
____입력 여부 확인
____타입 확인
____길이 확인
____범위 확인
____포맷 확인
____브리트니 딜레마
____국가 이름에는 어떤 것들이 있나?
____날짜와 시간
____데이터 정리에 관한 마지막 생각
__2.11 입력 데이터에 대해 생각해보기
____원시 텍스트
____CSV
____JSON
____YAML
____XML
____스프레드시트
____데이터베이스
__2.12 결과 데이터에 대해 생각해보기
__2.13 실험을 두려워하지 마라
__2.14 요약

3장 의사결정트리로 작업하기
__3.1 의사결정트리의 기본
____의사결정트리의 사용
____의사결정트리의 장점
____의사결정트리의 한계
____여러 가지 알고리즘
____의사결정트리는 어떻게 작동하는가?
__3.2 웨카의 의사결정트리
____필요 사항
____훈련용 데이터
____웨카를 사용하여 의사결정트리 만들기
____분류에서 자바 코드 만들기
____분류기 코드 테스트하기
____미래의 반복적인 작업 생각해보기
__3.3 요약

4장 베이지안 네트워크
__4.1 조종사부터 클리피까지
__4.2 약간의 그래프 이론
__4.3 약간의 확률 이론
____동전 던지기
____조건부 확률
____복권 당첨
__4.4 베이즈 이론
__4.5 베이지안 네트워크는 어떻게 작동하는가?
____확률 부여하기
____결과 계산하기
__4.6 노드의 개수
__4.7 전문가의 도움
__4.8 베이지안 네트워크 안내
____베이지안 네트워크를 위한 자바 API
____네트워크 계획하기
____네트워크 코딩하기
__4.9 요약

5장 인공 신경망
__5.1 신경망이란 무엇인가?
__5.2 인공 신경망 활용
____고빈도 매매
____신용 대출
____데이터 센터 관리
____로봇 공학
____의료 모니터링
__5.3 인공 신경망 뜯어보기
____퍼셉트론
____활성화 함수
____다층 퍼셉트론
____역전파
__5.4 인공 신경망을 위한 데이터 준비
__5.5 웨카를 사용한 인공 신경망
____데이터 세트 만들기
____웨카로 데이터 읽어 들이기
____다층 퍼셉트론 조정하기
____네트워크 훈련시키기
____네트워크 변경하기
____테스트 데이터 크기 늘리기
__5.6 자바에서 신경망 구현하기
____프로젝트 만들기
____코드
____CSV를 Arff로 변환하기
____신경망 실행하기
__5.7 요약

6장 연관 규칙 학습
__6.1 연관 규칙 학습은 어느 분야에서 사용되는가?
____웹 사용 로그 마이닝
____맥주와 기저귀
__6.2 연관 규칙 학습은 어떻게 이루어지는가?
____지지도
____신뢰도
____향상도
____확신도
____프로세스 정의하기
__6.3 알고리즘
____Apriori
____FP-Growth
__6.4 장바구니 마이닝
____원시 데이터 다운로드
____이클립스에서 프로젝트 설정하기
____아이템 데이터 파일 설정하기
____데이터 설정하기
____머하웃 실행시키기
____결과 검사하기
____모두 합치기
____추후 개발
__6.5 요약

7장 서포트 벡터 머신
__7.1 SVM이란 무엇인가?
__7.2 SVM은 어디에 사용되는가?
__7.3 기본 분류 원칙
____이진 분류와 다중 클래스 분류
____선형 분류기
____신뢰성
____함숫값 최대화와 최소화
__7.4 SVM으로 분류하는 방법
____선형 분류 사용하기
____비선형 분류 사용하기
__7.5 웨카에서 SVM 사용하기
____LibSVM 설치하기
____분류 실습
____자바와 함께 LibSVM 사용하기
__7.6 요약


8장 클러스터링
__8.1 클러스터링이란 무엇인가?
__8.2 클러스터링은 어디에 사용되는가?
____인터넷
____비즈니스와 소매업
____법 집행
____컴퓨터 작업
__8.3 클러스터링 모델
____k-means는 어떻게 작동하는가?
____클러스터 개수 계산하기
__8.4 웨카를 사용한 k-means 클러스터링
____데이터 준비하기
____워크벤치를 이용한 방법
____명령줄을 사용한 방법
____코드를 사용한 방법
__8.5 요약

9장 스프링 XD로 하는 실시간 머신 러닝
__9.1 데이터 파이어호스 잡기
____실시간 데이터 사용 시 고려 사항
____실시간 시스템의 활용 가능성
__9.2 스프링 XD 사용하기
____스프링 XD 스트림
____입력 소스, 싱크, 프로세서
__9.3 트위터 데이터로부터 배우기
____개발 계획
____트위터 API 개발자의 애플리케이션 설정하기
__9.4 스프링 XD 설정하기
____스프링 XD 서버 시작하기
____샘플 데이터 만들기
____스프링 XD 셸
____스트림 101
__9.5 스프링 XD와 트위터
____트위터 자격 인증 설정하기
____첫 트위터 스트림 만들기
____다음에 할 것은?
__9.6 프로세서 소개
____어떻게 스트림 내 프로세서 작업이 이루어지는가?
____나만의 프로세서 만들기
__9.7 실시간 감성 분석
____기본적인 분석이 이루어지는 방법
____감성 프로세서 만들기
____스프링 XD Taps
__9.8 요약

10장 배치 처리로 하는 머신 러닝
__10.1 빅데이터인가?
__10.2 배치 처리할 데이터의 고려 사항
____크기와 빈도
____데이터가 많은가?
____처리 방법은?
__10.3 배치 처리의 실전 예제
____하둡
____스쿱
____피그
____머하웃
____클라우드 기반 맵리듀스
____실습 시 주의사항
__10.4 하둡 프레임워크 사용하기
____하둡 아키텍처
____싱글노드 클러스터 설정하기
__10.5 맵리듀스 작업 방법
__10.6 해시태그 마이닝
____스프링 XD의 하둡 지원
____이 예제의 목표
____해시태그란 무엇인가?
____맵리듀스 클래스 만들기
____기존 데이터에 ETL 수행하기
____머하웃으로 제품 추천하기
__10.7 판매 데이터 마이닝
____제 커피숍에 오신 걸 환영합니다!
____작은 규모로 시작하기
____Core 메서드 작성하기
____하둡과 맵리듀스 사용하기
____피그를 사용하여 매출 데이터 마이닝하기
__10.8 배치 작업 일정
__10.9 요약

11 장 아파치 스파크
__11.1 스파크는 하둡의 대안인가?
__11.2 자바, 스칼라 또는 파이썬?
__11.3 스칼라 단기 속성 코스
____스칼라 설치하기
____패키지
____데이터 타입
____클래스
____함수 호출하기
____연산자
____흐름 제어
__11.4 스파크 다운로드와 설치
__11.5 스파크 간단 입문
____셸 시작하기
____데이터 소스
____스파크 테스트
____스파크 모니터
__11.6 스파크와 하둡 맵리듀스 비교
__11.7 스파크로 독립 실행형 프로그램 만들기
____스칼라에서 스파크 프로그램
____스칼라 빌드 도구 설치하기
____자바에서 스파크 프로그램
____스파크 프로그램 요약
__11.8 스파크 SQL
____기본 개념
____RDD에서 SparkSQL 사용하기
__11.9 스파크 스트리밍
____기본 개념
____스칼라로 첫 스트림 만들기
____자바로 첫 스트림 만들기
__11.10 MLib: 머신 러닝 라이브러리
____디펜던시
____의사결정트리
____클러스터링
__11.11 요약

12장 R로 하는 머신 러닝
__12.1 R 설치하기
____OS X
____윈도
____리눅스
__12.2 첫 실행
__12.3 R-Studio 설치하기
__12.4 R의 기본
____변수와 벡터
____행렬
____리스트
____데이터 프레임
____패키지 설치하기
____데이터를 로드하기
____데이터 그리기
__12.5 간단한 통계
__12.6 단순 선형회귀
____데이터 만들기
____초기 그래프
____선형 모델 회귀 분석
____예측하기
__12.7 기본적인 감성 분석
____단어 목록을 로드하는 함수
____감성 지수를 채점하는 함수 작성하기
____함수 테스트하기
__12.8 Apriori 연관 규칙
____arules 패키지 설치하기
____훈련용 데이터
____거래 데이터 가져오기
____Apriori 알고리즘 실행하기
____결과 검사하기
__12.9 자바에서 R로 접근하기
____rJava 패키지 설치하기
____R에서의 첫 자바 코드
____자바 프로그램에서 R 호출하기
____이클립스 프로젝트 설정하기
____자바/R 클래스 만들기
____예제 실행하기
____R 작업 확장하기
__12.10 R과 하둡
____RHadoop 프로젝트
____RHadoop에서 간단한 맵리듀스 작업
____R에서 소셜 미디어 연결하기
__12.11 요약

부록 A 스프링 XD 빨리 시작하기
부록 B Hadoop 1.x 빨리 시작하기
부록 C 유용한 유닉스 명령어
부록 D 추가 읽을거리

찾아보기
배송공지

사용후기

회원리뷰 총 0개

사용후기가 없습니다.

상품문의

등록된 상품문의

상품문의 총 0개

상품문의가 없습니다.

교환/반품

[반품/교환방법]
마이페이지> 주문배송조회 > 반품/교환신청 또는 고객센터 (070-4680-5689)로 문의 바랍니다.

[반품주소]
- 도로명 : (10882) 경기도 파주시 산남로 62-20 (산남동)
- 지번 : (10882) 경기도 파주시 산남동 305-21

[반품/교환가능 기간]
변심반품의 경우 수령 후 14일 이내, 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내

[반품/교환비용]
단순 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담

[반품/교환 불가 사유]
- 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
(단지 확인을 위한 포장 훼손은 제외)
- 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
예) 화장품, 식품, 가전제품(악세서리 포함) 등
- 복제가 가능한 상품 등의 포장을 훼손한 경우
예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
- 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
- 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
- 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
- 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
* (1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시
‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①양서-판매정가의 12%, ②일서-판매정가의 7%를 적용)

[상품 품절]
공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로 안내드리겠습니다.

[소비자 피해보상, 환불지연에 따른 배상]
- 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됩니다.
- 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함.

회원로그인

오늘 본 상품

  • 머신 러닝 워크북
    머신 러닝 워크북
    31,500