메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

한빛랩스 - 지식에 가능성을 머지하다 / 강의 콘텐츠 무료로 수강하시고 피드백을 남겨주세요. ▶︎

핸즈온 머신러닝(3판)

사이킷런, 케라스, 텐서플로 2로 완벽 이해하는 머신러닝, 딥러닝 이론 & 실무

한빛미디어

번역서

판매중

  • 저자 : 오렐리앙 제롱(Aurélien Géron)
  • 번역 : 박해선
  • 출간 : 2023-09-29
  • 페이지 : 1044 쪽
  • ISBN : 9791169211475
  • eISBN : 9791169217309
  • 물류코드 :11147
  • 구판정보 :이 도서는 <핸즈온 머신러닝(2판)>의 개정판입니다. 구판 정보 보기
  • 초급 초중급 중급 중고급 고급
4.9점 (37명)
좋아요 : 33

---- 정오표 한눈에 보기 https://tensorflow.blog/handson-ml3/ ----


실무 밀착형 예제부터 스테이블 디퓨전 등 최신 머신러닝 트렌드까지 

주요 인공 지능 콘퍼런스에서 전문가들이 소개한 최고의 실전 지침서

** 독자의 편의를 고려한 분권(1권, 2권)

** 최신 라이브러리 버전으로 전체 코드 업데이트

** <연습문제 + 해답>, <머신러닝 프로젝트 체크리스트> 수록

 

 

수학에 『수학의 정석』이 있다면 인공 지능에는 『핸즈온 머신러닝』이 있다!

 

1판과 2판의 피드백을 적극 반영해 한층 더 업그레이드된 『핸즈온 머신러닝』이 3판으로 돌아왔습니다. ‘실제로 머신러닝을 구현하면서 학습한다’는 목표를 더욱 효과적으로 달성할 수 있도록 복잡한 주제를 구조화하고 난이도에 따라 순차적으로 학습할 수 있게 개선했습니다. 또한 누구나 쉽게 이해할 수 있도록 기존 설명을 더 친절하고 명확하게 다듬고 보완했습니다. 마지막으로, 빠르게 발전하는 분야인 만큼 전체 코드 버전과 기술 트렌드를 최신 정보로 업데이트했습니다(하단의 ‘출판사 리뷰’에서 3판의 업데이트 내용을 확인할 수 있습니다).

 

 

머신러닝을 전혀 모르는 입문자도 온라인으로 제공되는 주피터 노트북을 활용해 손쉽게 실습할 수 있습니다. 여기에 박해선 역자의 친절한 추가 설명까지 더해져 답답함 없이 수월하게 학습할 수 있습니다.

 

상세이미지_700_핸즈온 머신러닝(3판)_수정.jpg

 

오렐리앙 제롱(Aurélien Géron) 저자

오렐리앙 제롱(Aurélien Géron)

머신러닝 컨설턴트입니다. 2013년에서 2016년까지 구글에서 유튜브 동영상 분류 팀을 이끌었습니다. 2002년에서 2012년까지 프랑스의 모바일 ISP 선두 주자인 위퍼스트 Wifirst를 설립하고 CTO로 일했습니다. 2001년에는 폴리콘셀 Polyconseil을 설립하고 CTO로 일했습니다. 이 회사는 지금 전기차 공유 서비스인 오토립 Autolib′을 운영하고 있습니다.

그전에는 재무(J. P. 모건과 소시에테 제네랄 Société Générale ), 방위(캐나다 국방부), 의료(수혈) 등 다양한 분야에서 엔지니어로 일했습니다. C++, WiFi, 인터넷 구조에 관한 기술 서적 몇 권을 집필했으며 프랑스의 한 공과대학에서 컴퓨터과학을 가르쳤습니다.

 

 

박해선 역자

박해선

기계공학을 전공했지만 졸업 후엔 줄곧 코드를 읽고 쓰는 일을 했습니다. 블로그(tensorflow.blog)에 글을 쓰고 머신러닝과 딥러닝에 관한 책을 집필, 번역하면서 소프트웨어와 과학의 경계를 흥미롭게 탐험하고 있습니다.

『챗GPT로 대화하는 기술』(한빛미디어, 2023), 『혼자 공부하는 데이터 분석 with 파이썬』(한빛미디어, 2023), 『혼자 공부하는 머신러닝+딥러닝』(한빛미디어, 2020), 『Do it! 딥러닝 입문』(이지스퍼블리싱, 2019)을 집필했습니다.

『실무로 통하는 ML 문제 해결 with 파이썬』(한빛미디어, 2024), 『머신러닝 교과서: 파이토치 편』(길벗, 2023), 『스티븐 울프럼의 챗GPT 강의』(한빛미디어, 2023), 『핸즈온 머신러닝(3판)』(한빛미디어, 2023), 『만들면서 배우는 생성 AI』(한빛미디어, 2023), 『코딩 뇌를 깨우는 파이썬』(한빛미디어, 2023), 『트랜스포머를 활용한 자연어 처리』(한빛미디어, 2022), 『케라스 창시자에게 배우는 딥러닝 2판』(길벗, 2022), 『개발자를 위한 머신러닝&딥러닝』(한빛미디어, 2022), 『XGBoost와 사이킷런을 활용한 그레이디언트 부스팅』(한빛미디어, 2022), 『구글 브레인 팀에게 배우는 딥러닝 with TensorFlow.js』(길벗, 2022), 『파이썬 라이브러리를 활용한 머신러닝(번역개정2판)』(한빛미디어, 2022), 『머신러닝 파워드 애플리케이션』(한빛미디어, 2021), 『머신 러닝 교과서 with 파이썬, 사이킷런, 텐서플로(개정3판)』(길벗,2021)를 포함하여 여러 권의 책을 우리말로 옮겼습니다.

 

[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 MNIST

3.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 점진적 PCA

8.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 YOLO

14.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 상태가 있는 RNN

16.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 Gym

18.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 듀얼링 DQN

18.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 함수 사용하기(또는 사용하기 않기)

초보자와 전문가 모두를 만족시킨 전 세계 1위 베스트셀러 

 

이 책은 이론과 실습을 아우르며 머신러닝과 딥러닝 모두를 관통하는 큰 그림을 그릴 수 있도록 돕습니다. 특히 도식을 활용한 설명과 최신 버전의 실무 밀착형 코드 예제를 통해 손쉽게 모델을 훈련하고 신경망을 구축하는 방법을 익힐 수 있습니다. 또한 장마다 제공되는 연습문제를 풀면서 배운 내용을 복습하고 자신의 프로젝트에 적용해볼 수 있습니다. 파이썬 프로그래밍 경험이 있다면 바로 시작해보세요. 누구나 머신러닝 전문가가 될 수 있습니다!

 

** 3판에서 업데이트된 내용 **

● 코드 전체를 최신 라이브러리 버전으로 업데이트

● 상세한 모델 선택 가이드라인

● 사이킷런과 케라스의 새로운 기능

○ 사이킷런: 특성 이름 추적, 히스토그램 기반 그레이디언트 부스팅, 레이블 전파 등

○ 케라스: 전처리 층, 데이터 증식 층 등

2판에 없는 라이브러리 추가

하이퍼파라미터 튜닝을 위한 케라스 튜너 라이브러리

자연어 처리를 위한 허깅 페이스의 트랜스포머스 라이브러리

확산 모델(스테이블 디퓨전)

컴퓨터 비전, 자연어 처리 분야의 최신 트렌드와 구현

 

** 누구를 위한 책인가요? **

기초 지식은 있지만 실무 경험이 적은 초보자

실무 능력을 향상시키고 싶은 중급자

머신러닝을 프로젝트에 활용하고 싶은 개발자와 엔지니어

머신러닝 연구나 데이터 분석 작업을 하는 데이터 과학자와 연구자

 

** 이 책의 장점 **

1. 복잡한 이론을 나열하지 않고 실용적인 예제를 통해 자세히 설명합니다.

2. 직접 실습해보면서 실무 문제 해결 능력을 기르고 자신만의 포트폴리오를 완성할 수 있습니다.

3. 여러 가지 머신러닝 및 딥러닝 모델과 도구, 라이브러리에 관한 지식을 확장할 수 있습니다.

4. 스테이블 디퓨전을 비롯한 최신 컴퓨터 비전, 자연어 처리, 강화 학습 트렌드를 반영했습니다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

이 책은 압도적인 두꺼움을 자랑하는 책이다. 1000페이지가 넘는 책으로써 굉장히 무거울 것은 예상을 하고 있었다. 하지만 센스있게 한빛미디어에서는 2권으로 분권을 할 수 있도록 해주었다.

역자로써는 박해선이 워낙 유명하신 분이라 따로 언급할 필요는 없는 것 같습니다. 모든 페이지가 풀 컬러여서 가독성이 굉장히 띄어납니다.

다만 아쉬운 점이라면 수학적인 부분이 많이 빠져 있는 것인데, 수학적인 부분까지 들어갔가면 거의 백과사전?처럼 될 것 같긴 해서 지금이 딱 좋을 거 같다고 느꼈습니다.

이 책은 초급이 보기에는 좀 어려울 것 같고 중급 정도가 보기엔 적당한 책이라고 생각이 듭니다. 또한 이것만 보기보다는 개념들을 찾아보시면서 같이 학습을 한다면 좋다고 생각하였습니다. 머신러닝/딥러닝은 어렵지만 이 책과 함께라면 해볼만하지 않을까 싶습니다. 머신러닝/딥러닝을 공부하는 사람이 있다면 꼭 추천 해주고 싶습니다

[책] 핸즈온 머신러닝(3판)

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

AI와 머신러닝의 대 범람 시대에 제3판까지 (비록 번역서지만..) 나오며 살아 남았다는 점에서 기본 신뢰가 생겼었다.

하지만 그럼에도 불구하고 책을 읽기 전이건 책을 읽는 중이건 책을 다 읽은 후이건 잊지 않았던 것은, 

이 책에서 다루고 있는 내용은 AI과 머신러닝이라는 큰 영역을 전체적으로 조망한다는 관점에서 봐야 한다는 것이고

또 절대 하지 않았던 것은 이 책 하나 만으로 머신러닝을 완전히 이해하게 될것이라는 믿음을 갖지 않았다는 것이다.

 

다르게 말하면 이 책을 읽고서 새로이 알게되는 것도 많겠지만 

분명 책의 컨셉에 의해서 자세한 부분이 생략되어 있고 개인마다 궁금해하는 부분을 백프로 긁어줄수 없기에

독자가 이해를 잘하지 못하고 스스로 부족하게 느껴질때가 있는것이 당연하다는 것이다.

이는 독자의 잘못이 아니며 또한 책의 저자의 잘못도 아니다.

머신러닝이라는 큰 주제를 담고 있으며 전체를 조망해야 할 필요가 있으며 그를 위해 서술된 책이기에

독자의 개인의 취향과 백그라운드 지식에 따라 서로 다른 부분에서 의문이 생기는 것은 당연한 것이다.

 

이렇게 장황하게 리뷰를 작성하는 것은 

다시 한번 말하지만, 누구의 잘못이 아니기에 의기소침해지지 않고 모르는 것, 그리고 더 잘알고 싶은 것은 일단 넘어가고

더 자세히 세분화되어 설명하는 책을 함께 보기를 권한다.

 

이책은 핸즈온 머신러닝이다. 잊고 있던것을 혹은 가물가물하던것을 빠르게 끌어올리기에 좋다.

그렇기에 전체를 조망해 설명을 하는 책이다.

2권의 목차를 보면 RNN, 생성형 AI, 강화 학습을 다룬다.

이 챕터들은 따로 책으로 빼서 설명하는 책도 수두룩 빽빽하다.

 

부디 그러니 본인의 호기심에 따라 더욱 세부적인 분야에 대해 관심을 갖고 더 파고 들기를 바란다.

지금 이해를 하지 못하는 것을 당연하게 받아드리며.

 

이책은 앞서 이야기 한 것 처럼 오래 살아남았다는 점에서 책 내용에 대해선 이야기 할 것이 있을까 싶다.

다만 텐서플로 베이스라는 점에서 ㅜ.ㅜ.. 아쉬움이 남는다.

 

undefined

 

IMG_2556.jpeg

 

 

머신러닝의 배우려는 분들에게 "핸즈온 머신러닝"은 필독서로 꼽히곤 한다. 이번 개정판에서는 기존의 내용에 더해 비지도 학습, 심층 신경망, CNN, GAN 등의 최신 주제를 다루며, 케라스와 텐서플로 2 버전으로 업데이트된 예제 코드를 제공한다.

이 책의 가장 큰 장점은 바로 '핸즈온'이다. 이론적인 내용을 배우는 것뿐만 아니라 실제로 코드를 작성하고 실행해 보면서 머신러닝을 경험할 수 있다. 이를 통해 이론과 실제 사이의 틈을 줄이고, 머신러닝의 복잡한 개념을 이해하는 데 큰 도움이 된다. 블랙박스와 같은 기술을 쉬운 예제와 코드로 학습할 수 있다.

개정판에서는 새로운 컬러 인쇄를 도입하였다. 컬러 인쇄된 기술 서적을 읽어본 적이 있나 싶은데 그림이나 그래프를 이해하는 데 도움이 많이 되었다. 또한, 최신 추세를 반영한 내용과 예제 코드로, 머신러닝의 최신 지식을 다루고 있다. 물론 인공지능 분야가 책에서 다루는 내용과 실무에 필요한 지식이 어느 정도 갭이 있지만 작은 것부터 하나씩 시작해 보려고 한다면 이 책이 최고의 선택이지 아닐지 싶다.

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

<핸즈온 머신러닝 3판> 한빛미디어.

매번 느끼지만, 머신러닝과 딥러닝을 가장 공부하기 좋은 시기는 언제나 바로 오늘입니다 (고퀄리티의 학습 자료가 점점 더 많이 생기고 있어서). 이번에 서평으로 작성할 ‘핸즈온 머신러닝 (3판)’은 1권, 2권으로 나뉘어 있는 것이 특징으로, 상당히 두꺼운 책이랍니다.

삶을 그래디언트에 비유하여 표현한 옮긴이의 말은 깊은 인상을 남겼는데요, 불안하며 방향을 찾아 나아가는 청년과 안정적이지만 속도가 느려진 사회인의 삶을 그래디언트와 비교하였습니다. 그러나 저는 우리의 삶은 그래디언트처럼 단 한 곳을 향해 가는 것이 아니기에, 너무 불안할 필요가 없다고 느낀답니다. 그래디언트의 목적지는 정해져 있지만, 우리에게는 여러 경로와 선택이 있으며, 그 중 어느 것도 평가될 수 없는 가치를 가지고 있기 때문입니다.

‘핸즈온 머신러닝’이 기존에도 머신러닝과 딥러닝 공부에 많이 추천되던 책이었음은 알고 있었습니다. 수년간 추천되왔기 때문에 빠르게 변화하는 딥러닝의 트렌드를 반영하기보다는, 이 책은 주로 기본적이고 전통적인 내용을 다룰 것이라고 생각해왔었답니다! 그런데 (위 이미지를 보다시피) 1판->2판->3판 변경 사항을 보며 머신러닝과 딥러닝 트랜드 학습을 반영하여 지속적인 업데이트가 이루어지고 있다는 사실을 알고 놀랐습니다. (오랫동안 사랑받아온 이유가 여기에 있었을지도 모르겠네요.) 가령, 3판에는 어텐션은 물론, ViT, GAN, 그리고 Stable Diffusion 내용까지 추가되어 있었습니다. 또 이론 지식 못지않게 실습에 비중을 크게 두고 있다는 점도 장점으로 느껴졌습니다.

많은 분야의 공부가 그렇겠지만, 머신러닝/딥러닝을 공부하기 위해서 알아야 할 내용이 방대한데요. 한 두가지 자료를 졸업하는 것만으로는 와닿을 정도로 이해하기가 어려워서 다양한 관점에서 설명하는 다양한 자료가 동반되어야 하는 것이 일반적입니다. 그걸 아는 저자는 친절하게도 이 책과 함께 공부할 수 있는 참고 자료를 이렇게나 많이 소개해두었습니다.

핸즈온 머신러닝 1권에서는 딥러닝의 선행지식이라고 할 수 있는 머신러닝을 기초에 초점을 맞추어 아홉 챕터에 걸쳐 다루고 있습니다. 관련 수학 지식은 깊게 다루는 편은 아니지만, 해당 내용을 이해할 정도로는 다루고 넘어가는 편이었고요. 모든 내용은 코드와 함께 구체적으로 설명되어 있어서 코드에 진심인 것이 느껴지는 책이었습니다.

또한, 복잡한 개념은 도식을 활용하여 직관적으로 설명하려고 노력한 것이 보였답니다. (경험상 친절하다고 느껴지는 책일수록 도식 활용이 잘 되어있는 편이더라고요.)

이 책의 가장 특별하다고 할 수 있는 부분은 각 챕터 마지막에 수록되어있는 연습문제인데요! 보다시피 지식을 잘 숙지했는지를 테스트하는 이론 문제부터, 직접 코드를 작성해보는 실습 문제도 포함되어 있어, 챕터별 학습을 철저히 하는데 도움을 줍니다.

연습문제에 정말 버릴 것이 없어 보였답니다. 이미 머신러닝/딥러닝을 어느정도 공부해본 사람이라면 연습문제를 보며 복습을 해봐도 좋을 것 같습니다. 또 머신러닝/딥러닝 관련 직무 면접을 준비하는 사람들에게도 상당히 유용할 것 같다는 생각이 들었습니다.

1권에서 딥러닝은 간단한 수준에서 introduction 정도만 하고 마무리됩니다. 머신러닝으로 충분히 문제를 해결할 수 있는 기술자라면, 1권에서 소개되는 내용으로 딥러닝에 살짝 발만 담구어 보는 것 만으로도 충분할 것 같고요. 딥러닝을 공부해야하는 사람이라면 1권 학습을 마친 뒤 2권을 이어서 학습하면 됩니다.

2권에서 본격적으로 딥러닝의 이야기가 시작됩니다. NLP보다는 CV에 초점이 맞춰져 있는 편이고,  딥러닝을 처음 배울 때 만나게 되는 CNN, RNN과 같은 기본적인 모델부터 비교적 최신 모델인 GAN과 디퓨전(확산) 모델, 그리고 강화학습까지 다루고 있어서 꽤 최근의 딥러닝 트렌드까지 맛보기에 충분한 책입니다.

추천 대상

딥러닝 바이블 같은 책입니다. 텐서플로 유저들에게 특히 강추하며, 파이토치를 메인으로 사용하는 사람에게도 (어차피 텐서플로도 알아볼 수준은 되어야 하는 세상이라) 추천하고 싶은 책입니다. 또한 머신러닝과 딥러닝을 처음 배우려는 사람들, 체계적인 지식을 쌓고자 하는 중급자, 그리고 기존 지식을 복습하고 싶은 상급 사용자들 모두에게 추천할 수 있을 정도로 다양한 활용이 가능한 것도 장점인데요. 깊이 있는 이론 설명과 완벽에 가까운 코드 제공, 그리고 풍부한 연습문제 덕분에, 자신의 레벨에 맞게 활용하면 이 책 하나만으로 다양한 학습을 해보실 수 있을 것 같습니다. (여느 AI 부트캠프 수료보다 AI 지식을 공부하는 데에는 더 좋은 선택지가 될 수도 있어 보일 정도로요.)

초급자라면 혼자보다는 그룹 스터디같은 장치가 있으면 훨씬 공부하기 편할 듯 하고, 중급/상급자라면 체계적인 공부를 한번 하고자 하는 사람은 혼자 공부해도 충분할 것으로 보입니다. 저 본인 또한 지식을 보다 체계적으로 부트캠프 수강생들에게 설명하기 위해 이 책을 옆에 끼고 틈틈히 공부하게 될 것 같네요:)

 

