-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbasic2.py
More file actions
37 lines (26 loc) · 805 Bytes
/
Copy pathbasic2.py
File metadata and controls
37 lines (26 loc) · 805 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# First model
import tensorflow as tf
# Model parameters
W = tf.Variable([0.3], tf.float32)
b = tf.Variable([-0.3], tf.float32)
# Inputs and outputs
x = tf.placeholder(tf.float32)
linear_model = W * x + b
y = tf.placeholder(tf.float32)
# loss function
square_delta = tf.square(linear_model - y)
loss = tf.reduce_sum(square_delta)
# Optimize
optimizer = tf.train.GradientDescentOptimizer(learning_rate=0.01)
train = optimizer.minimize(loss)
init = tf.global_variables_initializer()
sess = tf.Session()
sess.run(init)
# Before optimization loss
print(sess.run(loss, {x:[1,2,3,4], y:[0, -1, -2, -3]}))
for i in range(1000):
sess.run(train, {x:[1,2,3,4], y:[0, -1, -2, -3]})
print(sess.run([W, b]))
# After optimization loss
print(sess.run(loss, {x:[1,2,3,4], y:[0, -1, -2, -3]}))
sess.close()