텐서란? 랭크란?
tensor
란 int, float, string과 같은 자료형이다.tensor
란 여러가지 형태를 가질 수 있는numpy 배열
이다.- 텐서에서
배열의 차원
을Rank
라고 표현한다. 0차원, 1차원, 2차원이 아닌 0랭크, 1랭크, 2랭크 이다.
What is tensor?
tensor1 = 7 # 0-dimensional
tensor2 = [7] # 1-dimensional
tensor3 = [[1,2,3], # 2-dimensional [4,5,6]] ... ...
Flow
Flow
란 결국 Graph
이다.즉 모든 계산을 쉽게 하기 위해서 각각의 연산을 잘게 쪼개고 이것을 Graph
로 연결 한 것이다.미분 Chain Rule
같은것을 생각해보면 왜 연산이 간단해 지는지 알 수 있다.
Graph, Node, Edge
선언부와 실행부가 다르다
TensorFlow
코드 상에서 a=1
을 선언해도 추후에 이것이 반영되는 것이지 지금 당장 변수 a
가 1
로 assgin된것은 아니다.이러한 부분이 기본적인 python
프로그래밍과는 다른점이다. 이러한 동작 매커니즘을 생각해보면 결국 앞으로 어떻게 동작 할 것이다
라는 계획
을 Graph
로 표현한것이 TensorFlow
가 되는 것이다.
Operation
: 동작을 정의한 것Node
: Operation 정의를 포함한 것Edge
: Node와 Node를 연결한 것
Graph
it means a graph is just an arrangement of nodes that represent the operations in your model.
그래프란, 단순히 '노드'들을 통해 연결된 계산들의 집합이다.
Session
To compute anything, a graph must be launched in a session. Technically, session places the graph ops on hardware such as CPUs or GPUs and provides methods to execute them. In our example, to run the graph and get the value for c the following code will create a session and execute the graph by running 'c':
import tensorflow as tf
a = 2
b = 3
c = tf.add(a, b, name='Add')
print(c)
sess = tf.Session()
print(sess.run(c))
sess.close()
세션은, 인터넷 세션의 개념과 비슷하다. Graph를 실행해주는 하나의 페이지라고 생각하면 된다.
'Python > Python 딥러닝' 카테고리의 다른 글
파이썬_확률적 경사 하강법-SGD(Stochastic Gradient Descent) (1) | 2020.07.13 |
---|---|
[tensorflow]텐서 선언하기, 즉시 실행모드를 통한 연산, @tf.function (0) | 2020.07.10 |
유용한 Datasets를 얻을수 있는 사이트들 (0) | 2020.07.10 |
[딥러닝용어-평가] 혼동행렬 정확도 정밀도 재현율 F1스코어 특이도 ROC곡선 (0) | 2020.07.10 |
[딥러닝용어-학습] 하이퍼파라미터, 배치, 에포크, 스텝, 지도학습, 비지도학습, 강화학습 (0) | 2020.07.10 |