Flux in Julia/Flux in Julia
선형 회귀분석 Linear regression (ver. Flux in Julia)
딥스탯
2018. 11. 25. 21:28
참고자료¶
http://jorditorres.org/first-contact-with-tensorflow/#cap2 (First contact with tensorflow)
http://fluxml.ai/ (flux: The Elegant Machine Learning Stack)
https://deepstat.tistory.com/5 (선형 회귀분석 Linear regression ver. Tensorflow for Python)
https://deepstat.tistory.com/6 (선형 회귀분석 Linear regression ver.Tensorflow for R)
선형 회귀분석 (ver. Flux in Julia)¶
linear regression (ver. Julia)¶
In [1]:
num_point = 1000
x_data = randn(num_point)
y_data = x_data * 0.1 .+ 0.3 + sqrt(0.03) * randn(num_point);
그림 그리는 코드¶
In [2]:
using Plots
In [3]:
scatter(x_data, y_data, alpha = 0.25)
Out[3]:
In [4]:
using Flux
모수 지정¶
In [5]:
W = param(rand(1))
b = param(rand(1))
yhat(x) = W .* x_data .+ b
Out[5]:
비용함수 지정 (Cost, Loss) (MSE : mean square error)¶
In [6]:
function loss(x, y)
sum((y .- yhat(x)).^2)
end
Out[6]:
최적화 (경사하강법 : GD gradient descent algorithm)¶
In [7]:
data = [(x_data,y_data)]
for i = 0:9
Flux.train!(loss, data, SGD(params(W,b), 0.0002))
print(i, ". W = ", W[1], " b = ", b[1])
print("\n")
end
In [ ]: