간편결제, 신용카드 청구할인
네이버페이 1%
(네이버페이 결제 시 적립)
NH(올원페이)카드 12% (15,840원)
(3만원 이상 결제/최대 1만원 할인)
북피니언 롯데카드 30% (12,600원)
(최대할인 3만원 / 3만원 이상 결제)
하나SK 북&카드 30% (12,600원)
(최대할인 3만원 / 3만원 이상 결제)
EBS 롯데카드 20% (14,400원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 NEW 우리V카드 10% (16,200원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 현대카드 7% (16,740원)
(최대할인 3만원 / 3만원 이상 결제)
Close

테스트 주도 머신 러닝 : TDD 기법을 활용한 머신 러닝 알고리즘 구현

원제 : Test-Driven Machine Learning

2013년 9월 9일 이후 누적수치입니다.

판매지수 13
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
정가

20,000원

  • 18,000 (10%할인)

    1,000P (5%적립)

할인혜택
적립혜택자동적립
배송정보
주문수량
감소 증가
  • 이벤트/기획전

  • 연관도서(321)

  • 사은품(2)

출판사 서평

요약

머신 러닝은 데이터에 숨겨진 공통된 특징, 즉 패턴을 찾아내고 지속적으로 개선할 수 있도록 컴퓨팅 머신을 학습시키는 과정이라고 할 수 있다. 이 책에서는 이러한 머신 러닝 알고리즘에 테스트 주도형 개발 기법을 어떻게 적용할 수 있는지 단계별로 상세하게 설명한다. 우선 테스트 주도형 개발(TDD) 기법의 기본 개념을 이해하고, 이를 다양한 머신 러닝 기술에 적용한다. 예를 들면, 분석 모델 성능의 정량적 분석, 신경망 기법, 회귀분석을 이용한 예측 분석, 로지스틱 회귀분석을 이용한 회귀분석 기법 구현 등을 다룬다. 후반부에서는 나이브 베이즈 분류분석에 대한 다양한 접근 방법에 대해서도 학습한다. 끝으로, 이 책에서 다룬 다중 회귀분석 예제와 분류분석기를 통합해 마케팅 분야에 활용 가능한 알고리즘을 어떻게 개발하는지도 알아본다.

이 책에서 다루는 내용

- 테스트 주도형 개발(TDD) 방법 소개와 머신 러닝 개념에 TDD 적용 방법
- 계획대로 동작하는 형태의 신경망 알고리즘 구현과 테스트
- 분석 모델의 특이한 실행 동작 관련 테스트 케이스
- 불확실성 속에서 최적의 결정을 이끌어내는 multi-armed bandit 알고리즘
- 테스트 내에 구현되어 다양한 테스트 케이스 제작이 가능한 데이터 생성 방법
- 외부 라이브러리 사용 시에도 가능한 분석 모델의 단계적 개발 방법
- 신속한 반복 시도와 협업을 위한 분석 모델 성능의 정량적 분석
- 일반적인 머신 러닝 알고리즘에 대한 좀 더 쉬운 접근법
- 테스트 의도를 명확히 하기 위한 프로그램 실행동작 주도형 개발(BDD)의 원칙과 적용

이 책의 대상 독자

이 책은 자신이 구현한 알고리즘을 어떻게 개선할 것인지를 독자적으로, 또 자동화된 방식으로 테스트하고 싶어하는 머신 러닝 전문가에게 적합하다. 테스트 주도형 개발을 시작하려는 데이터 사이언티스트에게도 유용할 것이다. 다만 테스트 주도형 개발 기법의 최신 내용을 배우고자 하는 독자에게는 추천하지 않는다. 이 책은 대부분 테스트 주도형 개발에서 매우 간단하게 배울 수 있는 내용들로 구성되었기 때문이다. 폭넓은 독자층에 맞게 상대적으로 쉬운 접근법을 다룬다.

이 책의 구성

1장, '테스트 주도형 머신 러닝의 소개'에서는 테스트 주도형 개발(TDD)이 무엇인지, 실제로 어떻게 생겼는지, 어떻게 수행되는지에 대해 설명한다.

2장, '퍼셉트론(Perceptron)의 개념 기반 테스트'에서는 간단한 버전에서 시작해 퍼셉트론을 개발한다. 퍼셉트론이 비결정적(non-deterministic) 형태로 동작하는 특성을 지녔지만, 테스트가 가능하도록 알고리즘 실행동작(behavior)에 대한 정의도 작성한다.

3장, 'Multi-armed bandit 알고리즘을 이용한 문제 해결'에서는 multi-armed bandit 문제와 여러 가지 알고리즘의 테스트, 반복 수행에 따른 성능의 변화 등을 알아본다.

4장, '회귀분석을 이용한 예측'에서는 statsmodels를 사용해 회귀분석을 구현하고, 주요 성능 지표에 대해 알아본다. 분석 모델 튜닝에 대해서도 학습한다.

5장, '로지스틱 회귀분석을 이용한 '흑과 백'의 판단 결정'에서는 앞 장에 이어 회귀분석에 대해 살펴보고, 여러 가지 타입으로 성능 측정을 정량화하는 방법에 대해 알아본다. 이 장에서도 회귀분석 모델을 개발하기 위해 statmodels를 사용한다.

6장, '나이브 베이즈'에서는 테스트 주도형 개발 기법을 이용해 간단한 개념으로부터 가우시안 나이브 베이즈(Gaussian Naive Bayes) 알고리즘을 어떻게 개발하는지 알아본다.

7장, '알고리즘 선택을 통한 최적화'에서는 6장에 이어 추가 사항을 계속 알아본다. 그리고 새로운 알고리즘인 랜덤 포레스트(Random Forests)를 적용해 이 결과를 향상시킬 수 있는지 살펴본다.

8장, '테스트 주도형 기반 scikit-learn 학습'에서는 스스로 학습하는 방법에 대해 알아본다. 여러분은 이미 이와 관련한 많은 경험이 있을 거라고 본다. 이 장에서는 scikit-learn 문서에 대해 테스트 프레임워크를 사용하는 법을 학습하고 이를 기반으로 구현해본다.

9장, '전체 통합 작업'에서는 여러 가지 다양한 알고리즘이 필요한 비즈니스 문제를 다룬다. 간단한 개념에서 출발해 우리가 필요한 모든 것을 개발하고, 외부 라이브러리와 우리가 구현한 코드를 통합한다. 이 모든 작업을 테스트 주도형으로 진행한다.

지은이의 말

머신 러닝(Machine Learning)의 주요 목표 중 하나는 분석 모델의 성능이 일관성을 가지면서도 성능이 꾸준히 개선되도록 하는 것이다. 여러분은 아주 간단한 아이디어를 생각해낸 후 이를 실제 알고리즘으로 구현까지 해낸 경험이 있을 것이다. 필요한 경우 라이브러리를 쓰기도 하면서 말이다. 새로운 알고리즘을 사용하기 위해서는 관련 옵션도 써야 하고, 성능도 향상시켜야 한다. 이와 동시에, 성능이 저하되지 않도록 하는 방법도 알아야 한다.
확률기반 알고리즘(stochastic algorithm)을 테스트하는 것이 어떻게 보면 불가능한 것처럼 보이므로, 모든 변경사항을 전문가에게 물어보는 것도 한 방법일 수 있다. 하지만 이렇게 하면 말 그대로 너무 느리다는 문제가 있다. 알고리즘을 업데이트했을 때 이전보다 성능이 더 좋아졌는지 자동으로 확인할 수는 없을까? 기존 알고리즘을 다른 라이브러리에 있는 임의의 알고리즘으로 바꾸거나, 여러분이 구현한 것에 대해 더 깊이 있게 연구할 수 있도록 코드를 설계하려면 어떻게 하면 될까? 이것이 이 책을 쓰게 된 이유다.
이 책에서 우리는 테스트 주도형 개발(TDD, Test-Driven Development)이 무엇인지, 머신 러닝에서 이것이 어떤 가치를 지니는지 알아볼 것이다. 테스트 개발을 위해 파이썬 2.7의 nosetests 라이브러리를 사용한다. 머신 러닝 알고리즘을 위해 statsmodels와 scikit-learn 라이브러리를 사용한다. statsmodels는 회귀분석(regression) 구현에 매우 유용하다. scikit-learn 라이브러리는 여러 가지 분류분석(classification) 알고리즘에 사용될 것이다.

옮긴이의 말

아마도 요즘 가장 인기 있는 분야를 꼽는다면 인공 지능, 머신 러닝일 것이다. 인공 지능 분야의 발전은 컴퓨터의 발전과 매우 밀접하다. 예를 들면, 제한된 컴퓨팅 성능을 극복하기 위해 알파-베타 프루닝(Alpha-Beta Pruning)과 같은 알고리즘이 연구되기도 했다. 또, 인공 신경망 기법의 경우 해결이 불가능한 상태였으나 '퍼셉트론(Perceptron)'이나 '오류역전파(backpropagation)'와 같은 기법이 나오면서 꾸준히 발전해왔다. 이러한 머신 러닝 및 인공 지능은 최근 클라우드 컴퓨팅 기술의 눈부신 발전에 힘입어 거의 무한대에 가까운 컴퓨팅 자원을 사용할 수 있게 되면서, 과거에 어려움을 겪었던 대용량 데이터 분석, 높은 계산 복잡도를 요구하는 문제 해결 등에서 큰 진전을 보이고 있다.
최근 빅데이터 분석에 대한 관심이 높아지면서, 여러 분야에서 앞다투어 데이터 분석 기법, 솔루션들을 도입하거나 자체 개발하려는 시도가 많이 나타나고 있다. 한 가지 기억할 점은 머신 러닝, 데이터 마이닝 분야의 알고리즘 대부분은 학습(learning)을 통해 '패턴(pattern)'이라는 분석 모델을 만들어낸다는 점이다. 이는 알고리즘 자체만 봤을 때는 기존의 소프트웨어 개발 방식과 잘 맞지 않을 수 있다. 하지만 대용량 데이터를 처리하고 분석하기 위한 대규모 소프트웨어를 개발할 경우, 정합성의 검증은 필수적으로 요구된다.
이 책은 머신 러닝 기법을 개발하는 데 소프트웨어 개발 기법 중 하나인 테스트 주도형 개발(TDD) 기법을 효과적으로 적용하는 방법에 대해 설명하고 있다. 불확실한 확률 계산 작업을 TDD 기법을 통해 단계별로 테스트를 성공시키면서 개발할 수 있는지에 대한 내용은 기존에는 볼 수 없었던 참신한 시도라고 생각한다. 이 책에서 소개하는 내용을 바탕으로 TDD를 이용해 꾸준히 알고리즘을 개발하면 매우 복잡한 성격의 머신 러닝 알고리즘도 체계적으로 구현해낼 수 있을 것이다.

목차

1장. 테스트 주도형 머신 러닝의 소개
- 테스트 주도형 개발
- TDD 사이클
- - 빨간색
- - 초록색
- - 리팩토링
- 실행동작 주도형 개발
- 첫 번째 테스트
- - 테스트 상세 분석
- - - - 주어진 조건
- - - - 언제
- - - - 그러고 나면
- 머신 러닝에 TDD 적용
- 확률적 속성 문제 해결
- 개선된 분석 모델의 검증 방법
- - 분류분석 개요
- - 회귀분석
- - 클러스터링
- 분류분석 모델의 정량적 분석
- 요약

2장. 퍼셉트론의 개념 기반 테스트
- 시작
- 요약

3장. Multi-armed bandit 알고리즘을 이용한 문제 해결
- Bandit의 소개
- 시뮬레이션 기반 테스팅
- 간단한 수준에서 시작
- 실제 환경에서 시뮬레이션
- Randomized probability matching 알고리즘
- 부스트래핑 bandit
- 현재 부스트래핑 기법의 문제점
- Multi-armed bandit 알고리즘 활용
- 요약

4장. 회귀분석을 이용한 예측
- 고급 회귀분석 기법 복습
- - 회귀분석 관련 개념 사전 정리
- - 정량화 기반 분석 모델 성능 측정
- 데이터 생성 작업 소개
- 분석 모델 관련 기본 사항 구현
- 분석 모델에 대한 교차 검증
- 데이터 생성
- 요약

5장. 로지스틱 회귀분석을 이용한 '흑과 백'의 판단 결정
- 로지스틱 회귀분석용 데이터 생성
- 분석 모델의 정확도 측정
- 조금 더 복잡한 예제 작성
- 분석 모델에 대한 테스트 주도형 작업
- 요약

6장. 나이브 베이즈
- 실습을 통한 가우시안 분류분석의 이해
- 분석 모델 개발
- 요약

7장. 알고리즘 선택을 통한 최적화
- 분류분석기의 성능 개선
- 우리의 분류분석기 적용
- 랜덤 포레스트 알고리즘 성능 개선
- 요약

8장. 테스트 주도형 기반 scikit-learn 학습
- 테스트 주도형 설계
- 전체 개발 계획 수립
- - - - 분류분석기 선택 기능 개발(분류분석기 성능 평가용 테스트 실행이 수반된)
- 알고리즘의 신중한 선택을 위한 선택 기능 개선
- 테스트가 가능한 도큐멘테이션 개발
- - 의사결정 트리 알고리즘
- 요약

9장. 전체 통합 작업
- 상위 개념 수준에서 시작
- 실제 환경에 적용
- 이 책을 통해 얻은 것
- 요약

저자소개

저스틴 보조니어(Justin Bozonier) [저] 신작알림 SMS신청 작가DB보기
생년월일 -
출생지 -
출간도서 0종
판매수 0권

데이터 사이언티스트로, 시카고에 살고 있다. 현재, 그럽허브(GrubHub)에서 시니어 데이터 사이언티스트로 일하고 있다. 소비자 분석 플랫폼 개발을 리드했으며, 베이지안 통계분석 기법(Bayesian statistics)을 활용하는 실시간 스플릿 테스트(split test) 분석 플랫폼 개발도 이끌었다. 또한 데이터 마이닝과 소프트웨어 제품 고도화 프로토타입을 위한 여러 가지 머신 러닝 분석 모델도 개발했다. 그는 [Parallel Programming with Microsoft(r) .NET]과 [Flow-Based Programming, Second Edition] 책에서 소프트웨어 개발 전문 지식을 습득했다. 또한, 파이데이터(Py

펼쳐보기
생년월일 -
출생지 -
출간도서 0종
판매수 0권

고려대학교 컴퓨터학과(학사/석사)와 서던캘리포니아 대학교(석사)를 졸업하고, 플로리다 대학교에서 데이터 마이닝을 주제로 컴퓨터공학 박사 학위를 취득했다. 삼성SDS연구소에서 클라우드 컴퓨팅, 빅데이터 인프라 플랫폼, 데이터 과학/분석에 관한 다양한 최신 기술을 연구하며 개발 과제를 수행했다. 클라우드 기반 빅데이터 처리와 분석에 관한 풍부한 컨설팅 경험도 갖고 있다. 현재는 아마존 웹 서비스(Amazon Web Services)에서 AI/ML Specialist Solutions Architect로 활동 중이다.

이 상품의 시리즈

acorn+PACKT 시리즈(총 351권 / 현재구매 가능도서 322권)

펼쳐보기

이 책과 내용이 비슷한 책 ? 내용 유사도란? 이 도서가 가진 내용을 분석하여 기준 도서와 얼마나 많이 유사한 콘텐츠를 많이 가지고 있는가에 대한 비율입니다.

    리뷰

    0.0 (총 0건)

    기대평

    작성시 유의사항

    평점
    0/200자
    등록하기

    기대평

    10.0

    교환/환불

    교환/환불 방법

    ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청함, 1:1 문의 게시판 또는 고객센터(1577-2555) 이용 가능

    교환/환불 가능 기간

    고객변심은 출고완료 다음날부터 14일 까지만 교환/환불이 가능함

    교환/환불 비용

    고객변심 또는 구매착오의 경우에만 2,500원 택배비를 고객님이 부담함

    교환/환불 불가사유

    반품접수 없이 반송하거나, 우편으로 보낼 경우 상품 확인이 어려워 환불이 불가할 수 있음
    배송된 상품의 분실, 상품포장이 훼손된 경우, 비닐랩핑된 상품의 비닐 개봉시 교환/반품이 불가능함

    소비자 피해보상

    소비자 피해보상의 분쟁처리 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 따라 비해 보상 받을 수 있음
    교환/반품/보증조건 및 품질보증 기준은 소비자기본법에 따른 소비자 분쟁 해결 기준에 따라 피해를 보상 받을 수 있음

    기타

    도매상 및 제작사 사정에 따라 품절/절판 등의 사유로 주문이 취소될 수 있음(이 경우 인터파크도서에서 고객님께 별도로 연락하여 고지함)

    배송안내

    • 인터파크 도서 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다

    • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

    • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능하여, 인터파크 외 타업체 배송상품인 경우 발송되지 않을 수 있습니다.

    • 배송비

    도서(중고도서 포함) 구매

    2,000원 (1만원이상 구매 시 무료배송)

    음반/DVD/잡지/만화 구매

    2,000원 (2만원이상 구매 시 무료배송)

    도서와 음반/DVD/잡지/만화/
    중고직배송상품을 함께 구매

    2,000원 (1만원이상 구매 시 무료배송)

    업체직접배송상품 구매

    업체별 상이한 배송비 적용