介绍
如何在python项目中实现一个线性回归功能?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
import 操作系统 import tensorflow  as tf def linear_regression (): “才能”;“ 自才能实现一个线性回归 ,,:返回: “才能”;“ #才能,命名空间 with 才能tf.variable_scope (“prepared_data"): ,,,#,准备数据 ,,,x =, tf.random_normal(形状=100,,1,,name=癋eature") ,,,y_true =, tf.matmul (x), [[0.08]]), + 0.7 ,,,#,x =, tf.constant ([[1.0], [2.0], [3.0]]) ,,,#,y_true =, tf.constant ([[0.78], [0.86], [0.94]]) with 才能tf.variable_scope (“create_model"): ,,#,2。构造函数 ,,,#,定义模型变量参数 ,,,weights =, tf.Variable (initial_value=https://www.yisu.com/zixun/tf.random_normal(=[1],形状名称=叭ㄖ亍?) 偏见=tf.Variable (initial_value=特遣部队。random_normal(形状=[1],name="偏见")) y_predit=特遣部队。matmul (x,权重)+偏见 与tf.variable_scope (“loss_function”): # 3。构造损失函数 错误=tf.reduce_mean (tf。平方(y_predit - y_true)) 与tf.variable_scope(“优化”): # 4。优化损失 优化器=tf.train.GradientDescentOptimizer (learning_rate=0.01) .minimize(错误) #收集变量 tf.summary。标量(“错误”,错误) tf.summary。直方图(“权重”,重量) tf.summary。直方图(“偏见”,偏见) #合并变量 合并=tf.summary.merge_all () #创建储蓄者对象 储蓄者=tf.train.Saver () #显式的初始化变量 init=tf.global_variables_initializer () #开启会话 与tf.Session税(): #初始化变量 sess.run (init) #创建事件文件 file_writer=tf.summary。FileWriter (“E:/tmp/线性图=sess.graph) #打印(x.eval ()) #打印(y_true.eval ()) #查看初始化变量模型参数之后的值 打印(“训练前模型参数为:权重% f,偏置% f % (weights.eval (), bias.eval ())) #开始训练 因为我在范围(1000): sess.run(优化) 打印(“第% d次参数为:权重% f,偏置% f,损失% f % (i + 1, weights.eval (), bias.eval (), error.eval ())) #运行合并变量操作 摘要=sess.run(合并) #将每次迭代后的变量写入事件 file_writer。add_summary(总结,我) #保存模型 如果我==999: 储蓄者。保存(税,“/tmp/模型/my_linear.ckpt。”) # #加载模型 #如果os.path.exists (“/tmp/模型/检查站。”): #储蓄者。恢复(税“。/tmp/模型/my_linear.ckpt”) 打印(“参数为:权重% f,偏置% f,损失% f % (weights.eval (), bias.eval (), error.eval ())) pre=[[0.5]] 预测=特遣部队。matmul (pre、重量)+偏见 sess.run(预测) print (prediction.eval ()) 回来没有 if __name__==癬_main__”: linear_regression ()
看完上述内容,你们掌握如何在python项目中实现一个线性回归功能的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!