Tensorflow๋?
๊ตฌ๊ธ์์ ๋ง๋ ๋ฐ์ดํฐ ํ๋ก์ฐ ๊ทธ๋ํ๋ฅผ ์ฌ์ฉํด์ ์์น์ ๊ณ์ฐ์ ์ํ ์คํ์์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ.
Data Flow Graph๋?
Edge : Data / Data Array / Tensor
Node : Operator
์ด ๊ทธ๋ํ ์์์ Tensor๋ค์ ํ๋ฆ์ผ๋ก ๊ณ์ฐ์ ์งํ โ Tensorflow
Tensorflow Hello World
version ํ์ธ
Computational Graph
- ํ์ํ ๋ ธ๋๋ฅผ ๋ง๋ค๊ธฐ
- ๊ฐ๊ฐ์ ์ถ๋ ฅํด๋ณด์.
node1: Tensor("Const_1:0", shape=(), dtype=float32) node2: Tensor("Const_2:0", shape=(), dtype=float32)
node3: Tensor("Add:0", shape=(), dtype=float32)
๊ฐ๊ฐ์ ๊ฐ์ ํ ์ ๊ฐ์ฒด๋ก ์ ์ธ์ด ๋์ด ์์ผ๋ฏ๋ก, ๊ฐ์๋ฅผ ์ฐ์ด๋ณด๋ฉด ํ ์๋ผ๋ ์ ๋ณด ๋ฐ์ ์ ์ฐํ๋๊ฒ ๋น์ฐํ๋ค.
- ๊ฒฐ๊ณผ๊ฐ์ ๋์ค๊ฒ ํ๋ ค๋ฉด, ์ธ์ ์ ์คํ์์ผ์ผ ํ๋ค!
constant ๋ ธ๋๋ ๊ทธ๋ฅ ๊ฐ์ด ์ฐํ๊ณ ,
operation node๋ ์ฐ์ฐ ์ํํ ๊ฒฐ๊ณผ๊ฐ์ด ์ฐํ๋ค.
ํ ์ํ๋ก์ฐ์ ๋์๊ณผ์
- ๊ทธ๋ํ๋ฅผ ๊ทธ๋ฆฐ๋ค.
- ๊ฐ ๋ ธ๋๋ฅผ ์คํ ์ํจ๋ค.
- ๋ณ์๋ฅผ ์ ๋ฐ์ดํธ ํ๋ค.
Placeholder ๋?
์ค์ ๋ก ์ฐ๋ฆฌ๊ฐ ๊ณ์ฐ์ ์ํํ ๋,
์์์ ์ฌ์ฉํ constant ์ฒ๋ผ ๊ฐ์ด ๊ณ ์ ๋์ด์ ์ฌ์ฉ๋๋ ์ผ ๋ณด๋ค๋ ๊ณ์ ํด์ ์ ๋ฐ์ดํธ ๋๋ ๋ ์์
๊ฐ์ง๊ณ ์ ์ฐ์ฐ์ ์ํํ๋์ผ์ด ๋ง๋ค.
๊ธฐ๋ณธ์ ์ผ๋ก ํ์ตํ๋ ๊ณผ์ ์์ ๊ฐ์ค์น๋ฅผ ์ ๋ฐ์ดํธ๋ฅผ ํด์ค์ผ ํ๊ธฐ ๋๋ฌธ์ด๋ค.
๊ทธ๋ ๋ค๋ฉด, ์ ์ฒด์ ์ผ๋ก ๋ชจ๋ธ์ ํ์ตํ๋ ๊ณผ์ ์์ ์๊ธฐ๋
์ฐ์ฐ๊ณผ์ , ์ฆ ๊ทธ๋ํ๋ ๋์ผํ์ง๋ง
์์ ๋ค์ด๊ฐ๋ ๋ฐ์ดํฐ ๊ฐ ๋ณํํ ๋๋ ์ด๋ค ์๋ฃํ(๊ฐ์ฒด)๋ฅผ ์ฌ์ฉํ๋ฉด ๋ ๊น?
ํ ์ํ๋ก์ฐ์์๋ placeholder ๋ผ๋ ๊ฐ๋ ์ ์ฐจ์ฉํด์ ์ฌ์ฉํ๋ค.
a ๋ ธ๋์ b๋ ธ๋๋ placeholder ๋ ธ๋๋ก ์ ์ธ๋์๋ค.
๊ทธ๋ฆฌ๊ณ ๋ ๋
ธ๋๋ฅผ ๋ํ๋ผ๋ ๋
ธ๋๋ฅผ adder_node
๋ผ ์ ์ธํ๋ค.
(์ด ๋, tf.add(a, b)๋ฅผ + ์ฐ์ฐ์๋ฅผ ์ค๋ฒ๋ก๋ฉํด์ ์ฌ์ฉํ ์ ์๊ฒ ๋ง๋ค์ด ๋์๋ค.)
๊ทธ๋ฆฌ๊ณ ๋์ ์ฐ๋ฆฌ๊ฐ adder_node
๋ฅผ ์คํํ๋ฉด,
adder_node
๋ ์๊ธฐ๊ฐ ์ด๋ค ๋
ธ๋๋ฅผ ๋ฐ์ ๋
ธ๋๋ฅผ ์คํํด์ผ ํ๋ ์ง ๋ชจ๋ฅธ๋ค.
๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ์ฐ๋ฆฌ๋ ์ด ๋ ธ๋์ ๋ฐฅ(feed) ๋ฅผ ์ฃผ์ด์ผ ํ๋๋ฐ,
๊ทธ๊ฒ์ด ๋ฐ๋ก feed_dict ์ด๋ค.
7.5
[ 3. 7.]
Array ๋ก ๋ฃ์ด์ค ๊ฒฝ์ฐ, ๊ฐ๊ฐ์ ๋ณ๋ ฌ๋ก ๊ณ์ฐํด์ ๊ฒฐ๊ณผ๊ฐ์ ๋ด๋๋ ๊ฒ์ ์ ์ ์๋ค.
What is Tensor
ํ ์๋ 3์ฐจ์ ์ด์์ ๋ฐ์ดํฐ๊ฐ ๋ชจ์ฌ์๋ ๊ฑธ์ ์นญํ๋ค.
ํ๋ ฌ๊ฐ์ ๊ฒฝ์ฐ๋ 2์ฐจ์์ ๋ฐ์ดํฐ ํํ๋ผ๊ณ ์๊ฐํ ์ ์๋ค.
์ด ์ฐจ์์ ๋ํ ๊ฐ๋ ์ ์ฐ๋ฆฌ๋ Rank ๋ผ ํ๋ค.
์ค์ ์ ํ ๋์์์ ์ฌ์ฉํ๋ ์ฐจ์์ ๊ฐ๋ ๊ณผ ๊ฑฐ์ ๋์ผํ๋ค.
์ด ๋, ํ๋ ฌ๋ ํ๊ณผ ์ด์ ๊ธธ์ด์ ๋ฐ๋ผ ๋ชจ์์ด ๋ณํํ๋ค.
๊ฐ์ ์๋ฆฌ๋ก ํ ์๋ ๊ทธ ๋ชจ์์ด ์ ํด์ง ์ ์์ผ๋ฉฐ, ์ฐ๋ฆฌ๋ ์ด๊ฒ์ Shape ์ด๋ผ ํ๋ค.
๊ทธ๋ฆฌ๊ณ , ๊ฐ node์ ๊ฐ์ด ๋ค์ด๊ฐ ๋, ๊ธฐ๋ณธ์ ์ผ๋ก ๋ฐ์ดํฐ๊ฐ ๊ฐ์ง๋ ์๋ฃํ์ด ์์ ๊ฒ์ด๋ค.
ํ
์ํ๋ก์ฐ์์๋, int32
, float32
โฆ ๊ฐ์ ์๋ฃํ์ด ์กด์ฌํ๋ค.
์ด๊ฒ์ Type ์ด๋ผํ๋ค.
Reference
- [DeepLearningZeroToAll](https://github.com/hunkim/DeepLearningZeroToAll\](https://github.com/hunkim/DeepLearningZeroToAll)