python从入门到放弃之Tensorflow(一)
Tensorflow使用错误集锦:
错误1 :
FutureWarning: Conversion of the second argument of issubdtype from ‘float’ to ‘np.floating’ is dep
解决办法:命令行进入python文件下对numpy进行降级
错误2:
module 'tensorflow' has no attribute 'xxx'
解决办法:一般而言是由于TensorFlow新版本修改了许多函数的名字,可能的情况如下:
tf.sub()改为tf.subtract()
tf.mul()改为tf.multiply()
tf.types.float32改为tf.float32
tf.pact()改为tf.stact()
tf.initialize_all_variables()改为tf.global_variables_initializer()
错误3:
initialize_all_variables (from tensorflow.python.ops.variables) is deprecated and will be removed after 2017-03-02.Instructions for updating:
解决办法:initialize_all_variables已被弃用,将在2017-03-02之后删除。
所以我们把tf.initialize_all_variables()改为tf.global_variables_initializer()就可以了
错误4 :
Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
是说你电脑cpu支持AVX(Advanced Vector Extensions),运算速度可以提升。这个警告是可以忽略的
解决办法:在开头加上下面两行代码
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = ''
1.什么是张量(Tensor)?
张量:多重线性函数。张量同时描述N个属性,将属性写在一块,每个属性有多个自由度。
简单理解:回顾一下我们以前学过向量和矩阵,向量是一维的,矩阵是二维的,我们将张量视为这些的泛化。即rank=0时是标量,rank=1时是向量,rank=2时是矩阵,当rank>=2之后,没有名称,我们将它叫做rank N Tensor
物理角度:“在不同坐标系下都保持不变的物理量”
2.Constant assign
state = tf.Variable(0, name="counter") # 创建一个op,其作用是使`state`增加1
one = tf.constant(1)
new_value = tf.add(state, one)
update = tf.assign(state, new_value) # 启动图后,变量必须先经过init op初始化
# 首先先增加一个初始化op到图中
init_op = tf.initialize_all_variables() # 启动图
with tf.Session() as sess:
# 运行init op
sess.run(init_op)
# 打印 state 的初始值
print (sess.run(state))
# 运行op, 更新state 并打印
for _ in range(3):
sess.run(update)
print (sess.run(state))
3.Reduce_mean
在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)
参数:
input_tensor:待求值的tensor,,被计算的张量,确保为数字类型。
reduction_indices或者axis: 方向数轴,如果没有指明,默认是所有数轴都减小为1。
keep_dims: 如果定义true, 则保留维数,但数量个数为0.
name: 操作过程的名称。
返回值:降低维数的平均值。
tf.reduce_mean(x)表示计算全局平均值;
tf.reduce_mean(x, axis=0)表示计算y轴平均值;
tf.reduce_mean(x, axis=1)表示计算x轴平均值;
4.定义图变量的两种方法Variable
tf.variable

在tensorflow中,创建的这些对象,必须要经过初始化才能使用。最简单直接的初始化所有变量的方法:
init = tf.global_variables_initializer()
with tf.Session() as sess:
sess.run(init)
示例如下:
import tensorflow as tf;
import numpy as np;
import matplotlib.pyplot as plt; a1 = tf.Variable(tf.random_normal(shape=[2,3], mean=0, stddev=1), name='a1')
a2 = tf.Variable(tf.constant(1), name='a2')
a3 = tf.Variable(tf.ones(shape=[2,3]), name='a3') with tf.Session() as sess:
sess.run(tf.initialize_all_variables())
print sess.run(a1)
print sess.run(a2)
print sess.run(a3)

