로그인회원가입장바구니고객센터마이페이지회사소개
kangcom
전체
Home >   >   > 

실전 예제로 살펴보는 집단지성 프로그래밍

   
지은이 사트남 알랙 / 전희원 역   |   출판사 Insight (인사이트)  |   발행일 2011년 01월 04일
 
클릭하시면 큰 도서이미지를 보실 수 있습니다.
판매가 32,000원28,800원 10%
마일리지 5% 1,600원
발행일 2011-01-04
ISBN 8991268897 | 9788991268890
기타정보 번역서 | 568쪽 | 일반
예상출고일 금일 가능 (근무일기준)
배송비 무료배송
   
종합지수 3p 149 위
   
이 책의 원서
  Collective Intelligence in Action
Manning Publications | Satnam Alag
 

[출판사서평]

소셜 네트워크 세상에 숨어 있는 집단지성의 힘

페이스북의 친구 추천이나 아마존의 책 추천은 어떤 식으로 이루어질까? 사용자에게 직접 정보를 입력하게 하지 않고도, 사용자의 성향이나 관심사 혹은 현재 시점에 필요한 물품 등을 알아낼 수는 없을까? 오늘 추천받은 글과 1개월 전에 추천받은 글의 인기도는 얼마나 차이날까?

정답은 집단지성에 있다. 사용자의 클릭이나 댓글, 태그, 블로깅, 구매 이력 데이터 등 사용자들이 웹 서비스를 사용하며 축적한 데이터에 집단지성을 적용하면, 사용자들이 관심을 가질만한 아이템을 보여주거나 특정 아이템을 구입할만한 사용자가 누구일지 예측할 수 있다.

『실전 예제로 살펴보는 집단지성 프로그래밍』은 이러한 집단지성의 힘을 여러분의 웹 애플리케이션에 적용하는 방법을 알려준다. 실전에 적용할 수 있는 예제 코드와 함께 유용한 라이브러리를 사용하는 방법도 알려주어, 집단지성에 관심이 있는 웹 개발자라면 누구나 도움을 얻을 수 있을 것이다.

“이 책은 자칫 재미없고 따분할 수 있는 집단지성 알고리즘을 아주 재미있는 웹 2.0 예제를 통해 보여줍니다. 또한 번역 과정에서 코드를 자세히 들여다보면서 이 책이 데이터 수집, 정제, 저장, 검색, 데이터 마이닝에 대해 적절한 시작점들을 제안해 준다는 사실을 알았습니다. 게다가 자바 아키텍트로 활동했던 저자답게 각 예제가 자바 언어의 특징을 잘 드러내고, 실제 여러분의 시스템에 적용하기에도 편하게 설계되어 있다는 것을 발견하기도 했습니다.
여러분이 웹 애플리케이션에 집단지성을 구현하기 시작했다면 이 책은 좋은 시작점이 되어 줄 것입니다. 또한 학교에서 이미 데이터 마이닝, 기계학습을 공부한 분들은 이런 개념들이 실전에서 어떻게 활용되는지 엿볼 수 있는 책이 되리라 생각합니다.”
- 옮긴이의 글 中

이 책에서 다루는 내용
- 집단지성의 기본 개념
- 집단지성에 필요한 사용자 교류 정보
- 태그 활용하기
- 블로그나 위키, 게시판에서 지능 정보 추출하기
- 블로그 검색용 프레임워크 구축
- 웹 크롤러 구현하기
- 데이터 마이닝의 개념과 구축
- 텍스트 분석 툴킷 만들기
- 클러스터링을 통한 패턴 추출
- 예측 시스템 만들기
- 검색 프레임워크(루씬) 활용하기
- 추천 엔진 만들기

이 책에 수록된 모든 예제 코드는 출판사 스프링노트인 http://insightbook.springnote.com/pages/6007777에서 다운받을 수 있습니다.
옮긴이의 글
추천의 글
지은이의 글
감사의 글
이 책에 대해
저자에 대해
표지 그림에 대해

1부 지능화를 위한 데이터 수집하기

1장 집단지성에 대한 이해
1.1 집단지성이란 무엇인가
1.2 웹 애플리케이션의 집단지성
1.2.1 집단지성 시작부터 끝까지: 예제 애플리케이션
1.2.2 집단지성의 이점들
1.2.3 집단지성은 웹 2.0의 핵심 요소다
1.2.4 콘텐츠 중심에서 사용자 중심의 애플리케이션으로 바꾸기 위해 집단지성 이용하기
1.3 지능 정보의 분류
1.3.1 명시적 지능 정보
1.3.2 암묵적 지능 정보
1.3.3 추출된 지능 정보
1.4 요약

