알라딘

케라스로 구현하는 딥러닝 - 예제를 따라 하며 배우는 딥러닝 인공신경망

김성진 (지은이) | 한빛미디어
  • 등록일2022-09-05
  • 파일포맷pdf
  • 파일크기8 M  
  • 지원기기아이폰, 아이패드, 안드로이드, 태블릿, PC
  • 평점 평점점 평가없음

책소개

코드로 빠르게 배우는 개발자용 딥러닝 입문서

저자소개

초등학교 때 프로그래밍으로 도 대회에서 대상을 수상했다. 그때 열정을 살려 서울대학교 컴퓨터공학부에서 박사 학위를 받고 21년간 삼성전자에 다니면서 프로그래밍 역량을 높였다. 2015년에 미국으로 건너가 하버드 대학교에서 인공지능 소재 탐색 분야의 박사후연구원으로 근무했다. 2018년부터는 LG전자에서 인공지능 분야에 수석연구위원(상무)을 지냈고, 최근 인공지능을 스페이스 분야까지 확장하는 뷰메진의 CTO로 영입되었다. 페이스북에서 『케라스로 구현하는 딥러닝』 커뮤니티(fb.com/groups/keras.py)를 운영하고 있다.

목차

<기본 편>



0장. 프롤로그

__0.1 인공지능과 인공신경망

____0.1.1 인공지능의 역사

____0.1.2 머신러닝과 딥러닝

____0.1.3 인공신경망 개요

__0.2 케라스 소개

____0.2.1 케라스 2의 주요 특징



1장. 케라스 시작하기

__1.1 우분투에서 케라스 설치하기

____1.1.1 아나콘다 파이썬 배포판 설치

____1.1.2 아나콘다를 이용한 케라스 설치

____1.1.3 케라스에서 GPU 사용을 위한 CUDA/cuDNN 설치

__1.2 윈도우에서 케라스 설치하기

____1.2.1 아나콘다 파이썬 배포판 설치

____1.2.2 아나콘다를 이용한 케라스 설치

__1.3 주피터 설치하기

__1.4 케라스 사용하기

____1.4.1 실습 내용 소개

____1.4.2 텍스트 모드 실습

____1.4.3 주피터 모드 실습

__1.5 케라스 기능

__1.6 마치며



2장. 케라스로 구현하는 ANN

__2.1 ANN 원리

____2.1.1 ANN 개념

____2.1.2 ANN 구조

____2.1.3 ANN 활용

____2.1.4 ANN 구현 방법 및 단계

__2.2 필기체를 구분하는 분류 ANN 구현

____2.2.1 분류 ANN을 위한 인공지능 모델 구현

____2.2.2 분류 ANN에 사용할 데이터 가져오기

____2.2.3 분류 ANN 학습 결과의 그래프 구현

____2.2.4 분류 ANN 학습 및 성능 분석

__2.3 결과 데이터를 예측하는 회귀 ANN 구현

____2.3.1 회귀 ANN 모델링

____2.3.2 학습과 평가용 데이터 가져오기

____2.3.3 회귀 ANN 학습 결과 그래프 구현

____2.3.4 회귀 ANN 학습 및 성능 분석

__2.4 마치며



3장. 케라스로 구현하는 DNN

__3.1 DNN 원리

____3.1.1 DNN 개념과 구조

____3.1.2 경사도 소실 문제와 ReLU 활성화 함수

____3.1.3 DNN 구현 단계

__3.2 필기체를 분류하는 DNN 구현

____3.2.1 기본 매개변수 설정

____3.2.2 DNN 모델 구현

____3.2.3 데이터 준비

____3.2.4 학습 및 성능 평가

__3.3 컬러 이미지를 분류하는 DNN 구현

____3.3.1 데이터 가져오기

____3.3.2 DNN 모델링

____3.3.3 학습 효과 분석

____3.3.4 학습 및 성능 평가

__3.4 마치며



4장 케라스로 구현하는 CNN

__4.1 CNN 원리

__4.2 필기체를 분류하는 CNN 구현

____4.2.1 분류 CNN 모델링

____4.2.2 분류 CNN을 위한 데이터 준비

____4.2.3 분류 CNN 학습 효과 분석

____4.2.4 분류 CNN 학습 및 성능 평가

__4.3 컬러 이미지를 분류하는 CNN 구현

____4.3.1 분류 CNN 패키지 가져오기

____4.3.2 분류 CNN 모델링

____4.3.3 분류 CNN을 위한 데이터 준비

____4.3.4 분류 CNN의 학습 및 성능 평가를 위한 머신 클래스

____4.3.5 분류 CNN의 학습 및 성능 평가 수행

__4.4 마치며



5장 케라스로 구현하는 RNN

__5.1 RNN 원리

____5.1.1 RNN의 개념과 구조

____5.1.2 LSTM 구조 및 동작

__5.2 문장을 판별하는 LSTM 구현

____5.2.1 라이브러리 패키지 가져오기

____5.2.2 데이터 준비

____5.2.3 모델링

____5.2.4 학습 및 성능 평가

__5.3 시계열 데이터를 예측하는 LSTM 구현

____5.3.1 라이브러리 패키지 가져오기

____5.3.2 코드 실행 및 결과 보기

____5.3.3 학습하고 평가하기

____5.3.4 LSTM 시계열 데이터 회귀 모델링

____5.3.5 데이터 가져오기

__5.4 마치며



6장 케라스로 구현하는 AE

__6.1 AE 원리

__6.2 완전 연결 계층을 이용한 AE 구현

____6.2.1 완전 연결 계층 AE 모델링

