엔지니어가 되고 싶은 공돌이

03. 텐서플로우 기초 코딩 본문

Artificial Intelligence/Basic Tensorflow

03. 텐서플로우 기초 코딩

Geca 2020. 1. 20. 19:52

1. 정의

텐서플로우: 텐서를 흘려보내면서 데이터를 처리하는 라이브러리

텐서: 다차원 배열

랭크: 텐서의 차원, 랭크가 0이면 스칼라, 1이면 벡터, 2이면 행렬, 3이상이면 텐서라고 부른다.

- 텐서들은 계산 그래프 구조를 통해 노드에서 노드로 이동한다.

- 텐서플로우 프로그램 작성 과정: 그래프 생성 -> 그래프 실행

  : 생성과 실행을 따로 하는 이유는 실행과정에서 생성한 전체 그래프중 일부만 사용할 수 도 있기 때문.

- 노드에 연산, 변수, 상수등을 정의


2. 기초 코딩

import tensorflow as tf

# 그래프 노드를 정의하고 출력합니다.
# 출력값 : Tensor("Const:0", shape=(), dtype=float32) Tensor("Const_1:0", shape=(), dtype=float32)
node1 = tf.constant(3.0, dtype=tf.float32)
node2 = tf.constant(4.0) # 암시적으로 tf.float32 타입으로 선언될 것입니다.
print(node1, node2)

# 세션을 열고 그래프를 실행합니다.
# 출력값 : [3.0, 4.0]
sess = tf.Session()
print(sess.run([node1, node2]))

# 두개의 노드의 값을 더하는 연산을 수행하는 node3을 정의합니다.
# 출력값:
# node3: Tensor("Add:0", shape=(), dtype=float32)
# sess.run(node3): 7.0
node3 = tf.add(node1, node2)
print("node3:", node3)
print("sess.run(node3):", sess.run(node3))

sess.close()

1. import tensorflow as tf

: 텐서플로 라이브러리를 사용하기위해 import

 

2. node1 = tf.constant(3.0, dtype = tf.float32)

: 상수값을 표현 하는 노드를 정의

 

3. sess =tf.Session()

   print(sess.run([node1, node2]))

: 세션을 열고 그래프를 실행

 

4. node3 = tf.add(node1, node2)

: node1과 node2의 값을 더하는 연산을 수행하는 노드를 정의

 

5. sess.close()

: 모든 코드를 실행했으니 세션을 닫는다.

 


3. tf.constant

tf.constant(value, dtype, shape, name)

- value: 상수값이며 직접 지정하거나 shape형태로 채울 값을 지정

- dtype: 데이터 타입

- shape: 상수 데이터의 형태

- name: 텐서의 이름

 


참고문헌: 솔라리스, 텐서플로로 배우는 딥러닝, 영진닷컴, 2018.

http://www.yes24.com/Product/Goods/66539232

 

텐서플로로 배우는 딥러닝

딥러닝 기초 이론부터 ANN, 오토인코더, CNN, RNN, GAN, FCN, DQN, 이미지 캡셔닝 최신 모델 구현까지 『텐서플로로 배우는 딥러닝』에서는 딥러닝 기법의 이론적 배경이 되는 기초적인 수학적 이론들을 자세하게 소개하고, 딥러닝 기초 모델들(ANN, 오토인코더, CNN, RNN)의 정확한 이해를 위해 텐서플로 예제 코드와 함...

www.yes24.com

 

'Artificial Intelligence > Basic Tensorflow' 카테고리의 다른 글

04 . placeholder  (0) 2020.01.20
02. Tensorflow  (0) 2020.01.20
01. 인공지능, 머신러닝, 딥러닝  (0) 2020.01.20
Comments