“한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.”

오늘 리뷰할 책은 [핸즈온 머신러닝(3판)] 입니다.

https://www.hanbit.co.kr/media/books/book_view.html?p_code=B1539397165

 

 

사실 말이 필요 없는 최고의 책 입니다.워낙 좋은 책이라 이번에 3판이 나온거겠지요.

 

분량도 어마어마 합니다. 1000페이지가 넘어서 1,2권으로 분권되어 있네요.

 

1-표지IMG_20231029_234420.jpg

 

 

가운데를 펼치면 2권 표지도 이렇게 보인다죠. 가운데 2권 이라는 것을 빼고는 앞,1권 표지와 동일합니다.

 

2-2권 표지IMG_20231029_234526.jpg

 

 

 

예전에 머신러닝/딥러닝을 공부할때 봤던 내용들이 많이 있긴 하지만,

사실 머리 속에서 대부분 지워진 내용들이라... 쭈욱 살펴봅니다.

역자 박해선님은 워낙 유명하신 분이니 언급할 필요도 없겠지요?

 

일단 책 앞부분 소개 내용을 보면서 3판의 다른 점을 아래와 같이 알려줍니다.

 

3-3판 변경 사항IMG_20231029_234726.jpg

 

 

 

혹시나해서 미리 알려드리면, 최근 열풍인 chatGPT나 stable difussion/mid journey 같은 툴에 대한 내용은 없습니다. 그러나 그런 것들의 기본 이론이 되는 내용들을 2권에서 충분히 담고 있습니다.

먼저 1권을 보면, 목차부터 심상치 않았는데 모든 페이지가 제가 좋아하는 풀 컬러 인쇄랍니다.

역시 컬러가 가독성 뛰어나고 눈에 쏙쏙 들어옵니다.

 

아래를 보시면 컬러가 아니면 분석이 거의 불가능한 것들이죠.

 

 

 

 

4-군집 시각화 IMG_20231029_235026.jpg

 

위의 시각화는 라벨이 있긴 때문에 대충 구분이라고 가능하지만,

 

 

아래를 보시면 정말 컬러가 아니면 분석 불가능 입니다.

 

5-클러스터 시각화 IMG_20231029_235248.jpg

 

 

머신러닝/딥러닝을 공부할때 가장 중요한 내용이라고 배웠던 것들중에 경사하강법이 있었지요.

이 책에서는 아래 그림과 함께 잘 설명이 되어 있습니다.

 

6-경사하강법 IMG_20231029_235345.jpg

 

 

 

다른 좋은 내용들이 많지만 이제 2권으로 넘어갑니다.

2권의 내용은 텐서플로우의 기본적인 내용에 이어 CNN이 나옵니다. 그 뒤에 RNN이나 GAN, 기타 나머지가 이어지구요.

귀여운 고양이 사진이 아니라서 조금 아쉽지만 YOLO 공부하면서 알게된 시맨틱 분할에 대한 내용도 있습니다.

이 책은 정말 다양한 내용들을 담고 있다는게 사방에 있습니다.

 

7-시맨틱 분할 IMG_20231029_235715.jpg

 

 

GAN에서는 패션 MNIST를 이용해서 설명하고 있네요. 이제는 그림만 봐도 뭔지 대충 알수 있다는 ㅋ

 

8-GAN IMG_20231029_235913.jpg

 

 

이어서는 강화 학습에 대한 내용입니다. 저도 책을 보긴 했지만 아직 공부가 부족해서인지 머리 속에 많이 남지는 않네요.

 

9-강화학습 IMG_20231029_235929.jpg

 

 

 

사실 머신러닝/딥러닝의 내용들이 대부분 쉽지는 않아 혼자 공부하기가 쉽지는 않습니다.

그래서 이 책의 대상도 중급이라고 되어 있습니다. 수많은 공식과 수학적인 내용들이 머리 아프게 만들지만

그래도 이 책과 함께 꾸준히 공부하면 좀 수월하지 않을까 생각됩니다.

상당한 분량의 압박이 있지만 역시 이 책은 너무 좋은 책이라서 그동안 계속 꾸준하게 버전업이 되고 있죠.

머신러닝/딥러닝을 공부하는 사람이라면 꼭 추천하고 싶은 책입니다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 

 

 

 

 

 

 

 

 

 

 

 

 

이번에 운이 좋게도 "핸즈온 머신러닝 3판" 을 읽어 보게 되었습니다. 

이미 "핸즈온 머신러닝" 책 1판,  2판을 가지고 읽었있는데 이번 3판은 얼마나 바뀌어 있고 어떤 내용이 더 추가 되어 있을지 기대가 많았습니다.

 

먼저 "핸즈온 머신러닝 3판" 은 머신러닝,  신경망, 딥러닝, 인공지능을 공부할때 꼭 읽어봐야 할 책 입니다. 

전세계 1위 베스터셀러이며 이제까지 3판이 나올정도로 머신러닝, 신경망, 딥러닝에 대한 이론, 그림, 설명, 실습등 모든 내용이 담겨있는 바이블 책입니다. 

 

​이번 책은 기존의 코드를 새로운 버전으로 수정 되었으며 당연히 책 두께도 늘어다고 책도 1권, 2권으로 나뉘어 볼 수 있는 분권 구조로 되어 있습니다. 책을 분권할 수 있어서 가지고 다니며 읽기가 좀 편해 진건 같습니다. 그래도 상당히 방대한 내용을 담고 있는 책입니다.  그리고 책이 칼러로 구성되어 있어서 그림 및 설명을 보기가 편합니다. 그래프, 이미지 등이 칼러로 구성되어 있더 좀더 편하게 학습을 할 수 있도록 되어 있습니다. 

 

1판, 2판, 3판 까지 책을 가지고 있다면 "핸즈온 머신러닝 3판" 책의 구성 부분에서 변경사항을 확인할 수 있습니다.

새롭게 바뀐 부분(업데이트 내용)을 확인하면서 "핸즈온 머신러닝 3판" 책을 읽어 보았는데

 

1. 최신 라이브러리 버전으로 전체 코드 업데이트 

책의 소스 코드를 PyCharm에서 Jupyter 로 코딩하면서 실습을 해 보았습니다. 

소스 코드가 책의 분량만큰 양이 많은데 관련 소스코드가 GitHub에 등록되어 있어서 해당 부분을 책과 참고하여 공부하여 빠르게 학습을 할 수 있었습니다. 

각 소스코드는 기술의 중요핵심을 설명하고 있으며 책에서는 코드 하나하나를 상세히 설명하고 있어서 공부하는데 많은 도움이 되었습니다. 

 

2. 상세한 모델선택 가이드라인

책 전반에 그림과 모델 설명 그리고 유용한 방법등이 이론적으로 잘 설명되어 있고 읽기 편하게 되어 있습니다.  공부를 한후에 필요에 따라 책의 목차를 참고하거나 모델을 선택하여 결과를 확인할 수 있을것 같습니다. 

 

3. 사이킷런과 케라스 새로운 기능 

4. 케라스 튜너 라이브러리, 허깅 페이스의 트랜스포머스 라이브러리

1판,  2판에 없던 내용의 추가 되었습니다.  해당 내용의 추가로 책이 더욱 좋아진것 같습니다.  

 

5. 스테이블 디퓨전을 비롯한 컴퓨터 비전, 자연어 처리 분야의 최신 트렌드와 구현 

아직 상세히 공부는 못했지만 컴퓨터 비전과 자연어 처리 분야의 기술과 용어 설명 구현 방법을 확인할 수 있었습니다.  해당 내용은 요즘 가장 이슈인 부분으로 전체적인 흐름 및 기술을 확인할 수 있었습니다

 

"핸즈온 머신러닝 3판" 의 가장 큰 장점은 머신러닝, 신경망, 딥러닝의 전반적인 기술을 확인할 수 있는게 가장 큰 장점이라고 생각합니다.  각각의 기술을 전개해놓고 해당 기술에 대한 설명 및 상세 내용으로 책이 구성되어 있어 전반적인 머신러닝, 신경망, 딥러닝이 무엇이지 그리고 어떤 기술을 활용해야 하는지 해당 기술의 요점 및 소스를 활용하여 어떤 결과를 낼 수 있는지 정확히 할 수 있습니다. 모델 선택 가이드 라인 또한 공부하는데 많은 도움이 될 수 있습니다.  속도 , 사양등을 확인하면서 어떤것을 선택해야할지 기준으로 많은 도움이 됩니다. 

 

전반적으로 "핸드온 머신러닝 3판"은 2판에서 3판으로 분량이 늘어났으며 소스코드 업그레이드 및 새로운 기술 추가로 인공지능, 신경망, 딥러닝의 모든 것을 담고 있는 베스트셀러 책입니다. 

책의 모든 부분을 읽어 보지는 못했지만 전반적으로 많은 부분이 바뀌고 새로운 기술이 등장하는것을 확인할 수 있는 책이었습니다. 

 

다른 머신러닝, 신경망, 딥러닝 책도 많지만 "핸드온 머신러닝 3판"은 꼭 읽어봐야 한다고 생각합니다.  머신러닝, 신경망, 딥러닝, 인공지능 하는 모든 분들께 추천합니다. 

 

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

 

KakaoTalk_Photo_2023-10-29-23-42-42 001.jpeg

 

 

나처럼 머신러닝에 대해 전혀 모르는 사람이 읽기에는 이 책은 내용도 많고 쉽지 않았다.

 

내가 궁금했던 내용은 1권에 대부분 들어있어서 1권 위주로 읽었다. 1권만 읽어도 인풋의 양이 만만치 않다. 한달안에 모든 내용을 다 읽고 실습하고 이해하는 것 까지는 어려운 것 같다. 

 

