例子
输出一个他每一次训练之后 他的参数是多少
每隔二十次训练输出参数
接近0.1 接近0.3
首先import tensorflow as tf #tf是tensorflow的缩写
import numpy as np #numpy是一个科学计算的库

编写一些data

生成一百个随机数


随机数生成参数 一维结构
Weights的范围限制为【-1,1】

初始值设置为一维结构的0

一步一步学习 逐渐接近 0.1 0.3
从初始值不断提升
定义y 是我预测的y
预测的y 和实际的y 的差别 loss

tensorflow中有一类在tensor的某一维度上求值的函数。如:
求最大值tf.reduce_max(input_tensor, reduction_indices=None, keep_dims=False, name=None)
求平均值tf.reduce_mean(input_tensor, reduction_indices=None, keep_dims=False, name=None)
翻文档可知的
优化器 是梯度下降算法
减少误差
key idea
学习效率 小于1

我们虽然建立了变量
但是在神经网络中我们还没有初始化变量
我们要初始化这个结构
初始化之前 定义一个sess
Session
Session像一个指针 指向处理的地方

开始让神经网络训练
训练201次
每隔二十部 打印训练的结果


最终结果基本正确 已经很接近于真实值0.1 和 0.3了

Ⅱ.class tf.train.GradientDescentOptimizer

这个类是实现梯度下降算法的优化器。(结合理论可以看到,这个构造函数需要的一个学习率就行了)

init(learning_rate, use_locking=False,name=’GradientDescent’)

作用:创建一个梯度下降优化器对象
参数:
learning_rate: A Tensor or a floating point value. 要使用的学习率
use_locking: 要是True的话,就对于更新操作(update operations.)使用锁
name: 名字,可选,默认是”GradientDescent”.
compute_gradients(loss,var_list=None,gate_gradients=GATE_OP,aggregation_method=None,colocate_gradients_with_ops=False,grad_loss=None)

作用:对于在变量列表(var_list)中的变量计算对于损失函数的梯度,这个函数返回一个(梯度,变量)对的列表,其中梯度就是相对应变量的梯度了。这是minimize()函数的第一个部分,
参数:
loss: 待减小的值
var_list: 默认是在GraphKey.TRAINABLE_VARIABLES.
gate_gradients: How to gate the computation of gradients. Can be GATE_NONE, GATE_OP, or GATE_GRAPH.
aggregation_method: Specifies the method used to combine gradient terms. Valid values are defined in the class AggregationMethod.
colocate_gradients_with_ops: If True, try colocating gradients with the corresponding op.
grad_loss: Optional. A Tensor holding the gradient computed for loss.
apply_gradients(grads_and_vars,global_step=None,name=None)

作用:把梯度“应用”(Apply)到变量上面去。其实就是按照梯度下降的方式加到上面去。这是minimize()函数的第二个步骤。 返回一个应用的操作。
参数:
grads_and_vars: compute_gradients()函数返回的(gradient, variable)对的列表
global_step: Optional Variable to increment by one after the variables have been updated.
name: 可选,名字
get_name()

minimize(loss,global_step=None,var_list=None,gate_gradients=GATE_OP,aggregation_method=None,colocate_gradients_with_ops=False,name=None,grad_loss=None)

作用:非常常用的一个函数
通过更新var_list来减小loss,这个函数就是前面compute_gradients() 和apply_gradients().的结合

