본문내용 바로가기

> 루비페이퍼 > 칼럼 자세히 보기

칼럼
리스트보기

[번역 후기] 이토록 쉬운 딥러닝을 위한 기초 수학 with 파이썬

2019.09.05

좀 더 쉽고 친근하게! 번역하면서 있었던 여러 가지 일들

 | 이중민


머신러닝과 딥러닝이 IT의 큰 흐름이 되면서 그와 관련된 서적도 엄청나게 나왔습니다. 그리고 수학의 중요성이 나날이 커져 가는 것 같습니다. 응용수학과를 나왔고, 머신러닝과 딥러닝을 접해봤고, IT 관련 일본어를 어느 정도 안다는 부분 덕분에 이 책을 번역할 기회를 얻었고 그 과정에서 있었던 여러 가지를 한 번 이야기해볼까 합니다.

 

이 책의 위치

실제로 머신러닝과 딥러닝을 공부하는 분이라면 보통 다음 방법을 선택할 것으로 생각합니다.

 

1.    다양한 책, 인터넷 강의 및 자료 등으로 머신러닝과 딥러닝의 기본 이론을 이해한다

2.    사이킷런, 텐서플로, 케라스, 파이토치등으로 이해한 이론을 어떻게 구현하는지 코딩해본다

 

1번을 만족시키려고 출간된 다양한 책을 보면 복잡한 이론을 쉽게 설명하려는 노력이 숨어 있습니다. 최대한 쉽게 코딩하는 방법도 설명합니다. 어쩌면 당연합니다. 여러분이 사이킷런, 텐서플로, 케라스같은 것을 만들 것이 아니라면 머신러닝과 딥러닝을 공부하는 분의 최종 목표는 2를 제대로 하는 것이니까요. 예를 들어 텐서플로로 딥러닝 기초 이론 중 하나인 경사하강법을 적용할 때는 핵심인 `tf.gradients`함께 작성하는 다양한 코드를 자세히 설명합니다.


그런데 실제로 함께 작성하는 다양한 코드는 앞으로 여러분이 직접 생각해서 넣어야 합니다. 그래서 1번과 2번 과정 사이에 하나 배우면 좋은 것이 있습니다. 1.5 정도로 생각하면 좋을 것 같네요.


       1.5. 실제딥러닝에서 사용하는 수학 이론을 중학교 및 고등학교 수학 수준으로 이해한다

 

함께 작성하는 다양한 코드는 수학을 이해해야 하는 지점이 있습니다. 이해를 강조하는 건 여러분이 직접 복잡한수학적인 계산을 해야 한다는 뜻이 아닙니다. 어떤 값을 설정해서 tf.gradients를 실행시킬지를 이해하는 것입니다. 이는여러분이 중학교와 고등학교 때 한 번은 접해봤을 여러 가지 수학 이론을 다시 상기하는 것으로 충분합니다. 이책은 1.5에 해당합니다. 그 이유는 1 2 사이에 필요한 중고등학교 수학 이론을 여러분에게 이해시키고 그와 관련된 파이썬 코드를 알려주기 때문입니다. 이 책을 보면 좋은 이유입니다.

 

이책에서 소개하는 수학은 대부분 중~고등학교에서 배웠던 내용을 다시 상기하는 과정일 것입니다. 번역하면서 최대한 그렇게 설명하려고 노력도 했습니다. 그런데 5장부터 7장까지 소개하는 딥러닝 기반 이론은 베타리더들도 갑자기 수준이 너무 오르는 것 아니냐는 의견이 있었습니다(사실 옮긴이도 그렇게 느끼기는 했습니다). 하지만 해당 내용은 저자도 기존 딥러닝이나 머신러닝 입문서와는 다른 방식으로 쉽게 설명하려고 노력했던 흔적이보였습니다. 어렵다고 느끼더라도 이 책의 앞에서 소개하는 다른 참고 자료들을 보면 충분히 이해할 수있으니 차분히 읽어보기 바랍니다.

 

주피터 노트북 설명 추가

번역하면서 원서 이외의 내용을 조금 추가했습니다. 이 책은 머신러닝, 딥러닝, 데이터 분석에 필요한 파이썬 환경을 모은 패키지인 아나콘다를 설치합니다. 사실많은 도서나 자료가 아나콘다를 설치하라고 합니다. 당연합니다. 한번 설치하면 파이썬부터 다양한 라이브러리 등을 사용할 수 있으니까요.

 

