장바구니 담기 close

장바구니에 상품을 담았습니다.

스칼라와 기계 학습

스칼라와 기계 학습 스칼라를 활용해 데이터에서 학습하는 시스템 만들기

  • 패트릭 니콜라스 지음 | 오현석 옮김
  • |
  • 에이콘출판
  • |
  • 2016-07-29 출간
  • |
  • 600페이지
  • |
  • 188 X 235 mm
  • |
  • ISBN 9788960778832
★★★★★ 평점(10/10) | 리뷰(1)
판매가

40,000원

즉시할인가

36,000

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
36,000

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

★ 이 책에서 다루는 내용 ★

■ 과학기술 계산을 위한 동적인 워크플로우를 만드는 방법
■ 오픈소스 라이브러리를 활용해 시계열 데이터에서 패턴을 추출하는 방법
■ 분류, 군집화, 진화 알고리즘을 작성하는 방법
■ 상대적인 성능 튜닝을 수행하는 방법과 스파크에 대한 평가
■ 순차적 데이터에 대한 확률 모델
■ 정규화나 커널화 등의 고급 기법을 활용한 실험
■ 스칼라 병렬 컬렉션, 아카 액터, 아파치 스파크 클러스터 등을 활용해 빅데이터 문제를 푸는 방법
■ 금융시장에 대한 기술적 분석에 핵심 기계 학습 전략 적용

★ 이 책의 대상 독자 ★

이 책은 어떻게 기계 학습 알고리즘을 구현하고, 검증하고, 응용할 수 있는지 배우고 싶어 하는 스칼라 프로그래밍에 경험이 있는 소프트웨어 개발자가 주 대상이다.
함수 프로그래밍에 대해 살펴보거나 스칼라를 활용해 기존 애플리케이션의 규모 확장성을 개선하고자 하는 데이터 과학자에게도 도움이 될 것이다.
이 책은 금융시장에 대한 기술 분석을 활용해 직접 짜면서 비교해볼 수 있는 연습 문제를 제공하는 자습서로 고안됐다.

★ 이 책의 구성 ★

1장, ‘시작하며’에서는 통계 분석, 자동 분류, 회귀분석, 예측, 클러스터링, 최적화의 기본 개념을 소개한다. 스칼라 언어 특징과 라이브러리를 간단한 애플리케이션 구현과 함께 다룬다.

2장, ‘Hello World!’에서는 전형적인 자동 분류 워크플로우를 설명하고, 편향/분산(bias/variance)의 트레이드 오프(trade-off) 관계, 스칼라 의존성 삽입을 활용한 검증 방법을 금융시장 분석에 응용해 살펴본다.

3장, ‘데이터 전처리’에서는 시계열 분석에 대해 다루며, 스칼라를 활용해 데이터 전처리를 구현하고 이동 평균과 같은 평활 기법, 이산 푸리에 변환, 그리고 칼만 재귀 필터 등을 어떻게 간편하게 구현할 수 있는지 살펴본다.

4장, ‘비감독 학습’에서는 가장 널리 활용되는 클러스터링 기법인 K-평균법, 기대값 최대화(EM, Expectation Maximization) 구현, 차원 축소 방법인 주성분 분석에 대해 주로 살펴본다.

5장, ‘나이브 베이즈 분류기’에서는 확률 그래프 모델을 소개하고, 나이브 베이즈 분류기와 다변량 베르누이 분류기를 어떻게 구현하는지 텍스트마이닝 관점에서 살펴본다.

6장, ‘회귀분석과 정규화’에서는 전형적인 선형 회귀와 최소 제곱법 회귀, 릿지 회귀와 정규화 기법에 대해 다루고, 마지막으로 로지스틱 회귀에 대해 살펴본다.

7장, ‘순차적 데이터 모델’에서는 마르코프 프로세스를 은닉 마르코프 모델 구현 전체 과정과 함께 살펴보고, 금융시장 데이터에 대한 패턴 인식 과정에 응용해본 조건부 임의 필드(conditional random field) 기법에 대해서도 살펴본다.

8장, ‘커널 모델과 서포트 벡터 머신’에서는 커널 함수의 개념과 지지 벡터 머신 분류기 및 회귀분석 구현 방법을 살펴보고, 이진 SVM 분류기를 활용한 이상 탐지 방법도 살펴본다.