Tensorflow -mofan1相关推荐

  1. tensorflow 1.x Saver(保存与加载模型) 预测

    20201231 tensorflow 1.X 模型保存 https://blog.csdn.net/qq_35290785/article/details/89646248 保存模型 saver=t ...

  2. python 虚拟环境 tensorflow GPU

    拿到一个新的容器之后,怎么创建一个独立的GPU训练环境呢?之前弄的时候总是零零散散的,现在把它总结在这里,供自己以及有需要的朋友查阅. conda创建 1.1 下载anaconda wget -c h ...

  3. API pytorch tensorflow

    pytorch与tensorflow API速查表 方法名称 pytroch tensorflow numpy 裁剪 torch.clamp(x, min, max) tf.clip_by_value ...

  4. tensor转换 pytorch tensorflow

    一.tensorflow的numpy与tensor互转 1.数组(numpy)转tensor 利用tf.convert_to_tensor(numpy),将numpy转成tensor >> ...

  5. Tensorflow会话

    Tensorflow中的会话是来执行定义好的运算的.会话拥有并管理Tensorflow程序运行时的所有资源.当计算完成之后需要关闭会话来帮助系统回收资源,否则可能出现资源泄露的问题. Tensorfl ...

  6. tensorflow问题

    20210121 ImportError: No module named 'tensorflow.python' https://stackoverflow.com/questions/414156 ...

  7. tensorflow兼容处理 tensorflow.compat.v1 tf.contrib

    20201130 问题提出: v1版本中tensorflow中contrib模块十分丰富,但是发展不可控,因此在v2版本中将这个模块集成到其他模块中去了.在学习tensorflow经常碰到tf.con ...

  8. ImportError: No module named tensorflow.compat.v1 忽略已经安装的某个包版本 忽略已安装版本...

    ImportError: No module named tensorflow.compat.v1 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声 ...

  9. 请注意更新TensorFlow 2.0的旧代码

    TensorFlow 2.0 将包含许多 API 变更,例如,对参数进行重新排序.重新命名符号和更改参数的默认值.手动执行所有这些变更不仅枯燥乏味,而且容易出错.为简化变更过程并让您尽可能顺畅地过渡到 ...

最新文章

  1. c++后台开发项目_[c/c++后台开发面经系列]4 Zoom面经(含答案)
  2. 软件测试岗需要会什么条件,应聘软件测试岗位需要具备什么条件?
  3. sql server 2005 T-SQL BACKUP CERTIFICATE (Transact-SQL)
  4. 麦克纳姆轮平台坐标系说明
  5. UVA11729 Commando War【贪心】
  6. 斯坦福大学深度学习公开课cs231n学习笔记(8)神经网络学习过程中的检查事项和参数调优
  7. jade选峰之后怎么去掉_教程丨用Jade软件处理XRD数据的步骤
  8. 注册测绘师考试(个人总结)—工程测量、地籍测量、房产测量、界线测量
  9. 计算机c盘怎样重命名,怎么对C盘一子文件夹重命名
  10. wineows git esc 无法进入尾行模式
  11. 大数据相关资料论文小结
  12. JS区分中英文字符的两种方法
  13. (六)JAVA设计模式23种设计模式之适配器模式实例demo
  14. anaconda环境安装搜不到的环境
  15. 倍思和绿联扩展坞哪个好_Macbook用什么扩展坞好?贝尔金对比绿联,国产更胜一筹...
  16. win10 任务栏图标变为空白、图标丢失的解决方法
  17. 我每天都要打开的8个在线网站,很有用~
  18. 给hacke拨乱反正 黑客、红客、蓝客究竟是什么[摘]
  19. 牛逼闪闪的腾讯开源运维系统平台!
  20. hive 使用regexp筛选和替代特殊字符

热门文章

  1. 〖经典〗网页特效汇总实例
  2. 叮叮叮 重点之中的python必备英语单词(1)来啦!请记得查收
  3. ios 输入法扩展_ios 应用扩展—— Keyboard Extension
  4. linux桌面xfce美化_Xfce Linux桌面环境,Arduino机器人,热门DevOps书籍,FreeDOS,Python,Go等
  5. (14)css—伪类选择器
  6. HTML5 Canvas的基本用法
  7. ES6 ArrayBuffer 概述
  8. 视觉SLAM十四讲学习笔记-第六讲-非线性优化的非线性最小二乘问题
  9. mysql temporary_mysql – 如何在同一个查询中多次引用TEMPORARY表?
  10. android os build初始化,Android 关于android.os.Build介绍