Deep Learning을 공부하다보면

제일 먼저 접하는 것은 이미지 데이터를 CNN을 통해 분석하는 방법이다.

 

그 다음에 공부하게 되는 것이

데이터들의 순서가 중요한 시계열 데이터를 위한 RNN이고

이러한 RNN이 필요한 가장 대표적인 데이터 유형이 바로 자연어 처리이다.

 

그런데, 반대로 생각해볼 필요가 있다.

자연어 처리는 반드시 RNN만 적용해야 하는 것일까?

 

이런 궁금증을 해결해줄 수 있는 책이 바로 이 책이다.

 

Natural Language Processing with PyTorch

파이토치로 배우는 자연어 처리

 

표지

 

21년 6월에 초판을 찍은 아직은 따끈따끈한 책이다.

내부에도 저 예쁜 새(노랑허리상모솔새)가 컬러로 인쇄되어 있어서 깜짝 놀랐다 ^^

 

아! 이 책은 ML/DL 관련해서 공부를 해보신 분들이라면

당연히 알고 계실 `박해선`님이 번역해주셨다!

 

초판인쇄

 

책은 정말 친절하게도 Chapter 1 하나를 소개를 위한 내용으로 채워져있다.

 

목차 1

 

또한 자연어 처리를 위한 기본적인 내용들도 친절하게 소개를 해준다.

 

심지어 Neural Network에 대한 기본적인 사항들에 대해서도 소갤를 해주고 있는데,

사실 이러한 내용들에 대해서 사전에 학습되지 않은 사람들이 과연 이 책을 구매할까?라는 의문은 있다.

 

목차2

 

Deep Learning에 대한 기본적인 공부를 이 책으로 할 수 있을지는 조금 의문스럽지만,

그럼에도 불구하고 나름 꼼꼼하고 깔끔하게 잘 설명해주고 있다.

 

이미 공부를 하신 분들도 이 책을 통해서 한 번 훑어보는 것도 괜찮을 것 같다.

 

지도학습

 

이 책의 특징 중 하나는 바로 매 챕터에 `연습문제`가 있다는 것이다.

책을 눈으로만 봤다면 쉽게 풀 수 없는 문제들이다.

 

연습문제

 

 

이 책에 대해서 총평을 해보자면,

 

Deep Learning으로 자연어 처리를 어떻게 할 수 있는지

특히 PyTorch를 이용해서 자연어 처리를 해보고 싶은 사람들에게 추천할 수 있을 것 같다.

 

하지만, 초급인 분들에게는 조금 어려움이 있을 것 같다.

최소한 Deep Learning에 대해서 기본적인 지식은 있는 분들에게 적합하다고 생각된다.

 

Deep Learning에 대한 지식이나, PyTorch에 대해서 알고싶은 사람들 보다는

자연어 처리에 대해서 공부하고 싶은 분들에게 추천한다.

 

살짝 한 번 공부해본 분들이 정리하는 차원에서 봐도 좋을 책이다.

 

 

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

반응형

 

머신러닝/딥러닝 개발과 관련하여

대중적으로 가장 유명한 것은 `텐서플로(Tensorflow)`일 것이다.

 

GitHub에서도 지금(21년 8월) 현재 159k stars를 자랑하고 있으니....^^

https://github.com/tensorflow/tensorflow

 

 

`파이토치(Pytorch)`는 그정도의 인기는 없다.

아직 50.4k stars 밖에 안된다.

https://github.com/pytorch/pytorch

 

 

하지만, 최근 협업에서는

Tensorflow 보다 Pytorch가

더 많은 인기(?)를 얻고 있다.

 

 

이런 Pytorch를 처음 공부할 때

적합해보이는 책이 있다.

 

파이토치 첫걸음 - 딥러닝 기초부터 RNN, 오토인코더, GAN 실전 기법까지

파이토치 첫걸음

 

파이토치 첫걸음 - 10점
최건호 지음/한빛미디어

 

 

책을 본 첫 느낌은

산뜻한 색상의 표지 + 232쪽 얇은 두께 + 아담한 A5 크기

결론적으로

작고 얇은 예쁜 책!!!

 

 

목차

 

 

그리고 목차를 보면

친절하게도 딥러닝이 무엇인지

파이토치를 어떻게 설치해야하는지도 알려주고 있다.

 

 

딥러닝

 