나는 실습은 거의 넘겼고 머신러닝에서 어떤 분야가 어느 때에 사용되는지, 어떤 방식으로 사용되는지 알고 싶어서 그냥 쭉 읽어나갔다. 다음에 기회가 되면 필요한 내용들에 대해서는 실습도 하면서 익혀볼 예정이다.

 

2권은 아직 손도 못댔다. 시간이 되는대로, 흥미가 가는대로 천천히 읽어볼 예정이다.

 

 

KakaoTalk_Photo_2023-10-29-23-42-42 002.jpeg

 

 

 

읽고 나니 정말 이 책이 인공지능의 바이블이라고 불리는 이유를 알 것 같다. 1판, 2판도 두꺼웠지만 3판은 쪽수가 더 늘어나 천 페이지를 넘게 되었다. 물론 분권되어 있어 읽기는 편하지만 압도적인 두께이다.

  • 1부에서는 머신러닝의 개념을 소개 하는 파트로 기본적인 머신러닝의 개념, 학습방법( 분류 / 모델훈련 / 서포트 벡터 머신 / 결정 트리 / 앙상블학습과 랜덤 포레스트 / 차원 축소 / 비지도 학습)에 대해서학습을 할 수 있고
  • 2부에서는 신경망과 딥러닝의 학습 할 수 있다 특히 12장의 텐서플로의 구조 및 사용법, 타입변환/변수/다른 데이터구조, 사용자 정의, 주로 사용하는 함수에 대해서 설명하고 13장의 대용량 데이터셋에대한 멀티스레드와 큐를 사용하여, 여러 파일에서 동시에 읽고, 샘플을 셔플링하거나 배치로 만드는 등의 작업을 수행하는 것을 학습 할 수 있어서 좋았다.

머신러닝을 시작하거나 다시 한번 기본을 다지고 싶은 분들, 현업에서 일하는 분들 모두에게 추천하고 싶은 서적이다.

 유클리드의 유명한 말 "기하학에는 왕도가 없다"처럼 최근 박해선님의 "머신러닝, 딥러닝은 어떻게 공부할 것인가?" 강연에서도 마찬가지로 머신러닝에는 왕도가 없다라고 말씀한 것이 기억난다.

 

그럼에도 우리는 머신러닝의 지름길을 찾으려고 노력한다. 그러다가 엄청난 수학기호에 좌절하고 다시 공부하기를 무한 반복한다. 물론 수학적인 지식 없이는 머신러닝을 이해하기 힘들겠지만, 시작할 때는 분명 없어도 된다. 그 시간에 머신러닝의 기본 개념, 분야별 머신러닝 훈련, 데이터 분석, 전처리, 파이썬과 라이브러리(맷플롯립, 판다스, 넘파이, 사이킷런, 케라스, 텐서플로, ...), 코랩, 허깅 페이스, GPU 사용시 주의사항, 서비스, 컴플라이언스, MLOps, 엣지AI(모바일, 임베디드)등 다뤄야 할 주제가 너무 많다.

 

그런데, 이 모든 것을 한권(?)에 담은 책이 있는데, 그것이 바로 핸즈온 머신러닝(3판)이다.

책의 구성은 2권 합본으로 부록을 제외하더라도 914페이지나 되는 엄청난 분량이다. 엄청난 분량인데도, 요약해서 설명하고 있다는 느낌이 드는 것은 머신러닝 분야가 원래 방대할 뿐만아니라 발전속도가 대단히 빠르기 때문이다.

 

시중에 다른 책들의 구성을 살펴보면, 트랜스포머 모델이나 강화학습을 소개 정도로 하거나 포함되지 않는 경우가 있는데, 핸즈온 머신러닝은 트랜스포머, 비전 트랜스포머, 허깅페이스 라이브러리, 오토인코더, GAN, 확산모델(스테이블 디뷰전), 강화학습 최신 트렌드, 엣지AI(Tensorflow.js), 모델 배포까지 빼놓지 않고 모두 다루고 있다.

 

물론, 초급을 위한 책은 아니다. 파이썬과 머신 러닝의 기본 개념을 익혔다면, 다음 읽을 책으로 주저없이 추천한다.

최신 버전의 라이브러리 사용법과 분야별 최신 트렌드를 한꺼번에 모두 공부할 수 있다.

추가로 관심있는 부분은 대수학, 머신러닝, XGBoost, 신경망(딥러닝), 컴퓨터 비전, 트랜스포머, 자연어 처리, 강화학습, MLOps를 주제로 하는 각각의 책으로 심화학습하면 될 것이다.

 

저자의 소스코드도 훌륭하지만, 친절하고 자세하게 한글로 설명하는 역자의 소스코드는 꼭 챙겨서 손코딩해보기를 바란다. 또한 책 중간중간 역자의 경험에서 나오는 라이브러리 사용 기법과 학습 팁(비용함수/활성화함수/하이퍼파라미터 초기값 및 설정)들도 감동을 줄 것이다.

이해하기 어려운 부분은 오픈채팅이나 최근 디스코드에서 질문하면 바로 응답을 주는 것도 큰 이득이다.

 

개인적으로 책에서 좋았던 부분은 각 장의 마지막에 있는 연습문제인데, 보통 책을 모두 읽더라도 금새 잊어버릴 경우가 있는데, 핵심 개념을 문제로 다시 한번 각인할 수 있는 효과가 있었다. 물론 부록에 정답도 자세히 있다. ㅎㅎ

그리고 19장의 대규모 텐서플로 모델 훈련과 배포 방법에서 모델을 서비스하는 방법이다.

부록 2장의 머신러닝 프로젝트 체크리스트도 잊지말고 챙겨보길 바란다.

 

마지막으로 저자의 머신러닝 공부의 왕도로 끝맺고자 한다.

 

필자가 여러분께 전하고 싶은 조언은 연습하고 또 연습하라는 것이다. 모든 연습문제를 풀어보고, 주피터 노트북을 실행해보고, 캐글에 가입해보세요, 머신러닝 커뮤니티에 가입하고 강좌를 듣고, 논문을 읽고, 콘퍼런스에 참관하고, 전문가와 만나보세요

 

"한빛미디어<나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 

머신러닝은 관심이 많은 영역으로 개발자로 살아가면서 조금씩 학습하고 있다..
 
도서의 분량은 두권으로 분리 될 정도로 많지만 머신러닝을 학습하고자 하는 님들에게 필요한 것들로 두권을 한달 가까이 정독을 하였다, 모든 예제를 실습하면서 읽었으면 하는 아쉬움이 남는다. 학습 하는 님들의 편의를 위해서 두권으로 나눈 것이 지하철에서 이동 하면서 읽기에 좋았다.
 
데이터 과학을 공부하지 않는 친구들에게 어려운 책이지만 기초 설명, 수학 이론, 실습, 예제를 통해서 접근 하고 있어서 수학 이론에 약한 나에게 수학 이론을 찾아 볼 수 있게 하여.좋았다.
 
1부에서는 머신러닝의 개념을 소개 하는 파트로 기본적인 머신러닝의 개념, 학습방법( 분류 / 모델훈련 / 서포트 벡터 머신 / 결정 트리 / 앙상블학습과 랜덤 포레스트 / 차원 축소 / 비지도 학습)에 대해서학습을소할 수 있고 2부에서는 신경망과 딥러닝의 학습 할 수 있다 특히 12장의 텐서플로의 구조 및 사용법, 타입변환/변수/다른 데이터구조, 사용자 정의, 주로 사용하는 함수에 대해서 설명하고 13장의 대용량 데이터셋에대한 멀티스레드와 큐를 사용하여, 여러 파일에서 동시에 읽고, 샘플을 셔플링하거나 배치로 만드는 등의 작업을 수행하는 것을 학습 할 수 있어서 좋았다.
 
파이션, 데이터 과학을 학습 한 친구들이 머신러닝을 학습 할 수 있는 교과서로 님들에게 추천 합니다.
 
한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다

AI 분야에서 단 한 권의 책만 읽을 수 있다면 주저없이 꼽고 싶은 명작. 드디어 3판 개정판이 발간되었다.

이 책은 참 묘한 책이다. 전체적으로 난이도가 높은 편임에도 부분 부분 읽다보면 의외로 읽기가 편하고 이해가 잘 되는 편이다.

엄밀한 수학적 정의를 다룬다든가 대부분의 논문 이해에 무리가 없을 수준의 깊이가 담겨있는 것은 아니지만 AI 진영에 두루 쓰이는 기술이 체계적으로 망라되어있다. 이 분야를 과학과 공학으로 나눈다면 과학보다는 공학 중심적인 내용을 담고 있다.

과학도 상당 부분 담겨있지만 과정의 도출보다는 결론을 깔끔하게 정리하는 식으로 기술되어있으며 이를 구현해 내는 것과 응용하는 데 보다 많은 도움을 주는 책이다.

따라서 이 분야의 기술을 숲을 보는 시각으로 두루 섭렵한다든가 프로그래밍 능력이 뛰어난 개발자가 AI 진영의 기술을 담은 서비스를 구현하는 데 많은 도움을 받을 수 있다. 물론 연구 진영에서도 AI분야의 비교적 최신 이론을 빠르게 정리하고 연구의 방향성을 잡는 데에도 큰 도움이 될 것이다.

이 책에는 1000페이지가 넘는 방대한 분량이 수록되어있음에도 어느 정도의 통계학적 혹은 데이터 관련 지식 - 예를 들면 그림으로 배우는 StatQuest 머신러닝 강의 책에 담긴 내용을 잘 숙지하는 정도-을 습득하고 있고, Python 중급 이상의 프로그래밍 실력을 갖춘 독자라면 긴 AI의 여정을 이 책으로 시작할 것을 권하고 싶다.

무언가를 골똘히 연구할 때나 고민하거나 혹은 문제해결을 위해 고심하고 있을 때 우리는 보통 마인드 맵과 같은 도구를 통해 생각을 정리하고 방향성을 잡는다.

이 책은 그런 마인드 맵에서 첫 출발 지점 동그라미의 위치로 적합한 책이다. 책 한 권으로 AI 진영의 폭넓은 지식을 한 눈에 파악하기에는 이 책보다 뛰어난 책이 없다고 생각한다. 방대한 내용을 담아내고 있음에도 하나하나의 주제는 매우 친절하고 자세하게 수록되어있고 직관적인 시각화를 통해 개념을 깊이있게 이해할 수 있도록 도와준다.

우선 머신러닝 서비스의 전반을 이해하는데에는 이 책의 1~2장 만으로도 충분하다. 2장의 실습을 진행하며 예측을 위한 머신러닝 모델을 어떤식으로 만들어나가는지 감을 잡는다면 뒤에 이어질 내용을 익혀 특정 데이터, 도메인, 기술, 아이디어, 문제에 심화 적용하기만 하면 되는 셈이다.주택가격예측

실리콘 밸리의 주택 가격을 예측하는 모델 하나를 만들어보는 과정으로 AI 진영에서 활용되는 기술 전반을 이해하기에 부족함이 없다. 더욱이 더 깊이있는 수준의 지식을 습득하는데 상당한 지적 호기심을 제공하여 향후 학습의 강력한 동기부여로 작용하기도 한다. 단 두개 챕터에 수록된 내용이지만 능히 한 권의 책을 낼 수 있을 정도의 분량이기도 하다.

이 책은 출판사의 배려로 3판부터는 2권의 책으로 나뉜다. 1권은 주로 머신러닝 내용을 다루고 있으며 케라스를 활용하여 간단한 딥러닝을 맛볼 수 있다. 머신러닝 대부분의 지식과 기술은 딥러닝에도 요긴하게 활용되므로 2권을 읽기 전에 충분히 개념을 학습해 두면 좋다.

이번 개정판에는 사이킷런에 추가된 새로운 기능들과 최신 라이브러리가 수록되었지만 1권에 해당하는 머신러닝 진영의 기술은 딥러닝에 비해 훨씬 오랜 기간 연구되었고 변화가 딥러닝 분야에 비해 적기 때문에 2판에 비해 크게 달라진 사항은 없다.

하지만 기술 측면에서 불필요하고 중요하지 않은 내용들이 많이 삭제되어 보다 집중력있게 핵심을 이해하는 데 도움을 주는 방향으로 편집된 것 같고 의외로 실무적으로 중요한 요긴한 팁들이 생략된 경우가 더러 있었는 데 그런 부분들이 알차게 보완된 느낌이다.

2판에서 계속 이어지는 기조 중에 정말 마음에 드는 것은 개인적으로 쉬운 내용 기술과 더불어 애매한 개념을 눈으로 보이게 하는 시각적 자료의 활용이 인상적이다.

예를 들면 3장에서 다루는 오차 행렬의 시각화는 볼 때마다 놀랍다. 2차원적인 동적 기억을 필요로하는 개념이라 보는 순간에는 이해가 되어도 기억이 휘발되고 나면 다시 깊이있는 통찰로 로딩하는데 제법 시간이 걸리는 이상한 지식 구조이다. (마치 법률 분야의 if에 따른 리걸 마인드 기억 구조와도 유사하다.)

어떤 책은 예측과 실제의 축을 거꾸로 명시해 많은 혼동을 주는가 하면 오차 행렬 혹은 혼동 행렬이라는 용어 답게 저자들도 혼동된 것인지 오류로 기술된 책들도 은근 많다. 반면 본 도서에는 이 오차 행렬표 내부에 숫자 그림이 들어가 있어 예시를 활용한 명쾌한 이해 및 개념을 잡는 데 도움을 주고 있어 저자의 전달력과 깊이 있는 인사이트에 여러번 감탄했다.오차행렬

이런 장치는 책을 읽는 내내 여러번 경험할 수 있다. 아래 그림은 경사하강법의 여러 방식을 적용하며 실제 파라미터 공간에 표시된 경로를 시각화 한 것인데 예제를 실습하며 직접 구현해보려고 노력하다보면 말로는 전달하는 데 한계가 있는 경사하강법의 움직임을 눈으로 확인하고 직관적으로 이해하는 데 많은 도움을 받을 수 있다.경사하강법
규제

소프트맥스 회귀나 결정트리 등 알고리즘 설명 파트도 마찬가지이다. 대충 그렇다는 말 보다는 확실히 그림으로 경계선을 확인하고 파라미터 변수의 조정으로 달라지는 경계선을 눈으로 확인하는 것이 이 알고리즘을 확실하게 이해하는데 큰 도움이 된다.소프트맥스
결정트리
k-mean

하다 못해 통계의 가장 기초적인 성절인 대수의 법칙(큰수의 법칙)이나 차원의 저주도 눈으로 보여준다. 방대한 분량의 쉽지 않은 책을 때로는 매우 쉽게 만들어주는 묘한 장치들이다.큰수의법칙
차원의저주

