자바 데이터 분석 [자바로 배우는 데이터 분석과 빅데이터 처리, 데이터 시각화 방법]
- 원서명Java Data Analysis: Data mining, big data analysis, NoSQL, and data visualization (ISBN 9781787285651)
- 지은이존 R. 허바드(John R. Hubbard)
- 옮긴이김명훈
- ISBN : 9791161753355
- 35,000원
- 2019년 08월 28일 펴냄
- 페이퍼백 | 480쪽 | 188*235mm
- 시리즈 : acorn+PACKT, 데이터 과학
책 소개
소스 코드 파일은 여기에서 내려 받으실 수 있습니다.
요약
자바를 사용해 다양한 데이터 분석 기법을 구현하는 방법을 알려주는 책이다. 자바를 사용한 기본적인 데이터 처리 방법과 데이터 시각화 방법, 다양한 통계치를 도출하는 프로그램 구현 방법이 예제로 쉽게 구현돼 있다. 또한 관계형 데이터베이스와 NoSQL 데이터베이스를 활용한 데이터 분석 방법 등 데이터베이스 기반의 분석 프로그래밍 방식도 다루고 있다. 일반적으로 데이터 분석 문제에서 많이 접근하는 회귀 분석, 분류 분석, 군집 분석 등을 아파치 커먼즈(Apache Commons)나 웨카(Weka) 같은 오픈소스를 활용해 구현하는 방법도 소개한다. 그 외에 추천 알고리즘, 빅데이터 분석 등의 이슈도 함께 다룬다.
이 책에서 다루는 내용
■ 텍스트를 포함한 다양한 크기의 데이터 셋을 분석하는 자바 프로그램 개발
■ 회귀, 분류, 클러스터링 같은 중요한 머신 러닝 알고리즘 구현
■ 데이터 분석과 시각화를 위한 오픈소스 자바 라이브러리와 API를 적용한 인터페이스 개발
■ 관계형 데이터베이스와 NoSQL 데이터베이스를 활용한 시계열 데이터 분석
■ 자바 도구를 사용한 다양한 형식의 데이터 시각화
■ 멀티미디어 데이터 분석 알고리즘과 자바를 사용한 알고리즘 구현
이 책의 대상 독자
이 책은 데이터 분석에 대한 이해를 높이고 해당 분야에서 알고리즘을 구현하는 자바 소프트웨어 개발 능력을 갖춘 학생과 실무자를 대상으로 한다.
이 책의 구성
1장, ‘데이터 분석 개론’에서는 사회 문제를 해결하는 데 있어 데이터 분석의 역사적 발전 과정과 중요성을 설명한다.
2장, ‘데이터 처리’에서는 데이터가 저장되는 다양한 형태를 소개하고, 데이터 셋의 관리 방법과 정렬, 병합, 해싱 같은 기본 처리 기술을 알아본다.
3장, ‘데이터 시각화’에서는 그래프와 표, 시계열 분석, 이동 평균, 정규 및 지수분포 관련 자바 애플리케이션을 다룬다.
4장, ‘통계’에서는 무작위성, 다변량 분포, 이항 분포, 조건부 확률, 독립, 통계 분할표, 베이즈 정리, 공분산과 상관관계, 중심 극한 정리, 신뢰구간 및 가설 검정 등 기본적인 확률 및 통계 이론을 배운다.
5장, ‘관계형 데이터베이스’에서는 외래키와 SQL, 쿼리, JDBC, 배치 작업, 데이터베이스의 뷰, 서브 쿼리, 인덱싱 등 관계형 데이터베이스 접근과 개발에 대해 다룬다. 자바와 JDBC를 사용해 관계형 데이터베이스에 적재된 데이터를 분석하는 방법을 배워보자.
6장, ‘회귀 분석’에서는 선형 회귀, 다항식 회귀, 다중 선형 회귀 분석을 포함한 예측 분석의 중요한 부분을 언급한다. 아파치 커먼즈 매쓰 라이브러리를 사용해 자바에서 회귀 분석을 구현하는 방법을 배워보자.
7장, ‘분류 분석’에서는 결정 트리, 엔트로피, ID3 알고리즘, ARFF 파일, 베이지안 분류기, 서포트 벡터 머신 알고리즘, 로지스틱 회귀, K-최근접 이웃 알고리즘, 퍼지 분류 알고리즘에 대해 다룬다. 웨카 라이브러리를 사용해 자바에서 이러한 알고리즘을 구현하는 방법을 알아보자.
8장, ‘클러스터 분석’에서는 계층적 클러스터링, K-평균 클러스터링, K-중간점 클러스터링, 유사성 전파 클러스터링을 알아본다. 역시나 웨카 라이브러리를 사용해 자바로 구현해보자.
9장, 추천 시스템에서는 유틸리티 행렬, 유사도 측정, 코사인 유사도, 아마존의 아이템 기반 추천 시스템, 대용량 희소 행렬 및 넷플릭스의 경연 역사를 다룬다.
10장, ‘NoSQL 데이터베이스’에서는 몽고DB 데이터베이스 시스템을 중심으로 지형 공간 데이터베이스를 포함한 자바 개발 방법을 알아본다.
11장, ‘빅데이터 분석’에서는 구글의 페이지랭크 알고리즘과 맵리듀스 프레임워크를 알아볼 것이다. 특히 단어 수 세기(WordCount) 예제와 행렬 곱 예제를 통해 자바로 위 알고리즘과 프레임워크를 구현하는 방법을 알아본다.
부록, ‘자바 도구’에서는 이 책에서 사용하는 모든 소프트웨어, 즉 이클립스, M ySQL, 몽고DB의 설치 방법을 정리했다.
목차
목차
- 1장. 데이터 분석 개론
- 데이터 분석의 기원
- 과학적 방법
- 보험학
- 증기로 계산
- 멋진 예시
- 허먼 홀러리스
- 에니악
- 비지칼크
- 데이터, 정보, 지식
- 왜 자바인가?
- 자바 통합 개발 환경
- 요약
- 2장. 데이터 처리
- 데이터 유형
- 변수
- 데이터 요소와 데이터 셋
- 데이터 요소와 데이터 셋
- 널 값
- 관계형 데이터베이스 테이블
- 키 필드
- 키-값 쌍
- 해시 테이블
- 파일 형식
- 마이크로소프트 엑셀 데이터
- XML과 JSON 데이터
- 테스트 데이터 셋 생성
- 메타데이터
- 데이터 클리닝
- 데이터 스케일링
- 데이터 필터링
- 정렬
- 병합
- 해싱
- 요약
- 3장. 데이터 시각화
- 테이블과 그래프
- 산점도
- 선그래프
- 막대그래프
- 히스토그램
- 시계열 데이터
- 자바 구현체
- 이동 평균
- 데이터 순위
- 도수 분포
- 정규 분포
- 사고 실험
- 지수 분포
- 자바 예제
- 요약
- 테이블과 그래프
- 4장. 통계
- 기술 통계
- 임의 추출
- 확률 변수
- 확률 분포
- 누적 분포
- 이항 분포
- 다변량 분포
- 조건부 확률
- 확률적 이벤트의 독립
- 분할표
- 베이즈 정리
- 상관계수와 공분산
- 표준 정규 분포
- 중심 극한 정리
- 신뢰 구간
- 가설 검정
- 요약
- 5장. 관계형 데이터베이스
- 관계 데이터 모델
- 관계형 데이터베이스
- 외래키
- 관계형 데이터베이스 디자인
- 데이터베이스 생성
- SQL 명령문
- 데이터베이스에 데이터 입력
- 데이터베이스 쿼리
- SQL 데이터 유형
- JDBC
- JDBC의 PreparedStatement 사용하기
- 배치 처리
- 데이터베이스 뷰
- 서브쿼리
- 테이블 인덱스
- 요약
- 6장. 회귀 분석
- 선형 회귀
- 엑셀에서의 선형 회귀
- 회귀 상관계수 계산
- 분산 분석
- 선형 회귀 자바 구현
- 앤스콤 쿼텟
- 다항식 회귀
- 다중선형회귀분석
- 아파치 커먼즈 구현
- 곡선 적합
- 요약
- 선형 회귀
- 7장. 분류 분석
- 의사 결정 트리
- 의사결정 트리와 엔트로피와의 관계
- ID3 알고리즘
- 웨카 플랫폼
- ARFF 파일 유형
- 웨카를 사용한 자바 구현
- 베이지안 분류기
- 웨카를 사용한 자바 구현
- 서포트 벡터 머신 알고리즘
- 로지스틱 회귀
- K-최근접 이웃 알고리즘
- 퍼지 분류 알고리즘
- 요약
- 의사 결정 트리
- 8장. 클러스터 분석
- 거리 측정
- 차원의 저주
- 계층적 클러스터링
- 웨카 구현
- K-평균 클러스터링
- K-중간점 클러스터링
- 유사성 전파 클러스터링
- 요약
- 9장. 추천 시스템
- 유틸리티 행렬
- 유사도 측정
- 코사인 유사도
- 간단한 추천 시스템
- 아마존 아이템 기반 협업 필터링
- 사용자 등급 구현
- 거대 희소 행렬
- 임의 접근 파일 사용
- 넷플릭스 경진대회
- 요약
- 10장. NoSQL 데이터베이스
- 맵 데이터 구조
- SQL과 NoSQL
- 몽고 데이터베이스 시스템
- 도서관 데이터베이스
- 몽고DB를 사용한 자바 개발
- 지리 정보 데이터베이스를 위한 몽고DB 확장
- 몽고DB에서의 인덱스
- 왜 NoSQL인가? 왜 몽고DB인가?
- 타 NoSQL 데이터베이스 시스템
- 요약
- 11장. 빅데이터 분석
- 확장, 데이터 스트라이핑, 샤딩
- 구글 페이지랭크 알고리즘
- 구글 맵 리듀스 프레임워크
- 맵 리듀스 애플리케이션 예제
- 워드카운트 예제
- 확장성
- 맵 리듀스를 사용한 행렬 곱
- 몽고DB에서의 맵 리듀스
- 아파치 하둡
- 하둡 맵 리듀스
- 요약
- 부록. 자바 도구
- 명령창
- 자바
- 이클립스
- MySQL
- MySQL 워크벤치
- 이클립스에서 MySQL 데이터베이스 접근
- 몽고DB
도서 오류 신고
정오표
정오표
[p.97 : 두 번째 문단 첫 행]
그림 3-20의 히스토그램은
->
그림 3-21의 히스토그램은