이거 하나면 개발 환경 설치는 끝

그런데 요즘 데이터 분석 코딩에 많이 사용하는 주피터 노트북 사용법은 설명하지 않았습니다. 왠지 이걸 책에넣어야겠다는 오기(?)가 발동하더라고요. 그래서 주피터 노트북의간단한 사용법을 책에 추가하고 주피터 노트북 기반의 예제 파일을 직접 만들어 추가했습니다. 이 부분은 좀 더 독자 여러분의 도움이 되면 좋겠습니다.

그렇다고 너무 자세한 사용법을 넣으면 이 책의 본질을 흐릴 것 같아서 주피터 노트북에 익숙하지 않은 사용자라면 다음 영상을 한 번 살펴보는 것도 좋겠습니다. 영어긴 하지만 사용하는 방식 위주로 보면 어렵지 않을 것입니다.

 

[Quickintroduction to Jupyter Notebook]

만약이 글의 호응이 좋으면 저도 이러한 영상은 한 번 찍어보도록 하겠습니다.

 

구글 Colab도 사용해보세요

텐서플로를공개한 구글에서 많은 사람이 머신러닝과 딥러닝에 접근하길 바라고자 내부에서 사용하던 주피터 노트북을 수정 버전을 배포해서 공개했습니다. ‘구글 Colab’이라고 검색하면 접속할 수 있습니다.

[구글 Colab 바로 가기](https://colab.research.google.com)


구글 Colab의 장점은 정말 아무런 개발 환경 설치 없이 바로 해당 사이트에 접속해서 머신러닝이나 딥러닝 코드를실습해볼 수 있다는 점입니다. 여러분이 실습한 결과는 현재 사용하고 있는 구글 계정에 있는 구글 드라이브에저장해 언제든 다시 꺼내 볼 수도 있고 다른 사람과 공유할 수도 있습니다. 굉장히 편리합니다옮긴이는 개인적으로 이러한 개발 환경이 점점 늘었으면 좋겠고 접근하기 편하다는 점에서 이 책의 실습 코드를 구글Colab에서도 테스트해보고 공개해뒀습니다.

[이 책의 구글 Colab 예제 사이트 바로 가기](http://bit.ly/2T9pLgZ)


연습문제 하나(이미지를 가져와서 직접 변환하는 코드입니다)를제외하면 대부분 원활하게 실행됩니다. 아나콘다 설치도 피곤하다거나 어떤 컴퓨터에서든 실습을 이어가고싶은 분이라면 적극 활용하기 바랍니다.


지원페이지의 파이썬 설치

처음 프로그래밍을 공부하는 분이 간단하면서도 어려워하는 지점 중 하나가 개발 환경을 구축하는 것입니다. 아무리 <다음> 버튼만 눌러서 설치하면 된다고 해도 막상 여러가지 설정을 눈앞에서 보면 혹시 내 컴퓨터에 이상이 생기지는 않을까 혹시 나에게 필요 없는 프로그램이 설치되지는 않을까 고민하게 되는 지점이죠. 그렇다고 책에 이러한 설명을 자세히 넣으면 자칫 본질을 흐리거나 어떤 독자에게는 불필요한 지면 낭비가 될 수도있습니다.


한편 의외로 아나콘다를 싫어하는 개발자분도 있습니다. 꼭 필요한 라이브러리만 설치해서 깔끔한 환경을 유지하고싶은데 아나콘다를 설치하면 그럴 수가 없거든요그래서 [이 책의 지원 페이지](http://bit.ly/2YKdCTq)에서는 [아나콘다를 설치하는 자세한 방법](http://bit.ly/2XTWlFY) [기본 파이썬 개발 환경을 설치한 후 필요한 라이브러리만 설치](http://bit.ly/2XHX4ie)해사용하는 방법을 소개합니다. 사실 아나콘다에서 설치해주는 전체 라이브러리 중 이 책에서 필요한 라이브러리는몇 개 없습니다. 깔끔한 개발 환경을 유지하고 싶은 분이라면 참고하면 좋을 것 같습니다.

 

이토록 쉬운 딥러닝을 위한 기초 수학 with 파이썬 [컴퓨터/IT]  이토록 쉬운 딥러닝을 위한 기초 수학 with 파이썬
마스이 도시카츠 | 루비페이퍼
2019.08.13


리스트보기

바로가기

  • 우측 확장형 배너 2
  • 우측 확장형 배너 2

최근 본 상품