____6.2.2 데이터 준비

____6.2.3 학습 효과 분석

____6.2.4 완전 연결 계층 AE의 동작 확인

____6.2.5 학습 및 성능 평가

__6.3 합성곱 계층을 이용한 AE 구현

____6.3.1 합성곱 AE 모델링

____6.3.2 데이터 준비 및 학습 효과 분석

____6.3.3 합성곱 AE 결과 시각화

____6.3.4 합성곱 AE 학습 및 성능 평가

__6.4 마치며



7장. 케라스로 구현하는 GAN

__7.1 GAN 원리

____7.1.1 GAN의 목적과 개념

____7.1.2 GAN의 구조

____7.1.3 GAN의 동작 원리

____7.1.4 GAN의 동작 사례

__7.2 확률분포 생성을 위한 완전 연결 계층 GAN 구현

____7.2.1 패키지 가져오기

____7.2.2 데이터 생성 클래스 만들기

____7.2.3 GAN 모델링

____7.2.4 머신 구현하기

____7.2.5 코드 수행과 결과 보기

__7.3 필기체를 생성하는 합성곱 계층 GAN 구현

____7.3.1 공통 패키지 가져오기

____7.3.2 사용자 정의 손실 함수 만들기

____7.3.3 합성곱 계층 GAN 모델링

____7.3.4 합성곱 계층 GAN 학습하기

____7.3.5 합성곱 계층 GAN 수행하기

__7.4 마치며



8장 케라스로 구현하는 UNET

__8.1 UNET 원리

__8.2 UNET을 이용한 컬러 복원 처리

____8.2.1 패키지 가져오기

____8.2.2 UNET 모델링

____8.2.3 데이터 준비

____8.2.4 UNET 처리 그래프 그리기

____8.2.5 UNET 학습 및 결과 확인

__8.3 마치며



<심화 편>



9장 케라스 확장 기능

__9.1 이미지 데이터 증강하기

____9.1.1 응용 코드 구현

____9.1.2 세부 모듈 구현

__9.2 미리 학습한 모델 사용하기

____9.2.1 응용 코드 구현

____9.2.2 세부 모듈 구현

__9.3 간단한 신규 계층 만들기

____9.3.1 Lambda 계층이란?

____9.3.2 파이썬 Lambda 기능 이용

____9.3.3 Lambda 계층 전용 함수 이용

____9.3.4 백엔드 함수 이용

____9.3.5 엔진 전용 함수 이용

____9.3.6 케라스의 확장 기능 이용

__9.4 학습 가능한 신규 계층 만들기

____9.4.1 관련 패키지 가져오기

____9.4.2 새로운 계층의 클래스 만들기

____9.4.3 사용 데이터 준비하기

____9.4.4 신규 계층이 포함된 모델링 만들기

____9.4.5 모델의 학습과 성능 평가

__9.5 케라스의 확장된 기능 이용하기

____9.5.1 텐서플로 가져오기와 내장 케라스 사용하기

____9.5.2 완전 연결층 인공신경망 모델링

____9.5.3 데이터 준비

____9.5.4 학습 진행 및 효과 분석 단계

____9.5.5 주 함수 구현 및 실행

__9.6 마치며



10장. 케라스로 구현하는 RL

__10.1 강화학습 원리

____10.1.1 강화학습의 정의 및 주요 용어

____10.1.2 강화학습 최적화 기본 방법

__10.2 정책 반복법을 이용하는 강화학습 사례

____10.2.1 Gym을 이용한 강화학습 환경 구성하기

____10.2.2 무작위 행동에 따른 상태, 보상 그리고 종료 여부 관찰하 기

____10.2.3 반환값 구하기

____10.2.4 가치함수 구하기

____10.2.5 행동가치함수 구하기

____10.2.6 새로운 정책 구하기

____10.2.7 새로운 정책 사용하기

__10.3 Q-Learning을 이용하는 강화학습 사례

____10.3.1 패키지 가져오기 및 초기화

____10.3.2 주어진 정책에 따른 시행 함수 만들기

____10.3.3 Q-learning 만들기

____10.3.4 Q-learning 실행하기

__10.4 딥러닝 기반 Q-Learning을 이용하는 강화학습

____10.4.1 관련 패키지 가져오기

____10.4.2 Q 함수를 위한 뉴럴넷 구성하기

____10.4.3 텐서플로 기능을 이용한 Q 함수 뉴럴넷 학습 코드 작성

____10.4.4 객체지향 방식으로 Q 함수 뉴럴넷 모델을 학습시키기

____10.4.5 추가 Q 함수 뉴럴넷 모델을 이용한 학습

____10.4.6 시도와 동시에 학습이 진행되게 만들기

__10.5 마치며



11장. 케라스로 구현하는 QAI

__11.1 양자컴퓨팅과 양자인공지능의 기초

____11.1.1 양자비트 상태 표현과 측정

____11.1.2 단일 양자비트 연산자

____11.1.3 다중 양자비트 표현 및 연산

____11.1.4 블로흐 구면과 지정 양자상태 회전

__11.2 양자컴퓨팅 알고리즘 구현

____11.2.1 기본 양자회로 만들기

____11.2.2 입력을 반전시키는 양자회로

____11.2.3 두 상태를 중첩하는 양자회로

____11.2.4 두 개 양자비트를 입력으로 하는 CNOT 연산

____11.2.5 벨 상태 만들기

__11.3 양자인공지능 알고리즘 구현

____11.3.1 매개변수가 있는 가변양자회로 알고리즘

____11.3.2 하이브리드 양자인공지능 학습하기

__11.4 마치며

한줄 서평