책에 수록된 코드를 실습하기 쉽게 안배하고 있는 점도 이 책의 뛰어난 장점 중 하나이다. 말로 설명하는 것 이상으로 실제 구현하고 눈으로 확인할 수 있게 도와주는 방식이 매력적이다. 이 책의 역자는 저자의 배려를 한층 업그레이드 하여 더욱 편리하게 실습할 수 있도록 도와주고 있어 인상적이었다. 역자의 깃허브로 들어가 Open in Colab 버튼만 누르면 되니 어지간히 게으른 독자도 실습 핑계를 대긴 어려운 구조이다.깃허브
텐서보드

2권부터는 딥러닝의 여정을 떠난다. 보다 저수준의 텐서플로 API를 활용하는 예제들이 등장한다.텐서플로

특히 CNN, RNN, LSTM의 기본 3모델에서 더욱 확장된 ResNeXt, CSPNet과 같은 다양한 신형 모델들이 등장한다. 이는 이 책의 또 하나의 매력이기도 하다. 개정판이 나올 때마다 비교적 최신의 선풍적인 인기를 끌었던 새로운 모델들과 기술들이 소개되고 있어 개인적으로 매우 유익했다.

가진 레거시 환경의 변화 대비 AI 진영의 SOTA 지식들은 차고 넘쳐 이젠 따라갈 수 없는 지경에 이르렀다. 가진 역량의 한계로 소소한 변화는 더이상 추적할 수 없게 되었고 집중하는 분야의 SOTA를 파악하고 시스템에 반영하는 것도 무리수였는데 이 책 덕분에 그간 잃어버린 고리, 미씽 링크를 연결할 수 있어 저자에게 많은 감사를 느낀다.

그러면서도 내용은 더욱 풍부해졌다. RNN 모델을 다룰때도 전통적인 통계 진영의 시계열 모델링도 다루고 있어 비교 대조하면서 관련 지식의 깊이를 풍부하게 만드는 데 도움이 되었다.

ARIMA 모델은 전통적으로 오랜 기간 동안 그리고 지금까지도 잘 쓰이는 모델인데 딥러닝 도서 대부분에는 이 부분이 생략되어있어 양 진영의 시너지를 활용하기 부족함이 많았는데 이번 개정판에는 그런 부분도 신경쓰고 있어 더욱 알차게 구성되었다는 느낌을 받을 수 있었다.ARIMA

한편 이번 개정 3판의 백미는 역시 딥러닝 파트의 커다란 변화인데 허깅페이스의 트랜스포머스 라이브러리나 잡음 제거 확산 확률 모델 DDPM 등 2020년 이후 굵직한 변화를 추적하기에 좋다.트랜스포머스
DDPM

3판이나 개정되면서 1권 영역은 성숙도가 높아졌으니 다음번에는 딥러닝 위주의 2권에 대한 개정판만 나와도 좋겠다는 생각도 든다.

방대한 내용을 한정된 리뷰로 모두 담아내는 것은 보통 무리가 아니었다. 처음엔 챕터별로 다른 책에서 익히기 힘든 내용들을 본 도서는 어떻게 기술하는지에 중점을 두고 리뷰를 작성했다가 폭발하는 분량이 감당이 안되어서 다시 줄여 썼는데 이러니 또 책이 가진 모든 장점을 잘 보여주지 못해서 안타깝다.

개인적으로 2판의 베타리딩에 참여하였기에 더욱 정이 가는 책이고, 이번 3판 역시 참여의 기회가 있었으나 개인적인 좋지 못한 사정으로 인해 참여하지 못해 많이 아쉬웠던 책이기도 하다. 그만큼 더 알찬 리뷰를 정리하고 싶었는데 방대한 규모와 책의 수준이 뛰어나 수준에 걸맞는 리뷰 작성에는 한계가 있다.

하지만 분명한 사실은 AI 분야의 관련 기술을 한 권의 책으로 이 보다 폭넓게 파악하고 가진 레거시에 적용하는데 있어 이보다 도움되는 책은 없을거라 확신한다. 관련 분야의 도서를 벌써 300권은 넘게 읽은 것 같은데 이 만한 책을 찾지 못했기에 더욱 확신한다.



 

ML/DL 필독서인 핸즈온 머신러닝의 3판이 나왔습니다.

그 동안 책이 크고 무거워서 가지고 다니기 어려웠는데, 이번 3판은 두 개로 나눠져 있어서 가지고 다니기 매우 편해졌습니다.

이 책은 글로벌 베스트셀러인 만큼 내용은 더할 나위 없이 훌륭하며, 박해선님의 세심한 번역 및 추가 설명들도 매우 훌륭합니다.

해당 분야가 빠르게 변화하고 있는 만큼 3판에서는 추가/변경된 내용들이 잘 반영되어 있습니다.

책에 있는 실습을 따라하면서 자신의 깃허브 레포에도 올려놓으면 언제든지 참고할 수 있는 좋은 레퍼런스가 될 것입니다.

머신러닝을 학습하려고 하시는 분들은 무조건 보셔야 하는 도서라고 생각합니다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

머신러닝 관련 업무를 처음으로 맡았을 때 2판으로 공부를 시작했었던 기억이 있어서 3판도 기대감을 갖고 읽어봤습니다. 

 

2판의 대부분의 내용이 그대로 있으면서 3판에서는 새로운 라이브러리 사용법과 NLP, 이미지처리, 생성형AI 관련된 딥러닝 최신 트렌드에 대해 업데이트가 되었습니다. 그 중 두가지 모델이 제 관심을 끌었습니다.

 

DistillBERT

사전 학습된 BERT모델에 단점인 제한된 리소스로 모델을 실행하기 어려운 점을 더 작고 빠른 BERT모델로 만들었습니다. 한국어로 번역하면 증류 BERT모델이라 불리는 이것은 사전 학습된 대형 BERT 모델을 선생님이라 생각하고 그곳에서 나온 지식을 학생에게 가르치는 느낌으로 지식을 이전하여 소형BERT모델을 만드는 방법입니다. 이로써 모델은 대형 BERT 모델에 비해 60% 속도향상, 40% 메모리 축소하였고 성능치는 97%수준으로 유지할 수 있습니다.

 

Vision Transformer

이미지 데이터를 N*N 작은 정사각형 모양으로 나눠 각각의 정사각형에 위치,순서정보를 기억하여 마치 텍스트의 시퀀스처럼 취급하며 사용하는 트랜스포머 모델입니다. 이 모델로 이미지의 문맥, 예를 들어 하늘에 떠 있는 비행기 사진을 보고 '비행기' 라고 검출하는 것이 아닌 '하늘에서 운행중인 비행기'라는 결과를 얻을 수 있습니다.

Hands-on Machine Learning.jpg

 

머신러닝을 잘 아는 선배에게 수업을 듣는 느낌입니다.

쿡 찌르면 와르르 쏟아져 나오는 얘기 보따리 같다고나 할까요.

 

문제가 있다면 알려주는 선배와 듣는 후배 사이 간격이 제각각 일 수 있다는 점입니다.

알아도 너무 잘 알고 많이 알다 보니, 아낌없이 풀어놓는 내용들이 어떤 이에게는 전체 흐름과 윤곽을 잡을 수 있는 더할 나위 없는 기회가 될 수 있으며, 다른 어떤 이에게는 우와우와~ 하며 새로운 세상을 만나 감탄사만 연발하며 어리둥절할 수 있습니다.

더하여 옮긴이가 꼼꼼하게 추가해 놓은 주석은 뭔가 갸우뚱할 수 있는 부분이나 설명이 부족한 부분을 명확하게 짚어줍니다.

우선 무슨 얘기를 하고 있는지 알아보기로 했습니다. 하나씩 꼼꼼히 따라가려 했다가는 얼마 못 가 바스러지고 있는 제 의지를 만날게 틀림없기 때문입니다.

 

머신러닝으로 시작

기계를 학습시킨다는 어찌 보면 생소한 얘기를 풀어나갑니다. 기계를 작동시키는 건 익숙하지만 기계를 학습시킨다는 건 이상합니다.

학습이라는 사람이 이해하기 쉬운 용어를 사용하긴 하지만, 풀어서 말하면 문제를 파악하여 모델을 만들고 데이터를 이용하여 훈련시킵니다. 정해진 규칙이 아니라 데이터와 훈련으로 규칙을 찾습니다.

배우고 익힌다는 면에서 학습으로 볼 수 있지 않을까요.

수학 공식처럼 정확한 게 아니고 어느 정도 근사치면 허용하는 확률입니다.

조금 거칠게 말하면 엄청난 계산이 가능해진 기계 성능 덕분에 할 수 있는 접근 방식입니다.

훈련을 통해 처리할 수 있는 많은 부분은 딥러닝이 아닌 머신러닝만으로도 충분하다고 알려줍니다.

 

아웃풋을 요구

각 장을 마치면 연습문제가 있습니다. 내용을 다시 살펴보게 하고 이해했는지 물어봅니다.

그려보고, 만들어보고, 답을 찾고, 설명해 보라고 합니다.

만약 연습문제만 있었다면 막막할 수 있었겠지만 부록에 정답이 있습니다.

정답으로 내용을 이해한다기보다 비교하고 검토할 기준으로 삼으면 될 듯합니다.

아웃풋을 만들며 적어도 그 장에서 놓치지 말아야 할 부분을 정리할 수 있습니다.

 

텐서플로로 풀다

딥러닝을 통해 만날 수 있는 대표적인 분야를 알려줍니다.

컴퓨터 비전, 시퀀스 처리, 자연어 처리, 강화 학습

텐서플로를 이용하여 어떻게 풀어나가는지 보여줍니다.

한 번에 이해한다면 좋겠지만, 직접 돌려가며 많이 부딪쳐 봐야 감이 잡힐 것 같습니다.

모든 길을 로마로 통하는 것처럼 모든 딥러닝은 텐서플로로 통하는 것처럼 보입니다.

 

 

신경망을 이해하는데 진입장벽이 존재한다고 생각합니다.

수학 지식, 프로세스 자체에서 느끼는 이질감 등 사람마다 다양할 것입니다.

아마 한 번만 신경망이 가진 몇 가지 급소를 이해한다면 그다음은 일사천리일 것 같습니다.

'핸즈온 머신러닝'이 옆에 두고 수시로 도움 받을 수 있는 든든한 조력자가 아닐까요.

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

"핸즈온 머신러닝(3판)"은 인공지능의 세계로의 여정을 시작하는 이들에게 길잡이가 되어줄 필수 가이드북이다. 이 책은 단순한 이론 서술을 넘어, 독자들이 실제 상황에서 머신러닝을 적용할 수 있는 방법을 상세하고 친절하게 안내한다. 오렐리앙 제롱의 저술 방식은 교육적이면서도 실용적이며, 이를 통해 독자들은 기초적인 개념에서부터 복잡한 주제에 이르기까지 체계적으로 이해를 넓혀갈 수 있다. 또한, 박해선님의 통찰력 있는 번역은 이해도를 한층 높여준다.

이 서적은 구성이 체계적이다. 첫 번째 부분은 머신러닝의 기본을 다루며, 다양한 알고리즘과 전통적인 기법, 그리고 사이킷런을 사용한 실질적인 접근 방식에 초점을 맞춘다. 반면, 두 번째 부분은 심화된 내용으로, 딥러닝과 신경망을 중점적으로 다루며, 텐서플로와 케라스를 활용한 실제 적용 사례를 통해 독자들이 직접 경험할 수 있도록 구성되어 있다.

이 책의 독창성은 실습 위주의 접근 방식에 있다. 제롱은 이론을 실제 문제 해결에 연결시키는 데 능숙하며, 이를 통해 독자가 실제 세계의 문제에 대한 해결책을 모색하면서 학습할 수 있다. 실습은 코드 작성으로 이어지며, 이 과정에서 최신 오픈소스 라이브러리를 활용한 다양한 예제를 직접 다루게 된다. 이러한 접근 방식은 독자가 머신러닝의 실제 작동 방식을 체험하고, 이해도를 깊게 하게 만든다.

 

또한, 이 책은 머신러닝이라는 빠르게 변화하는 분야의 최신 트렌드를 반영하는 내용을 담고 있다. 최신 연구와 기술 동향에 대한 세세한 분석을 통해, 이 책은 독자가 현업에서 직면할 수 있는 다양한 문제에 대비할 수 있도록 돕는다. 이는 머신러닝의 다양한 적용 분야, 예를 들어, 자연어 처리나 컴퓨터 비전 등에 대한 심도 있는 통찰을 제공함으로써 이루어진다.

 

박해선님의 역할은 이 책이 한국 독자들에게 더욱 친숙하게 다가갈 수 있도록 만든다. 세심한 주석과 해설을 통해, 박해선님은 원서의 의미를 보다 정확하게 전달하고, 때로는 깊이 있는 배경 지식을 제공하여 독자의 이해를 돕는다. 이러한 노력은 이 책이 단순한 번역을 넘어, 한국의 문화적 맥락에서 머신러닝을 이해할 수 있는 소중한 자료가 되게 한다.

제롱의 저술 스타일은 전문가적인 지식을 바탕으로 친근하고 이해하기 쉬운 설명을 제공한다. 복잡할 수 있는 주제도 독자가 쉽게 접근하고 이해할 수 있도록 구성되어 있다. 박해선님의 번역은 이러한 점을 강조하며, 한국 독자에게 보다 맞춤화된 가이드를 제공한다.

 

최종적으로, "핸즈온 머신러닝(3판)"은 머신러닝 분야에 심층적으로 접근하고자 하는 이들에게 이상적인 도서다. 제롱의 깊은 전문 지식과 박해선님의 세심한 번역은 이 책을 통해 제공되는 정보의 가치를 높인다. 이 책을 통해 독자는 머신러닝의 이론과 실제 사례, 그리고 실무에 필요한 다양한 기술과 지식을 체계적으로 습득할 수 있다. 머신러닝의 세계로의 여정을 시작하려는 모든 이들에게 이 책은 실질적인 지침서가 될 것이다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

[BOOK] 핸즈온 머신러닝 - 오렐리앙 제롱 지음 / 박해선 옮김

 

2023-10-07 09.41.19.jpg

 

부제: "사이킷런, 케라스, 텐서플로 2로 완벽 이해하는 머신러닝, 딥러닝 이론 & 실무"

 

Microsoft는 ChatGPT를 기반으로 자사 제품들에 코파일럿(Copilot) 기능을 추가 함으로써 인공지능을 쉽게 활용할 수 있도록 만들었습니다. 인공지능이 접목된 제품과 서비스가 늘어남에 따라 개발자들도 인공지능에 대해 어느정도 이해하고 활용할 수 있어야합니다. 요즘 풀스택개발자는 프론트엔드, 백엔드 뿐만아니라 인공지능도 다룰 수 있어야 한다는 말도 있습니다. 개발자에게 인공지능에 대한 지식이 필수라면? 공부해야죠. (평생공부하는 직업이니까)

 

인공지능을 공부해보려고 검토한 책이 몇 권 있습니다.

- 혼자 공부하는 머신러닝+딥러닝

