본문 바로가기
DeepLearning Framework & Coding/Tensorflow 1.X

[코드로 이해하는 딥러닝 1] - Tensorflow 시작

by 노마드공학자 2020. 12. 10.

[코드로 이해하는 딥러닝 0] - 글연재에 앞서 https://limitsinx.tistory.com/27

 

 

[코드 전문]

딥러닝을 하기위한 첫 스텝인, Tensorflow를 시작해보겠습니다.

 

텐서플로우는 구글에서 만든 머신러닝용 라이브러리 입니다. 

최근에는 페이스북이 만든 'Pytorch(파이토치)'가 빠르게 치고올라오고 있네요

 

일단, 저의 개발환경은 tensorflow 2.1.1입니다. 

 

텐서플로우는 기존의 1 시리즈에서 2시리즈로 탈바꿈하면서 코드 문법을 모조리 바꾸어버렸는데요..(왜이러는 걸까요?)

 

텐서플로우2에서도 텐서플로우1의 문법을 그대로 사용하기 위한 코드가

import tensorflow.compat.v1 as tf

tf.disable_v2_behavior() 부분입니다.

 

 

[코드 분석-1]

import tensorflow.compat.v1 as tf : 텐서플로우의 1번버전을 tf라는 단축어로 저장

tf.disable_v2_behavior() : 텐서플로우2를 사용하지 않겠다.

import numpy as np : numpy라는 수학계산을 위한 라이브러리를 np라는 단축어로 저장

 

 

[코드 분석-2]

여기서 부터 텐서플로우 코드의 시작입니다.

 

① hello = tf.constant("Hello,tensorflow!") : hello라는 변수에 "Hello Tensorflow!"라는 문장을 저장

 

 ★sess=tf.Session()

이 구문이 중요한데요, 향후 머신러닝을 위한 모델링 설계를 완료한 이후에는 항상 이렇게 tf.Session()이라는 코드로

"이 코드들을 기반으로 학습시키겠다" 라고 컴퓨터에게 말해주는 부분입니다.

즉, default로 그냥 적어주신다고 생각하시면 됩니다.

 

print(sess.run(hello) 

텐서플로우는 sess.run(~~~)라는 코드를 통해, 이전에 학습시킨것들을 구동시킬 수 있습니다.

즉, 해당 코드는 hello라는 변수에 "Hello tensorflow!"라는 데이터를 저장시켜놓고

이것을 텐서플로우를 통해 콘솔창에 프린트해보는 아주 간단한 예제입니다.

 

 

[결과값]

b'Hello, Tensorflow!' 라는 문장이 출력되었네요!

b라는 부분은 byte단위라는 뜻으로, 데이터 크기단위를 나타내는 기호입니다.

즉, 크게 신경안쓰셔도 됩니다 :)

 

 

Summary

 

텐서플로우를 시작하는 부분에서 꼭 알아야하는 코드들에 대해 정리해보았습니다.

특히, ★ 표시를 한 2가지는 텐서플로우를 한다면 무조건 작성해야 하는 코드이기에 꼭 숙지 부탁드립니다.

 

[코드 공유]

import tensorflow.compat.v1 as tf

import numpy as np

tf.disable_v2_behavior()

 

hello = tf.constant("Hello,Tensorflow!")

sess=tf.Session()

print(sess.run(hello))

댓글