체스를 보여주며 인공지능을 상징하고

스팸 메일 분류를 가지고 머신러닝을

고양이 판별하는 것으로 딥러닝을 설명해주고 있는 그림을 보면서

감동도 했다!

 

`정말 꼼꼼하게 신경써서 만든 책이구나~`

 

 

 

신경망

 

처음에는 단색 인쇄인 줄 알았지만,

필요에 따라 color가 사용되기도 하고

중간에 폴컬러 인쇄가 되어있기도 하다.

 

 

 

지금까지 좋은 말을 했으니

이제는 아쉬운 점을 이야기하자면...

 

 

아담한 A5 크기에 232쪽 얇은 두께의 책이고

책 제목이 `파이토치 첫걸음`인데...

 

부제목은 엄청나다.

`딥러닝 기초부터 RNN, 오토인코더, GAN 실전 기법까지`

 

즉, 조그마한 책에 너무 많은 것을 알려주려고 한 것이다.

 

 

 

책 제목이 `파이토치 첫걸음`이고

책의 첫 챕터에서 딥러닝이 뭔지 설명해주는 책이기에

딥러닝 어린이가 구매하기를 기대한 것으로 보이는데

그러기에 책 내용은 딥러닝 어린이기 보기에 쉽지 않다.

 

 

당장 챕터3의 `선형회귀분석` 부분을 보면

친절하게도 선형회귀분석이 무엇인지 설명을 해주고 있고

손실함수 및 경사하강법을 이어서 이야기하고

파이토치에서의 경사하강법은 어떻게 하는지 설명을 해주며

소스코드로도 보여주고 있다.

 

하지만,

분명히 차근 차근 밟아나가며 설명을 해주고는 있지만

충분한 설명이라기 보다는 요약 수준이다.

 

설명이 부실하다는 말은 아니다.

깔끔하게 정리된 논문같은 느낌?!

아니면 공부하면서 요약정리한 느낌!?

 

 

 

 

반면, 제공되는 예제 코드가 잘 제공되고 있어서 많은 도움이 된다.

https://bit.ly/2U7ttYT

 

책의 예제 외에도 추가적인 자료도 포함되어 있고

주석도 추가적으로 제공되고 있다.

 

 

 

비교적 얇고 작은 사이즈의 책이기에

가볍게 들고 다니면서 틈날 때마다 한 번 읽어보고

제공되는 예제 코드를 Colab에서

돌려가면서 실습해보고

잘 이해가 안되는 부분들에 대해서는

구글링을 해보며 채워나가면서

공부하면 좋을 것 같다.

 

 

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

반응형

[ GAN is ... ]

 

AI가 만든 얼굴이라던지, 오바마 전미국대통령의 fake 영상이라던지 하는 뉴스를 들어보았을 것이다.

이런 것들을 만들어낼 수 있는 가장 대표적인 기술적 배경이 바로 GAN 이다.

 

아래 영상을 보면 바로 어떤 것인지 알 수 있다.

 

 

GAN은 "Generative Adversarial Network"의 줄임말인데, 풀어보면 아래와 같이 말할 수 있다.

  • Generative: 생성(Generation) 모델을 이용하여, 진짜 데이터와 같이
  • Adversarial: 두 개의 모델을 적대적(Adversarial)으로 경쟁시키며 발전 시키는
  • Network: 인공신경망(Artificial Neural Network)

 

"GAN"은 라벨(정답)이 없는 데이터를 가지고 학습을 하는 비지도학습의 한 유형이다.

GAN에 대한 가장 대표적인 설명은 "위조지폐범"과 "경찰"이다.

 

GAN

 

위조지폐범(생성모델)은 진짜와 구분이 어렵도록 위조지폐(가짜 데이터)를 계속 생성하고,

경찰(분류모델)은 진짜와 가짜를 계속 분류하면서 50%의 확률 정도가 될 때까지 계속 진행을 하는 방식이다.

 

 

 

[ This book is ... ]

 

서두가 길었다 ^^

 

GAN에 대해서 알려주는 괜찮은 책이 이번에 한빛미디어에서 출간되었다.

책의 제목은 "GAN 첫걸음" !!!

 

GAN 첫걸음 - 표지

 

예쁜 보라색으로 깔끔한 폰트로 제목이 적혀있는 표지를 갖고 있는 조금 작은 크기(신국판 규격 정도?!)의 책이다.