2장 사용자 교류 정보를 통한 학습
2.1 지능화 시스템 아키텍처
2.1.1 동기식 서비스와 비동기식 서비스
2.1.2 이벤트 드리븐 시스템에서의 실시간 학습
2.1.3 넌이벤트 드리븐 시스템을 위한 폴링 서비스
2.1.4 이벤트 드리븐 아키텍처와 드리븐 아키텍처의 장단점
2.2 집단지성 적용을 위한 알고리즘 기초
2.2.1 사용자와 아이템
2.2.2 사용자 정보 표현하기
2.2.3 콘텐츠 기반의 분석과 협업 필터링
2.2.4 비 구조적 텍스트에서 지능형 정보 추출하기
2.2.5 유사도 계산
2.2.6 데이터셋의 유형
2.3 사용자 교류 정보의 형태
2.3.1 등급과 투표
2.3.2 이메일 보내기 또는 링크 포워딩
2.3.3 북마킹과 저장
2.3.4 아이템 구매
2.3.5 클릭 스트림
2.3.6 리뷰
2.4 사용자 교류 정보를 집단지성으로
2.4.1 예제를 통해 본 등급의 지능 정보화
2.4.2 북마킹과 저장, 상품 구매, 링크 포워딩, 클릭 스트림 그리고 리뷰들의 지능 정보화
2.5 요약

3장 태그로부터의 지능 정보 추출
3.1 태깅에 대한 소개
3.1.1 사용자와 아이템의 태그 관련 메타데이터
3.1.2 전문가가 생성한 태그
3.1.3 사용자가 생성한 태그
3.1.4 기계적으로 생성한 태그
3.1.5 태깅에 대한 팁
3.1.6 왜 태그를 이용하는가?
3.2 어떻게 태그를 이용할까?
3.2.1 동적 내비게이션 만들기
3.2.2 태그 클라우드를 좀더 효과적으로 이용하기
3.2.3 타깃 검색
3.2.4 폭소노미와 사전 구축
3.3 사용자 태깅을 통한 지능 정보 추출 예제
3.3.1 다른 아이템과 관련된 아이템
3.3.2 사용자가 관심을 가질만한 아이템
3.3.3 아이템과 관련 있는 사용자들
3.4 태깅에 적합한 확장성 있는 아키텍처
3.4.1 다른 접근 방법 살펴보기
3.4.2 추천 아키텍처
3.5 태그 클라우드 만들기
3.5.1 태그 클라우드에 적합한 영속적인 디자인
3.5.2 태그 클라우드를 만드는 알고리즘
3.5.3 태그 클라우드 구현
3.5.4 태그 클라우드 보여주기
3.6 유사한 태그 찾기
3.7 요약

4장 콘텐츠에서 지능 정보 추출하기
4.1 콘텐츠 종류와 이들의 통합
4.1.1 콘텐츠 분류
4.1.2 콘텐츠를 통합하기 위한 아키텍처
4.2 집단지성과 관련이 있는 콘텐츠 종류
4.2.1 블로그
4.2.2 위키
4.2.3 그룹과 게시판
4.3 단계적 지능 정보 추출
4.3.1 예제 셋업하기
4.3.2 간단한 분석
4.3.3 불용어 처리
4.3.4 스태밍
4.3.5 구 인식
4.4 단순한 콘텐츠 타입과 복합 콘텐츠 타입
4.5 요약

5장 블로그 검색
5.1 블로고스피어에 대한 소개
5.1.1 블로고스피어의 활용
5.1.2 RSS: 발행 포맷
5.1.3 블로그 트래킹 회사들
5.2 블로그 검색을 위한 프레임워크 구축
5.2.1 검색기
5.2.2 검색 파라미터
5.2.3 검색 결과
5.2.4 XML 결과 분석
5.2.5 예외 처리
5.3 기본 클래스 구현
5.3.1 검색 파라미터 구현
5.3.2 검색 결과 객체 구현
5.3.3 검색기 구현
5.3.4 XML 응답 파싱
5.3.5 프레임워크의 확장
5.4 테크노라티 통합하기
5.4.1 테크노라티 검색 API 개요
5.4.2 테크로라티 통합을 위한 클래스 구현
5.5 블로그라인스 통합하기
5.5.1 블로그라인스 검색 API 개요
5.5.2 블로그라인스 통합을 위한 클래스 구현
5.6 RSS를 사용하는 프로바이더 통합
5.6.1 쿼리 파라미터 일반화
5.6.2 블로그 검색기 일반화
5.6.3 RSS 2.0 XML 파서 만들기
5.7 요약

