이미 소장하고 있다면 판매해 보세요.
1부. 기본 개념
1장. 머신러닝 개요 전문가 시스템 지도학습 비지도학습 강화학습 딥러닝 요약 2장. 필수 통계 무작위성 설명 확률 변수와 확률 분포 몇 가지 일반적인 분포 __연속 분포 __이산 분포 확률 변수의 집합 __기댓값 __의존성 __독립 항등 분포된 변수 추출과 복원 __복원 추출 __비복원 추출 부트스트랩 공분산과 상관관계 __공분산 __상관관계 통계가 모든 것을 말해주지는 않는다 고차원 공간 요약 3장. 성능 측정 확률의 여러 유형 __다트 던지기 __단순 확률 __조건부 확률 __결합 확률 __주변 확률 정확도 측정 __샘플 분류 __혼동 행렬 __잘못된 예측값 특성화 __옳고 그름의 측정 __정확도 __정밀도 __재현율 __정밀도-재현율 트레이드오프 __오해의 소지가 있는 측정지표 __f1 점수 __용어 __기타 측정지표 혼동 행렬을 올바르게 구성하기 요약 4장. 베이즈 규칙 빈도주의와 베이지안 확률 __빈도주의적 접근 __베이지안 접근법 __빈도주의자 대 베이지안 주의자 빈도주의자의 동전 던지기 베이지안의 동전 던지기 __동기 부여 예제 __동전 확률 그리기 __동전 던지기를 확률로 표현하기 __베이즈 규칙 __베이즈 규칙에 대한 논의 베이즈 규칙과 혼동 행렬 베이즈 규칙 반복 __사후 확률-사전 확률 루프 __베이즈 루프 실습 다중 가설 요약 5장. 곡선과 표면 함수의 본질 미분 __최댓값과 최솟값 __접선 __미분으로 최솟값과 최댓값 찾기 그래디언트 __물, 중력, 그래디언트 __경사도로 최댓값과 최솟값 찾기 __안장점 요약 6장. 정보 이론 놀라움과 맥락 __놀라움 이해 __맥락 풀기 정보 측정 적응형 코드 __모스 말하기 __모스 부호 커스터마이징 엔트로피 교차 엔트로피 __두 개의 적응형 코드 __코드 사용 __실전에서의 교차 엔트로피 쿨백-라이블러 발산 요약 2부. 머신러닝 기초 7장. 분류 이진 분류 2D 다중 클래스 분류 다중 클래스 분류 __하나 대 나머지 __하나 대 하나 클러스터링 차원의 저주 __차원과 밀도 __고차원의 기이함 요약 8장. 훈련과 테스팅 훈련 성능 테스트 __테스트 데이터 __검증 데이터 교차 검증 k-폴드 교차 검증 요약 9장. 과적합과 과소적합 좋은 적합 찾기 __과적합 __과소적합 과적합의 탐지와 해결 __얼리스토핑 __일반화 편향과 분산 __기저 데이터에 일치시키기 __높은 편향, 낮은 분산 __낮은 편향, 높은 분산 __곡선 비교 베이즈 규칙으로 선 적합하기 요약 10장. 데이터 준비 기본 데이터 정제 일관성의 중요성 데이터 유형 원핫 인코딩 정규화와 표준화 __정규화 __표준화 __변환 기억하기 변환 유형 __슬라이스 처리 __샘플별 처리 __피처별 처리 __요소별 처리 역변환 교차 검증의 정보 유출 데이터 세트 축소 __피처 선택 __차원 축소 주성분 분석 __단순 이미지를 위한 PCA __실제 이미지에 대한 PCA 요약 11장. 분류기 분류기의 유형 k-최근접 이웃 의사결정 트리 __트리 소개 __의사결정 트리 사용 __과적합 트리 __노드 분할 서포트 벡터 머신 __기본 알고리듬 __SVM 커널 트릭 나이브 베이즈 분류기 비교 요약 12장. 앙상블 투표 의사결정 트리의 앙상블 __배깅 __랜덤 포레스트 __엑스트라 트리 부스팅 요약 3부. 딥러닝 기본 13장. 신경망 실제 뉴런 인공 뉴런 __퍼셉트론 __현대 인공 뉴런 뉴런 그리기 피드포워드 네트워크 신경망 그래프 가중치 초기화 딥 네트워크 완전 연결 레이어 텐서 네트워크 붕괴 방지 활성화 함수 __직선 함수 __계단 함수 __구간 선형 함수 __매끄러운 함수 __활성화 함수 갤러리 __활성화 함수 비교 소프트맥스 요약 14장. 역전파 높은 수준에서의 훈련 개요 __오류 처벌하기 __학습을 위한 느린 방법 __경사 하강법 개요 작은 신경망에서의 역전파 __출력 뉴런의 델타 찾기 __가중치 변경을 위해 델타 사용 __다른 뉴런의 델타 더 큰 네트워크에서의 역전파 학습률 __이진 분류기 구축 __학습률 선택 __훨씬 더 작은 학습률 요약 15장. 옵티마이저 2D 곡선 오류 학습률 조정 __일정한 크기로 업데이트 __시간에 따라 학습률을 변화 __감쇠 스케줄 업데이트 전략 __배치 경사 하강법 __확률적 경사 하강법 __미니배치 경사 하강법 경사 하강법 변형 __모멘텀 __네스테로프 모멘텀 __Adagrad __Adadelta와 RMSprop __Adam 옵티마이저 선택 일반화 __드롭아웃 __배치 정규화 요약 4부. 기초를 넘어 16장. 컨볼루션 신경망 컨볼루션 소개 __노란색 탐지 __가중치 공유 __더 큰 필터 __필터와 피처 __패딩 다차원 컨볼루션 다중 필터 컨볼루션 레이어 __1D 컨볼루션 __1×1 컨볼루션 출력 크기 변경 __풀링 __스트라이드 __전치 컨볼루션 필터의 계층 구조 __가정 단순화 __안면 마스크 찾기 __눈, 코, 입 찾기 __필터 적용 요약 17장. 실제 컨볼루션 신경망 손 글씨 분류 VGG16 필터 시각화 1부 필터 시각화 2부 적대 사례 요약 18장. 오토인코더 인코딩 소개 __비손실 인코딩과 손실 인코딩 표현 혼합하기 가장 단순한 오토인코더 더 좋은 오토인코더 오토인코더 탐험 __잠재 변수 자세히 살펴보기 __파라미터 공간 __잠재 변수 혼합 __새로운 입력에 대한 예측 컨볼루셔널 오토인코더 __잠재 변수 혼합 __새로운 입력에 대해 예측 노이즈 제거 변분 오토인코더 __잠재 변수의 분포 __변분 인코더 구조 VAE 탐험 __MNIST 샘플로 작업 __두 잠재 변수로 작업 __새로운 입력 전달 요약 19장. 순환 신경망 언어 다루기 __일반적인 자연어 처리 작업 __텍스트를 숫자로 변환 __미세 조정과 다운스트림 네트워크 완전 연결 예측 __네트워크 테스트 __네트워크가 실패한 이유 순환 신경망 __스테이트 소개 __다이어그램 롤업 __실전에서의 순환 셀 __순환 신경망 훈련 __장단기 기억과 게이트 순환 신경망 순환 신경망 사용 __흑점 데이터로 작업 __텍스트 생성 __다양한 아키텍처 Seq2Seq 요약 20장. 어텐션과 트랜스포머 임베딩 __단어 임베딩 __ELMo 어텐션 __동기를 부여하는 비유 __셀프 어텐션 __Q/KV 어텐션 __멀티헤드 어텐션 __레이어 아이콘 트랜스포머 __스킵 커넥션 __놈-애드 __포지셔널 인코딩 __트랜스포머 결합 __실전에서의 트랜스포머 BERT와 GPT-2 __BERT __GPT-2 __생성기 논의 __데이터 포이즈닝 요약 21장. 강화학습 기본 아이디어 새로운 게임 배우기 강화학습의 구조 __1단계: 에이전트가 행동을 선택 __2단계: 환경이 응답 __3단계: 에이전트가 자체 업데이트 __큰 그림으로 돌아가기 __보상 이해 플리퍼 L-러닝 __기초 __L-러닝 알고리듬 __알고리듬 테스트 __예측 불가능성 처리 Q-러닝 __Q-값과 업데이트 __Q-러닝 정책 __하나로 결합 __골치 아픈 문제 __Q-러닝 실습 SARSA __알고리듬 __SARSA 실습 __Q-러닝과 SARSA 비교 큰 그림 요약 22장. 생성적 적대 신경망 지폐 위조 __경험에서 학습 __신경망으로 위조 __학습 과정 __왜 적대일까? GAN 구현 __판별기 __생성기 __GAN 훈련 GAN 실습 __판별기와 생성기 구축 __네트워크 훈련 __네트워크 테스트 DCGAN 도전 과제 __큰 샘플 사용 __모드 붕괴 __생성한 데이터로 훈련 요약 23장. 창의적인 애플리케이션 딥 드리밍 __필터 자극 __딥 드리밍 실행 뉴럴 스타일 전이 __스타일 표현 __콘텐츠 표현 __스타일과 콘텐츠를 함께 __스타일 전이 실행 이 책을 더 만들어보기 요약 |
Andrew S. Glassner
김창엽의 다른 상품
이 책에서 다루는 내용
◆ 텍스트 생성기로 이야기와 기사를 만드는 방법 ◆ 인간 게임에서 딥러닝 시스템이 승리하도록 학습하는 방법 ◆ 이미지 분류 시스템으로 사진 속 사물이나 사람을 식별하는 방법 ◆ 일상생활에서 확률을 유용하게 활용하는 방법 ◆ 머신러닝 기술로 현대 AI에 기여하는 방법 이 책의 대상 독자 딥러닝이 어떻게 동작하는지 관심 있는 사람을 위해 이 책을 썼다. 수학이나 프로그래밍 경험은 필요 없다. 컴퓨터 전문가나 기술자일 필요도 전혀 없다. 딥러닝의 알고리듬 대부분이 그리 복잡하거나 이해하기 어렵지 않다는 것에 놀랄지도 모른다. 이들은 대개 단순하고 우아하며 대형 데이터베이스를 통해 수백만 번 반복해 힘을 얻게 된다. 순수하게 지적 호기심을 충족시키고 싶은 사람이나 딥러닝을 다루는 다른 사람과 교류하는 사람이 읽기에도 좋다. AI를 이해하면 좋은 이유 중 하나는 AI를 활용할 수 있다는 것이다. 이 책을 통해 일을 더 잘하고 취미를 더 깊게 즐기고 주변 세상을 더욱 완전하게 이해할 수 있도록 도와주는 인공지능 시스템을 구축할 수 있을 것이다. 이 책의 구성 1장, '머신러닝 개요’에서는 큰 그림을 보면서 머신러닝이 어떻게 동작하는지에 대한 발판을 마련한다. 2장, ‘필수 통계’에서는 데이터에서 패턴을 찾고 설명할 수 있게 해준다. 3장, ‘성능 측정’에서는 측정할 방법을 신중하게 선택해 알고리듬이 “잘못”된 상황은 실제로 무엇을 의미하는지 설명할 수 있다. 4장, ‘베이즈 규칙’에서는 기댓값(expectations)과 지금까지 확인한 결과들을 모두 고려해 알고리듬이 올바른 결과를 제공할 수 있는 우도(likelihood)에 대해 살펴본다. 5장, ‘곡선과 표면’에서는 학습 알고리듬을 다루는 데 도움이 되도록 곡선과 표면이 어떻게 생겼는지 설명한다. 6장, ‘정보 이론'에서는 정보를 표현하고 수정하는 아이디어로 다양한 유형의 정보를 정량화하고 측정할 수 있게 해준다. 7장, ‘분류’에서는 컴퓨터가 데이터 조각에 특정 클래스나 범주를 할당하는 문제를 해결하기 위한 기본 아이디어를 살펴본다. 8장, ‘훈련과 테스팅’에서는 실제로 활용할 수 있는 딥러닝 시스템의 구축을 위해 성능을 테스트한다. 9장, ‘과적합과 과소적합’에서는 훈련 시 사용한 데이터를 외워 처음 본 데이터 처리를 더 못하는 문제가 어디에서 발생하는지, 어떻게 영향을 줄일 수 있는지 알아본다. 10장, ‘데이터 준비’에서는 학습할 많은 데이터를 제공해 딥러닝 시스템을 훈련한다. 가능한 한 효과적으로 학습하고자 이 데이터를 어떻게 준비해야 하는지 알아본다. 11장, ‘분류기’에서는 데이터를 분류하기 위한 구체적인 머신러닝 알고리듬을 알아본다. 이러한 방법들은 딥러닝 시스템을 훈련시키고자 시간과 노력을 투자하기 전에 데이터를 파악하는 좋은 방법이다. 12장, ‘앙상블’에서는 아주 간단한 학습 시스템을 훨씬 더 강력한 복합 시스템으로 결합시키는 방법을 다룬다. 13장, ‘신경망’에서는 인공 뉴런과 이것들을 어떻게 연결해서 네트워크를 만드는지 살펴본다. 이러한 네트워크들은 딥러닝의 기반을 구성한다. 14장, ‘역전파’에서는 신경망을 실용적으로 만드는 핵심 알고리듬은 데이터에서 학습할 수 있게 훈련시키는 방법을 다룬다. 15장, ‘옵티마이저’에서는 심층 네트워크를 훈련하는 두 번째 알고리듬의 성능 향상을 효과적으로 수행하기 위한 다양한 방법을 알아본다. 16장, ‘컨볼루션 신경망’에서는 영상과 같은 공간 데이터를 처리할 수 있는 강력한 알고리듬과 그것들이 어떻게 사용되는지 알아본다. 17장, ‘실제 컨볼루션 신경망’에서는 공간 정보를 다루는 기술을 어떻게 활용할 수 있는지 자세히 알아본다. 18장, ‘오토인코더’에서는 대규모 데이터 세트를 단순화하고 노이즈를 제거해 손상된 이미지를 정제하는 방법을 다룬다. 19장, ‘순환 신경망’에서는 텍스트와 오디오 클립 같은 시퀀스를 작업할 때 필요한 특별한 도구를 살펴본다. 20장, ‘어텐션과 트랜스포머’에서는 텍스트를 해석하고 생성하도록 설계된 알고리듬을 알아본다. 21장, ‘강화학습’에서는 컴퓨터가 제공하기를 원하는 답을 모르는 문제를 유연하게 해결하는 방법을 살펴본다. 22장, ‘생성적 적대 신경망’에서는 갖고 있는 데이터의 새로운 인스턴스를 창조하거나 생성하는 생성기를 훈련시킬 수 있는 강력한 방법을 알아본다. 23장, ‘창의적인 애플리케이션’에서는 사이키델릭한 이미지를 만들고, 예술가의 시그니처 스타일을 사진에 적용하고, 어떤 작가의 스타일로든 새로운 텍스트를 생성하기 위한 딥러닝 도구를 적용해본다. 지은이의 말 황금 램프를 문지르고 있다고 상상해보자. “지니, 내 세 가지 소원으로 사랑하는 사람, 거대한 부, 길고 건강한 삶을 줘.”라고 말한다. 이제 집에 들어왔다고 상상해보자. “집아, 주변에 차를 불러주고, 사라에게 점심에 시간이 있는지 물어보고, 이발 일정을 예약하고, 라떼를 만들어줘. 아, 그리고 델로니어스 몽크(Thelonious Monk)를 연주해줘.”라고 말한다. 이 두 가지 상황에서 당신은 거대한 힘을 가진 영혼에게 당신의 말을 듣고, 이해하고, 욕망을 채워 달라고 요구한다. 첫 번째 시나리오는 천 년 전으로 거슬러 올라가는 판타지다. 두 번째 시나리오는 인공지능 덕분에 오늘날 흔히 볼 수 있는 현실이다. 어떻게 이런 마법의 지니를 발명했을까? 오늘날 세상을 바꾸는 AI의 혁명은 세 가지 발전의 결과다. 첫째, 컴퓨터는 매년 더 커지고 빨라지고 있으며 이미지 생성을 위한 특수한 목적이 있는 칩은 이제 AI 기술에도 힘을 실어주고 있다. 둘째, 사람들은 새로운 알고리듬을 계속 개발하고 있다. 놀랍게도 오늘날 AI를 지원하는 알고리듬 중 일부는 수십 년 동안 사용돼 왔다. 이들은 누구나 알고 있는 것보다 더 강력했고 빛을 발할 수 있는 충분한 데이터와 컴퓨팅 성능을 기다리고 있었다. 더 새롭고 강력한 알고리듬은 빠른 속도로 이 분야를 발전시키고 있다. 오늘날 사용하는 가장 강력한 알고리듬 중 일부는 딥러닝이라고 하는 AI 범주에 속하며, 이 기술이 책에서 강조할 기술이다. 셋째, 가장 중요한 것은 이러한 알고리듬이 학습할 수 있는 방대한 데이터베이스가 있다는 것이다. 알고리듬은 소셜 네트워크, 스트리밍 서비스, 정부 기관, 신용카드 회사, 심지어 슈퍼마켓에서도 수집할 수 있는 모든 정보를 측정하고 저장한다. 웹상의 공개 데이터도 방대하다. 2020년 말 현재, 온라인에서 무료로 사용할 수 있는 40억 시간 이상의 비디오, 170억 개 이상의 이미지, 스포츠 역사부터 날씨 패턴, 지방 자치단체의 기록에 이르기까지 이러한 주제에 해당하는 엄청난 양의 텍스트가 있는 것으로 추정된다.실제로 이러한 데이터베이스는 새로운 머신러닝 시스템에서 가장 가치 있는 구성 요소로 간주되는 경우가 많다. 돈이 있는 사람은 누구나 컴퓨터를 살 수 있고, 이들이 실행하는 알고리듬은 연구 저널, 책, 오픈소스 저장소에서 공개적으로 이용할 수 있다. 조직이 자신을 위해서만 사용하거나 최고 입찰자에게 판매하기 위한 데이터다. 데이터베이스는 새로운 석유, 새로운 금이라고 해도 과언이 아니다. 다른 급진적인 기술과 마찬가지로 AI는 인류에게 큰 이점을 기대하는 장밋빛 치어리더와 세상을 구성하는 사회와 문화의 파괴만을 보는 어두운 파멸의 예측기(predictors)를 갖고 있다. 어떤 게 맞는가? 이 새로운 기술의 위험과 이점을 어떻게 판단할 수 있을까? 언제 AI를 허용해야 하고 언제 금지해야 할까? 신기술을 신중하게 다루는 가장 좋은 방법은 이를 이해하는 것이다. 이 기술이 어떻게 작동하는지, 그 힘과 한계의 본질을 알 때 어디에 어떻게 사용해 살고 싶은 미래를 만들어야 하는지 결정할 수 있다. 이 책은 딥러닝이 무엇이고 어떻게 작동하는지 이해하고자 집필했다. 여러분이 딥러닝의 강점과 약점을 알면 문화와 사회에 미치는 실제적이고 잠재적인 영향을 이해할 수 있는 더 나은 위치에 있게 될 것이다. 또한 권력을 쥔 사람과 조직이 이러한 도구를 언제 사용하는지 확인한 후 이 도구를 공공의 이익을 위해 사용하고 있는지, 아니면 사적인 이익을 위해 사용하고 있는지를 직접 판단할 수 있다. 옮긴이의 말 해가 지날수록 풀기 힘든 문제를 AI로 풀어보고자 노력하는 사람들을 많이 만난다. 문제의 본질을 고민하고, 여러 아이디어로 실험해보고, 피처를 새로 만들어보고, 네트워크 구조를 바꿔보고, 데이터를 더 모아보고, 잘못된 데이터가 없는지 또 검사해보고, 실험을 실패하고 다시 시도하는 등 고군분투하는 사람이 늘고 있다. 또한 AI나 ML 팀이 아닌 다른 부서에 AI나 머신러닝 지식을 전달하고 발표해야 하는 자리도 늘어나고 있다. 업무의 효율을 높이기 위해서는 AI를 적용해야 하고, 다른 회사와의 협업이나 사업 기회를 만드려면 연구 개발 조직이 아닌 부서에도 AI와 머신러닝 지식이 요구된다. 이 책은 마주치자마자 덮어 버리고 싶은 수식과 개발자가 아니면 굳이 알고 싶지 않은 코드를 제거하고 그림만으로 머신러닝, 딥러닝 이론을 설명한 책이다. 거부 반응 없이 머신러닝과 딥러닝에 최대한 가깝게 갈 수 있도록 저자가 많은 공을 들였다. 부족한 역자로 인해 저자의 노력이 사라지지 않도록 최선을 다해 번역했다. 아무쪼록 이 책이 머신러닝과 딥러닝에 입문할 때 수식과 코드 때문에 겁먹어 포기하지 않고, 이 분야의 이론을 전반적으로 훑어보고 이해하는 데 많은 도움이 됐으면 한다. 김창엽 6년 전, 인간과 AI가 바둑 대결을 할 때만 해도 “AI가 이런 것도 가능해?”라며 탄복한 기억이 있다. 여러 해가 지난 지금은 “AI가 이런 것도 못해?”라는 생각이 들 때가 있다. 일상에서 사용하는 냉장고나 공기청정기, 스피커와 같은 가전에서도 이제는 AI를 찾기 어렵지 않아 기대감이 높아졌기 때문일 것이다. AI는 어느새 일상에 뿌리 깊게 자리한 기술이 됐다. 하지만 AI에 대해 과연 얼마나 알고 있을까? 개발자를 비롯한 많은 사람이 작동 원리를 완벽히 이해하진 못할 것이다. 모든 기술이 그렇듯 단순히 제공하는 기능을 사용하기보다는 작동 원리를 이해함으로써 더욱 편리하게 사용할 수 있다. 배경을 없애는 기능을 사용하고자 사진을 찍을 때 하얀 바탕을 배경으로 찍는다든가, 녹음 파일의 잡음을 제거하고자 녹음할 때는 격리된 곳으로 이동하는 식으로 말이다. AI를 더 깊이 있게 알면 더 효과적으로 사용하게 되고 나아가 직접 개발하고 개선시키고 싶을 것이다. AI 기능을 개선하려면 이 분야의 지식에 한 발짝 더 다가가야 한다. 그래야 상황에 맞는 알고리듬을 선택하고 원하는 결과를 얻을 수 있을 것이다. 이런 면에서 이 책이 큰 의미가 있다고 생각한다. 이 책은 단순히 기술의 설명만을 늘어놓지 않고 AI 분야의 작동 원리를 알기 쉽게 풀어 설명하고 있다. 삶과 지식을 윤택하게 만들어주는 교양서일 뿐만 아니라 이 분야의 기술자에게는 다른 무언가를 개발하고 개선시킬 수 있게 하는 토르의 망치와 같은 책이 될 것이다. 기술의 겉모습에 집중하지 말고 번개와 같은 기술의 속성을 이해하면서 망치를 휘둘러보자. 훨씬 더 강력할 것이다. 소재현 |