Yet Never Lose Faith

- Good to Great , Jim Collins

How To Preprocess Image Data 자세히보기

Deep Learning/[Books] 머신러닝, 딥러닝 실전 앱 개발

Prologue. 학습능력 키우기 !

Kellyyyy 2020. 4. 20. 08:00

배경(그냥 혼자 끄적임)

나는 개발을 잘 못한다.

우선 경력이 길지 않다.

대학교 졸업까지도 개발에 큰 흥미가 없었고, 취직하면서 본격적인 개발 커리어를 쌓기 시작했다. 

또, 남들보다 개발 감각이 있는 편도 아니다.

알고리즘 문제 하나 풀려면 굉장한 시간이 소요된다.

 

그래서 나는 나만의 장점을 갖기 위해서는

아니, 이 시장에서 살아남기 위해서는

개발실력 +알파가 필요하다고 생각했다.

 

그리고 난 그 +알파가 '학습능력'이라고 생각한다.

내가 정의하는 학습능력은 새로운 것을 공부하고 적용하는 능력이다.

우선 나는 공부하는 것을 좋아하기 때문에 내가 키워낼 수 있는 능력이라고 생각했다.

(즐기는 자가 최고라고 하니까!!)

둘째로, 많은 기술을 접해본 개발자는 시스템 설계를 잘 할 수 있다.

 

나는 학습능력을 키우기 위해 내가 몰랐던 기술들을 공부하고,

실생활이나 업무에 적용해보는 연습을 할 것이다.

 

그리고 그 새로운 지식 첫번째는 바로 Tensorflow이다. 

 

Tensorflow란?

 

 

Tensorflow는 무료 머신러닝/딥러닝 라이브러리이다.

 

Google의 구글 브레인팀이 초기에 구글내의 연구와 제품개발을 위해 개발하다가 

2015년에 오픈소스로 공개했다.

 

Tensorflow는 안드로이드, IOS 같은 모바일 환경부터 리눅스, 맥, 윈도우등 거의 모든 환경에서 활용이 가능하다.

또한 텐서보드라는 모듈을 제공하는데 Tensorflow의 강력한 장점 중 하나이다.

텐서보드는 알고리즘이 어떻게 돌아가고 있는지 시각화해서 보여주는 툴이다.

사용자에게 연산 프로세스를 명확하게 보여줌으로써, 사용자가 모델의 문제를 분명하게 확인할 수 있어 시간낭비를 줄일 수 있다.

 

Tensorflow의 이러한 장점들 때문에

우리가 아는 많은 기업들이 Tensorflow 라이브러리를 사용하고 있다. 

자회사인 구글, 에어비앤비, 코카콜라등이 있으며 국내 기업은 카카오가 있다.

홈페이지에서 소개된 내용으로는 승차요청시, 운전자를 파견할 때 운행 완료율을 예측하는데 사용한다고 하는데,

내피셜로는 승차요청이 발생하면, 요청자와 운전자의 거리나 운전자의 과거 운전 반경등을 활용해 운행완료율을 예측한 후 높은 수치가 나온 운전자에게 콜을 보여주는 게 아닐까 싶다. 

 

파이썬 API를 주로 제공하고 있으며,

C/C++도 제공하긴 하지만 문서화가 미흡하다.

뭘할건데???

이번 시리즈에서는 Tensorflow를 다양하게 활용해보려고 한다. 

 

구체적으로

1. 로컬 에디터에서 사진에 찍힌 물체를 인식하는 소스 작성해보기

2. 뉴스 카테고리를 판정할 수 있는 초간단 웹 어플리케이션 만들어보기

3. RDBMS를 사용하여 머신러닝 모델 구축하기

로 진행할 예정이다. 

 

공부할 때 활용한 서적은 위키북스의 파이썬을 이용한 머신러닝, 딥러닝 실전 앱 개발이라는 책이다.

 

그럼 지금부터 시작한다!