>>> import tensorflow.compat.v1 as tf
>>> tf.disable_v2_behavior()
>>>
>>>
>>> x_data = [1,2,3]
>>> y_data = [1,2,3]
>>>
>>> W = tf.Variable(tf.random_normal([1]), name='weight')
import하면 비어있는 그래프가 만들어짐
W = tf.Variable(tf.random_normal([1]), name='weight')
->w의 값 variable로 선언하고 random값
>>> X = tf.placeholder(tf.float32)
>>> Y = tf.placeholder(tf.float32)
x,y값 던져주고 싶어서 만들고
수동으로 cost를 설정
>>> learing_rate = 0.1
>>> gradient = tf.reduce_mean((W * X - Y) * X)
>>> descent = W - learing_rate * gradient
>>> update = W.assign(descent)
learing_rate는 알파
reduce_mean() : 평균값
assign() : 변수값 바꾸고 싶으면
>>> sess = tf.Session()
>>>
>>> sess.run(tf.global_variables_initializer())
Session()은
파이썬 객체와 데이터, 객체의 메모리가 할당되어 있는 실행 환경 사이를 연결,
중간 결과를 저장,
최종 결과를 작업 환경으로 보내준다.
Session.run()
연산 그래프 실행
https://excelsior-cjh.tistory.com/151
[러닝 텐서플로]Chap03 - 텐서플로의 기본 이해하기
Chap03 - 텐서플로의 기본 이해하기 텐서플로의 핵심 구축 및 동작원리를 이해하고, 그래프를 만들고 관리하는 방법과 상수, 플레이스홀더, 변수 등 텐서플로의 '구성 요소'에 대해 알아보자. 3.1 ��
excelsior-cjh.tistory.com
tf.global_variables_initializer() : 변수 초기화
>>> for step in range(21):
... sess.run(update, feed_dict={X: x_data, Y:y_data})
... print(step, sess.run(cost, feed_dict={X : x_data, Y: y_data}), sess.run(W))
updata를 실행시켜줌 x_data, y_data를 던져주면서
결과
step / cost / W
0 0.012103487 [0.970597]
array([0.98431844], dtype=float32)
1 0.0034427664 [0.98431844]
array([0.9916365], dtype=float32)
2 0.0009792704 [0.9916365]
array([0.9955395], dtype=float32)
3 0.00027854493 [0.9955395]
array([0.99762106], dtype=float32)
4 7.923102e-05 [0.99762106]
array([0.99873126], dtype=float32)
5 2.2535067e-05 [0.99873126]
array([0.9993233], dtype=float32)
6 6.411002e-06 [0.9993233]
array([0.9996391], dtype=float32)
7 1.8234161e-06 [0.9996391]
array([0.99980754], dtype=float32)
8 5.186591e-07 [0.99980754]
array([0.99989736], dtype=float32)
9 1.475607e-07 [0.99989736]
array([0.9999453], dtype=float32)
10 4.1876277e-08 [0.9999453]
array([0.9999708], dtype=float32)
11 1.1962996e-08 [0.9999708]
array([0.99998444], dtype=float32)
12 3.3937688e-09 [0.99998444]
array([0.9999917], dtype=float32)
13 9.580283e-10 [0.9999917]
array([0.9999956], dtype=float32)
14 2.7553426e-10 [0.9999956]
array([0.9999977], dtype=float32)
15 7.48237e-11 [0.9999977]
array([0.99999875], dtype=float32)
16 2.2385649e-11 [0.99999875]
array([0.99999934], dtype=float32)
17 5.7873706e-12 [0.99999934]
array([0.99999964], dtype=float32)
18 1.5489832e-12 [0.99999964]
array([0.9999998], dtype=float32)
19 3.872458e-13 [0.9999998]
array([0.9999999], dtype=float32)
20 2.9842795e-13 [0.9999999]
실행 시킬 수록 cost작아짐
W는 1에 가까운 수가 된다.
'project > tansorflow' 카테고리의 다른 글
tensorflow (Python 3.7 cpu)실습5 - 임의의 데이터 넣고 학습시키기 (0) | 2020.07.15 |
---|---|
tensorflow (Python 3.7 cpu)실습4 - 값 넣기(복습) (0) | 2020.07.11 |
tensorflow (Python 3.7 cpu)실습2 - graph그리기 (0) | 2020.07.10 |
Tensorflow (python 3.7) 실습1 (0) | 2020.07.08 |