서브메뉴

본문

파이썬을 이용한 머신러닝, 딥러닝 실전 개발 입문 (웹 크롤링과 스크레이핑부터 머신러닝ㆍ딥러닝까지 체계적으로 배우기)
파이썬을 이용한 머신러닝, 딥러닝 실전 개발 입문 (웹 크롤링과 스크레이핑부터 머신러닝ㆍ딥러닝까지 체계적으로 배우기)
저자 : 쿠지라 히코우즈쿠에
출판사 : 위키북스
출판년 : 2019
ISBN : 9791158391799

책소개


BeautifulSoup, scikit-learn, TensorFlow를 사용하여 실무에 머신러닝/딥러닝을 적용해 보자!

본서에서는 머신러닝의 바탕이 되는 데이터를 수집하고, 수집된 데이터를 기반으로 머신러닝을 수행하는 방법을 설명한다. 인터넷에서 데이터를 어떻게 효율적으로 수집하는지 알아보고, 머신러닝을 원활하게 할 수 있게끔 데이터를 가공하는 방법을 살펴본다. 나아가 가공된 데이터를 이용해 챗봇 제작, 규동 메뉴 이미지 판정, 얼굴 인식 등 머신러닝에 활용하는 과정까지 실질적인 파이썬 예제 코드로 소개한다. 또한 이번 개정판에서는 Selenium 라이브러리 사용 방법의 변경, Scrapy 프레임워크 관련 내용의 추가, 일부 예제의 수정 등의 내용이 보강되었다.


목차


00장: 머신러닝을 위한 데이터 처리
0-1. 크롤링, 스크레이핑, 머신러닝
___인터넷의 빅데이터
___스크레이핑, 크롤링, 데이터 가공
___머신러닝에 사용할 수 있는 데이터의 구조

01장: 크롤링과 스크레이핑
1-1. 데이터 다운로드하기
___웹상의 정보를 추출하는 방법
___urllib.request를 이용한 다운로드
___웹에서 데이터 추출하기
___BeautifulSoup로 스크레이핑하기
1-2. BeautifulSoup로 스크레이핑하기
___네이버 금융에서 환율 정보 추출하기
___웹 브라우저로 HTML 구조 확인하기
1-3. CSS 선택자
___위키 문헌에 공개돼 있는 윤동주 작가의 작품 목록 가져오기
___CSS 선택자 자세히 알아보기
___CSS 선택자로 추출 연습하기
___정규 표현식과 함께 조합하기
1-4. 링크에 있는 것을 한꺼번에 내려받기
___한꺼번에 다운받는 데 필요한 처리 내용
___상대 경로를 전개하는 방법
___재귀적으로 HTML 페이지를 처리하는 방법

02장: 고급 스크레이핑
2-1. 로그인이 필요한 사이트에서 다운받기
___HTTP 통신
___requests 사용해보기
2-2. 웹 브라우저를 이용한 스크레이핑
___웹 브라우저 원격 조작에 사용하는 Selenium
___웹 사이트를 이미지로 캡처해보기
___네이버에 로그인해서 구매한 물건 목록 가져오기
___Selenium으로 스크레이핑하는 방법
___자바스크립트 실행해보기
2-3. 웹 API로 데이터 추출하기
___웹 API
___웹 API를 제공하는 이유
___웹 API 사용해보기 - OpenWeatherMap의 날씨 정보
___국내에서 사용할 수 있는 웹 API
2-4. cron을 이용한 정기적인 크롤링
___정기적인 크롤링
___매일 환율 정보 저장하기
___cron으로 매일 한 번 실행하기
___crontab 설정 방법
2-5. Scrapy를 이용한 스크레이핑
___Scrapy란?
___Scrapy 설치
___Scrapy 시작하기
___Scrapy를 셸로 실행해서 테스트해보기
2-6. Scrapy를 이용한 위키북스의 도서 표지 다운로드
___위키북스의 전체 도서 목록 다운로드
___이미지 파일을 다운로드하려면?
2-7. Scrapy와 Selenium을 이용한 동적 웹 사이트 다운로드

03장: 데이터 소스의 서식과 가공
3-1. 웹의 다양한 데이터 형식
___텍스트 데이터와 바이너리 데이터
___XML 분석
___JSON 분석
___YAML 분석
___CSV/TSV 분석
___엑셀 파일 분석
3-2. 데이터베이스
___데이터베이스
___데이터 저장에는 어떤 데이터베이스를 사용해야 할까?
___SQLite - 가볍게 파일 하나로 사용할 수 있는 데이터베이스
___MySQL 사용하기
___TinyDB 사용하기

