TensorFlow——LinearRegression简单模型代码

代码函数详解

tf.random.truncated_normal()函数

tf.truncated_normal函数随机生成正态分布的数据,生成的数据是截断的正态分布,截断的标准是2倍的stddev。

zip()函数

zip() 函数用于将可迭代对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象。如果各个可迭代对象的元素个数不一致,则返回的对象长度与最短的可迭代对象相同。利用 * 号操作符,与zip相反,进行解压。

1import tensorflow as tf 2import numpy as np 3import matplotlib.pyplot as plt 4 5train_x = np.linspace(-5, 3, 50) 6train_y = train_x * 5 + 10 + np.random.random(50) * 10 - 5 7 8plt.plot(train_x, train_y, 'r.') 9plt.grid(True) 10plt.show() 11 12X = tf.placeholder(dtype=tf.float32) 13Y = tf.placeholder(dtype=tf.float32) 14 15w = tf.Variable(tf.random.truncated_normal([1]), name='Weight') 16b = tf.Variable(tf.random.truncated_normal([1]), name='bias') 17 18z = tf.multiply(X, w) + b 19 20cost = tf.reduce_mean(tf.square(Y - z)) 21learning_rate = 0.01 22optimizer = tf.train.GradientDescentOptimizer(learning_rate).minimize(cost) 23 24init = tf.global_variables_initializer() 25 26training_epochs = 20 27display_step = 2 28 29 30with tf.Session() as sess: 31 sess.run(init) 32 loss_list = [] 33 for epoch in range(training_epochs): 34 for (x, y) in zip(train_x, train_y): 35 sess.run(optimizer,feed_dict={X:x, Y:y}) 36 37 if epoch % display_step == 0: 38 loss = sess.run(cost, feed_dict={X:x, Y:y}) 39 loss_list.append(loss) 40 print('Iter: ', epoch, ' Loss: ', loss) 41 42 w_, b_ = sess.run([w, b], feed_dict={X: x, Y: y}) 43 print(" Finished ") 44 print("W: ", w_, " b: ", b_, " loss: ", loss) 45 plt.plot(train_x, train_x*w_ + b_, 'g-', train_x, train_y, 'r.') 46 plt.grid(True) 47 plt.show()
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )

Python 列表 使用技巧

@toc1.列表表达式与列表排序列表中的元素也是可迭代的对象如列表、元组等时,要根据这些元素的某个子元素对列表排序,常规排序方式失效,需要用sorted()函数并指定key。题目:输入一组数到列表nums,请找到列表中任意两个元素相加能够等于9的元素,形成一个元组,使其小数在前大数在后,如:(2,7),(1,8)。重复的元组元素只保留一个,结