반응형
* Hypothesis and Cost
Hypothesis
Cost
* Training set의 W에 따른 cost 값 구하기
* Cost와 Weight의 그래프를 그려보면 아래와 같다.
Gradient Descent Algorithm 이란
1) 특정 W 위치에서 출발하여
2) 경사도를 구한다(미분을 한다)
3) 미분값을 기준으로 다시 이동한다
*Gradient Descent 는 아래와 같다
* Gradient Descent Algorithm을 사용하려면 cost function, Weight, bias가 Convex function이 되어야 함
* Gradient Descent Algorithm
optimizer를 사용하면 되지만, 실습
import tensorflow as tf
x_data = [1,2,3]
y_data = [1,2,3]
W = tf.Variable(tf.random_normal([1]), name='weight')
#b = tf.Variable(tf.random_normal([1]), name='bias')
X = tf.placeholder(tf.float32)
Y = tf.placeholder(tf.float32)
hypothesis = X * W
cost = tf.reduce_mean(tf.square(Y - hypothesis))
#learning_rate : 학습 값, 알파
learning_rate = 0.1
gradient = tf.reduce_mean((W * X - Y)*X)
descent = W - learning_rate * gradient
update = W.assign(descent)
sess = tf.Session()
sess.run(tf.global_variables_initializer())
for step in range(21):
# W 값을 update 시켜 준다
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))
출처: 모두를 위한 딥러닝 유튜브
반응형
'개발자 > 모두를 위한 딥러닝' 카테고리의 다른 글
06.Multinomial classification - Softmax Classification (0) | 2020.02.14 |
---|---|
05.Logistic Classification (0) | 2020.02.13 |
04.Multi-variable linear regression (0) | 2020.02.13 |
02. Linear Regression (0) | 2020.02.12 |
01. Basic Machine Learning (0) | 2020.02.01 |