상세정보
미리보기
핸즈온 머신러닝
- 저자
- 오렐리앙 제롱 저/박해선 역
- 출판사
- 한빛미디어
- 출판일
- 2023-10-16
- 등록일
- 2024-08-13
- 파일포맷
- PDF
- 파일크기
- 39MB
- 공급사
- YES24
- 지원기기
-
PC
PHONE
TABLET
웹뷰어
프로그램 수동설치
뷰어프로그램 설치 안내
책소개
실무 밀착형 예제부터 스테이블 디퓨전 등 최신 머신러닝 트렌드까지주요 인공 지능 콘퍼런스에서 전문가들이 소개한 최고의 실전 지침서 ** 독자의 편의를 고려한 분권(1권, 2권) ** 최신 라이브러리 버전으로 전체 코드 업데이트 ** 〈연습문제 + 해답〉, 〈머신러닝 프로젝트 체크리스트〉 수록수학에 『수학의 정석』이 있다면 인공 지능에는 『핸즈온 머신러닝』이 있다!1판과 2판의 피드백을 적극 반영해 한층 더 업그레이드된 『핸즈온 머신러닝』이 3판으로 돌아왔습니다. ‘실제로 머신러닝을 구현하면서 학습한다’는 목표를 더욱 효과적으로 달성할 수 있도록 복잡한 주제를 구조화하고 난이도에 따라 순차적으로 학습할 수 있게 개선했습니다. 또한 누구나 쉽게 이해할 수 있도록 기존 설명을 더 친절하고 명확하게 다듬고 보완했습니다. 마지막으로, 빠르게 발전하는 분야인 만큼 전체 코드 버전과 기술 트렌드를 최신 정보로 업데이트했습니다(하단의 ‘출판사 리뷰’에서 3판의 업데이트 내용을 확인할 수 있습니다). 머신러닝을 전혀 모르는 입문자도 온라인으로 제공되는 주피터 노트북을 활용해 손쉽게 실습할 수 있습니다. 여기에 박해선 역자의 친절한 추가 설명까지 더해져 답답함 없이 수월하게 학습할 수 있습니다.
저자소개
머신러닝 컨설턴트. 2013년에서 2016년까지 구글에서 유튜브 동영상 분류팀을 이끌었다. 2002년에서 2012년까지 프랑스의 모바일 ISP 선두 주자인 Wifirst를 설립하고 CTO로 일했다. 2001년에는 Polyconseil을 설립하고 CTO로 일했다. 이 회사는 현재 전기차 공유 서비스인 Autolib’을 운영한다. 그 전에는 재무(JP 모건과 소시에테 제네랄), 방위(캐나다 DOD), 의료(수혈) 등 다양한 분야에서 엔지니어로 일했다. C++, WiFi, 인터넷 구조에 대한 몇 권의 기술 서적을 썼으며 한 프랑스 공과대학교에서 컴퓨터 과학을 가르쳤다.
목차
[1부 머신러닝]1장 한눈에 보는 머신러닝1.1 머신러닝이란?1.2 왜 머신러닝을 사용하나요?1.3 애플리케이션 사례1.4 머신러닝 시스템의 종류_1.4.1 훈련 지도 방식__지도 학습__비지도 학습__준비도 학습__자기 지도 학습__강화 학습_1.4.2 배치 학습과 온라인 학습__배치 학습__온라인 학습_1.4.3 사례 기반 학습과 모델 기반 학습__사례 기반 학습__모델 기반 학습1.5 머신러닝의 주요 도전 과제_1.5.1 충분하지 않은 양의 훈련 데이터_1.5.2 대표성 없는 훈련 데이터_1.5.3 낮은 품질의 데이터_1.5.4 관련없는 특성_1.5.5 훈련 데이터 과대적합_1.5.6 훈련 데이터 과소적합_1.5.7 핵심 요약1.6 테스트와 검증_1.6.1 하이퍼파라미터 튜닝과 모델 선택_1.6.2 데이터 불일치연습문제2장 머신러닝 프로젝트 처음부터 끝까지2.1 실제 데이터로 작업하기2.2 큰 그림 보기_2.2.1 문제 정의_2.2.2 성능 측정 지표 선택_2.2.3 가정 검사2.3 데이터 가져오기_2.3.1 구글 코랩을 사용하여 예제 코드 실행하기_2.3.2 코드와 데이터 저장하기_2.3.3 대화식 환경의 편리함과 위험_2.3.4 책의 코드와 노트북의 코드_2.3.5 데이터 다운로드_2.3.6 데이터 구조 훑어보기_2.3.7 테스트 세트 만들기2.4 데이터 이해를 위한 탐색과 시각화_2.4.1 지리적 데이터 시각화하기_2.4.2 상관관계 조사하기_2.4.3 특성 조합으로 실험하기2.5 머신러닝 알고리즘을 위한 데이터 준비_2.5.1 데이터 정제_2.5.2 텍스트와 범주형 특성 다루기_2.5.3 특성 스케일과 변환_2.5.4 사용자 정의 변환기_2.5.5 변환 파이프라인2.6 모델 선택과 훈련_2.6.1 훈련 세트에서 훈련하고 평가하기_2.6.2 교차 검증으로 평가하기2.7 모델 미세 튜닝_2.7.1 그리드 서치_2.7.2 랜덤 서치_2.7.3 앙상블 방법_2.7.4 최상의 모델과 오차 분석_2.7.5 테스트 세트로 시스템 평가하기2.8 론칭, 모니터링, 시스템 유지 보수2.9 직접 해보세요!연습문제3장 분류3.1 MNIST3.2 이진 분류기 훈련3.3 성능 측정_3.3.1 교차 검증을 사용한 정확도 측정_3.3.2 오차 행렬_3.3.3 정밀도와 재현율_3.3.4 정밀도/재현율 트레이드오프_3.3.5 ROC 곡선3.4 다중 분류3.5 오류 분석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.4 학습 곡선4.5 규제가 있는 선형 모델_4.5.1 릿지 회귀_4.5.2 라쏘 회귀_4.5.3 엘라스틱넷_4.5.4 조기 종료4.6 로지스틱 회귀_4.6.1 확률 추정_4.6.2 훈련과 비용 함수_4.6.3 결정 경계_4.6.4 소프트맥스 회귀연습문제5장 서포트 벡터 머신5.1 선형 SVM 분류_5.1.1 소프트 마진 분류5.2 비선형 SVM 분류_5.2.1 다항식 커널_5.2.2 유사도 특성_5.2.3 가우스 RBF 커널_5.2.4 계산 복잡도5.3 SVM 회귀5.4 SVM 이론5.5 쌍대 문제_5.5.1 커널 SVM연습문제6장 결정 트리6.1 결정 트리 학습과 시각화6.2 예측6.3 클래스 확률 추정6.4 CART 훈련 알고리즘6.5 계산 복잡도6.6 지니 불순도 또는 엔트로피?6.7 규제 매개변수6.8 회귀6.9 축 방향에 대한 민감성6.10 결정 트리의 분산 문제연습문제7장 앙상블 학습과 랜덤 포레스트7.1 투표 기반 분류기7.2 배깅과 페이스팅_7.2.1 사이킷런의 배깅과 페이스팅_7.2.2 OOB 평가7.3 랜덤 패치와 랜덤 서브스페이스7.4 랜덤 포레스트_7.4.1 엑스트라 트리_7.4.2 특성 중요도7.5 부스팅7.5.1 AdaBoost_7.5.2 그레이디언트 부스팅_7.5.3 히스토그램 기반 그레이디언트 부스팅_7.6 스태킹연습문제8장 차원 축소8.1 차원의 저주8.2 차원 축소를 위한 접근법_8.2.1 투영_8.2.2 매니폴드 학습8.3 주성분 분석_8.3.1 분산 보존_8.3.2 주성분_8.3.3 d차원으로 투영하기_8.3.4 사이킷런 사용하기_8.3.5 설명된 분산의 비율_8.3.6 적절한 차원 수 선택_8.3.7 압축을 위한 PCA_8.3.8 랜덤 PCA_8.3.9 점진적 PCA8.4 랜덤 투영8.5 지역 선형 임베딩8.6 다른 차원 축소 기법연습문제9장 비지도 학습9.1 군집_9.1.1 k-평균__k-평균 알고리즘__센트로이드 초기화 방법__k-평균 속도 개선과 미니배치 k-평균__최적의 클러스터 개수 찾기_9.1.2 k-평균의 한계_9.1.3 군집을 사용한 이미지 분할_9.1.4 군집을 사용한 준지도 학습_9.1.5 DBSCAN_9.1.6 다른 군집 알고리즘9.2 가우스 혼합_9.2.1 가우스 혼합을 사용한 이상치 탐지_9.2.2 클러스터 개수 선택_9.2.3 베이즈 가우스 혼합 모델_9.2.4 이상치 탐지와 특이치 탐지를 위한 알고리즘연습문제[2부 신경망과 딥러닝]10장 케라스를 사용한 인공 신경망 소개10.1 생물학적 뉴런에서 인공 뉴런까지_10.1.1 생물학적 뉴런_10.1.2 뉴런을 사용한 논리 연산_10.1.3 퍼셉트론_10.1.4 다층 퍼셉트론과 역전파_10.1.5 회귀를 위한 다층 퍼셉트론_10.1.6 분류를 위한 다층 퍼셉트론10.2 케라스로 다층 퍼셉트론 구현하기_10.2.1 시퀀셜 API로 이미지 분류기 만들기__케라스로 데이터셋 적재하기__시퀀셜 API로 모델 만들기__모델 컴파일__모델 훈련과 평가__모델로 예측 만들기_10.2.2 시퀀셜 API로 회귀용 다층 퍼셉트론 만들기_10.2.3 함수형 API로 복잡한 모델 만들기_10.2.4 서브클래싱 API로 동적 모델 만들기_10.2.5 모델 저장과 복원하기_10.2.6 콜백 사용하기_10.2.7 텐서보드로 시각화하기10.3 신경망 하이퍼파라미터 튜닝하기_10.3.1 은닉 층 개수_10.3.2 은닉 층의 뉴런 개수_10.3.3 학습률, 배치 크기 그리고 다른 하이퍼파라미터연습문제11장 심층 신경망 훈련11.1 그레이디언트 소실과 폭주 문제_11.1.1 글로럿과 He 초기화_11.1.2 고급 활성화 함수__LeakyReLU__ELU와 SELU__GELU, Swish, Mish_11.1.3 배치 정규화__케라스로 배치 정규화 구현하기_11.1.4 그레이디언트 클리핑11.2 사전 훈련된 층 재사용하기_11.2.1 케라스를 사용한 전이 학습_11.2.2 비지도 사전 훈련_11.2.3 보조 작업에서 사전 훈련11.3 고속 옵티마이저_11.3.1 모멘텀 최적화_11.3.2 네스테로프 가속 경사_11.3.3 AdaGrad_11.3.4 RMSProp_11.3.5 Adam_11.3.6 AdaMax_11.3.7 Nadam_11.3.8 AdamW_11.3.9 학습률 스케줄링11.4 규제를 사용해 과대적합 피하기_11.4.1 l1과 l2 규제_11.4.2 드롭아웃_11.4.3 몬테 카를로 드롭아웃_11.4.4 맥스-노름 규제11.5 요약 및 실용적인 가이드라인연습문제12장 텐서플로를 사용한 사용자 정의 모델과 훈련12.1 텐서플로 훑어보기12.2 넘파이처럼 텐서플로 사용하기_12.2.1 텐서와 연산_12.2.2 텐서와 넘파이_12.2.3 타입 변환_12.2.4 변수_12.2.5 다른 데이터 구조12.3 사용자 정의 모델과 훈련 알고리즘_12.3.1 사용자 정의 손실 함수_12.3.2 사용자 정의 요소를 가진 모델을 저장하고 로드하기_12.3.3 활성화 함수, 초기화, 규제, 제한을 커스터마이징하기_12.3.4 사용자 정의 지표_12.3.5 사용자 정의 층_12.3.6 사용자 정의 모델_12.3.7 모델 구성 요소에 기반한 손실과 지표_12.3.8 자동 미분으로 그레이디언트 계산하기_12.3.9 사용자 정의 훈련 반복12.4 텐서플로 함수와 그래프_12.4.1 오토그래프와 트레이싱_12.4.2 텐서플로 함수 사용법연습문제13장 텐서플로를 사용한 데이터 적재와 전처리13.1 데이터 API_13.1.1 연쇄 변환_13.1.2 데이터 셔플링_13.1.3 여러 파일에서 한 줄씩 번갈아 읽기_13.1.4 데이터 전처리_13.1.5 데이터 적재와 전처리 합치기_13.1.6 프리페치_13.1.7 케라스와 데이터셋 사용하기13.2 TFRecord 포맷_13.2.1 압축된 TFRecord 파일_13.2.2 프로토콜 버퍼 개요_13.2.3 텐서플로 프로토콜 버퍼_13.2.4 Example 프로토콜 버퍼 읽고 파싱하기 _13.2.5 SequenceExample 프로토콜 버퍼로 리스트의 리스트 다루기13.3 케라스의 전처리 층_13.3.1 Normalization 층_13.3.2 Discretization 층_13.3.3 CategoryEncoding 층_13.3.4 StringLookup 층_13.3.5 Hashing 층_13.3.6 임베딩을 사용해 범주형 특성 인코딩하기_13.3.7 텍스트 전처리_13.3.8 사전 훈련된 언어 모델 구성 요소 사용하기_13.3.9 이미지 전처리 층13.5 텐서플로 데이터셋 프로젝트연습문제14장 합성곱 신경망을 사용한 컴퓨터 비전14.1 시각 피질 구조14.2 합성곱 층_14.2.1 필터_14.2.2 여러 가지 특성 맵 쌓기_14.2.3 케라스로 합성곱 층 구현하기_14.2.4 메모리 요구 사항14.3 풀링 층14.4 케라스로 풀링 층 구현하기14.5 CNN 구조_14.5.1 LeNet-5_14.5.2 AlexNet_14.5.3 GoogLeNet_14.5.4 VGGNet_14.5.5 ResNet_14.5.6 Xception_14.5.7 SENet_14.5.8 주목할 만한 다른 구조_14.5.9 올바른 CNN 구조 선택14.6 케라스로 ResNet-34 CNN 구현하기14.7 케라스의 사전 훈련 모델 사용하기14.8 사전 훈련된 모델을 사용한 전이 학습14.9 분류와 위치 추정14.10 객체 탐지_14.10.1 완전 합성곱 신경망_14.10.2 YOLO14.11 객체 추적14.12 시맨틱 분할연습문제15장 RNN과 CNN을 사용한 시퀀스 처리15.1 순환 뉴런과 순환 층_15.1.1 메모리 셀_15.1.2 입력과 출력 시퀀스15.2 RNN 훈련하기15.3 시계열 예측하기_15.3.1 ARMA 모델_15.3.2 머신러닝 모델을 위한 데이터 준비하기_15.3.3 선형 모델로 예측하기_15.3.4 간단한 RNN으로 예측하기_15.3.5 심층 RNN으로 예측하기_15.3.6 다변량 시계열 예측하기_15.3.7 여러 타임 스텝 앞 예측하기_15.3.8 시퀀스-투-시퀀스 모델로 예측하기15.4 긴 시퀀스 다루기_15.4.1 불안정한 그레이디언트 문제와 싸우기_15.4.2 단기 기억 문제 해결하기__LSTM 셀__GRU 셀__1D 합성곱 층으로 시퀀스 처리하기__WaveNet연습문제16장 RNN과 어텐션을 사용한 자연어 처리16.1 Char-RNN으로 셰익스피어 문체 생성하기_16.1.1 훈련 데이터셋 만들기_16.1.2 Char-RNN 모델 만들고 훈련하기_16.1.3 가짜 셰익스피어 텍스트 생성하기_16.1.4 상태가 있는 RNN16.2 감성 분석_16.2.1 마스킹_16.2.2 사전 훈련된 임베딩과 언어 모델 재사용하기16.3 신경망 기계 번역을 위한 인코더-디코더 네트워크_16.3.1 양방향 RNN_16.3.2 빔 서치16.4 어텐션 메커니즘_16.4.1 트랜스포머 구조: 어텐션만 있으면 된다__위치 인코딩__멀티 헤드 어텐션16.5 언어 모델 분야의 최근 혁신16.6 비전 트랜스포머16.7 허깅 페이스의 트랜스포머스 라이브러리연습문제17장 오토인코더, GAN 그리고 확산 모델17.1 효율적인 데이터 표현17.2 과소완전 선형 오토인코더로 PCA 수행하기17.3 적층 오토인코더_17.3.1 케라스로 적층 오토인코더 구현하기_17.3.2 재구성 시각화_17.3.3 패션 MNIST 데이터셋 시각화_17.3.4 적층 오토인코더를 사용한 비지도 사전 훈련_17.3.5 가중치 묶기_17.3.6 오토인코더 한 개씩 훈련하기17.4 합성곱 오토인코더17.5 잡음 제거 오토인코더17.6 희소 오토인코더17.7 변이형 오토인코더_17.7.1 패션 MNIST 이미지 생성하기17.8 생성적 적대 신경망_17.8.1 GAN 훈련의 어려움_17.8.2 심층 합성곱 GAN_17.8.3 ProGAN__미니배치 표준 편차 층__동일한 학습 속도__픽셀별 정규화 층_17.8.4 StyleGAN__매핑 네트워크__합성 네트워크17.9 확산 모델연습문제18장 강화 학습18.1 보상을 최적화하기 위한 학습18.2 정책 탐색18.3 OpenAI Gym18.4 신경망 정책18.5 행동 평가: 신용 할당 문제18.6 정책 그레이디언트18.7 마르코프 결정 과정18.8 시간차 학습18.9 Q-러닝_18.9.1 탐험 정책_18.9.2 근사 Q-러닝과 심층 Q-러닝18.10 심층 Q-러닝 구현18.11 심층 Q-러닝의 변형_18.11.1 고정 Q-가치 타깃_18.11.2 더블 DQN_18.11.3 우선 순위 기반 경험 재생_18.11.4 듀얼링 DQN18.12 다른 강화 학습 알고리즘연습문제19장 대규모 텐서플로 모델 훈련과 배포19.1 텐서플로 모델 서빙_19.1.1 텐서플로 서빙 사용하기__SavedModel로 내보내기__텐서플로 서빙 설치하고 시작하기__REST API로 TF 서빙에 쿼리하기__gRPC API로 TF 서빙에 쿼리하기__새로운 버전의 모델 배포하기_19.1.2 버텍스 AI에서 예측 서비스 만들기_19.1.3 버텍스 AI에서 배치 예측 작업 실행하기19.2 모바일 또는 임베디드 디바이스에 모델 배포하기19.3 웹 페이지에서 모델 실행하기19.4 계산 속도를 높이기 위해 GPU 사용하기_19.4.1 GPU 구매하기_19.4.2 GPU RAM 관리하기_19.4.3 디바이스에 연산과 변수 할당하기_19.4.4 다중 장치에서 병렬 실행하기19.5 다중 장치에서 모델 훈련하기_19.5.1 모델 병렬화_19.5.2 데이터 병렬화__미러드 전략을 사용한 데이터 병렬화__중앙 집중적인 파라미터를 사용한 데이터 병렬화__대역폭 포화_19.5.3 분산 전략 API를 사용한 대규모 훈련_19.5.4 텐서플로 클러스터에서 모델 훈련하기_19.5.5 버텍스 AI에서 대규모 훈련 작업 실행하기_19.5.6 버텍스 AI의 하이퍼파라미터 튜닝연습문제마치며[3부 부록]부록 A 연습문제 정답부록 B 머신러닝 프로젝트 체크리스트B.1 문제를 정의하고 큰 그림을 그립니다B.2 데이터를 수집합니다B.3 데이터를 탐색합니다B.4 데이터를 준비합니다B.5 가능성 있는 몇 개의 모델을 고릅니다B.6 모델을 미세 튜닝합니다B.7 솔루션을 출시합니다B.8 시스템을 론칭합니다!부록 C 자동 미분C.1 수동 미분C.2 유한 차분 근사C.3 전진 모드 자동 미분C.4 후진 모드 자동 미분부록 D 특수한 데이터 구조D.1 문자열D.2 래그드 텐서D.3 희소 텐서D.4 텐서 배열D.5 집합D.6 큐부록 E 텐서플로 그래프E.1 TF 함수와 콘크리트 함수E.2 함수 정의와 함수 그래프 탐험하기E.3 트레이싱 자세히 보기E.4 오토그래프로 제어 흐름 표현하기E.5 TF 함수에서 변수와 다른 리소스 다루기E.6 케라스로 TF 함수 사용하기(또는 사용하기 않기)