- 개발자를 위한 머신러닝&딥러닝

- 핸즈온 머신러닝

 

세 권의 책이 공통점이 있습니다. 저자/역자가 박해선님입니다. 개발자로 일하시다가 건강 문제로 쉬는 동안 인공지능을 공부해서 인공지능 분야 저자, 번역자로 활약하고 계시는 분입니다. (믿고 읽어도 되겠죠?)

 

'혼자 공부하는 머신러닝+딥러닝'은 혼자 기초를 공부해보려고 구매했고, '개발자를 위한 머신러닝&딥러닝'은 작년에 '<나는 리뷰어다>' 활동으로 제공받았습니다. 그리고 '핸즈온 머신러닝'은 조금 더 깊게 공부해보자는 생각으로 2판을 구매했는데 다 읽지 못한 상태에서 3판을 제공받았네요.

 

'핸즈온 머신러닝'은 머신러닝, 딥러닝 그리고 실무에 사용되는 다양한 분야를 인공지능 주요 라이브러리인 사이킷런(Scikit-Learn), 케라스(Keras), 텐서플로(TensorFlow)를 이용해서 다룹니다. 기초적인 내용부터 실무에 필요한 내용까지 다루고 있어 3판까지 꾸준하게 판올임하며 인기를 끌고 있는 것이 아닐까합니다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

이 책은 3판까지 번역된 도서로 머신러닝에 대해서 아는 것이 없다고 해도 이해하기 쉽게 정리된 도서입니다특히 개념 이해부터 도구 설명구체적 예제까지 이해를 돕기 위해 제공됩니다이 책은 노트북 컴퓨터 없이도 그냥 읽을수 있지만 코드 예제를 직접 실행해보는 것을 권장합니다.

 

이 책의 모든 코드 예제는 오픈 소스이며 온라인에서 주피터 노트북으로 제공됩니다쥬피터 노트북은 텍스트이미지실행 가능한 코드가 포함된 대화형 문서입니다또한 구글 코랩을 사용해 노트북을 실행하는 것입니다.

 

이 책은 파이썬과 주요 라이브러리(numpy, pandas, matplotlib…), 머신러닝 알고리즘에 대해 기본적으로 이해하고 본다면 도움이 될것입니다.

 

이 책은 두권으로 나눠져 있으며 1권은 머신러닝에 대해서, 2권은 신경망과 딥러닝에 대한 주제로 작성되어 있습니다.

 

1권의 주요 내용은 머신러닝이 무엇인가머신러닝의 종류와 기본 개념은 무엇인가단계별 머신러닝 절차데이터를 사용해 모델 학습시키기데이터 처리정제준비하기특성 선택과 특성 공학모델 선택과 교차 검증을 사용해 하이퍼파라미터 튜닝머신러닝 도전과제(과소적합/과대적합), 훈련 데이터 차원 축소가장 널리 사용되는 학습 알고리즘비지도 학습 방법등을 다룬다.

 

2권의 주요 내용은 신경망은 무엇인가텐서플로와 케라스를 사용해 신경망 만들고 훈련하기중요한 신경망 구조심층 신경망을 훈련 시키는 기법강화학습 방법대용량 데이터를 효율적으로 적재하고 전처리하기대규모 텐서플로 모델을 훈련하고 배포하기 등을 다룬다.

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

1000페이지가 약간 넘는 만큼 인공지능의 기술적인 부분들을 많이 담고 있는 책이다. 3판이라는 부분에서 볼 수 있듯이 머신러닝 분야에 있어서는 베스트셀러이다.

머신러닝의 입문자를 위한 기초 이해와 프로젝트 전반에 대한 큰 그림의 설명.

신경망과 딥러닝에 관한 부분까지 다루기에 웬만한 중급 전문가를 위한 기술까지 습득할 수 있다. 

 

 

각 챕터마다 연습문제가 있어서 이해를 잘 했는지 확인할 수 있는 좋다. 읽었더라도 실제 문제를 풀다 보면 잘 못 이해하거나 얕게 이해한 경우가 많았다. 

그림과 도표가 컬러로 많이 삽입되어 있는점도 이해하기 쉽게 되어있고 코드는 더 많이 나와있다. 차근차근 빠르지 않게 읽으면 실력 향상에 좋은 책이다.

 

 

 

[개요]

 

딥러닝/머신러닝을 공부하기 위한 도서 중 

언제나 첫 손가락에 꼽히는 

책의 3판 개정판이 나왔다. 

 

[편집 상태]

 

책 저자도 저자지만

번역자 이름만 보고도

아무 고민 없이 구매하는 

박해선님의 번역서이다.

 

부드러운 한글 문장,

깔끔한 설명,

설명이 모자란 부분에는

어김없이 추가된 옮긴이의 주석,

깔끔한 편집까지

흠 잡을 게 없다.

 

1,044쪽에 달하는 거대한 책이니만큼

두 권으로 분권해서 

가볍게 들고다닐 수 있도록 출시한 것은 

아주 훌륭한 아이디어이다. 

 

 

[내용 구성]

 

이론과 실습이 잘 어우러진 책이다. 

 

머신러닝을 구현하면서 배운다는 목표를 

더욱 효과적으로 달성할 수 있도록 

복잡한 주제를 구조화하고 

난이도에 따라 순차적으로 학습할 수 있게 정리했다. 

 

빠르게 발전하는 분야답게 

3판으로 오면서 

전체 코드 버전과 기술 트렌드를 

최신 정보로 업데이트해서 좋았다. 

 

각 장마다 기초 설명과 수학적 이론부터 

실습 코드 및 연습문제까지 따라가다보면 

어느 새 해당 주제에 익숙해진 

자신의 모습을 볼 수 있다. 

 

 

[결론]

 

1판에서 딥러닝이 차지하는 양이 많지 않았는데

어느새 3판으로 오게 되면서 

딥러닝과 머신러닝의 분량이 비슷할 정도로 

딥러닝의 비중이 늘어났다. 

 

원래 핸즈온 머신러닝의 명성만큼

머신러닝/딥러닝 가장 체계적으로 배울 수 있는 

도서로 여전히 진화하고 있다. 

 

쉽게 완독할만한 내용과 두께는 아니지만

이 책으로 인공지능에 입문한다면

더 깊은 지식 축적과 실무 활용에도

문제가 없을 것으로 생각된다.

 

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다

 

스크린샷 2023-10-28 오후 11.28.29.png

 

 

핸즈온 머신러닝 3판은 프랑스의 데이터 사이언티스트이자 작가인 오렐리앙 제롱이 집필한 머신러닝 입문서입니다. 2016년 출간된 1판을 시작으로 꾸준히 사랑받고 있는 베스트셀러로, 이번에 업그레이드된 3판이 출간되었습니다.

이번 3판에서는 최신 기술 트렌드를 반영하고, 실습 코드를 업데이트하여 더욱 완성도를 높였습니다.

저는 개인적으로 흥미로운 부분은 활성화 함수 중에 "ELU, SELU, GELU, Swish와 Mish" 그리고 최적화 부분에서는 AdaMax, Nadam 그리고 AdamW 등의 내용이 새롭게 추가되는 점이고 허깅페이스를 이용한 트랜스포머와 확산모델이 추가되었다는 점입니다.

또한, 모델을 서비스할 때 고려해야할 서빙 내용과 대규모 학습에 대한 내용도 기대가 되고 있습니다.

이 책은 입문서로 분류를 많이 하지만, 저는 아직도 실무르 할때 항상 참조하는 책입니다.

이번에 2권으로 내용이 확대되면서 처음부터 읽는 것은 부담이 될지 모르겠지만, 이책의 내용을 충분히 다 이해를 한다면 실무에서도 도움이 많이 될것이라 생각합니다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

운좋게 AI 일을 시작한 이래로 머신러닝 책을 꽤 읽었습니다. 간혹 아쉬웠던 때가 있었습니다. 입문서를 떼고 나면 그 다음에 할 만한 게 썩 마땅하지 않고, 심화서를 펼치면 저자가 요구하는 배경지식이 제 경험과 상이할 때가 있었습니다. 출판사에서 책 소개를 더 하기도 하고 선수과정을 안내하기도 합니다만 딱 맞아 떨어지지 않곤 했습니다. 흔한 일입니다.


'핸즈온 머신러닝(3판)'은 이전판에 비해 분량부터 압도적입니다. 살짝 놀랐습니다.

 

 

분철한 채로 나와서 가지고 다니기에 편합니다. 출판사가 잘 배려했습니다. 1권이 2권보다 두껍습니다. 머신러닝의 기본 개념부터 유용한 수준이면서도 기본적인 학습 절차를 다룹니다. scikit-learn(sklearn) 라이브러리를 요모조모 빠진 구석 없이 사용합니다. 그러면서 파라미터 공간은 무엇인지 epoch은 무엇인지 세세하게 알려줍니다. 통계 지식이 없는 독자는 경사하강법 같이 많이 들어보았어도 익숙하지는 못한 개념을 많이 접하게 됩니다. 도식 설명부터 코드 설명까지 일일이 챙겼기에 수식은 이해하지 못해도 무방합니다.

 

2권부터는 1권 말미에 맛만 봤던 딥러닝에 본격적으로 들어갑니다. 1권을 달달 외울 필요는 없지만 scikit-learn에는 익숙해지고 나서 2권에 들어가기를 권합니다. scikit-learn이 다루는 전통적인 통계와 데이터마이닝 기법은 머신러닝에 이어집니다. 반면 딥러닝은 최근 들어 아이디어와 기법이 눈부시게 발전했습니다. 상당 부분이 TensorFlow와 Keras 코드이더라도 다른 많은 부분은 scikit-learn과 파이썬 기본 기능입니다. 기본적인 코드의 기능이 다소 낯설다면 결국 TensorFlow 부분마저 이해하기 힘들 겁니다. 더구나 이미지, 텍스트 데이터를 넘나들고 생성 AI와 강화학습까지 언급하기에 정신을 차리기 힘들 지경입니다. 큰 모델을 다루며 GPU RAM까지 들여 봐야 하므로 부담스러울 수도 있겠습니다.


이런 일들이 어렵지 않은 사람은 없습니다. 용기를 내어 완독하기를 바랍니다. 완독하고 나서는 Kaggle을 둘러 보았을 때에 쉽지 않은 주제는 있겠으나 시작하지 못할 주제는 없다고 단언합니다. 욕심내지 않되 끈질기게 읽어내면 얻는 게 많을 겁니다.

머신 러닝 분야는 빠른 속도로 성장하고 있는 분야로 매일 새로운 논문과 새로운 기술이 쏟아져 나온다.

따라서 이 분야를 배우기 위해서는 기본적인 내용을 학습하는 것이 중요한데 “핸즈온 머신러닝” 이러한 내용을 익히기에 좋은 출발점이며, 이후 머신 러닝 및 딥 러닝 분야를 더 탐구하기 위한 바이블 같은 책이다.

이 책을 통해 이론과 실습을 병행할 수 있으며, 머신러닝 전체사이클의 이해와 분산 훈련 및 배포까지 확인할 수 있다.

그리고 깃허브에 주피터 노트북 제공해서 실제로 경험해 보며 머신러닝 지식을 습득할 수 있다.

이 책은 독자들이 머신러닝에 관해 아는 것이 없다고 가정하지만 다음과 같은 지식과 경험은 필요하다.

  • 기초 수학 지식: 선형 대수학, 확률 및 통계, 미적분학 등의 기초 수학 지식이 필요. 이러한 수학적 개념을 이해하면 머신 러닝 알고리즘 및 모델을 더 깊이 이해할 수 있다.
  • 프로그래밍: Python은 머신 러닝과 딥 러닝의 주요 언어 중 하나이므로 Python 프로그래밍에 익숙해질 필요가 있다.
  • 데이터 처리 및 시각화: 데이터를 수집, 전처리하고 시각화하는 능력은 매우 중요한데 Pandas, NumPy, Matplotlib 등의 라이브러리를 활용해 데이터를 다루는 방법을 익혀야 한다.
  • 머신 러닝 및 딥 러닝 라이브러리: Scikit-Learn, Keras, TensorFlow 등의 라이브러리를 이해하고 활용할 수 있어야 한다.

책은 1부의 머신러닝과 2부의 신경망과 딥러닝으로 구성되어 있고 이 책의 장점은…

  • 실무에서 많이 사용되는 라이브러리인 Scikit-Learn, Keras 및 TensorFlow를 사용하여 머신 러닝 및 딥 러닝 모델을 만드는 방법을 설명
  • 예제와 실제 프로젝트를 통해 중요한 머신 러닝 및 딥 러닝 개념을 보다 명확하게 이해할 수 있도록 설명하는데 각 예제는 실제 데이터를 사용하며, 코드 샘플을 통해 학습자가 직접 적용할 수 있도록 안내한다.

“한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.”

사이킷런, 케라스, 텐서플로로 머신러닝, 딥러닝 공부할 때 가장 중요한 가이드 북입니다.

 

처음 인공지능을 공부하려는 분들을 대상으로 만든 책으로 개념에서 출발해서 중급 이상의 고급과정까지 한 권으로 인공지능 학습할 수 있게 만든 책입니다.

 

모든 분야에서 Bible처럼 불리우는 책이 있습니다.머신러닝, 딥러닝에 관심이 있거나 업무에 활용하시는 분들은 이책을 들어보셨고 대부분 이책을 통해서 학습을 하시지 않았을까 생각합니다.이번에 같은 이름으로 [3판]이 나왔습니다. 기존 2판과 어떤점이 다른지는 뒤에서 설명드리겠습니다.책의 부제에서도 나와있는것 처럼 사이킷런, 케라스, 텐서플로2을 기술요소를 주로 사용하고 있고, google vertex등을 이용하는 부분도 뒤에 언급드리겠습니다.

 

 

책의 두께가 있다보니, 분철을 별도로 하지 않아도 기본적으로 책의 구성이 아래와 같이 되어 있습니다.

 

 

 

2판을 가지고 계신 독자분이 있으시면, 3판에서는 어떤 부분이 달라졌는지 가장 궁금하지 않으실까 합니다.

상세 변경 사항 : https://github.com/ageron/handson-ml3/blob/main/CHANGES.md 

아래 글에서도 있듯이, 최근에 별도의 책의 주제로도 출간되는, 그레이디언트 부스팅, 트랜스포머스 등 새로운 기술이 언급되는 부분은

이 책을 통해서, 최신의 기술을 사용하고 학습 할수 있습니다.

 

 

■ 대상독자 / 소개

·  이 책은 머신러닝에 관해 아는것이 거의 없다고 가정하고 내용이 구성됩니다. 그래서 독자 대상은 모든분들이 되실거 같습니다.

·  박해선님의 번역관련 책은 대부분 해당 git에서 쉽게 jupyter 노트북 형태로 제공되어서, 쉽게 동작을 살펴볼수 있습니다.

    https://github.com/rickiepark/handson-ml3

