000 | 00000cam c2200205 c 4500 | |
001 | 000046138508 | |
005 | 20230110154529 | |
007 | ta | |
008 | 230109s2022 ulkad 001c kor | |
020 | ▼a 9791161756523 ▼g 93000 | |
035 | ▼a (KERIS)BIB000016319439 | |
040 | ▼a 011001 ▼c 011001 ▼d 211009 | |
041 | 1 | ▼a kor ▼h eng |
082 | 0 4 | ▼a 006.31 ▼2 23 |
085 | ▼a 006.31 ▼2 DDCK | |
090 | ▼a 006.31 ▼b 2022z31 | |
100 | 1 | ▼a Kneusel, Ronald T. |
245 | 1 0 | ▼a 실무자를 위한 딥러닝 / ▼d 로널드 크누젤 지음 ; ▼e 백성복 옮김 |
246 | 1 9 | ▼a Practical deep learning : ▼b a Python-based introduction |
260 | ▼a 서울 : ▼b 에이콘, ▼c 2022 | |
300 | ▼a 695 p. : ▼b 삽화, 도표 ; ▼c 24 cm | |
490 | 1 0 | ▼a 에이콘 데이터 과학 시리즈 |
500 | ▼a 색인수록 | |
650 | 0 | ▼a Machine learning |
650 | 0 | ▼a Python (Computer program language) |
700 | 1 | ▼a 백성복, ▼g 白聖福, ▼d 1966-, ▼e 역 |
830 | 0 | ▼a 에이콘 데이터 과학 시리즈 |
900 | 1 0 | ▼a 크누젤, 로널드, ▼e 저 |
945 | ▼a ITMT |
소장정보
No. | 소장처 | 청구기호 | 등록번호 | 도서상태 | 반납예정일 | 예약 | 서비스 |
---|---|---|---|---|---|---|---|
No. 1 | 소장처 과학도서관/Sci-Info(1층서고)/ | 청구기호 006.31 2022z31 | 등록번호 121261677 | 도서상태 대출가능 | 반납예정일 | 예약 | 서비스 |
컨텐츠정보
책소개
딥러닝과 머신러닝의 초보 실무자나 실무 관리자를 위한 책이다. 딥러닝과 머신러닝은 데이터가 가장 중요하며, 데이터에서 모든 것이 시작된다. 데이터를 어떻게 다듬고, 구성하고, 사용해야 하는지를 상세히 설명한다. 모델 산출도 중요하지만 그다음이 더 중요하다. 모델의 성능을 어떻게 평가해야 하는지, 각 성능치가 의미하는 바가 무엇인지, 산출된 모델을 어떤 방식으로 개선해 나가야 하는지를 명료하게 해설한다. 언어 모델이나, 상담 챗봇, 이미지 생성/합성 등 화려한 최신 모델에 대한 책은 아니다. 기본에 충실해 독자가 실무 수행 중에 채워 넣어야 할 항목들을 담백하게 설명한다.
◈ 이 책에서 다루는 내용 ◈
◆ k-최근접 이웃 알고리듬, 랜덤 포레스트, 서포트 벡터 머신 등의 고전적인 머신러닝 모델 사용 방법
◆ 신경망의 작동 원리와 학습 방법
◆ 컨볼루션 신경망의 사용 방법
◆ 성공적인 딥러닝 모델을 바닥부터 개발하는 방법
◈ 이 책의 대상 독자 ◈
머신러닝에 대한 배경 지식이 없지만 머신러닝에 관심이 많아 여러 가지 실습을 해보고 싶은 독자를 위한 책으로, 수학적인 내용은 최소한으로 설명한다. 이 책의 목표는 머신러닝의 핵심 개념을 이해하고 이 분야에서 일할 때 도움될 직관을 구축할 수 있도록 돕는 것이다.컴퓨터 프로그래밍 언어 중 어떤 언어이든 어느 정도 익숙하다고 가정한다. 또한 학생이든 대기업이든 머신러닝 분야에서 많이 사용하는 언어인 파이썬을 사용한다. 고등학교 저학년 수학에는 익숙하지만 미적분학에는 익숙하지 않다고 가정할 것이다. 약간의 미적분학은 언급하겠지만, 자세한 내용을 몰라도 기본적인 아이디어를 이해할 수 있다. 또한 약간의 통계 지식과 기본적인 확률론은 알고 있다고 가정한다. 고등학교 졸업 후 완전히 잊어버렸더라도 괜찮다. 내용을 따라가기에 충분한 배경 지식은 설명할 것이다.
◈ 이 책의 구성 ◈
1장, '시작하기'에서는 이 책에서 실습을 수행할 때 필요한 작업 환경을 설정하는 방법을 설명한다. 또한 이후에 나오는 설명의 배경 지식으로 사용할 수 있게 벡터, 행렬, 확률, 통계를 주제로 한 절이 포함돼 있다.
2장, '파이썬 사용'은 파이썬을 사용할 수 있게 안내한다.
3장, '넘파이 사용'에서는 파이썬을 확장한 라이브러리인 넘파이에 관해 이야기한다. 이 라이브러리로 인해 파이썬이 머신러닝에 유용한 언어가 됐다. 넘파이에 익숙해지도록 이 장을 정독할 것을 권장한다.
4장, '데이터 작업'에서는 좋은 데이터 세트를 구축하는 방법을 배울 수 있다.
5장, '데이터 세트 구축'에서는 책에서 사용될 데이터 세트를 구축한다. 데이터 세트를 증강시키는 방법도 배운다.
6장, '고전적인 머신러닝'에서는 머신러닝 초기에 사용됐던 모델 중 일부를 다룬다. 어디를 향해 가고 있는지 이해하고자 때로는 어디에서 왔는지를 알아보는 것이 중요하다.
7장, '고전 모델 실습'에서는 머신러닝에 대한 초기 접근 방식의 강점과 약점을 보여준다. 산출된 결과는 이 후의 장에서 비교 목적으로 참조할 것이다.
8장, '신경망 소개'에서는 신경망을 자세히 알아본다. 현대의 딥러닝은 신경망을 근간으로 한다.
9장, '신경망 학습'에서는 신경망이 학습되는 원리를 이해하는 데 필요한 지식을 소개한다. 몇 가지 기본적인 미적분 개념이 포함돼 있지만 당황할 필요는 없다. 직관을 만들어주는 것이 목적이므로 개념 위주로 내용을 구성했고, 처음에는 표기법이 낯설게 느껴질 수도 있지만 쉽게 이해할 수 있도록 자세히 설명한다.
10장, '실용적인 신경망 예제'는 실제로 데이터를 다루는 느낌과 직관을 얻을 수 있게 다양한 실습으로 구성돼 있다.
11장, '모델 평가'는 모델을 평가하는 과정을 자세히 안내한다. 머신러닝 분야의 논문, 강연, 강의에서 논의되는 결과를 이해하려면 모델을 평가하는 방법을 알아야 한다.
12장, '컨볼루션 신경망 소개'에서는 CNN 네트워크의 기본 빌딩 블록을 설명한다. 이 책이 초점을 맞추고 있는 딥러닝 개념은 컨볼루션 신경망(CNN, Convolutional Neural Network)이라는 아이디어를 통해 실현된다.
13장, '케라스와 MNIST를 활용한 CNN 분석'에서는 딥러닝 분야의 기본 데이터 세트인 MNIST 데이터 세트를 이용한 실습을 통해 CNN 작동 원리를 살펴본다.
14장, 'CIFAR-10 데이터 세트 실습'에서는 CIFAR-10이라는 또 다른 기본 데이터 세트를 살펴본다. 이 데이터 세트는 실질적인 이미지로 구성돼 있어 CNN 모델을 실험하기에 적합하다.
15장, '사례 연구: 오디오 샘플 분류'에서는 사례 연구로 모든 논의를 마무리한다. 흔치 않은 새로운 데이터 세트로 시작해 이를 분류하기 위한 좋은 모델을 구축하는 과정을 따라가 본다.
16장, '추가 학습'에서는 간과했던 몇 가지를 지적하고 다음에 공부해야 할 것에 집중할 수 있게 머신러닝과 관련된 주변의 산더미 같은 리소스를 살펴보는 데 도움이 될 내용을 담았다.
정보제공 :

