lab2
https://tensorflow.rstudio.com/
https://github.com/hunkim/DeepLearningZeroToAll/blob/master/lab-02-1-linear_regression.py
library(tensorflow) # Create 100 phony x, y data points, y = x * 0.1 + 0.3 # x_data <- runif(100, min=0, max=1) # y_data <- x_data * 0.1 + 0.3 Advertising <- read.table("http://www-bcf.usc.edu/~gareth/ISL/Advertising.csv",header=T, sep=",") x_data <- Advertising$TV y_data <- Advertising$Sales # Try to find values for W and b that compute y_data = W * x_data + b W <- tf$Variable(tf$random_uniform(shape(1L), -1.0, 1.0)) b <- tf$Variable(tf$zeros(shape(1L))) y <- W * x_data + b # Minimize the mean squared errors. loss <- tf$reduce_mean((y - y_data) ^ 2) optimizer <- tf$train$GradientDescentOptimizer(0.000034) train <- optimizer$minimize(loss) # Launch the graph and initialize the variables. sess = tf$Session() sess$run(tf$global_variables_initializer()) # Fit the line (Learns best fit is W: 0.1, b: 0.3) # for (step in 1:365000) { # sess$run(train) # if (step %% 300 == 0) # #cat(step, "|cost:", sess$run(loss), "|b:", sess$run(b),"|W:", sess$run(W), "\n") # cat(step,"|",sess$run(loss),"|",sess$run(b),"|",sess$run(W),"\n") # } (fit.a <- lm(y_data ~ x_data)) ######################################################################################## capture.output( for (step in 1:365000) { sess$run(train) if (step %% 300 == 0) #cat(step, "|cost:", sess$run(loss), "|b:", sess$run(b),"|W:", sess$run(W), "\n") cat(step,"|",sess$run(loss),"|",sess$run(b),"|",sess$run(W),"\n") }, file = "foo.txt") library(rgl) FOO <- read.table("./foo.txt",header=FALSE, sep="|") plot3d( FOO$V3, FOO$V4, FOO$V2, xlab="b", ylab="W", zlab="LOSS", type = "p", lwd = 100, col = c("red","blue"), radius = 0.1 ) rglwidget()