6장 지능형 웹 크롤링
6.1 웹 크롤링 개요
6.1.1 왜 웹을 수집할까
6.1.2 크롤링 프로세스
6.1.3 지능형 크롤링과 집중 크롤링
6.1.4 딥 크롤링
6.1.5 사용할만한 크롤러들
6.2 지능형 크롤러의 단계적 구현
6.2.1 핵심 알고리즘 구현
6.2.2 무례하지 않게 : robots.txt의 룰을 따르라
6.2.3 콘텐츠 가져오기
6.2.4 URL 추출
6.2.5 크롤러를 똑똑하게 만들자
6.2.6 크롤러 구동
6.2.7 크롤러 확장하기
6.3 너치를 사용한 대용량 크롤링
6.3.1 너치 설치
6.3.2 너치 크롤러 구동하기
6.3.3 너치로 검색하기
6.3.4 아파치 하둡, 맵/리듀스, 드라이어드
6.4 요약

2부 지능 정보 추출

7장 데이터 마이닝 : 프로세스, 툴킷, 표준
7.1 데이터 마이닝의 핵심 개념
7.1.1 속성
7.1.2 교사 학습과 비교사 학습
7.1.3 주요 학습 알고리즘
7.1.4 마이닝 프로세스
7.2 오픈소스 데이터 마이닝 프레임워크 사용하기 : 외카(WEKA)
7.2.1 외카 애플리케이션 사용하기 : 단계별 튜토리얼
7.2.2 외카 API의 이해
7.2.3 외카 API 활용 예제
7.3 표준 데이터 마이닝 API : 자바 데이터 마이닝(JDM)
7.3.1 JDM 아키텍처
7.3.2 JDM 핵심 객체
7.3.3 데이터셋의 표현
7.3.4 모델 학습
7.3.5 알고리즘 설정
7.3.6 JDM 테스크
7.3.7 JDM 연결
7.3.8 DME 연결 예제 코드
7.3.9 JDM 모델과 PMML
7.4 요약

8장 텍스트 분석 툴킷 구축하기
8.1 텍스트 분석기 만들기
8.1.1 루씬 활용
8.1.2 어근 추출 분석기 만들기
8.1.3 동의어와 구를 추출하는 필터 만들기
8.1.4 동의어와 구를 추출하는 분석기 만들기
8.1.5 분석기가 작동하게 만들기
8.2 텍스트 분석 인프라 구축하기
8.2.1 태그 인프라 만들기
8.2.2 텀벡터 인프라 만들기
8.2.3 텍스트 분석기 클래스 만들기
8.2.4 텍스트 분석 인프라 적용하기
8.3 프레임워크 적용 사례
8.4 요약

9장 클러스터링을 통한 패턴 추출
9.1 블로그 글 클러스터링
9.1.1 텍스트 클러스터링 인프라 정의
9.1.2 테크노라티에서 블로그 글 가져오기
9.1.3 텍스트 분석을 위한 k-means 클러스터링 알고리즘 구현
9.1.4 텍스트 분석을 위한 계층적 클러스터링 알고리즘 구현
9.1.5 기대치 최대화 알고리즘과 고차원 저밀도 데이터 클러스터링 예제
9.2 외카를 이용한 클러스터링
9.2.1 학습셋 만들기
9.2.2 클러스터 생성하기
9.2.3 클러스터링 평가
9.3 JDM API를 이용한 클러스터링
9.3.1 클러스터링 알고리즘과 관련된 JDM 핵심 클래스들
9.3.2 JDM API를 이용한 클러스터링 환경 설정
9.3.3 JDM API를 이용한 클러스터링 태스크 만들기
9.3.4 클러스터링 태스크 실행하기
9.3.5 JDM API를 이용한 클러스터링 모델 가져오기
9.4 요약

10장 예측 시스템 만들기
10.1 분류에 대한 기초
10.1.1 예제를 통해 결정 트리 배우기
10.1.2 나이브 베이지언 분류기
10.1.3 믿음 네트워크
10.2 외카 API를 활용한 블로그 글 분류
10.2.1 블로그 글을 분류하기 위한 데이터셋 빌드
10.2.2 분류기 클래스 구축
10.3 회귀 분석의 기초
10.3.1 선형 회귀 분석
10.3.2 다중 퍼셉트론
10.3.3 원형 기준 함수
10.4 외카를 사용한 회귀 분석
10.5 JDM을 사용한 분류와 회귀 분석
10.5.1 핵심 JDM 교사 학습 관련 클래스
10.5.2 JDM API를 이용한 교사 학습 설정
10.5.3 JDM API를 이용한 분류 태스크 생성
10.5.4 JDM API를 이용한 분류 태스크 실행
10.5.5 JDM API를 이용한 분류 모델 가져오기
10.5.6 JDM API를 이용한 모델 테스트
10.6 요약

3부 애플리케이션에 지능 불어넣기