·  1부에서는 <머신러닝>에 대해서 설명하고 주로 사이킷런을 이용합니다.

·  2부에서는 <신경망과 딥러닝>에 대해서 설명하고 주로 텐서플로와 케라스을 이용합니다.

 

 

■ 1부 : 머신러닝에서 다루는 주제

·  기본적인 머신러닝의 개념

·  분류 / 모델훈련 / 서포트 벡터 머신 / 결정 트리 / 앙상블학습과 랜덤 포레스트 / 차원 축소 / 비지도 학습에 대해서 다룹니다.

·  보통 머신러닝의 다양한 기법을 학습하였지만, 실제 업무에서 어떻게 활용할지 모를때 좋은 사례가 제시됩니다.

이것을 기반으로 사용기법의 흐름을 잡고, 적용할 수 있는 기준선이 될것 같습니다. 

 

 

 

·  머신러닝의 종류에 대해서 

    - 훈련 지도 학습(지도, 비지도, 준지도, 자기지도, 강화학습)

    - 실시간으로 점진적인 학습을 하는지 아닌지 (온라인 학습과 배치 학습)

    - 사례기반 학습과 모델 기반 학습

에 대해서 항목별로 설명을 합니다. 예전에는 보통 개인적으로 지도, 비지도, 강화학습 보통 3가지 카테고리로 구성해서 설명하였는데 이 책에서는 좀 더 다양한 종류로 분리해서 범주를 소개합니다.

머신러닝의 첫 개념은 데이터를 어떻게 바라보는 관점이 매우 중요한데, 좋은 구성 같습니다.

 

 

준지도 학습 설명 그림

 

·  머신러닝 수행시, 보통 고민하게 되는 나쁜 데이터 사례에 대해서 정의합니다.

아래의 항목은 머신러닝을 잘 수행했지만, 실제 active의 결과값이 예측치와 다른 경우 주로 고민하게 되는 부분입니다. 아래 사항을 알고 있다면, 시행착오를 줄일수 있다고 생각합니다.

 - 충분하지 않은 양의 훈련 데이터

 - 대표성 없는 훈련 데이터

 - 낮층 품질의 데이터

 - 관련없는 특성

 - 훈련 데이터 과대 적합

 - 훈련 데이터 과소 적합

 

 

# 2장에서는 "머신리닝 프로젝트 처음부터 끝까지" 라는 내용으로 보통 머신러닝의 회귀, 포레스트 특정 기법하는 관점보다는 전체적으로 처음 머신러닝을 업무에 적용해보고 싶을때의 막막함을 해소하고, 서비스에 적용하려고 할때 전체적인 process와 흐름 및 데이터를 수집하고, 가공하고 학습 이후에 무엇을 해야 할지 순차적으로 설명되어 지는 과정으로 되어 있어서 프로젝트를 하시는 경우 따라해야 할 기준선을 제공합니다. 뒤로 갈수록 검증검증, 튜닝, 테스트, 런칭, 모니터링, 유지보수에 대한 항목으로 구성되어 있어서 크게 흐름을 파악하기 좋은 부분입니다. 이론적인 것 뿐만이 아니라, 코드를 통해서 검증하는 예시도 포함되어 있습니다.

 

 

# 3장 "분류" 에서는 가장 보편적으로 사용하는 MNIST (70,000개의 작은 숫자 이미지) 데이터 셋을 통해서 학습합니다.

사이킷런을 통해서 이미지 분류를 진행합니다. 사이킷런의 SGDClassifier클래스를 이용해서 확률적 경사 하강법(SGD) 분류기로 시작해봅니다. 이 분류기는 매우 큰 데이터셋을 분류하는데 효율적으로 처리합니다. cross_val_score()함수를 통해서 모델을 평가합니다.

 

·  모델에 대해서 선형회귀 부터 진행합니다. 모델에 대해서 훈련시키는 방법중에 1) 닫힌상태 방정식 2) 경사 하강법의 경우가 있습니다.

선형회귀을 통하여 정규방식식을 통한 해석적인 방법, 계산복잡도, 경사하강법(GD)를 통해서 최적의 해법을 찾을수 있는 최적화 알고리즘을 이용합니다. 경사하강법은 매우 중요하기 때문에, 이 책에서도 다양하게 설명하고 있습니다. 배치경사 하강법, 확률적 경사 하강법, 미니배치 경사 하강법에 대해서 추가적으로 구성되어 있습니다.

 

 

 

·  SVM이라고 불리우는 서포트벡터 머신의 내용은 5장에 설명되어집니다. 선형, 비선형분류, 회귀, 특이치 탐지에서도 사용 할 수 있는 다목적 머신러닝 모델입니다. SVM은 중소규모의 비선형 데이터셋(수백에서, 수천개의 샘플), 특히 분류작업에서 장점을 가집니다.

다양한 분류를 그림을 잘 구성되어 있습니다. SVM을 분류가 아닌 회귀에 적요하는 내용도 설명되어 집니다.

 

 

 

·  머선러닝중에 트리는 이해관계자에게 가시적으로 설명이 쉬운 알고리즘은 결정트리가 있다. 분류와 회귀 작업 그리고 다중 출력작업까지가능한 머신러닝 알고리즘 입니다. 또한 매우 복잡한 데이터셋도 학습할수 있는 강력한 알고리즘입니다.

최근에는 자주 사용하는 랜덤 포레스트(7장) 의 기본 구성요소이기도 합니다. 결정트리을 DecisionTreeClassifier를 통해서 훈련합니다.

 

 

 

회귀에 대한 문제는 DecisionTreeRegressor를 통해서 실습합니다. 우리가 일반적으로 알고 있는 tree의 의사결정은 아래 그림처럼 결정됩니다.

 

 

 

·  차원축소를 통한, 수백만 샘플중에 다양한 특성으로 인한 훈련이 느려지는 현상을 대처하기 위한 방법등이 소개됩니다. 매드폴드 학습,  주성분 분석등이 8장에 구성되어 있고, 9장에서는 비지도 학습 중 군집, k-평균 알고리즘, DBSCAN등의 내용으로 구성되어 있습니다. 

 

 

■ 2부에서는 신경망과 딥러닝에 대한 내용으로 구성되어 있습니다.

· 신경망은 딥러닝의 핵심입니다. 인공지능의 시작인 퍼셉트론에 대한 이론적인 부분, tanh, ReLu함수 둥이 소개됩니다. 

인공 신경망을 만들고, 훈련하고 조금더 복잡한 심층 신경망을 훈련해봅니다. 심층 신경망의 출력층이 멀어질수록 그레이디언트가 점점 작아지거나 커지는 현상에 대해서 해결방법을 알아봅니다. 

·  12장에서 텐서플로의 구조 및 사용법, 타입변환/변수/다른 데이터구조, 사용자 정의, 주로 사용하는 함수에 대해서 설명되어 있습니다.

·  13장에서 대용량 데이터셋을 이용하기 위해서는 텐서플로 자체의 데이터 로드 및 전처리 API인 tf.data를 사용합니다. 멀티스레드와 큐를 사용하여, 여러 파일에서 동시에 읽고, 샘플을 셔플링하거나 배치로 만드는 등의 작업을 수행할수 있습니다. 

프로토콜 버퍼를 이용해서 텐서플로에서 사용하는 다양한 내용이 있습니다.

·  합성곱 신경망은 14장에 소개 됩니다. CNN약어로 사용되는데, 시각분야에 국한되지 않고, 음석인식, 자연어처리 (NLP)와 같은 다른 작업에서도 많이 사용됩니다. 해당 부분은 케라스를 통해서 실습을 진행합니다. 

CNN에 가장 중요한 구성요소인 합성곱 층에 대해서 자세히 설명합니다.

 

 

합성층 이후에, 풀링 층에 대해서 설명하고, 케라스로 구현을 합니다. Lenet-5, alexNet, GoogLeNet, VGGNet, ResNet, Xception, SENet 등에 대해서 다양한 합성곱층을 알수 있습니다. 

·  RNN(네트워크 순환 신경망)에 대해서 살펴보고 역전파하여 네트워크를 훈련하는 내용으 15장에 설명되어집니다.

RNN훈련하고, 시계열 예측을 진행합니다.

 

 

 

·  대규모 텐서플로우 모델 훈련과 배포를 위해서, 다양한 예시가 제공됩니다.

Docker컨터네너에서 TF서빙 실행하기, REST-API를 이용하는 방법, gRPC API로 TF 서빙에 쿼리하기, 구글클라우드에 버텍스AI를 활용해서 배포하는 실습하는 내용도 있어서, 새로운 내용이 포함되어서 관련 내용이 궁금하셨으면 도움이 많이 됩니다.

매장의 마지막에 연습문제가 제공 되고 있어서, 개념을 다시 잡을수 있고, 3부 부록에서 연습문제 정답도 있지만 부록 B,C,D,E에 있는 내용은 하나의 별도 책으로 낼 정도로 일반 책에서 다루지 않는 내용이 포함되어 있습니다.

 

 

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

1-1.jpg

 

1-2.jpg

 

 

 

이 압도적인 두꺼움.

지난 2판이 952쪽이었는데 새로 나온 3판은 1,036쪽으로 조금 더 두꺼워졌다.

1000페이지가 넘는 책을 들고 다닌 다는  것 만으로도 부담이 되는데 한빛 미디어에서 센스 넘치게 책을 2권으로 분권 할 수 있도록 만들어 주었다.

1-3.jpg

 

핸즈 온 머신러닝 3판 역시 박해선님이 번역을 하셨다.

(저는 박해선님의 책은 모두 갖고 말거예요~!)

 

​본격적으로 책에 대해 이야기 해 보겠다.

책은 크게 세 부분으로 나눠 볼 수 있다.

 - 첫 번째 부분 : 머신러닝의 기초

머신러닝의 전반적인 개요, 데이터 전처리, 모델 선택, 평가, 하이퍼파라미터 튜닝 등

 

- 두 번째 부분 : 딥러닝의 기초

인공 신경망, 합성곱 신경망, 순환 신경망, 자연어 처리, 컴퓨터 비전 등

 

​- 세 번째 부분 : 딥러닝의 고급 주제

생성적 적대 신경망, 변형기, 캡슐 네트워크, 강화 학습 등

 

​첫번째 부분의 머신러닝 기초 부분은 핸즈 온 머신러닝 2판에서 역자이신 박해선 선생님이 직접 동영상 강의 영상도 만들어 놓으셨는데 나에게는 머신러닝 기초를 공부하는데 정말 큰 도움이 되었었다.

3판에서도 chapter1 ~ 9까지의 내용은 거의 변화가 없으므로 독자들에게 큰 도움이 될 거 같다.

 

​'핸즈 온 머신러닝'은 이미 책에서도 소개하듯 아마존 인공 지능 분야 부동의 1위 도서이다.

그리고 한 번 읽어보면 그 이유를 확인 할 수 있다.

머신러닝의 기초부터 고수준의 라이브러리까지 배울 수 있다.

3판은 무섭게 변화 발전하는 AI 분야의 최신 기술을 소개하고 코드 전체를 최신 라이브러리 버전으로 업데이트 하여 이 분야를 공부하는 사람들에게는 책의 두께가 말해주듯 바이블이라고 할 만하다.

 

​나는 위에서 소개한 박해선 선생님의 핸즈 온 머신러닝 2판의 동영상 강의를 보면서 이 책의 1~9장까지 공부했다.

핸즈 온 머신러닝 답게 이론의 소개, 수학적 이론 설명, 그리고 이론을 집적 적용할 수 있는 코드로 이루어져있다.

코드도 이론에 맞게 간결하게 작성되어 있다. 

그리고 결과를 확인 할 수 있는 코드들 이라서 좋았고 깃허브에서 코드를 실행시킬 수 있어서 쉽게 공부할 수 있었다.

 

​또한 3판에 새롭게 추가된 하이퍼파라미터 튜닝을 위한 케라스 튜너 라이브러리는 정말 반가웠다.

다른 책에서 맛보기만 보여줘서 제대로 공부하고 싶은 마음이 있었는데 역시 나의 머신러닝 바이블 '핸즈 온 머신러닝'으로 공부할 수 있어서 좋았다.

 

​누군가가 (bard 와 Being chat 이라고 말한 적은 없다.) 말했는데

이 책에 단점이 있다면 수학젹인 내용을 깊게 다루지 않는다는 것이라고 하던데......

물론 20년 전이라는게 함정이지만 대학 때 공업수학도 듣고 했음에도 불구하고 이 책의 수학은 나에게는 어려웠다.

이게 깊게 다루지 않은 것이라서 제대로 수학을 보여준다면 솔직히 나는 포기해 버렸을 지도 모르겠다.

 

​하지만 기초부분을 충분히 설명하려 하다보니 컴퓨터비전 분야의 설명이 좀 약하다는 생각이 들었다.

이 분야는 필요에 따라 이  분야를 다루는 다른 책의 도움이 필요할 것 같다.

​그리고 자연어 처리 부분에 트랜스포머 라이브러리에 대한 내용도 다루고 있다.

물론 이 부분 역시 쉽지 않은 부분이라서 제대로 공부하려면 다른 책으로 공부를 해야할 것 같다.

 

​딥러닝의 부분은 워낙 내용이 방대하고 새로운 기술이 쏟아져 나오고 있어서 아무리 핸즈 온 머신러닝이라 해도 이 분야를 커버하기에는 무리가 있다.

 

​이 책은 머신러닝 공부를 시작하는 사람들에게는 필독서라고 생각한다.

기초를 탄탄히 다루고 있다.

그리고 딥러닝에 대해서 자신이 전문적으로 분야를 선택하는 데도 큰 도움이 될 것이다.

머신러닝 초급자에서 중급까지 꼭 읽어야 할 책이다.

 

​항상 이렇게 좋은 책을 정성스러운 번역과 함께 만날 수 있다는 것이 참 감사하다.

많은 사람들이 '핸즈 온 머신러닝'으로 한 단계 성장 발전하는 자신의 모습을 볼 수 있기를 바란다.

 

​ "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

시작하며

출처 입력

핸즈온 머신러닝 3판이다. 지난번에 2판 리뷰글을 작성했는데 그때 그 책을 다 보지도 못했건만 어느새 이 3판이 나오다니... 2판에서 자세히 보지 못했기 때문에 이번엔 진짜 제대로 보겠다는 마음으로 3판을 보게 되었다! 그리고 역시나 이번에도 다 보진 못했다... 하지만 전체적으로 다시 훑어보면서 어떤 식으로 공부하면 좋을까? 고민하며 리뷰를 시작한다.

이 책은 뭐 하는 책인가?

출처 입력

책 제목에서 알 수 있듯이 이 책은 머신러닝 책이다. 그리고 아주 많은 내용 을 담고 있다.

