딥러닝 기초 이론과 텐서플로 동작 원리를 단시간에 확실히 배울 수 있게 구성되었다. 회귀분석에서 시작해 하이퍼파라미터 최적화, CNN, RNN, 강화학습, 나아가 GPU 및 TPU까지, 딥러닝/머신러닝 관련 업무에 종사하고 있다면 반드시 알아야 할 기법과 지식을 실무 관점에서 담았다. 특히 소프트웨어 시스템을 설계해본 경험이 있는 개발자에게 도움이 되며, 딥러닝을 처음 접하는 과학자 및 다른 전문가에게도 유용한 내용으로 채웠다.
저자소개
저자
바라스 람순다르 Bharath Ramsundar
캘리포니아 대학교 버클리에서 전자공학 컴퓨터 과학 학위를 받았고 수학과 졸업생 대표였다. 현재 스탠퍼드 대학교에서 컴퓨터 과학 박사과정을 밟고 있다. 연구 분야는 딥러닝을 신약 개발에 적용하는 방법이다. 딥켐(DeepChem.io)의 리드 개발자이자 창시자로서, 딥켐은 텐서플로 기반의 오픈소스 패키지로서 신약 개발 분야에서 딥러닝 사용을 대중화하는 것을 목표로 한다. 선정이 까다롭기로 유명한 허츠(Hertz) 장학금 지원을 받고 있다.
저자
레자 자데 Reza Bosagh Zadeh
매트로이드(Matroid) 창립 CEO이자 스탠퍼드 대학교 부교수. 머신러닝, 분산 컴퓨팅, 이산응용수학을 연구하고 있다. KDD 최고논문상과 진 골룹 우수논문상을 수상한 바 있고, 마이크로소프트와 데이터브릭스에서 기술자문위원을 역임하기도 했다. 연구 중 트위터의 ‘팔로우 추천’ 알고리즘을 머신러닝으로 구축했고, 이는 트위터에 머신러닝을 적용한 첫 사례였다. 아파치 스파크의 선형대수 패키지의 초기 제작자였고, 당시 작업물이 업계 및 학계의 클러스터 컴퓨팅 환경에서 사용되고 있다. 현재 스탠퍼드 대학교에서 분산 알고리즘과 최적화, 이산수학 및 알고리즘 강의를 개설해 가르치고 있다.
역자
장정호
네이버 검색 소프트웨어 엔지니어. 2006년에 티맥스에서 애플리케이션/시스템 간 데이터 전송 시스템 개발을 시작으로, 다음커뮤니케이션에서 데이터 마이닝 업무, SAP에서 칼럼 기반의 인메모리 RDBMS인 HANA 개발에 동참했으며, 그 후 빅데이터 저장/분석 시스템 영역에 관한 연구를 통해 네이버에서 데이터 분석 시스템을 개발을 담당하고 있습니다. 한빛미디어에서 『쿠퍼네티스 모범 사례』(2020), 『하둡 완벽 가이드(4판)』(2017), 『하이브 완벽 가이드』(2013) 등을 번역했습니다.
SK텔레콤의 데이터 플랫폼 엔지니어. 네이버와 SAP에서 데이터 플랫폼과 데이터베이스 개발에 참여했습니다.
성균관대학교 글로벌경제학과를 졸업하고 삼성전자 무선사업부에서 데이터 분석 기반 마케팅 업무를 담당하고 있다. 공학 기술과 경영, 인문을 융합한 비즈니스 분석에 관심이 크다. 현재 연세대학교에서 빅데이터 분석 석사과정을 밟으며 학업과 실무를 병행하고 있다.
목차
CHAPTER 1 딥러닝 소개
1.1 머신러닝이 컴퓨터 과학을 집어삼키다
1.2 딥러닝 기본 요소
1.3 딥러닝 아키텍처
1.4 딥러닝 프레임워크
1.5 마치며
CHAPTER 2 텐서플로 기초 소개
2.1 텐서 소개
2.2 텐서플로 기초 계산
2.3 명령형과 선언형 프로그래밍
2.4 마치며
CHAPTER 3 텐서플로를 사용한 선형 및 로지스틱 회귀
3.1 수학 복습
3.2 텐서플로를 사용한 학습
3.3 텐서플로에서 선형 모델 및 로지스틱 모델 학습하기
3.4 마치며
CHAPTER 4 완전연결 딥 네트워크
4.1 완전연결 딥 네트워크란?
4.2 완전연결 네트워크에서의 ‘뉴런’
4.3 완전연결 신경망 학습
4.4 텐서플로 구현
4.5 마치며
CHAPTER 5 하이퍼파라미터 최적화
5.1 모델 평가 및 하이퍼파라미터 최적화
5.2 지표, 지표, 지표
5.3 하이퍼파라미터 최적화 알고리즘
5.4 마치며
CHAPTER 6 합성곱 신경망
6.1 합성곱 아키텍처 소개
6.2 합성곱 네트워크 애플리케이션
6.3 텐서플로 합성곱 네트워크 학습
6.4 마치며
CHAPTER 7 순환 신경망
7.1 순환 아키텍처 개요
7.2 순환 셀
7.3 순환 모델 애플리케이션
7.4 신경 튜링머신
7.5 순환 신경망을 사용하여 실제 작업하기
7.6 펜 트리뱅크 말뭉치 처리하기
7.7 마치며
CHAPTER 8 강화학습
8.1 마르코프 결정 과정
8.2 강화학습 알고리즘
8.3 강화학습의 한계
8.4 틱택토 게임
8.5 A3C 알고리즘
8.6 마치며
CHAPTER 9 대규모 딥 네트워크 학습
9.1 딥 네트워크를 위한 커스텀 하드웨어
9.2 CPU 학습
9.3 분산 딥 네트워크 학습
9.4 다중 GPU를 사용한 CIFAR-10 데이터 병렬 학습
9.5 마치며
CHAPTER 10 딥러닝의 미래
10.1 기술 산업 밖의 딥러닝
10.2 윤리적인 딥러닝 사용
10.3 인공일반지능이 곧 도래할까요?
10.4 이제 무엇을 해야 할까요?
출판사리뷰
최신 텐서플로 코드로 체계적으로 이해하는 딥러닝 이론과 실무
딥러닝 이론 따로 구현 따로 공부하는 것보다 라이브러리로 실습하며 익히는 게 더 효율적이다. 그리고 현재 딥러닝에 가장 널리 쓰이는 라이브러리는 텐서플로다. 이 책은 신약 개발 분야에서 딥러닝을 활용하고 있는 연구자들이 딥러닝 기초 이론과 텐서플로 동작 원리를 단시간에 확실히 배울 수 있게 쓴 실전적인 가이드북이다.
딥러닝의 기초가 되는 텐서 수학에서 시작해 완전연결 신경망, CNN, RNN, GAN, 강화학습 등 입문자들이 꼭 알아야 할 기초 지식과 기법을 친절히 살펴본다. 수학 이론을 세세히 다루는 대신 적절한 코드 예제로 이해를 돕고, 프로그래밍에 익숙하지 않은 이들을 위해 선언형 프로그래밍과 객체지향 개념도 함께 살펴본다.
많은 입문서에서 적당히 넘어가는 하이퍼파라미터 최적화도 챕터를 할애해 설명하는 것도 장점이다. 끝으로 현업에서 접하게 될 GPU/TPU를 활용한 분산처리까지, 딥러닝/머신러닝 관련 업무에 종사하고 있다면 반드시 알아야 할 기법과 지식을 실무 관점에서 담았다.
웹에 수많은 데이터셋과 튜토리얼 코드가 공개되어 있지만, 구슬이 서 말이라도 꿰어야 보배다. 이 책을 마스터하면 단편적인 딥러닝, 텐서플로 지식을 체계적으로 종합하여 현업에 준비된 개발자로 거듭날 수 있다.
기본 연산 등으로 텐서플로 기초 학습
기초적인 학습 시스템을 구축하며 수학 원리 습득
완전연결 네트워크 이해
하이퍼파라미터 최적화로 모델 품질 개선
합성곱 신경망으로 이미지 처리
순환 신경망으로 자연어 데이터셋 다루기
강화학습으로 틱택토 같은 게임 풀기
GPU 및 TPU로 네트워크 학습
추천사
실습 위주의 읽기 편한 텐서플로 책이다. 딥러닝을 배워야 할 동기를 유발하는 다양한 예제를 살펴보면서도, 너무 세세하게 들어가지 않는 것도 좋았다. 텐서플로를 기초부터 설명하고, 실무 개발자가 주 독자이므로 수학도 자세히 다루지 않는다. 소프트웨어 엔지니어에게 강력히 추천한다. - 바룬 바수데반, 스탠퍼드 대학교 계산수학과 박사과정
현재 IT 기술 분야에서 가장 잘 나가는 분야는 당연히 AI와 딥러닝이 아닐까싶다. 해외에서 우수한 성과들이 쏟아져내리는데 언어의 한계로 접할 수 있는 장벽이 조금 있는 편인데 우리나라에 뛰어난 언어 실력과 기술적 바탕이 되는 분들이 많이 계셔서 이러한 신기술들을 우리말로 읽어볼 수 있다. 현재는 잘 모르겠으나 일본이 잘 살았던 이유도 외국 문물을 스스럼 없이 받아들인 것도 있지만 번역 분야에 투자를 하고 그러한 인프라가 체계적으로 갖춰져 있기 때문이지 않나 싶다.이 책은 수 많은 딥러닝 관련 라이브러리나 프레임워크 중 구글에서 개발한 텐서플로를 중심으로 딥러닝을 학습해나간다. 텐서플로는 파이썬 딥러닝 라이브러리로서 요즘 가장 핫한 프레임워크이다. 일단 처음 책을 전체적으로 훑어봤을 때는 수식과 그리스 문자가 펼쳐지는게 굉장히 부담스러워졌다. 수학에 할애하는 챕터를 처음부터 읽어보니 다행히도 텐서플로 활용과 이해에 필요한 기초 수학을 갖추기 위한 것이었고 설명도 충분하다. 그리고 텐서플로의 특징에 대한 설명에서 텐서플로는 선언형 프로그래밍이라는 것이 흥미로웠다. 보통 명령형 프로그래밍을 많이 쓰는데 텐서플로는 컴퓨터에게 정확하게 계산하는 방법을 지시하지 않는 선언형 프로그램이라고 한다. 이 책을 통해 생소했던 개념들을 많이 알게 된 것 같다. 텐서플로를 사용한 선형 및 로지스틱 회귀를 담음 3챕터부터 미적분을 다루는데 위의 사진을 보면 내가 왜 기초수학을 갖추기 위한 설명이 충분하다고 말하는지 모두 알 것이다. 이 챕터는 다른 챕터에 비해 긴 편에 속하는데 그만큼 딥러닝을 다루기 위한 최소한의 내용은 짚고 넘어가는 것이다. 그리고 나서 텐서플로로 설명을 시작한다. 책 내용을 하나로 보면 내용이 어렵고 길어보이지만 사실 하나하나 나누어보면 그렇게 이해하지 못할 영역의 분야는 절대 아니다. 모든 통계학 교재에서 나오는 선형 모델 및 로지스텍 모델을 보면 오히려 쉽고 친숙한 개념들이 많이 나온다. 텐서보드라는 것도 처음 봤는데 보통 텐서플로를 설치할 때 함께 설치된다고 한다. 이것을 보며 놀랐는데 사용한 모형을 시각화해서 보여준다는 점이었다. 로지스틱 회귀 손실 함수를 바로 시각화할 수 있다. 완전연결 딥 네트워크가 소개된 4장부터는 본격적으로 딥러닝 만의 개념과 내용이 나오게 된다. 신경망이니, 은닉층이니 모두 인간의 신경망에서 아이디어를 발굴해 만들어놓은 것이 아닌가 여하튼 오늘은 이 책에 대해서 알아봤는데 꼭 실무자나 전공자가 아니더라도 이 텐서플로를 사용해볼 영역이 너무 많다. 어느 영역에 활용할 지는 각자의 몫에 달렸고 저자나 역자들은 이러한 기술을 악용하지 말기를 명시하였다. 그만큼 이 기술이 강력하고 활용성이 높다는 뜻일 것이다. 책의 두께가 250페이지 정도로 매우 얇은 편에 속한다. 딥러닝에 대한 기초를, 그것도 가장 인기있는 텐서플로 프레임워크로 직접 구현해볼 수 있으니 여기서 많은 기초와 개념을 쌓아가기에 충실한 구성으로 되어있다는 것이 나의 생각이다. 현재 IT 기술 분야에서 가장 잘 나가는 분야는 당연히 AI와 딥러닝이 아닐까싶다. 해외에서 우수한 성과들이 쏟아져내리는데 언어의 한계로 접할 수 있는 장벽이 조금 있는 편인데 우리나라에 뛰어난 언어 실력과 기술적 바탕이 되는 분들이 많이 계셔서 이러한 신기술들을 우리말로 읽어볼 수 있다. 현재는 잘 모르겠으나 일본이 잘 살았던 이유도 외국 문물을 스스럼 없이 받아들인 것도 있지만 번역 분야에 투자를 하고 그러한 인프라가 체계적으로 갖춰져 있기 때문이지 않나 싶다.이 책은 수 많은 딥러닝 관련 라이브러리나 프레임워크 중 구글에서 개발한 텐서플로를 중심으로 딥러닝을 학습해나간다. 텐서플로는 파이썬 딥러닝 라이브러리로서 요즘 가장 핫한 프레임워크이다. 일단 처음 책을 전체적으로 훑어봤을 때는 수식과 그리스 문자가 펼쳐지는게 굉장히 부담스러워졌다. 수학에 할애하는 챕터를 처음부터 읽어보니 다행히도 텐서플로 활용과 이해에 필요한 기초 수학을 갖추기 위한 것이었고 설명도 충분하다. 그리고 텐서플로의 특징에 대한 설명에서 텐서플로는 선언형 프로그래밍이라는 것이 흥미로웠다. 보통 명령형 프로그래밍을 많이 쓰는데 텐서플로는 컴퓨터에게 정확하게 계산하는 방법을 지시하지 않는 선언형 프로그램이라고 한다. 이 책을 통해 생소했던 개념들을 많이 알게 된 것 같다. 텐서플로를 사용한 선형 및 로지스틱 회귀를 담음 3챕터부터 미적분을 다루는데 위의 사진을 보면 내가 왜 기초수학을 갖추기 위한 설명이 충분하다고 말하는지 모두 알 것이다. 이 챕터는 다른 챕터에 비해 긴 편에 속하는데 그만큼 딥러닝을 다루기 위한 최소한의 내용은 짚고 넘어가는 것이다. 그리고 나서 텐서플로로 설명을 시작한다. 책 내용을 하나로 보면 내용이 어렵고 길어보이지만 사실 하나하나 나누어보면 그렇게 이해하지 못할 영역의 분야는 절대 아니다. 모든 통계학 교재에서 나오는 선형 모델 및 로지스텍 모델을 보면 오히려 쉽고 친숙한 개념들이 많이 나온다. 텐서보드라는 것도 처음 봤는데 보통 텐서플로를 설치할 때 함께 설치된다고 한다. 이것을 보며 놀랐는데 사용한 모형을 시각화해서 보여준다는 점이었다. 로지스틱 회귀 손실 함수를 바로 시각화할 수 있다. 완전연결 딥 네트워크가 소개된 4장부터는 본격적으로 딥러닝 만의 개념과 내용이 나오게 된다. 신경망이니, 은닉층이니 모두 인간의 신경망에서 아이디어를 발굴해 만들어놓은 것이 아닌가 여하튼 오늘은 이 책에 대해서 알아봤는데 꼭 실무자나 전공자가 아니더라도 이 텐서플로를 사용해볼 영역이 너무 많다. 어느 영역에 활용할 지는 각자의 몫에 달렸고 저자나 역자들은 이러한 기술을 악용하지 말기를 명시하였다. 그만큼 이 기술이 강력하고 활용성이 높다는 뜻일 것이다. 책의 두께가 250페이지 정도로 매우 얇은 편에 속한다. 딥러닝에 대한 기초를, 그것도 가장 인기있는 텐서플로 프레임워크로 직접 구현해볼 수 있으니 여기서 많은 기초와 개념을 쌓아가기에 충실한 구성으로 되어있다는 것이 나의 생각이다. 현재 IT 기술 분야에서 가장 잘 나가는 분야는 당연히 AI와 딥러닝이 아닐까싶다. 해외에서 우수한 성과들이 쏟아져내리는데 언어의 한계로 접할 수 있는 장벽이 조금 있는 편인데 우리나라에 뛰어난 언어 실력과 기술적 바탕이 되는 분들이 많이 계셔서 이러한 신기술들을 우리말로 읽어볼 수 있다. 현재는 잘 모르겠으나 일본이 잘 살았던 이유도 외국 문물을 스스럼 없이 받아들인 것도 있지만 번역 분야에 투자를 하고 그러한 인프라가 체계적으로 갖춰져 있기 때문이지 않나 싶다.
이 책은 수 많은 딥러닝 관련 라이브러리나 프레임워크 중 구글에서 개발한 텐서플로를 중심으로 딥러닝을 학습해나간다. 텐서플로는 파이썬 딥러닝 라이브러리로서 요즘 가장 핫한 프레임워크이다.
일단 처음 책을 전체적으로 훑어봤을 때는 수식과 그리스 문자가 펼쳐지는게 굉장히 부담스러워졌다. 수학에 할애하는 챕터를 처음부터 읽어보니 다행히도 텐서플로 활용과 이해에 필요한 기초 수학을 갖추기 위한 것이었고 설명도 충분하다. 그리고 텐서플로의 특징에 대한 설명에서 텐서플로는 선언형 프로그래밍이라는 것이 흥미로웠다. 보통 명령형 프로그래밍을 많이 쓰는데 텐서플로는 컴퓨터에게 정확하게 계산하는 방법을 지시하지 않는 선언형 프로그램이라고 한다. 이 책을 통해 생소했던 개념들을 많이 알게 된 것 같다.
텐서플로를 사용한 선형 및 로지스틱 회귀를 담음 3챕터부터 미적분을 다루는데 위의 사진을 보면 내가 왜 기초수학을 갖추기 위한 설명이 충분하다고 말하는지 모두 알 것이다. 이 챕터는 다른 챕터에 비해 긴 편에 속하는데 그만큼 딥러닝을 다루기 위한 최소한의 내용은 짚고 넘어가는 것이다. 그리고 나서 텐서플로로 설명을 시작한다.
책 내용을 하나로 보면 내용이 어렵고 길어보이지만 사실 하나하나 나누어보면 그렇게 이해하지 못할 영역의 분야는 절대 아니다. 모든 통계학 교재에서 나오는 선형 모델 및 로지스텍 모델을 보면 오히려 쉽고 친숙한 개념들이 많이 나온다.
텐서보드라는 것도 처음 봤는데 보통 텐서플로를 설치할 때 함께 설치된다고 한다. 이것을 보며 놀랐는데 사용한 모형을 시각화해서 보여준다는 점이었다. 로지스틱 회귀 손실 함수를 바로 시각화할 수 있다. 완전연결 딥 네트워크가 소개된 4장부터는 본격적으로 딥러닝 만의 개념과 내용이 나오게 된다. 신경망이니, 은닉층이니 모두 인간의 신경망에서 아이디어를 발굴해 만들어놓은 것이 아닌가
여하튼 오늘은 이 책에 대해서 알아봤는데 꼭 실무자나 전공자가 아니더라도 이 텐서플로를 사용해볼 영역이 너무 많다. 어느 영역에 활용할 지는 각자의 몫에 달렸고 저자나 역자들은 이러한 기술을 악용하지 말기를 명시하였다. 그만큼 이 기술이 강력하고 활용성이 높다는 뜻일 것이다.
책의 두께가 250페이지 정도로 매우 얇은 편에 속한다. 딥러닝에 대한 기초를, 그것도 가장 인기있는 텐서플로 프레임워크로 직접 구현해볼 수 있으니 여기서 많은 기초와 개념을 쌓아가기에 충실한 구성으로 되어있다는 것이 나의 생각이다.
동물그림으로 유명한 O’reilly 사의 ‘TensorFlow for Deep Learning’을 읽어 보았다.
IT 기술 붐이 일어나는 요즘, 빅데이터, 딥러닝 등의 기술이 이제는 필수가 되는 것 같다. 이 책은 텐서플로를이용한 딥 러닝을 가르쳐 주는 책이다. 처음 책을 봤을 때, 생각보다얇은 두께에 놀랐다. 하지만, 필요한 내용은 다 들어가 있어군더더기 없다는 느낌을 받았다.
텐서플로는 오픈소스 머신러닝 툴로, 이쪽 전공자가 아니라도 쉽게 접근할수 있다는 장점이 있다. 나도 이러한 점 때문에 책을 보게 됐다. 원하는동작을 학습시킴으로써, 소프트웨어를 직접적인 수정 없이 동작 시킬 수 있기 때문에 이러한 머신러닝, 딥러닝은 현재의 공학도들에게 매우 필요한 역량이 됐다.
컴공 전공이 아닌 나에게는, 초반의 아키텍처 설명과 완전연결 등의모델 설명이 좀 어려웠다. 어찌됬든 그만큼 딥러닝, 머신러닝이중요하다 라는 정도로 해석하면 될 것 같다.
아직 초반 공부밖에 하지 않았지만, 이전 다른 프로그래밍 tool을 이용해 배운 개념들이 이렇게 새로운 프로그램에도 적용할 수 있어 접근이 편했다. 행렬의 개념이 ‘텐서’ 위주로바뀌는 것 빼고는 명령어들 또한 비슷비슷해 쉽다는 생각이 들었다.
특히 텐서플로를 이용한 회귀분석은 기존의 데이터 회귀분석보다 성능이 뛰어나 다시금 공부를 하는 계기가 되었다.
이 책을 통해 기존 업무와의 딥러닝 간 연결을 통해, 보다 일의 능률을끌어올리고자 하는 사람들에게 추천한다.
우선 저 뿐만 아니라 이 책에 관한 다른 리뷰에서도 다루고 있듯이, 이 책은 저와 같은 "완전 초보자"를 위한 책은 아닙니다. 이 책으로 텐서플로에 입문을 하기엔 다소 무리가 있어 보입니다.
하지만 텐서플로에 대한 기초적인 지식이 있다면 이 책을 통해 텐서플로와 딥러닝에 대한 지식을 다듬을 수 있습니다. 또, 텐서플로의 역할과 그 강력함에 대해 제시해줄 것이라고 생각합니다.
이 책의 특징
이 책의 딥러닝 소개 (챕터 1), 텐서플로 기초 소개 (챕터 2) 를 약 50페이지에 걸쳐 다루고 있습니다. 딥러닝의 기본 요소나 기초 계산에 필요한 수학 지식 등의 내용을 지나치게 가볍지도, 무겁지도 않게 다루고 있습니다. 독자는 적당한 템포로 책을 읽을 수 있습니다.
다양한 예제를 포함하고 있습니다. 이론적인 설명에 치우치지 않고, 실제적인 예시를 보여줍니다. 하지만 '도움이 되는 정도'의 수준으로, 이 내용을 통해 텐서플로에 입문할 수 있는 수준은 아닙니다. 기초적인 지식만 있다면 책의 예시가 내용을 실제적으로 이해하는 데에 많은 도움이 됩니다.
기초 수준부터 심화 단계까지에 이르는 폭넓은 내용을 적절한 속도로 다룹니다. 기초적인 지식을 익히고, 다음 나아갈 길을 찾는 학습자나 텐서플로의 단지 기술적인 측면에만 집중했던 실무자에게 이 책은 많은 도움이 될 수 있습니다.
흔히 동물그림 IT책으로 유명한 O'REILLY의 책은 정말 활용서의 범위도 다양하고 그 내용의 깊이도 어느정도 있다고 생각한다. 여러 책을 볼 때마다 평균 이상을 하는 만족스런 브랜드이지만 각 언어/분야별로 무척 다양하게 나온 터라 무슨 책을 찾아야할지 늘 고민이 많은 브랜드이기도 하다. 데이터 분석쪽으로도 많은 책이 이미 나오고 있는 데다 책의 종류에 따라 표현하고자 하는 내용/강조하는 내용이 다르기에 이 책에선 어떤 부분을 중요시하는지를 중점으로 한번 읽어보게 되었다.
이 책은 생각보다 분량은 얇았다. 내용도 보면 전반적인 인공지능보단 딥러닝과 텐서플로 기초에 대한 내용이 주로 이루었다. 하지만 얇은 책임에도 기본을 탄탄하게 구성하고 있는것을 보면 역시 O'REILLY 답다는 느낌을 이번에도 받았다.
지금껏 봐온 책들이 주로 실전/활용에 주목하는 쪽이라면 이 책은 실전보단 이론에 초점을 맞추는게 많았다. 다양한 수학공식과 구현원리에 대해 설명을 길게 한 후 이를 어떻게 실제 코드로 구현하는지를 짤막한 예제를 보여주는 형태이기 때문에 이론서에 더 가깝다는 인상을 많이 받을 수 있었다. 하지만 이론서이고, 많은 수학공식이 등장함에도 그 내용은 딥러닝이나 텐서플로,인공지능 하면 다가올 어려운 분위기보다는 조금은 어려운 부분이 덜하기에 생각보단 이해하기는 쉽다는 느낌을 많이 받았었다.
딥러닝과 관련있는 수학기술과 이와 관련된 이론들, 그리고 간단한 구현예제까지 이어지는 내용이기에 아무래도 어느정도의 전제지식이 필요하다는 생각이 들긴 했다. 물론 딥러닝에 관심이 많고, 작동원리에 대해 알고싶어하는 사람들에겐 적극추천하지만 딥러닝이 어떤지 보고 싶고 활용하고 싶어하는 사람에겐 조금은 다른 방향을 제시하는 도서가 아닐까 싶다. 그리고 중간중간 소프트웨어 시스템에 빗대어서 설명하는 것이 많기때문에 이런 시스템에 대해 익숙한 사람들, 수학적인 내용을 이해하는데 조금은 수월한 사람이라면 이 책을 좀 더 쉽게 읽을수 있지 않을까 싶다.
오늘서평을할책은 "Tensorflow for Deep Learning" 이라는책이다. IT에종사하는사람으로써최근많은이슈가되고있는 AI에대해기초적인지식이라도알아야하지않을까라는생각을가지고있던중한빛미디어의 "나는리뷰어다" 이벤트에응모하여운좋게이러한서평을쓸수있는기회를가지게되었다.
이를 통해 책의 저자는 본인이 전달하고자 하는 내용을 정확한 흐름을 통해 잘 기술하고 있다.
각 장에서 다루는 내용은 다음과 같다.
2장에서는
텐서플로의 세션, 변수 등과 관련 내부구조가 도입되고,
3장에서는
선형 회귀 및 로지스틱 회귀가 소개를 통해 텐서플로를 이용한 학습 시스템을 구축하는 방법이 소개된다. 특히 이 장에서 소개된 학습 시스템과 기본 구축 개념은 이후 장에서도 기본적인 학습 원리로 이용이 된다.
4장은
DeepChem 데이터를 이용하여 완전연결 딥 네트워크를 구축하는 방법을 배울 수 있다. 특히 이 장에서 조기중단과 손실곡선을 언급하는 것도 이 책의 장점중의 하나이다.
5장은
4장에서 구축한 DeepChem 데이터에 대해 하이퍼파라미터 최적화를 수행하는 과정을 배울 수 있다. 일반 기본개념에서 잘 다루지 않는 하이퍼파라미터 최적화가 소개된 것만으로도 이 책을 학습할 가치가 있다고 본다.
6장은
합성곱 네트워크의 기본 개념과 디자인 방법을 소개한다. 합성곱 계층, 폴링 계층 등에 대해 배울 수 있으며, 실습으로 MNIST 손글씨 데이터셋을 통해 합성곱 네트워크를 구축한다.
7장은
순환 신경망을 펜 트리뱅크 데이터셋을 이용하여 학습하는 방법을 볼 수 있다. 이 장에서는 순환 신경망에서 사용되는 개념인 LSTM, GRU 등의 이론적인 주제도 같이 살펴 볼 수 있다.
8장은
최근의 강화학습 이론들을 살 펴 볼 수 있다. 틱택토 게임에 강화 학습을 적용하기 위해 객체지향 기법을 통해 강화학습 시스템을 구축하는 방법을 살펴 볼 수 있다.A3C 알고리즘을 구현하고 있으므로 이 알고리즘이 소개된 논문을 살펴 본 다면 논문을 구현하는 예시로도 사용할 수 있다.
9장은
대규모 딥 네트워크 학습을 위해 다중 CPU/GPU를 이용하기 위한 데이터와 모델의 병렬처리에 대하여 소개하고 있다.
이 책은 구글에서 개발 중인 범용적으로 널리 사용되는 딥러닝 프레임워크 텐서플로에 대해 쉽게 접근 할수 있는 책입니다. 딥러닝의 다양한 분야를 세부적으로 깊게는 다루진 않지만 얇고 넓게 딥러닝 기술을 빠르게 파악할 수 있습니다. 실무에서 사용할 수 있는 머신러닝 기초 지식을 터득하기 알맞게 구성되어 있으므로 효과적으로 할습을 모델링하는데 도움이 될것입니다.
이책의 목차 설명
CHAPTER 1 딥러닝 소개
CHAPTER 2 텐서플로 기초 소개
CHAPTER 3 텐서플로를 사용한 선형 및 로지스틱 회귀
CHAPTER 4 완전연결 딥 네트워크
CHAPTER 5 하이퍼파라미터 최적화
CHAPTER 6 합성곱 신경망
CHAPTER 7 순환 신경망
CHAPTER 8 강화학습
CHAPTER 9 대규모 딥 네트워크 학습
CHAPTER 10 딥러닝의 미래
최신 텐서플로 코드로 체계적으로 이해하는 딥러닝 이론과 실무
딥러닝 이론 따로 구현 따로 공부하는 것보다 라이브러리로 실습하며 익히는 게 더 효율적이다. 그리고 현재 딥러닝에 가장 널리 쓰이는 라이브러리는 텐서플로다. 이 책은 신약 개발 분야에서 딥러닝을 활용하고 있는 연구자들이 딥러닝 기초 이론과 텐서플로 동작 원리를 단시간에 확실히 배울 수 있게 쓴 실전적인 가이드북이다.
딥러닝의 기초가 되는 텐서 수학에서 시작해 완전연결 신경망, CNN, RNN, GAN, 강화학습 등 입문자들이 꼭 알아야 할 기초 지식과 기법을 친절히 살펴본다. 수학 이론을 세세히 다루는 대신 적절한 코드 예제로 이해를 돕고, 프로그래밍에 익숙하지 않은 이들을 위해 선언형 프로그래밍과 객체지향 개념도 함께 살펴본다.
많은 입문서에서 적당히 넘어가는 하이퍼파라미터 최적화도 챕터를 할애해 설명하는 것도 장점이다. 끝으로 현업에서 접하게 될 GPU/TPU를 활용한 분산처리까지, 딥러닝/머신러닝 관련 업무에 종사하고 있다면 반드시 알아야 할 기법과 지식을 실무 관점에서 담았다.
웹에 수많은 데이터셋과 튜토리얼 코드가 공개되어 있지만, 구슬이 서 말이라도 꿰어야 보배다. 이 책을 마스터하면 단편적인 딥러닝, 텐서플로 지식을 체계적으로 종합하여 현업에 준비된 개발자로 거듭날 수 있다.
●기본 연산 등으로 텐서플로 기초 학습
●기초적인 학습 시스템을 구축하며 수학 원리 습득
●완전연결 네트워크 이해
●하이퍼파라미터 최적화로 모델 품질 개선
●합성곱 신경망으로 이미지 처리
●순환 신경망으로 자연어 데이터셋 다루기
●강화학습으로 틱택토 같은 게임 풀기
●GPU 및 TPU로 네트워크 학습
이 책을 읽은 소감
이 책은 텐서플로를 통해 머신러닝의 기본 지식을 익힐수 있습니다. 텐서플로로 딥러닝 아키텍처를 쉽게 설계하고 구현하는 것을 배울수 있습니다. 텐서플로를 사용하여 이미지의 객체를 감지하고 인간의 텍스트를 이해하고 임상 의약의 특성을 예측하는 시스템을 구축하는 예제를 통해서 쉽게 배울수 있을 겁니다. 그리고 책을 단계 단계 읽다보면 텐서 미적분학에 대해 이해하는 직관력을 얻을수 있을겁니다. 그리고 머신러닝 범위 밖에 있는 작업에 텐서플로를 사용하는 방법을 배울수 있습니다.
이 책은 실무자를 위해 쓰여진 딥러닝 책이지만 실용적인 예제를 통해 기본 개념을 잘 설명하고 있습니다. 머신러닝의 기초가 없어도 기초부터 설명을 하기 때문에 실무 개발자가 아니라도 책을 읽는데 크게 어려움은 없습니다. 하지만 몇가지 기본적인 수학 지식은 선행 학습이 되어 있어야 이해하는데 도움이 되는 부분도 있습니다. 선형대수학과 미적분학에 대해서 어느 정도 지식이 필요하지만 이책에서 필요한 기초 지식은 적혀 있습니다. 마지막으로 스크립트를 짜는 데 익숙하지만 학습 알고리즘을 설계할 필요가 없는 데이터 과학자나 기타 전문가에게 유용한 책이라 생각합니다.
요즘 세계적으로 대세는 딥러닝과 머신러닝이다. 어느 산업분야를 막론하고 딥러닝과 머신러닝이 다방면에서 사용되고 있기 때문이다. 또한 처음에는 위 학문은 접근하기 어려운, 정말 수학에 대해서 빠삭한 지식이 없으면 감히 접근할 수 없는? 그런 학문이었는데, 다양한 툴과 프레임워크가 등장하면서 점점 진입장벽이 낮아지고 있는 추세이다. 오늘 리뷰할 책은 이러한 진입장벽을 낮추는데에 큰 역할을한 텐서플로우라는 프레임워크와 관련된 내용을 기초부터 아주 친절하게 설명한 책이다
책에 관한 본격적인 리뷰에 임하기에 앞서 어떤 사람들에게 본 서를 권하는지 적어보도록 하겠다.
【어떤 독자를 위한 책인가】
이 책은 딥러닝에 대한 기초가 부족한 사람이 읽으면 좋은 책이다. 물론 CS와 수학에 대한 완전한 기초 지식 없이 접근하기엔 약간 무리수가 있는 책이기는 하나, 왠만치 기본기가 있다면 충분히 소화해낼 수 있는 그런 책이다. 따라서 이제 막 딥러닝이 무엇인지, 그리고 텐서플로우가 무엇인지 알고 싶은 독자라면 이 도서로 시작하길 권장한다.
【책의 구성】 '한 권으로 끝내는 딥러닝 텐서플로' 책의 구성은 어떠한가.
이 책의 서두에서는 딥러닝에 사용되는 수리학적 지식에 대한 핵심을 간략하게 나마 정리하여 잘 설명하고 있다. 그 후, 텐서플로우 코드와 예제 예시를 들어가며 매우 친절하게 설명하는 식의 구조로 되어있다. 따라서 이론만 설명한 다른 책들에 비해 가벼우면서도 재미나게 실습해가며 공부할 수 있는 그런 책이다.
【한 권으로 끝내는 딥러닝 탠서플로를 읽으며…….】
요즘 필자도 딥러닝과 블록체인에 푹 빠져있다. 물론 블록체인은 딥러닝과 거의 무관한 분야이므로, 여기서는 언급을 자제하겠다. 딥러닝을 이용한 스피치 인식에 따른 단어 파싱과 음소에 대한 세그먼테이션에 대한 연구 및 개발을 하고 있는데, 모델을 어떻게 구성하냐에 따라 성능이 엄청 향상되기도 하고 저하되기도하고 매우 신기한 현상을 경험하고있다. 무엇보다 아직 이러한 이유에 대해서 가설만 있을뿐 아직 명확한 근거가 증명되지 않은 상태인 것으로 봐선 이 학문에 대한 추후 연구는 지속 될것이라 생각된다.