04장: 머신러닝
4-1. 머신러닝이란?
___머신러닝 개요
___머신러닝의 종류
___머신러닝의 흐름
___머신러닝의 응용 분야
___초과 학습(초과 적합)
4-2. 머신러닝 첫걸음
___머신러닝 프레임워크 scikit-learn
___XOR 연산 학습해보기
___붓꽃의 품종 분류하기
4-3. 이미지 내부의 문자 인식
___손글씨 숫자 인식하기
___이미지 데이터 학습시키기
4-4. 외국어 문장 판별하기
___외국어 판정
___판정 방법
___샘플 데이터 수집
___언어 판별 프로그램
___웹 인터페이스 추가하기
4-5. 서포트 벡터 머신(SVM)
___SVM이란?
___SVM을 실제로 사용해보기
___SVM의 종류
4-6. 랜덤 포레스트
___랜덤 포레스트란?
___랜덤 포레스트 사용하기
4-7. 데이터를 검증하는 방법
___크로스 밸리데이션
___그리드 서치

05장: 딥러닝
5-1. 딥러닝 개요
___딥러닝
5-2. TensorFlow 설치하기
___TensorFlow
___설치 방법
___설치가 제대로 됐는지 확인하기
___TensorFlow로 간단한 계산해보기
5-3. Jupyter Notebook
___Jupyter Notebook 설치하고 실행하기
___새 노트 만들기
___데이터 시각화
___TensorFlow와 함께 사용하기
5-4. TensorFlow 기본
___TensorFlow 기본
___머신러닝 해보기
5-5. TensorBoard로 시각화하기
___TensorBoard의 사용법
5-6. TensorBoard로 딥러닝하기
___딥러닝의 구조
___딥러닝 해보기 - MNIST 손글씨 데이터
5-7. Keras로 다양한 딥러닝 해보기
___Keras
___Keras로 MNIST 테스트해보기
___Keras로 비만도 판정해보기
5-8. Pandas/NumPy 다루기
___Pandas/NumPy
___데이터 조작
___Pandas/Numpy 정리

06장: 텍스트 분석과 챗봇 만들기
6-1. 한국어 분석(형태소 분석)
___형태소 분석
___한국어 형태소 분석 라이브러리
___출현 빈도 분석
6-2. Word2Vec으로 문장을 벡터로 변환하기
___Word2Vec
___Gensim 설치
___Gensim의 Word2Vec으로 “토지”를 읽어보기
___위키피디아 한국어 버전을 사전으로 사용해보기
___위키피디아 데이터로 놀아보기
6-3. 베이즈 정리로 텍스트 분류하기
___텍스트 분류
___베이즈 정리
___나이브 베이즈 분류
___베이지안 필터 사용해보기
6-4. MLP로 텍스트 분류하기
___MLP로 텍스트 분류하기
6-5. 문장의 유사도를 N-gram으로 분석하기
___문장의 유사도 분석
___레벤슈타인 거리
___파이썬으로 레벤슈타인 거리를 계산하는 프로그램
___N-gram으로 유사도 구하기
6-6. 마르코프 체인과 LSTM으로 문장 생성하기
___마르코프 체인과 LSTM/RNN
___마르코프 체인이란?
___마르코프 체인 구현하기
___LSTM/RNN
6-7. 챗봇 만들기
___챗봇(회화 봇)
___챗봇의 구조

07장: 이미지와 딥러닝
7-1. 유사 이미지 검출하기
___간단한 형태 인식 - Average Hash
7-2. CNN으로 Caltech 101의 이미지 분류하기
___CNN으로 색상 있는 이미지 분류해보기
7-3. 규동 메뉴 이미지 판정하기
___규동을 판정할 수 있는 PC가 좋은 PC
___스크레이핑부터 시작하기
7-4. OpenCV로 얼굴 인식하기
___OpenCV
___얼굴을 인식하는 프로그램 만들어보기
___얼굴에 모자이크 걸기
7-5. 이미지 OCR - 연속된 문자 인식하기
___OpenCV로 텍스트 영역 확인하기
___문자 인식 데이터 만들기
___다양한 숫자 폰트 학습시키기

부록: 개발 환경 구축
부록-1. VirtualBox/Vagrant 사용법
___VirtualBox 설치하기
___Ubuntu 설치하기
___Docker란?
___Docker 설치
부록-2. Docker로 개발 환경 구축하기
___macOS에서 Docker for Mac 설치하기
___Docker에 Ubuntu 설치하기
부록-3. 파이썬 + Anaconda 환경 준비
___기타 설치

QuickMenu