아주 많은 내용을 담고 있다는 것에는 머신러닝에 포함되는 다양한 기술 을 담고 있다는 말이다.

이 책에서 다루는 기술들

  • 사이킷런 (scikit-learn): 파이썬 머신러닝 라이브러리

  • 텐서플로 (TensorFlow): 구글 딥러닝 프레임워크

  • 케라스 (Keras): 파이썬 신경망 라이브러리

  • 파이썬 (Python): 인터프리터 방식의 프로그래밍 언어

    • 넘파이 (NumPy): 파이썬 수치 계산 라이브러리

      • https://github.com/rickiepark/handson-ml3/blob/main/tools_numpy.ipynb

    • 판다스 (Pandas): 파이썬 데이터 처리 라이브러리

      • https://github.com/rickiepark/handson-ml3/blob/main/tools_pandas.ipynb

    • 맷플롯립 (Matplotlib): 파이썬 데이터 시각화 라이브러리

      • https://github.com/rickiepark/handson-ml3/blob/main/tools_matplotlib.ipynb

이 책에서 다루는 내용들을 한눈에 확인하려면 다음 링크를 확인하면 된다.

이거 도대체 어떻게 공부해야 하는 거야?

출처 입력

위의 링크를 통해 대충 둘러봐도 내용이 엄청나게 많은 것을 알 수가 있다. 두꺼운 책과 방대한 내용 그리고 처음 접한다면 익숙하지 않은 내용들이 너무나도 많아서 바로 책을 덮어버릴 수도 있다.

내용 자체가 초보자용은 아니다. 워 자바 언어 공부 혹은 파이썬 공부한다고 책 한 권 가지고 처음부터 쭉 소화해 나가면서 공부하는 방법으로는 솔직히 힘들다.

 

이런 책은 처음부터 마지막까지 정주행은 솔직히 어렵다.

 

워낙 내용이 많기 때문에 처음부터 꾸역꾸역 나가다 보면 결국 의욕이 풀려서 포기하게 된다.

이 책에 나오는 목차 하나만 가지고도 책이 몇 권이 나올 수 있는 주제이다.

 

우선 이 책을 큰 덩어리로 나눠서 머리에 전체적인 그림을 그려 나가야 한다.

 

바로 1장이 전체적인 그림을 그리게 해주는 아주 중요한 챕터이다.

머신 러닝이 뭔지 왜 머신러닝을 사용하는지 어떤 개념들이 있는지 내가 하고 싶은 무언가가 있는데 도대체 무엇으로 실현시킬 수 있는지 설명해 주는 부분이다.

더 많은 내용이 책에 담겨 있습니다.

지도/비지도 학습, 여기서 말하는 분류, 특성, 타깃, 화귀가 어떤 의미인지 전체적으로 필수 개념들을 그냥 읽으면서 이해하는 장이기 때문에 이쪽 분야가 처음이라면 반드시 읽어보면서 개념을 익혀야 한다.

1장을 통해 대충 알았고 다음은 뭐 하지?

출처 입력

손글씨 맞추기 MNIST

출처 입력

물론 순서대로 다 보면 좋겠지만 일단은 머신러닝의 "HELLO WORLD" 예제 같은 MNIST를 먼저 해보면 되겠다. 3장 분류에서 MNIST 예제가 시작된다. 직접 사람이 손으로 작성한 이미지를 컴퓨터가 어떤 숫자인지 알아보는 것이다.

 

3장 보다가 좌절하신 분들을 위해

출처 입력

이 책을 보고 진행하는 것이 이해가 잘 되고 문제가 없다면 이 책 그냥 쭉 읽고 넘어가면 되겠다.

하지만 진행이 어렵다고 느껴진다면 다음의 자료를 추천한다.

벌써 7년이나 된 김성훈 교수님의 모두를 위한 딥러닝 유튜브 강의 이다.

책에서 나오는 내용이 훨씬 쉽게 설명이 되어있고 수학을 몰라도 들을 수 있게 난이도가 설정되어 있다.

그다음은?

출처 입력

그다음은 이 책을 계속 읽어 나가거나 밑바닥부터 시작하는 딥러닝 시리즈를 공부하거나 하면 되겠다.

이 책에는 학습을 돕는 다양한 자료들이 있다.

 
  • 넘파이 (NumPy): 파이썬 수치 계산 라이브러리

    • https://github.com/rickiepark/handson-ml3/blob/main/tools_numpy.ipynb

  • 판다스 (Pandas): 파이썬 데이터 처리 라이브러리

    • https://github.com/rickiepark/handson-ml3/blob/main/tools_pandas.ipynb

  • 맷플롯립 (Matplotlib): 파이썬 데이터 시각화 라이브러리

    • https://github.com/rickiepark/handson-ml3/blob/main/tools_matplotlib.ipynb

  • 다음은 역자 박해선 님의 깃허브 주소이다.

이런 책을 번역하는 것만으로도 정말 대단하신 분이라 생각한다.

엄청난 노고에 감사합니다.

마치며

출처 입력

사실 지금 글을 쓰는 나도 이 책 가지고 뭐라 뭐라고 할만한 수준도 안된다. 그냥 맛만 살짝 봤을 뿐이고 인공지능의 원리를 깊이 파는 것보다 당장에 있는 기술을 응용해서 뭔가 만들어 보는 것만으로도 할 수 있는 게 너무나 많다. 당장 허깅페이스에서 트랜스포머만 가지고도 할 수 있는 것들이 많다. 아니면 파이썬으로 이미 잘 만들어진 AI 관련 API를 가지고도 응용할 것들이 많다. 하지만 어떻게 동작하는 건지 원리를 파악하고 싶은 은 깊이 있는 분들이라면 이 책을 추천한다.

핸즈온 머신러닝
 
핸즈온 머신러닝
저자
오렐리앙 제롱
출판
한빛미디어
발매
2023.09.29.
 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

2.jpg

 

이제는 모든 산업 전반에 걸쳐 머신러닝을 빼고는 이야기하기 어려운 시대가 된 것 같다. 또한 다양한 머신러닝 개념이 쏟아지고 있는 상황에서 쉽게 접근하기도 어려운 상황인 것 같다. 대부분 머신러닝에 관련된 책들이 어느 한 두가지 도구를 이용하여 개념 및 실습하는 과정을 설명하기 떄문에 폭넓은 지식을 쌓기에는 부족한 느낌을 많이 받게 된다. 이 책은 이런 점에서 다양한 장점을 가지고 있는 책이다. 책의 표지에 나온 대로 사이킷런, 케라스, 텐서플로 2로 머신러닝과 딥러닝에 대해 이론과 실무를 모두 커버할 수 있다. 사이킷런을 통해 머신러닝 알고리즘을 배우고, 케라스를 활용하여 딥러닝을 구현하고, 텐서플로로 컴퓨터 비전, 자연어 처리 등 다양한 응용 분야를 접할 수 있다. 

 

이 책은 읽는 사람이 머신러닝에 대해 경험이 없다는 것을 가정하고 시작한다. 따라서 데이터로 부터 학습할 수 있는 프로그램을 구현하기 위해 필요한 개념과 직관, 도구를 설명하고 있다.  예를 들어, 사이킷런은 사용법이 간단하고 많은 머신러닝 알고리즘이 효율적으로 구현되어 있기 떄문에 머신러닝을 처음 배울 때 사용하기 쉽다. 케라스는 고수준의 딥러닝 API로서 쉽게 신경망을 훈련하고 실행할 수 있다. 텐서플로는 분산 수치 계산을 위한 복잡한 라이브러리로써 GPU 서버에 계산을 분산하여 대규모 신경망을 효과적으로 훈련하고 실행할 수 있다. 이러한 개념을 바탕으로 실제 활용할 수 있는 방법을 제시하면서 구체적인 작동 예제와 이론을 통해 머신러닝을 직관적으로 이해할 수 있도록 한다.

 

책은 총 2부로 구성되어 있다. 약 1,000여 페이지에 달할만큼 방대한 양을 가지고 있다. 1부 머신러닝에서는 머신러닝의 개념과 프로젝트 단계, 데이타에 따른 학습과 비용 최적화,  모델 선택 및 학습 알고리즘에 대해 소개한다. 2부 신경망과 딥러닝에서는 신경망에 대한 개념과 중용한 신경망 구조, 신경망 훈련 방법 및 강화학습 등에 대해 설명한다.

 

책의 곳곳마다 그래프와 실제 테스트 가능한 코드들이 있기 때문에 수시로 코드를 실행하고 그 결과를 확인할 수 있다. 또한 각 장마다 연습문제가 나오는데 이 또한 부록에 해답이 있기 때문에 문제를 풀어보고 자신이 제대로 이해했는지 확인도 가능하다. 한번에 모든 것을 다 할 수는 없겠지만 이 책을 통해 머시러닝와 딥러닝에 대한 개념을 이해하고 실제 동작 가능한 코드를 가지고 테스트해 봄으로써 자신이 원하는 기능으로 확장하는 것도 가능한 것 같다. 어느정도 파이선 개발 경험이 머신러닝을 쉽게 접할 수 있게 해 주는 책이라고 생각한다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

핸즈온 머신러닝 3판_02.png

 

저자인 오렐리앙 제롱의 "핸즈온 머신러닝"은 머신러닝 세계에 입문하려는 사람들을 위한 귀중한 자료로 평가받고 있는 유명한 책으로 실용적인 접근 방식, 개념의 포괄적인 커버리지 및 인기 있는 파이썬 라이브러리를 사용한 실습을 통해 머신러닝에 이제 막 접하기 시작한 입문자부터 경험이 많은 현업에 종사하고 있는 전문가 모두에게 도움이 되는 귀중한 책이라고 생각합니다.

 

이번에 새로 출간된 "핸즈온 머신러닝 3판"은 1판과 2판에 이어 이번에 3판으로 개정이 되어 새로 출간된 도서로서, 전체적으로 기존의 코드들이 새로운 버전으로 새로 수정이 되었으며, 사이킷런에 새롭게 추가된 많은 기능들을 소개하고, 트랜스포머 라이브러리, 케라스의 새로운 전처리 데이터 증식 층등도 소개하고 있습니다. 

(도서의 2, 3판의 변경된 부분에 대한 자세한 내용은 13~15페이지를 참고하세요.)

 

 

 

핸즈온 머신러닝 3판_04.png

 

지도학습과 비지도학습, 모델 평가 기법, 특징 공학 전략 및 데이터 전처리 방법과 같은 개념들을 명확하고 알기 쉽게 설명해주며, 복잡한 개념들을 이해하기 쉬운 설명과 그림을 통해서 새로운 것에 대한 접근하기 어렵지 않게 도움을 주고 있습니다.

 

책에서 진행되는 다양한 머신러닝 알고리즘에 대해 깊이 있게 다룹니다. 선형 회귀부터 결정 트리와 같은 앙상블 방법(랜덤 포레스트)까지 각각의 알고리즘에 대해 철저하게 설명하며 사이킷럿(Scikit-Learn)을 사용하여 구현하는 코드 예제를 제공해 주고 있으며, 각 장마다 실전 연습 문제를 제공하여 독자들이 이러한 알고리즘을 실제 데이터셋에 적용하는 경험을 할수 있도록 도움을 줍니다.

 

"핸즈온 머신러닝"의 큰 장점 중 하나는 Keras와 TensorFlow를 사용하여 딥러닝에 대해 상세히 다룬다는 것입니다. 저자는 신경망에 대한 단계별 소개를 제공하며 합성곱 신경망(CNN)과 순환 신경망(RNN)을 사용하여 이미지 인식 작업 및 순차 데이터 분석 작업에서 강력한 모델일 구축하는 방법도 보여줍니다. 이 부분에서 독자들은 대용량 데이터셋 관련 복잡한 문제를 해결하기 위해 필요한 도구와 기술 스킬을 배울 수 있으며, 뿐만 아니라 "핸즈온 머신러닝"은 종합적인 머신러닝 프로젝트 접근 방법에 대해서도 안내합니다.

 

 

 

핸즈온 머신러닝 3판_06.png

 

도서의 제목에서도 알수 있듯이 주피터 노트북 또는 코랩을 이용해서 공개되어 있는 데이터셋등을 다운받아서 실습을 해보면서 이해할수 있도록 도움을 주고 있으며, 책이 1000페이지가 넘을 정도로 출간된 왠만한 머신러닝책에서 다루고 있는 필수적으로 알아야 하는 거의 모든 알로리즘들을 대부분 다루고 있기 때문에 머신러닝에 대한 바이블과 같은 책으로, 이 책 한권으로 머신러닝 프로젝트를 처음부터 끝까지 완성하는데 도움이 될거라 생각 합니다.

 

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

기존에 2판을 구입해서 읽은 독자 입니다.

 

3판은 전작과 다른 몇가지가 있는데 그 중에 저에게 도움이 된 부분은 텐서플로우가 버전2로 업데이트 되었고 케라스 코드로 대체가 되었다는것과 몇가지 최신(아주 최신은 아니지만)내용이 추가 되었다는 것입니다.

그 중 제가 주로 사용하는 TFLite에 대한 내용도 간략하지만 추가가 되었습니다. 하지만 주 내용이 아니라서 간단한 사용법만 다룬것은 조금 안타깝지만 워낙에 유명한 책(초소형 머신러닝 TinyML: 이전 포스팅에 소개를 한 적이 있습니다. 역시 한빛미디어에서 번역한 책입니다)이 있기 때문에 소개만으로도 만족할만 합니다. 비전트랜스포머 역시 내용이 추가 되었지만 간단한 설명이라서 역시 아쉽기는 합니다. 시중에 비전트랜스포머에 대해 다루는 책이 거의 없는것을 볼때 아마도 시간이 더 지나야 관련내용들이 설명된 책들이 나오지 않을까 싶습니다.

한두가지 아쉬운 점을 적기는 했지만 이 책은 그것보다는 머신러닝(딥러닝)을 좀더 넓은 시선을 가지고 풀어나가는 느낌이 들었습니다. 학교에서 쓰는 교재처럼 전 분야에 걸쳐서 설명을 하고 있다는 생각이 듭니다.

내용을 좀 더 들여다 보면,

1부에서는 머신러닝에 필요한 필수 내용들을 다루고 있습니다. 예전에 사용되었던 알고리즘들과 관련된 수학들에 대한 설명들이 잘 만들어져 있었습니다. 이런 내용들을 공부하기 위해 여러권의 책들과 논문들을 읽을 필요가 없이 이 한권으로 잘 설명이 되어 있는것 같습니다. 이전에 공부한 내용을 리마인드 하기위해 여러권의 책을 구입해서 읽었는데 일찍 이 책을 알았으면 한권으로 해결하지 않았을까 하는 생각도 듭니다.