9장, ‘인공 뉴럴 네트워크’에서는 앞먹임(feed-forward) 신경망과 다층 퍼셉트론(multilayer perceptron) 분류기 구현 방법을 살펴본다.

10장, ‘유전자 알고리즘’에서는 진화 컴퓨팅의 기초를 다루며, 다목적 유전자 알고리즘 구성 요소 각각의 구현에 대해서 살펴본다.

11장, ‘강화 학습’에서는 강화 학습 개념을 소개하고, Q-학습 알고리즘 구현 방법을 학습 기반 분류 시스템을 구축하기 위한 템플릿과 함께 살펴본다.

12, ‘확장 가능한 프레임워크’에서는 기계 학습에서 규모 확장성이 있는 애플리케이션을 개발하기 위한 아티팩트와 프레임워크를 다룬다. 이를 통해 스칼라 병렬 컬렉션, 아카(Akka), 아파치 스파크(Spark) 프레임워크 등을 살펴볼 것이다.

부록 A, ‘기본 개념’에서는 이 책 전체에 쓰인 스칼라 구문, 선형대수 요소에 대해 다루고, 투자와 트레이딩 전략에 대해서도 간단히 소개한다.

부록 B, ‘참고 문헌’은 각 장에서 참고했던 문헌의 목록을 제공한다.

목차

1장. 시작하며
__관심 있는 독자를 위한 수식 표기법
__기계 학습이란 무엇인가
____분류
____예측
____최적화
____회귀
__왜 스칼라인가
____추상화
____규모 확장성
____설정성
____유지 보수성(Maintainability)
____요구불 연산
__모델의 범주
__기계 학습 알고리즘 분류체계
____비감독 학습
__________군집화
__________차원 축소
____감독 학습
__________생성 모델
__________식별 모델
____강화 학습
__도구 및 프레임워크
____자바
____스칼라
____아파치 커먼스 수학(Apache Commons Math)
__________설명
__________라이선스
__________설치
____JFreeChart
__________설명
__________라이선스
__________설치
____기타 라이브러리 및 프레임워크
__소스 코드
____맥락과 뷰 바운드
____코드 표시
____기본 타입 및 암시
__________기본 타입
__________타입 변환
__________연산자
____변경 불가능성
____스칼라 이터레이터의 성능
__최종 점검
____계산 워크플로우 개요
____간단한 워크플로우 작성
__________데이터 집합 선택
____데이터 집합 적재
__________데이터 집합 전처리
__________모델 생성 (학습)
__________데이터 분류
__요약


2장. Hello, World!
__모델링
____모델의 다른 이름
____모델 vs. 설계
____모델 특성 선택
____특성 추출
__워크플로우 설계
____계산 프레임워크
____파이프 연산자
____모나딕 데이터 변환
____의존관계 주입
____워크플로우 모듈
____워크플로우 팩토리
____워크플로우 구성 요소 예제
__________전처리 모듈
__________군집화 모듈
__모델 평가하기
____검증
__________핵심 지표
__________구현
____K-폴드 교차 검증
____편향-분산 분해
____과적합
__요약

3장. 데이터 전처리
__시계열
__이동 평균
____단순 이동 평균
____가중 이동 평균
____지수 이동 평균
__푸리에 분석
____이산 푸리에 변환(DFT)
____DFT 기반 필터링
____시장 사이클 감지하기
__칼만 필터
____상태 공간 추정
__________천이식
__________측정식
____재귀 알고리즘
__________예측
__________보정
__________칼만 평활화
__________실험
__다른 전처리 기법들
__요약

4장. 비감독 학습
__군집화
____K-평균 군집화
__________유사도 측정하기
__________K-평균 알고리즘 개괄
__________1단계: 군집 설정
__________2단계: 군집 할당
__________3단계: 반복적인 재구축
__________차원의 저주
__________실험
__________군집의 개수 튜닝하기
__________검증
____기대값 최대화 알고리즘
__________가우스 혼합 모델
__________EM 개괄
__________구현
__________테스트
__________온라인 EM
__차원 축소
____주성분 분석(PCA)
__________알고리즘
__________구현
__________테스트 케이스
__________평가
____다른 차원 축소 기법
__성능 고려 사항
____K-평균
____EM
____PCA
__요약

