앎을 경계하기

Machine Learning/Everyone TF 2.0

Everyone TF 2.0! - 00 텐서플로우에 정착하자

양갱맨 2019. 11. 23. 02:32

 

딥러닝을 처음 접했을 때 여러가지 프레임워크를 사용해서 모델을 구성하고 학습시킬 수 있다는 것을 알게되었고,

대표적인 프레임워크로 TensorFlow, PyTorch, Keras, Caffe, Torch ... 다양한 것들이 있었다.

사실 나는 약 1년정도 강화학습을 공부하면서 딥러닝 프레임워크 정착을 하지 못했다..

 

연구하기나 직관적으로 짜기엔 PyTorch가 편한 것 같고..

뭔가 상용화라던지 나중가서 많이 쓰게 될 프레임워크는 Tensorflow 같고..

코드나 편리함 따지면 Keras가 텐플 기반이라 더 좋은것같고..

 

이런 생각으로 방황을 하면서 그때 그때 튜토리얼과 API를 뒤져보고 사용했다.

그래서인지 깊이있게 이해하고 자유롭게 사용할 수 있는 게 없었다!

슬슬 정착을 위해 고민하던 중 텐서플로우 2.0이 발표되었고 항상 언어를 배워도 아예 모르는 언어를 바닥부터 배우는게 낫겠다 싶은 생각이 드는 것처럼 텐서플로우 2.0에 정착하고자한다.

기존 tensorflow와 크게 달라진 점은 더 단순해졌다는 것.

텐플보다 하이엔드인 케라스를 통해서 모델을 구성한다고 한다.

tensorflow 2.0 공식 튜토리얼 문서에서는 다음과 같이 말한다.

TF 2.0 버전은 즉시 실행 (eager execution)의 편리함과 TF 1.0의 성능을 합쳤습니다. 이러한 결합의 중심에는 tf.function 이 있는데, 이는 파이썬 문법의 일부를 이식 가능하고 높은 성능의 텐서플로 그래프 코드로 변환시켜줍니다.

tf.function의 멋지고 새로운 특징은 오토그래프 (AutoGraph)입니다. 이는 자연스러운 파이썬 문법을 활용해서 그래프 코드를 작성할 수 있도록 돕습니다. 오토그래프로 사용할 수 있는 파이썬 특징들의 목록을 보려면 오토그래프 지원 범위를 참고하세요. tf.function에 관한 더 자세한 내용을 확인하려면 RFC TF 2.0: Functions, not Sessions을 참고하세요. 오토그래프에 대한 더 자세한 내용은 tf.autograph를 참고하세요.

 

어쨌건,, 나는 이제 방황을 끝내기 위해

튜토리얼을 자료로하여 텐플 2.0에 대한 포스팅을 시작해볼까 한다.