tf.get_variable
import tensorflow as tf
init = tf.constant_initializer([5])
x = tf.get_variable('x', shape=[1], initializer=init)
sess = tf.InteractiveSession()
sess.run(x.initializer)
sess.run(x
运行会话
#coding=utf-8
import numpy as np
from numpy import *
# import matplotlib.pyplot as plt
import tensorflow as tf
# 创建一个变量,初始为标量0
state = tf.Variable(0, name="counter")
# 创建一个op,其作用是使`state`增加1
one = tf.constant(1)
new_value = tf.add(state, one)
update = tf.assign(state, new_value)
# 启动图后,变量必须先经过init op初始化
# 首先先增加一个初始化op到图中
init_op = tf.initialize_all_variables()
# 启动图
with tf.Session() as sess:
# 运行init op
sess.run(init_op)
# 打印 state 的初始值
print (sess.run(state))
# 运行op, 更新state 并打印
for _ in range(3):
sess.run(update)
print (sess.run(state))
输出:

5.placeholder以及数据训练过程




tf.GradientDescentOptimizer(learning_rate).minimize(Loss)


x、y组成的实际数据输入再提供给输入

python从入门到放弃之Tensorflow(一)的更多相关文章
- [Python 从入门到放弃] 6. 文件与异常(二)
本章所用test.txt文件可以在( [Python 从入门到放弃] 6. 文件与异常(一))找到并自行创建 现在有个需求,对test.txt中的文本内容进行修改: (1)将期间的‘:’改为‘ sai ...
- [Python 从入门到放弃] 1. 列表的基本操作
''' 列表 Create By 阅后即焚 On 2018.1.29 ''' 1. 列表的定义 列表看起来好像其它编程语言中的数组,但列表具备更加强大的功能,它是Python完备的集合对象,现在,你可 ...
- Python从入门到放弃系列(Django/Flask/爬虫)
第一篇 Django从入门到放弃 第二篇 Flask 第二篇 爬虫
- Python从入门到放弃
计算机基础 01 计算机基础之编程 02 计算机组成原理 03 计算机操作系统 04 编程语言分类 Python解释器 05 Python和Python解释器 06 执行Python程序的两种方式 0 ...
- [Python 从入门到放弃] 5. 文件与异常(一)
1.文件操作: 文件操作包含读/写 从文件中读取数据 向文件写入数据 Python中内置了open()方法用于文件操作 (更多关于open()BIF介绍 阅读此篇) 基本模板: 1.获取文件对象 2. ...
- [Python 从入门到放弃] 4. 什么是可选参数
参数在函数中使用,顾名思义.可选参数就是:这个参数是可选的 也就是可有可无 我们来看一下这个例子: ver 1: 1.定义一个迭代输出列表元素的函数myPrint 2.参数为 列表 def myPri ...
- [Python 从入门到放弃] 3. BIF(内建函数)
BIF (built-in functions) Python中提供了70多个内建函数,具备大量的现成功能. BIF不需要专门导入,可以直接使用,拿来就用 1.print() # 在屏幕上打印输出 如 ...
- python从入门到放弃之进程
在理解进程之前我们先了解一下什么是进程的概念吧 以下就是我总结的一些基本的进程概念 进程就是正在运行的程序,它是操作系统中,资源分配的最小单位(通俗易懂点也就是电脑给程序分配的一定内存操作空间).资源 ...
- python从入门到放弃之anconada真愁人
原先未使用anconada,用的python2.7,每次install各种包各种问题真的心累 后来装了anconada,安装了python3.6 使用起来比较方便了. 陆续将遇到的问题更新如下~ 一 ...
随机推荐
- 转载-对于Python中@property的理解和使用
原文链接:https://blog.csdn.net/u013205877/article/details/77804137 重看狗书,看到对User表定义的时候有下面两行 @property def ...
- 如何制作 linux 系统 U盘启动盘
1.制作linux 系统的U盘启动盘,需要选择ISO 模式!给大家推荐几个制作相关软件以及相关制作过程(点击相应名字即可进入到网站):UltraISO.rufus.老毛桃.大白菜. UltraISO ...
- LintCode上的一道算法面试题: 数字的统计
说到数字的统计,小时候的数学课大家都应该有学过,但数字太多太复杂的,手动肯定耗时间不说还很容易出错.所以今天分享一下如何用程序来完成. Have you met this question in a ...
- 修改office2019安装位置,自定义安装需要的功能
更新:2019.5.30楼主本人本次重装系统后装office2019再次测试,没有任何问题,没认真看文章,自己胡乱一同操作,导致各种问题的,出了错就就瞎评论,说博主误导人,对你们这种人就是呵呵.左转不 ...
- mysql乐观锁总结和实践(转载)
原文地址:http://chenzhou123520.iteye.com/blog/1863407 乐观锁介绍: 乐观锁( Optimistic Locking ) 相对悲观锁而言,乐观锁假设认为数据 ...
- Java实现复制文件或者文件夹
拷贝一个文件的算法比较简单,当然,可以对它进行优化,比如使用缓冲流,提高读写数据的效率等. 话不多说直接上代码 import java.io.*; /** * 实现文件的拷贝 */ public cl ...
- Git 命令行解决冲突
git add filename 将本地工作区文件加入缓存区 git commit filename -m '提交文件注释' git status 查看当前工作区状态 git fetch ori ...
- Boosting算法(一)
本章全部来自于李航的<统计学>以及他的博客和自己试验.仅供个人复习使用. Boosting算法通过改变训练样本的权重,学习多个分类器,并将这些分类器进行线性组合,提高分类性能.我们以Ada ...
- 洛谷P1372 又是毕业季I【数论】
题目:https://www.luogu.org/problemnew/show/P1372 题意: 在1~n之中找k个数,使得他们的最大公因数最大. 思路: 假设ans是答案,说明选择的k个数分别是 ...
- 牛客练习赛52 B题【树状数组维护区间和{查询区间和,如果区间元素重复出现则计数一次}】补题ing
[题目] 查询区间和,如果区间元素重复出现则计数一次. 链接:https://ac.nowcoder.com/acm/contest/1084/B [题解] 将询问按r排序,维护每个数最后出现的位置, ...