2부에서는 텐서플로우(케라스)로 딥러닝에 대한 설명을 하고 있습니다. 앞부분에는 케라스를 이용해서 모델을 구현하는 내용을 설명하고 있고 이 후에는 CNN, RNN, 어텐션 같은 모델에 대해서 하나하나 자세히 설명을 해 주고 있습니다.

1부가 리마인드 하는데 도움을 주었다면 2부에서는 모델을 구현하는 기초적인 방법에 대한 설명이 큰 도움이 되었습니다. 2권 초반부에서 간단한 모델을 시작으로 구조가 변할때 어떻게 케라스로 적용을 해야 하는지를 잘 알려줍니다. 구현이 처음이거나 복잡한 모델을 어떻게 구현해야 할지 모르는 사람들에게 도움이 될것 같습니다. 이 과정을 거치고 나니 모델들을 이해하는것이 좀 더 쉬워진것 같습니다.

 

이 책에서 가장 마음에 드는 부분은 관련 주제에 대한 큰 그림을 보여준다는데 있습니다. 책을 따라서 코드를 입력하고 그 결과를 보는것은 쉽게 할수 있지만 그 이후에 자신이 가지고 있는 문제에 실제로 적용하기 위해서는 동작과정(혹은 구조)을 이해하는것이 필요한데 그 내용 또한 잘 설명이 되어 있다는것이 장점인것 같습니다.

딥러닝을 처음 접하거나 딥러닝을 알기는 하는데 적용하는데 어려움을 겪는 분들 그리고 만들어져 있는 코드를 사용하는것이 아닌 직접 코드를 만들어보고 싶은 분들이 보시면 좋을것 같은 책입니다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

머신러닝에 대해서 다루는 많은 책들을 보았지만 나에게는 이 책에 있는 설명이 가장 효과적으로 이해되었다.

마냥 쉽지는 않았지만 읽으면서 배우는 즐거움이 있었다.

핸즈온 머신러닝 3판

머신러닝과 딥러닝 분야에 바이블이 있다고 하면

머신러닝은 파이썬 라이브러리를 활용한 머신러닝

딥 러닝은 핸즈온 머신러닝을 주저없이 추천할 수 있다

나의 머신러닝과 딥 러닝 책의 구매 조건은

깃 허브로 모든 코드를 실행해 볼 수 있는 주피터 노트북을 제공하느냐가

가장 중요한데 위 두 책은 깔끔하게 설명된 코드와 주석을 제공한다

구매를 안 할 이유가 없다

다만 핸즈온 머신러닝 1판과 2판을 모두 가지고 있어서

책이 출간되었을때 구매에 대해서 고민이 있었다

운이 좋게 한빛 미디어 서편단에 당첨이 되어서

좋은 책에 대한 서평을 작성 할 수 있어서 다행이다.

1판이나 2판을 가지고 계신 분이 3판을 추가 구매 해야 하는 지에 대해서는

직접 읽어 보니 구매를 해야 한다가 결론이었다

3판에서 추가된 내용 중 중요한 내용은 다음과 같다

자연어 처리를 위한 허깅 페이스의 트랜스포머 라이브러리,

스테이블 디퓨전, 컴퓨터 비전, 자연어 처리 분야의 최신 트랜드와 구현

기존에는 핸즈온 머신러닝을 구매하고 위에 주제에 대해서는 별도의 책을 구매 했어야 했다

그런데 3편에서는 위에 내용을 다 다루고 있어서 별도 구매가 필요 없다

즉 새로 구매하시는 분들으 구매가 당연하고 1판이나 2판을 가지고 계신 분도

3판을 구매 하시는 것이 바람직하다는 것이 결론이다.

특이 번역은 박해선 선생님이 진해해 주셔서

군더더기 없고 깔끔하다 AI에 대한 깊은 이해가 있으신 분이 번역을 해 주신 거라

번역서를 볼 수 있는 부분에 항상 감사할 따름이다

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

핸즈온 머신러닝은 말할필요도 없을 정도로 머신러닝계의 바이블이다. 과거 2판을 읽은 적이 있었는데 그때보다 책이 양적으로나 질적으로나 더 발전했다는것을 알 수 있었다. 양적으로는 책을 2권으로 분리할 정도로 내용이 더 풍부해졌다는 것이고, 질적으로는 최신 개발환경을 적용했다는 것이다. 머신러닝을 처음 시작하는 사람들이나 이미 어느정도 아는 사람들도 참고하면서 머신러닝에 대한 원리를 파악하기 정말 좋은 책이다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

학교 수업때문에 최근 ML 관련 책들은 닥치는 대로 읽어봤지만

이 책이 제일 깔끔하게 잘 정리되었고, 놓치는 부분 없이 모든 것이 들어 있어서,

이거 한 권으로 ML 입문을 종결할 수 있다.

예제소스: https://github.com/rickiepark/handson-ml3

 

수학이나 어떤 프로그래밍을 접할 때 바이블이 한권씩은 존재 하는데요~

머신러닝의 바이블은 핸즈온 머신러닝이 아닐까 생각해 봅니다.

2006년 제프리 힌턴의 정확도 98%로 손글씨 숫자를 인식할 수 있는 심층 신경망 훈련 기법에 관한 논문 발표 이후 불과 몇년만에 머신러닝은 산업계를 정복했는데요~

만약 지능을 갖춘 로봇을 만들고 싶다거나 얼굴을 인식하게 하거나 걸어서 돌아다니게 만들고 싶다면 이 책을 이용해 머신러닝에 도전해 보시길 바랍니다.

 

책 소개

이 책의 목표는 데이터로부터 학습할 수 있는 프로그램을 구현하기 위해 필요한 개념과 직관,도구를 설명하는 것입니다.

책의 구성은 다음과 같이 1부와 2부로 나뉘어져 있으며

1부 머신러닝에서는 다음과 같은 주제를 다루고 있습니다.

  • 머신러닝의 기본개념
  • 전형적인 머신러닝 프로젝트 단계
  • 데이터를 사용해 모델 학습시키기
  • 데이터처리,정제, 비용함수 최적화하기
  • 특성선택과 특성공학
  • 모델 선택과 교차 검증을 사용해 하이퍼파라미터 튜닝하기

기타 머신러닝에 대한 기본 지식을 사이킷런을 이용하여 실습과 함께 진행을 합니다.

2부 신경망과 딥러닝에서는 다음 주제를 다루고 있습니다.

  • 신경망이 무엇인지 살펴 보기
  • 텐서플로와 케라스를 사용한 신경망 만들고 훈련시키기
  • 피드포워드신경망,비전을 위한 합성곱신경망,순차처리를 위한 LSTM,자연어 처리를 위한 트랜스포머,생성학습을 위한 오토인코더와 GAN 
  • 강화학습을 사용하여 전략을 학습할 수 있는 에이전트를 만드는 방법
  • 대용량 데이터를 효율적으로 적재하고 처리하기

위와 같이 2부에서는 좀 더 깊이 있는 신경망과 딥러닝을 해부해 보고 실전에서 사용할 수 있는 방법등을 다루고 있습니다.

이 책은 내용의 양이 방대하여(무려 1000페이지가 넘는 양) 1부와 2부로 나뉘어져 있으며 저는 전자책으로 보고 있지만 실물 책으로는 두권으로 분리를 할 수 있다고 합니다.

1판에서 2판으로 변경사항은 텐서플로 1.x 에서 텐서플로 2.x 로 마이그레이션 되었습니다. 텐서플로 1.x 버젼의 코드가 텐서플로 2.x에서 실행 되지 않는 문제점이 있는데 2판에서 2.x 버젼으로 변경하였는데 3판에서는 모든 코드를 최신 라이브러리 버젼으로 업데이트 되었습니다.

또한 3판에서는 자연어처리(트랜스포머 + 허깅페이스)와 생성 모델을 추가로 다루고 시계열 예제를 실전 데이터를 사용하도록 바꾸었습니다.

 

서평

핸즈온 머신러닝 3판은 머신러닝을 처음 시작하는 분들께 추천하는 책입니다.

머신러닝의 기본 개념 부터 실습까지 체계적으로 학습할 수 있으며 최신 머신러닝 기술과 트렌드를 반영하고 있습니다.

먼저 구성을 살펴 보면 각 장 마다 머신러닝의 개념을 충분히 설명한 다음 실제 데이터를 이용한 실습을 통해 이론에 대한 개념을 깨우치도록 구성이 되어 있습니다.

또한 현재 챗GPT에서 사용되고 있는 트랜스포머와 같은 자연어처리와 생성 모델등 최신 기술과 트렌드를 반영하여 머신러닝의 최신 동향을 파악할 수 있습니다.

그리고 실습파일로 제공되고 있는 노트북 파일은 코랩에서 직접 실습을 진행해 볼 수 있기 때문에 동작하는 원리를 하나하나 실습해 보면서 머신러닝의 원리를 깨닫게 될 것입니다.

머신러닝 모델과 훈련 알고리즘을 블랙박스처럼 내부 작동 방식을 몰라도 많은 일을 처리 할 수 있지만 이 책에서는 알고리즘이 어떻게 작동하는지, 어떤 모델을 선택하는 것이 좋은지, 올바른 훈련 알고리즘이나 작업에 맞는 좋은 하이퍼파라미터를 빠르게 찾는 방법등에 대해서 자세히 다루고 있습니다.

머신러닝의 개념부터 고급 개념까지 다루고 있기 때문에 입문자라면 이해하는 부분까지 쭉 따라서 익혀 보시고 이해 되지 않는 부분은 건너 뛰었다가 나중에 여러번 책을 펼쳐 봐도 좋을 책인것 같네요.

따라서 이 책은 머신러닝을 공부하시는 분들이라면 꼭 한권은 소장해야 할 책이 아닌가 싶네요.^^

 

  "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 

인공지능 분야 전 세계 1위 베스트셀러로도 유명한 핸즈온 머신러닝입니다! 인공지능 분야의 바이블로도 불리는 이 책은, 초보자부터 시작하여 전문가까지 머신러닝의 정의 및 사용 방법에 대해 상세히 적혀 있습니다. 이번 3차 개정판은 지난 버전과 비교하여 분책을 하여 난이도 조절에 더욱 신경을 썼고, 최신 트렌드에 맞는 내용들이 많이 포함되어있다고 합니다.

 

 

머신러닝을 전혀 모르는 입문자들도 머신 러닝과 일반 프로그래밍과의 차이점이 무엇인지, 그리고 설치부터 구현까지 이해하기 쉽게 적혀 있습니다. 보통 책의 난이도를 생각해보면 아예 초보자분들을 기준으로 쓰거나 혹은 실무자 기준으로 쓰는 등 치우치기 마련인데, 머신 러닝 분야에 대해 잘 모르는 저도 딱 보았을 때 이해하기 쉬운 부분들이 많아 입문하기 좋았던 것 같습니다.

 

 

책은 머신러닝을 왜 사용하는지부터 시작하여 케이스, 시스템의 종류, 학습 방법, 그리고 이 과정에서 구현할 때 어떤 문제들이 생기는지 등 상세하게 적혀 있습니다. 특히 충분하지 않은 훈련 데이터나 대표성이 없고, 품질이 낮은 등 여러 이슈들이 생기는 원인에 대해 꼼꼼하게 알려주며, 머신 러닝의 기초에 대하여 자세히 알려준단 점에서 저를 포함한 초보자분들께 유익한 내용들로 1권은 구성되어 있습니다.

 

 

2권은 실무자들을 위한 내용들로 구성되어있는 것 같아 초보자인 저는 1권 위주로 보았는데요. 데이터 준비나 모니터링, 시스템 메인터넌스 등 과정에 대하여 직접 할 수 있는 핸즈온 액티비티들이 매우 많아, 직접 코드 작성 및 실행을 해보며 결과를 이해하는 과정이 정말 좋다고 느껴졌습니다. 난이도가 그렇게 높지 않고, 그렇다고 깊이감이 얕은 구성도 아니다보니 이해하기 쉬웠어요 코드 뿐만 아니라 도식화된 그림 내용들을 활용하여, 어떤 흐름으로 머신 러닝이 진행되는지에 대해서도 알 수 있어 더 좋다고 느껴졌습니다.

 

 

머신러닝 입문자분들 뿐만 아니라 실무자분들을 위한 바이블 책으로, 두 권 구성으로 머신 러닝의 기초와 심화 과정에 대하여 제대로 익히길 원하시는 분들이시라면 해당 책을 적극 추천 드립니다. 

1.전문적인 이론 & 실습

 

 

 

 

데이터 사이언스를 배우는 과정에서 이론도 중요하지만 어떻게 쓰이는지를 파악할 수 있게 실습의 과정도 중요하다. 그러한 점에서 실습을 같이 따라하며 배울 수 있다는 것이 좋다

 

 

2.두꺼워..

 

딱 보기에도 두껍다. 두껍다는 것은 그만큼 자세하게 잘 설명한 내용이 꽉꽉 차있다는 뜻이기도 하다. 입문용보다는 머신러닝과 딥러닝을 몇번 시도해보고 아 이제 조금 더 자세히 배워보고 싶다. 제대로 해보고 싶다하는 사람에게 추천하는 도서이다.

머신러닝&딥러닝을 공부하는 사람이라면 반드시 이름 정도는 들어봤을 유명한 책 '핸즈온 머신러닝'의 3판이 새로 나오게 되었다. 이번에는 이 책을 전자책으로 접했기 때문에 잘 실감은 나지 않았으나, 1000페이지가 넘어가는 막대한 분량에 종이책은 분권으로 나왔다는 소식을 접했다.

그만큼 이 책은 방대한 양의 내용을 담고 있으며, 사실상 머신러닝을 공부하면서 알아야 할 기초적인 내용의 대부분을 담고 있는 책이라 할 수 있다.

이 책의 좋은 점은 머신러닝에 관한 내용만 담고 있는 것이 아니라 2부 신경망과 딥러닝 부분에서 컴퓨터 비전, 자연어 처리, 오토인코더, GAN, 강화학습 등 현재 활발하게 사용 및 연구되고 있는 기술/분야에 대해서도 설명을 적어놓았다는 것이었다.

이 책으로 머신러닝에 대한 지식을 쌓은 후, 딥러닝으로 넘어가면서 어떤 분야로 자신의 관심사를 넓히면 좋을지에 대해서도 알아보기 좋은 기회를 제공하고 있다고 할 수 있다.

여러모로 머신러닝에 대해 제대로 공부해보고 싶다고 생각하는 분들에게 이 책을 추천한다.

- 한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

부록/예제소스
자료명 등록일 다운로드
DOWNLOAD 핸즈온 머신러닝(3판)_맛보기 샘플.pdf 2024-04-05 다운로드
DOWNLOAD 예제소스 2024-04-05 다운로드
결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원 무료배송
닫기

리뷰쓰기

닫기
* 상품명 :
핸즈온 머신러닝(3판)
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
핸즈온 머신러닝(3판)
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
핸즈온 머신러닝(3판)
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실

최근 본 상품1