거기에다가 지금 이 글을 적고 있는 시점에서보면 나온지 얼마 안되는 따끈따끈한 책이다.

 

GAN 첫걸음 - 초판

 

이 책의 지은이는 "타리크 라시드"이다.

 

GAN 첫걸음 - 지은이

 

"타리크 라시드"는 이 책에 앞서서 다른 책을 출간했었다.

 

신경망 첫걸음 - 10점
타리크 라시드 지음, 송교석 옮김/한빛미디어

 

어떻게 보면 위 책의 다음 2권과 같은 위치에 있는 것이 바로 이 책 "GAN 첫걸음"인 것 같다.

물론, "신경망 첫걸음"을 보지 않고 바로 "GAN 첫걸음"을 본다고 하여 문제가 되지는 않는다.

 

GAN 첫걸음 - 대상 독자

 

책에 쓰여져 있는 것처럼, 기초부터 알고 싶은 사람을 배려해서 쓰여져 있기 때문이다.

 

하지만, 아무리 그래도 최소한 Machine Learning에 대한 기초적인 지식이 있으면 조금 더 읽기 수월할 것이고

"신경망 첫걸음"을 먼저 읽었다면 더더욱 읽고 이해하기 좋을 것이다.

 

 

[ Prerequisite ]

 

이 책은 기본적으로

"구글 코랩(Google Colab)" 환경에서 "파이토치(PyTorch)" 라이브러리를 이용하여 GAN을 구현한다.

 

친절하게도 이 책에서는 "Chapter1 파이토치 기본"에서

기본적인 실습 환경과 배경 지식에 대해서 친절하게 설명을 해주고 있다.

 

그러다가 PyTorch의 기본 데이터 형태인 텐서(tensor)에 대해서까지 Part1에서 설명을 해준다.

 

 

[ practice ]

 

"Chapter2 파이토치로 만드는 첫 번째 신경망"에서는

유명한 MNIST 데이터셋을 이용해 PyTorch로 신경망을 만드는 과정을 꼼곰히 설명해주고 있다.

 

"Chapter3 성능 향상 기법"에서는 조금 더 성능을 높이기 위한

손실함수, 활성화 함수, 옵티마이저, 정규화 등에 대해서 설명한다.

 

"Chapter4 CUDA 기초"에서는 AI 하면 떠오르는 GPU를

어떻게 사용할 수 있는지에 대해서 친절하게 설명해준다.

 

여기까지가 "Part1 파이토치와 신경망 기초"에 해당한다.

 

 

[ lesson ]

 

본격적인 GAN에 대한 학습은 "Part2 튼튼한 GAN 만들기"로 분류되어 있는

"Chapter5 GAN 개념"부터 "Chapter8 얼굴 이미지"까지로 이루어져 있고,

 

"Part3 흥미로운 GAN 기법"에서는 조금 더 고급스러운(?)

'Chapter9 합성곱 GAN', 'Chapter10 조건부 GAN'에 대해서 설명해주고 있다.

 

 

 

[ My Opinion is ... ]

 

아직 이 책의 끝까지 공부해보지는 못했지만 지금까지 공부하면서 느낀 점을 적어보면...

 

책이 나름 친절하고 쉽게 설명해주고자 노력했지만,

그렇다고 해서 Machine Learning이 뭔지도 공부하지 않은 상태에서 접하기에는 어려울 수 밖에 없다.

 

또한 책에서 심심찮게 보이는 "신경망 첫걸음에서 뭐뭐를 해봤었다"와 같이

이 책을 보기 전에 "신경망 철걸음"을 보고와야 되는 것처럼 되어 있는 점은 조금 아쉬웠다.

 

하지만,

최소한 "Machine Learning"에 대해서 조금이라도 공부를 해보신 분이라면

GAN에 대해서 공부하기 위해 이 책을 추천할 수 있을 것 같다.

 

어려운 수학 공식에 대한 설명 보다는

구글 코랩에서 PyTorch를 직접 구현해보며 공부할 수 있다는 점은 정말 좋았다.

 

직접 해보면서 공부하는 것을 좋아하시는 분에게는 정말 정말 적극 추천한다!!!

 

 

※ 이 책은 한빛출판네트워크의 '나는 리뷰어다' 이벤트를 통해 제공 받은 도서입니다.

반응형

+ Recent posts