11장 지능형 검색
11.1 검색의 기본
11.1.1 검색 아키텍처
11.1.2 핵심 루씬 클래스들
11.1.3 기본적인 인덱싱과 검색 예제
11.2 루씬 색인
11.2.1 색인 형식 소개
11.2.2 색인 수정
11.2.3 증분 색인
11.2.4 텀 빈도 벡터에 접근하기
11.2.5 인덱싱 성능 최적화
11.3 루씬으로 검색하기
11.3.1 루씬 스코어링의 이해
11.3.2 루씬 쿼리
11.3.3 검색 결과 정렬하기
11.3.4 다중 필드 검색
11.3.5 필터링
11.3.6 다중 색인 검색
11.3.7 HitCollector의 활용하기
11.3.8 검색 성능 최적화
11.4 유용한 도구와 프레임워크
11.4.1 루크(Luke)
11.4.2 솔라(Solr)
11.4.3 컴퍼스(Compass)
11.4.4 하이버네이트 검색
11.5 지능형 검색 연구
11.5.1 분류기와 예측기로 검색 보강
11.5.2 검색 결과 클러스터링
11.5.3 사용자에 최적화된 검색 결과
11.5.4 커뮤니티 기반 검색
11.5.5 언어 기반 검색
11.5.6 데이터 검색
11.6 요약

12장 추천 엔진 만들기
12.1 추천 엔진의 기초
12.1.1 추천 엔진 소개
12.1.2 아이템 기반 분석과 사용자 기반 분석
12.1.3 콘텐츠 기반과 협업 기반의 유사도 계산
12.1.4 콘텐츠 기반과 협업 기반 비교
12.2 콘텐츠 기반 분석
12.2.1 검색 엔진(루씬)을 사용해 유사 아이템 찾기
12.2.2 콘텐츠 기반의 추천 엔진 구축
12.2.3 문서 클러스터와 관련된 아이템
12.2.4 사용자에 개인화된 콘텐츠
12.3 협업 필터링
12.3.1 k-인접 이웃(k-nearest neighbor)
12.3.2 협업 필터링 구현을 위한 패키지
12.3.3 잠재 은닉 색인으로 차원 줄이기
12.3.4 차원 축소 구현
12.3.5 확률 모델 기반 접근
12.4 실제 사례
12.4.1 아마존의 아이템 대 아이템 추천
12.4.2 구글 뉴스의 개인화
12.4.3 넷플릭스 상금을 타기 위한 넷플릭스와 벨코어의 해결책
12.5 요약

부록 A 네이버와 다음의 오픈 API를 이용한 블로그 검색
부록 B 참고자료
사트남 알랙 (Satnam Alag)
알랙 박사는 생명과학 커뮤니티를 위한 버티컬 검색 엔진과 웹 2.0 사용자 중심 애플리케이션을 개발하는 넥스트바이오(www.nextbio.com)의 엔지니어링 부사장이다. 15년 동안 기계학습(machine learning) 분야에서 경험을 쌓았으며, 10년이 넘도록 상업적 소프트웨어를 개발/관리했고, Johnson & Johnson’s BabyCenter에서 컨설턴트로, Rearden Commerce에서는 최고 소프트웨어 아키텍트로 재직하기도 했다. 자바 플랫폼의 SCEA(Sun Certified Enterprise Architect) 자격을 가지고 있다.


[역자소개]
전희원

인하대학교 학사, 고려대학교 석사를 졸업하였다.
대학원에서 검색과 기계학습을 수학했으며, 『월간 마이크로소프트웨어』 『eWeek』 『IBM developerworks』 등에 검색, 데이터 마이닝, 기계학습, 분산처리에 대한 기고를 해왔다. 현재 야후!에서 기계학습이나 데이터 마이닝이 가미된 검색 관련 지능형 소프트웨어를 개발하고 있다. 블로그(http://freesearch.pe.kr)에서 고감자라는 아이디로 활동 중이다.

등록된 서평이 없습니다.
토비의 스프링 3.1 세트...
이일민
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
안드로이드 모바일 앱 모의해킹...
조정원, 김명근, 조승현, 류진영, 김광수
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
 
전체평균(0)
회원평점   회원서평수 0
Satnam Alag 의 최근 저서
 
Collective Intelligence in Action
47,200원
(25%↓+1%)
 
Insight (인사이트) 출판사의 신간
커니의 코틀린: 차세대 안드로이드 개발자를 위한
김태호 저
25,200원
(10%↓+5%)
 
손에잡히는 프로세싱2판

14,400원
(10%↓+5%)
 
모던 자바스크립트
니콜라스 자카스 저
25,200원
(10%↓+5%)
 
파이썬을 여행하는 히치하이커를 위한 안내서
케네스 라이츠·타냐 슐로서 저
24,300원
(10%↓+5%)
 
파이썬으로 시작하는 컴퓨터 과학 입문
존 M. 젤 저
27,000원
(10%↓+5%)
 
이메일주소수집거부