저자소개
로널드 크노이젤(지은이)
2003년부터 업계에서 심층학습 개발자로 일해오면서, 2016년 콜로라도 대학교 볼더 캠퍼스에서 기계학습 전공 박사학위를 받았다. 이 책 외에 세 권의 책 《Practical Deep Learning: A Python-Based Introduction》(No Starch Press), 《Numbers and Computers》(Springer), 《Random Numbers and Computers》(Springer)를 썼다.
백성복(옮긴이)
1992년, 한국개발연구원에서 주임 연구원으로 근무하면서 처음으로 신경망을 접했다. 1995년, KT 융합기술원으로 자리를 옮겨 다양한 통신망 기술을 연구하다가 2016년부터 딥러닝과 강화학습 기반의 네트워크 지능화 연구에 매진하고 있다. 컴퓨터 과학 전공으로 강원대 학사, 숭실대 석사를 거쳐 일리노이 공학대학교에서 박사 학위를 취득했으며, ITU-T FG-ML5GFocus Group on Machine Learning for Future Networks including 5G 부의장, TTA 표준화위원회 인공지능 기반 기술 프로젝트 그룹(PG1005) 부의장 등을 역임했고, 국가 ICT 표준화 전략 수립에도 참여하고 있다.

목차
1장. 시작하기 __프로그램 실행 환경 ____넘파이 ____싸이킷런 ____케라스와 텐서플로 __툴킷 설치 __선형 대수 기초 ____벡터 ____행렬 ____행렬과 벡터의 곱 __통계와 확률 ____서술 통계 ____확률 분포 ____통계적 검정 __그래픽 처리 장치 __요약 2장. 파이썬 사용 __파이썬 인터프리터 __문장과 공백 __변수와 기본적인 자료 구조 ____수의 표현 ____변수 ____문자열 ____리스트 ____딕셔너리 __제어 구조 ____if-elif-else문 ____for 반복문 ____while 반복문 ____break문과 continue문 ____with문 ____try-except문으로 에러 처리 __함수 __모듈 __요약 3장. 넘파이 사용 __왜 넘파이인가? ____배열과 리스트 ____배열과 리스트 간의 처리 속도 비교 __기본 배열 ____np.array로 배열 정의 ____0과 1로 구성된 배열 정의 __배열 원소에 접근 ____배열 인덱싱 ____배열 슬라이싱 ____말 줄임 기호 __연산자와 브로드캐스팅 __배열 입력과 출력 __난수 __넘파이와 이미지 __요약 4장. 데이터 작업 __클래스와 레이블 __피처와 피처 벡터 ____피처의 유형 ____피처 선택과 차원의 저주 __좋은 데이터 세트의 특징 ____내삽법과 외삽법 ____모분포 ____사전 클래스 확률 ____컨퓨저 ____데이터 세트의 크기 __데이터 준비 ____피처의 범위 조정 ____누락된 피처 값 __학습, 검증, 테스트 데이터 ____3개의 부분 데이터 ____데이터 세트의 분할 ____k-Fold 교차 검증 __데이터 검토 ____데이터 점검 ____주의할 사항 __요약 5장. 데이터 세트 구축 __아이리스 꽃 데이터 __유방암 데이터 세트 __MNIST 숫자 __CIFAR-10 __데이터 증강 ____학습 데이터를 증강시키는 이유 ____학습 데이터 증강법 ____아이리스 꽃 데이터 세트 증강시키기 ____CIFAR-10 데이터 세트 증강시키기 __요약 6장. 고전적인 머신러닝 __최근접 센트로이드 __k-최근접 이웃 __나이브 베이즈 __의사결정 트리와 랜덤 포레스트 ____재귀의 개념 ____의사결정 트리 만들기 ____랜덤 포레스트 __서포트 벡터 머신 (Support Vector Machines) ____마진 ____서포트 벡터 ____최적화 ____커널 __요약 7장. 고전 모델 실습 __아이리스 꽃 데이터 세트 실험 ____고전 모델 테스팅 ____최근접 센트로이드 분류기의 구현 __유방암 데이터 세트 실험 ____두 개의 초기 테스트 실행 ____랜덤 분할의 효과 ____k-폴드 검증 추가 ____하이퍼파라미터 분석 __MNIST 데이터 세트 실험 ____고전 모델 테스팅 ____실행 시간 분석 ____PCA 구성 요소 실험 ____데이터 세트 스크램블링 __고전 모델 요약 ____최근접 센트로이드 ____k-최근접 이웃 ____나이브 베이즈 ____의사결정 트리 ____랜덤 포레스트 ____서포트 벡터 머신(SVM) __고전 모델의 사용 ____데이터 세트가 소규모인 경우 ____컴퓨팅 자원의 제약이 심한 경우 ____판정 결과를 설명할 수 있는 모델이 필요한 경우 ____벡터 입력 작업 __요약 8장. 신경망 소개 __신경망의 구조 ____뉴런 ____활성화 함수 ____네트워크의 구조 ____출력 계층 ____가중치와 편향 표현법 __간단한 신경망의 구현 ____데이터 세트 구축 ____신경망의 구현 ____신경망 학습과 테스팅 __요약 9장. 신경망 학습 __개요 __경사 하강법 ____최솟값 찾기 ____가중치 갱신 __확률적 경사 하강법 ____배치와 미니배치 ____콘벡스 함수와 비콘벡스 함수 ____학습 종료 ____학습률 갱신 ____모멘텀 __역전파 ____역전파, 첫 번째 설명 ____역전파, 두 번째 설명 __손실 함수 ____절대 손실과 평균 제곱 오차 손실 ____교차 엔트로피 손실 __가중치 초기화 __과적합과 정규화 ____과적합의 이해 ____정규화의 이해 ____L2 정규화 ____드롭아웃 __요약 10장. 실용적인 신경망 예제 __데이터 세트 __sklearn의 MLPClassifier 클래스 __네트워크 구조와 활성화 함수 ____소스코드 ____실행 결과 __배치 크기 __기본 학습률 __학습 데이터 세트의 크기 __L2 정규화 __모멘텀 __가중치 초기화 __피처 간의 순서 __요약 11장. 모델 평가 __정의와 가정 __정확도만으로 충분하지 않은 이유 __2 × 2 혼동 행렬 __2 × 2 혼동 행렬에서 파생된 메트릭 ____2 × 2 행렬에서 메트릭 도출 ____메트릭으로 모델 해석 __고급 메트릭 ____정보도와 표식도 ____F1 점수 ____코헨 카파 계수 ____매튜 상관 계수 ____메트릭 구현 __수신자 조작 특성(ROC) 곡선 ____모델 수집 ____그래프로 메트릭 출력 ____ROC 곡선 해석 ____ROC 분석을 통한 모델 비교 ____ROC 곡선 그리기 ____정밀도-재현율 곡선 __다중 클래스 다루기 ____혼동 행렬의 확장 ____가중치를 고려한 정확도 계산 ____다중 클래스 매튜 상관 계수 __요약 12장. 컨볼루션 신경망 소개 __컨볼루션 신경망을 사용하는 이유 __컨볼루션 ____커널을 이용한 스캐닝 ____이미지 처리에 사용하는 컨볼루션 __컨볼루션 신경망의 해부학 ____다양한 유형의 계층 ____CNN을 통한 데이터 처리 과정 __컨볼루션 계층 ____컨볼루션 계층의 작동 방식 ____컨볼루션 계층의 사용 ____다중 컨볼루션 계층 ____컨볼루션 계층 초기화 __풀링 계층 __완전 연결 계층 __완전 컨볼루션 계층 __단계별 분석 __요약 13장. 케라스와 MNIST를 활용한 CNN 분석 __케라스로 CNN 구축 ____MNIST 데이터 로드 ____모델 구축 ____모델 학습과 평가 ____오차 플로팅 __기본 실험 ____아키텍처 실험 ____학습 세트 크기, 미니배치, 에폭 ____옵티마이저 __완전 컨볼루션 네트워크 ____모델의 구축과 학습 ____테스트 이미지 만들기 ____모델 테스트 __스크램블된 MNIST 숫자 __요약 14장. CIFAR-10 데이터 세트 실습 __CIFAR-10 복습 __전체 CIFAR-10 데이터 세트를 이용한 실습 ____모델 구축 ____모델 분석 __동물과 교통수단 구분 __이진 클래스와 다중 클래스 __전이학습 __모델 미세 조정 ____데이터 세트 구축 ____미세 조정을 위한 모델 수정 ____모델 테스트 __요약 15장. 사례 연구: 오디오 샘플 분류 __데이터 세트 구축 ____데이터 세트 증강 ____데이터 전처리 __오디오 피처 분류 ____클래식 모델 사용 ____전통적인 신경망 사용 ____컨볼루션 신경망 사용 __스펙트로그램 __스펙트로그램 분류 ____초기화, 정규화, 배치 정규화 ____혼동 행렬 조사 __앙상블 __요약 16장. 추가 학습 __CNN 추가 연구 __강화학습과 비지도학습 __생성적 적대 신경망(GAN) 모델 __순환 신경망 __온라인 리소스 __학술대회 __서적 __맺음말, So Long and Thanks for All the Fish