메모장

텐서플로우 linear regression 본문

프로그래밍/머신러닝 딥러닝

텐서플로우 linear regression

hiandroid 2017. 9. 23. 22:16
반응형

텐서플로우로 linear regression 구현



소스코드(설명을 달려고 편의상 //로 주석넣음 실행하려면 주석 삭제필요)


import tensorflow as tf


// 트레이닝 데이터

x_data = [1, 2, 3] 

y_data = [1, 2, 3]


// 텐서플로우가 지정하는 Variable로 W, b을 지정 (-1에서 1까지 랜덤한 값을 설정)

W = tf.Variable(tf.random_uniform([1], -1.0, 1.0))

b = tf.Variable(tf.random_uniform([1], -1.0, 1.0))


hypothesis = W * x_data + b


cost = tf.reduce_mean(tf.square(hypothesis - y_data))


// GradientDescent알고리즘을 사용해서 minimize한다고 생각하면 됨

a = tf.Variable(0.1)

optimizer = tf.train.GradientDescentOptimizer(a)

train = optimizer.minimize(cost)


// 변수들을 초기화 변수들 초기화한 init을 session을 만든담에 처음으로 실행시켜줘야 함

init = tf.initialize_all_variables()


sess = tf.Session()

sess.run(init)


// 루프를 2000번 돌면서 train이라는 minimize하는데 20번 마다 cost와 W, b값을 출력해줌

for step in xrange(2001):

    sess.run(train)

    if step % 20 ==0:

        print step, sess.run(cost), sess.run(W), sess.run(b)



반응형