첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
본 블로그는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 블로그 콘텐츠 향상을 위해 쓰여집니다.

728x90
반응형
728x170

▶ linear_regression.py

import matplotlib.pyplot as pp
import numpy as np
import tensorflow as tf

pointCount = 200

xList = []
yList = []

a = 0.22
b = 0.78

for i in range(pointCount):
    x = np.random.normal(0.0, 0.5)
    y = a * x + b + np.random.normal(0.0, 0.1)
    xList.append(x)
    yList.append(y)

pp.plot(xList, yList, "o", label = "Input Data")
pp.legend()
pp.show()

aVariable = tf.Variable(tf.random_uniform([1], -1.0, 1.0))
bVariable = tf.Variable(tf.zeros([1]))

yTensor              = aVariable * xList + bVariable
costTensor           = tf.reduce_mean(tf.square(yTensor - yList))
optimizer            = tf.train.GradientDescentOptimizer(0.5)
trainOperation       = optimizer.minimize(costTensor)
initializerOperation = tf.global_variables_initializer()

with tf.Session() as session:
    session.run(initializerOperation)
    for step in range(0, 21):
        session.run(trainOperation)
        if (step % 5) == 0:
            pp.plot(xList, yList, "o", label = "step = {0}".format(step))
            pp.plot(xList, session.run(aVariable) * xList + session.run(bVariable))
            pp.legend()
            pp.show()

 

728x90

 

[결과]

728x90
반응형
그리드형
Posted by 사용자 icodebroker

댓글을 달아 주세요