[AI]/python.tensorflow
tensorflow.optimizer
givemebro
2020. 5. 11. 18:18
반응형
sess=tf.InteractiveSession()
X=tf.constant([1,2],dtype=tf.float32)
y=tf.constant([3,5],dtype=tf.float32)
w=tf.Variable(tf.random.normal([]))
b=tf.Variable(tf.random.normal([]))
tf.global_variables_initializer().run()
pred_y=X*w+b
mse=tf.reduce_mean(tf.square(y-pred_y))
dw=2*tf.reduce_mean(X*(y-pred_y))
db=2*tf.reduce_mean(y-pred_y)
learning_rate=.001
op1=tf.assign(w,w+learning_rate*dw) # variable 값 바꾸기
op2=tf.assign(b,b+learning_rate*db)
w.eval(),b.eval()
costs=[]
for i in range(100):
sess.run([op1,op2])
mse_val,w_val,b_val=sess.run([mse,w,b])
costs.append(mse_val)
import matplotlib.pyplot as plt
plt.plot(costs)

sess=tf.InteractiveSession()
X=tf.constant([1,2],dtype=tf.float32)
y=tf.constant([3,5],dtype=tf.float32)
w=tf.Variable(tf.random.normal([]))
b=tf.Variable(tf.random.normal([]))
tf.global_variables_initializer().run()
pred_y=X*w+b
mse=tf.reduce_mean(tf.square(y-pred_y))
# tensorflow 모터 사용
# graph에서 선언 된 모든 tf.variable을 최적값으로 변경
optimizer=tf.train.GradientDescentOptimizer(learning_rate=.01)
train_op=optimizer.minimize(mse)
costs=[]
for i in range(100):
sess.run(train_op)
costs.append(mse.eval())
import matplotlib.pyplot as plt
plt.plot(costs)

반응형