5장. 나이브 베이즈 분류기
__확률적 그래프 모델
__나이브 베이즈 분류기
____다항 나이브 베이즈 소개
__________정식화
__________빈도주의자(frequentist)의 관점
__________예측 모델
__________0-빈도 문제
____구현
__________소프트웨어 설계
__________훈련
__________분류
__________레이블 붙이기
__________결과
__다변량 베르누이 분류
____모델
____구현
__나이브 베이즈와 텍스트 마이닝
____정보 추출의 기본
____구현
__________용어 추출
__________용어 점수 매기기
____테스트
__________텍스트 정보 가져오기
__________평가
__장점과 단점
__요약

6장. 회귀분석과 정규화
__선형 회귀
____1-변량 선형 회귀
__________구현
__________테스트 케이스
____일반 최소 제곱 회귀
__________설계
__________구현
__________테스트 케이스 1: 추세
__________테스트 케이스 2: 특성 선택
__정규화
____Ln 거칠기 벌점
____리지 회귀
__________구현
__________테스트 케이스
__수치 최적화
__로지스틱 회귀
____로짓 함수
____이항 분류
____소프트웨어 설계
____훈련 워크플로우
__________최소 제곱 최적화기 설정하기
__________자코비안 행렬 계산하기
__________종료 조건 정의하기
__________최소 제곱 문제 정의하기
__________손해 함수 최소화하기
__________테스트
____분류
__요약

7장. 순차적 데이터 모델
__마코프 결정 과정
____마코프 특성
____1차 이산 마코프 체인
__은닉 마코프 모델(HMM)
____표기법
____람다 모델
____HMM 실행 상태
____평가(CF-1)
__________알파 클래스(전방 변수)
__________베타 클래스(역방향 변수)
____훈련(CF-2)
__________바움-웰치 추정기
____디코딩(CF-3)
__________비터비 알고리즘
____하나로 합치기
____테스트 케이스
____시계열 분석을 위한 은닉 마코프 모델
__조건부 임의 필드
____CRF 소개
____선형 체인 CRF
__CRF와 텍스트 분석
____특성 함수 모델
____소프트웨어 설계
____구현
__________훈련 집합 만들기
__________태그 만들기
__________데이터 시퀀스 추출하기
__________CRF 제어 매개변수
__________하나로 합치기
____테스트
__________훈련 수렴 프로파일
__________훈련 집합 크기에 따른 영향
__________L2 정규화 요소의 영향
__CRF와 HMM 비교
__성능상 고려
__요약

8장. 커널 모델과 서포트 벡터 머신
__커널 함수
____개요
____일반적인 판별 커널
__서포트 벡터 머신
____선형 SVM
__________분리 가능한 경우(하드 마진)
__________분리 불가능한 경우(소프트 마진)
____비선형 SVM
__________최대 마진 분류
__________커널 트릭
__서포트 벡터 분류기
____이진 SVC
________LIBSVM
________소프트웨어 설계
________설정 매개변수
________SVM구현
________C-벌점과 마진
________커널 평가
________위험 분석에 적용하기
__1-분류 SVC를 사용해 변칙성 감지하기
__서포트 벡터 회귀
____개괄
____SVR vs. 선형 회귀
__성능상 고려할 점
__요약

9장. 인공 뉴럴 네트워크
__앞먹임 뉴럴 네트워크
____생물학적 배경
____수학적 배경
__다층 퍼셉트론
____활성화 함수
____네트워크 구조
____소프트웨어 설계
____모델 정의
________계층
________시냅스
________연결
____훈련 사이클/에포크
________1단계: 입력 전방 전파
________2단계: 오차 제곱 합
________3단계: 오차 역전파
________4단계: 시냅스/가중치 조정
________5단계: 수렴 기준
________설정
________한데 모으기
____훈련 전략과 분류
________온라인 vs. 배치 훈련
________정규화
________모델 인스턴스화
________예측
__평가
____학습 비율의 효과
____모멘텀 계수의 영향
____테스트 케이스
________구현
________모델 평가
________은닉 계층구조가 끼치는 영향
__장점과 한계
__요약

10장. 유전자 알고리즘
__진화
____기원
____NP 문제
____진화적 계산
__유전자 알고리즘과 기계 학습
__유전자 알고리즘의 구성 요소
____인코딩
________값 인코딩
________술어 인코딩
________해 인코딩
________인코딩 방식
____유전적 연산자
________선택
________교차
________변이
____적합도 점수
__구현
____소프트웨어 설계
____핵심 구성 요소
____선택
____개체군 크기 증가 제어
____GA 설정
____교차
________개체군
________염색체
________유전자
____변이
________개체군
________염색체
________유전자
____번식 사이클
__매매 전략을 위한 GA
____매매 전략 정의
________매매 연산자
________비용/부적합도 함수
________거래 신호
________매매 전략
________신호 인코딩
____테스트 케이스
________데이터 추출
________초기 개체군
________설정
________GA 인스턴스화
________GA 실행
________테스트
__유전자 알고리즘의 장점과 단점
__요약

11장. 강화 학습
__소개
____문제
____해법: Q-학습
________용어
________개념
________정책의 값
________벨만 최적화 공식
________모델이 없는 학습의 시간적 차이
________동작-값 반복 갱신
____구현
________소프트웨어 설계
________상태와 동작
________검색 공간0
________정책과 동작-값
________Q-학습 훈련
________해결사 꼬리 재귀
________예측
____Q-학습을 사용한 옵션 거래
________옵션의 속성
________옵션 모델
________함수 근사
________제약이 가해진 상태 천이
________한데 모으기
____평가
____강화 학습의 장점과 단점
__학습 분류 시스템
____LCS 소개
____LCS를 사용하는 이유는 무엇인가
____용어
____확장 학습 분류 시스템
____XCS 구성 요소들
________포트폴리오 관리에 적용하기
________XCS 코어 데이터
________XCS 규칙
________커버링
________구현 예제
____학습 분류 시스템의 장점과 한계
__요약

12장. 확장 가능한 프레임워크
__개요
__스칼라
____객체 생성 제어하기
____병렬 컬렉션
________병렬 컬렉션 처리하기
________벤치마크 프레임워크
________성능 평가
__액터로 규모 확장하기
____액터 모델
____파티셔닝
____액터를 넘어서: 반응형 프로그래밍
__아카
____마스터-작업자
________메시지 교환
________작업자 액터
________워크플로우 컨트롤러
________마스터 액터
________마스터에서 라우팅 사용하기
________분산 이산 푸리에 변환
________한계
____퓨처
________액터의 생명주기
________퓨처를 기다리며 블록하기
________퓨처 콜백 처리하기
________한데 모으기
__아파치 스파크
____스파크를 사용해야 하는 이유는 무엇인가
____설계 원칙
________인메모리 영속성
________지연 계산
________변환과 액션
________공유 변수
____스파크로 실험하기
________스파크 배치하기
________스파크 셀 사용하기
________MLlib
________RDD 생성
________스파크를 사용한 K-평균
____성능 평가
________튜닝 가능한 요소
________테스트
________성능 고려 사항
____장점과 단점
____0xdata 스파클링 워터
__요약

부록A. 기본 개념
__스칼라 프로그래밍
____라이브러리 목록
____코드 조각의 서식
____캡슐화
____클래스 생성자 템플릿
____동반 객체 vs. 케이스 클래스
____열거형 vs. 케이스 클래스
____오버로딩
____분류기를 위한 설계 템플릿
____데이터 추출
____데이터 소스
____문서 추출
____행렬 클래스
__수학
____선형대수
________QR 분해
________LU 인수분해
________LDL 분해
________콜레스키 인수분해
________특이 값 분해
________고유값 분해
________대수 및 수학 라이브러리
____1차 술어 논리
____자코비안 및 헤시안 행렬
____최적화 기법 정리
________기울기 하강 기법
________쿼시-뉴튼 알고리즘
________비선형 최소 제곱 최소화
________라그랑주 승수
____동적 프로그래밍 개요
__금융 개론
____기본적 분석
____기술적 분석
________용어
________매매 신호 및 전략
________가격 패턴
____옵션 거래
____금융 데이터 소스
__추천 온라인 강좌
__참고 문헌

부록B. 참고 문헌

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.