tensorflow学习
作者讲得很好,就直接转载啦。
https://blog.csdn.net/u012436149/article/details/52871772
参考
https://blog.csdn.net/dcrmg/article/details/79797826
这里补充一下:
tf.reduce_mean(tensor,axis)
当axis = None时,输出整个tensor的平均值
当axis != None是,输出指定维度的平均值
x = [[1, 2, 3],
[1, 2, 3]]
#注意,求平均是换成float类型,否则会四舍五入。
x = tf.cast(x,tf.float32)
m_all = tf.reduce_mean(x)
m_0 = tf.reduce_mean(x, axis=0)
m_1 = tf.reduce_mean(x, axis=1)
with tf.Session() as sess:
m_a, m_0, m_1 = sess.run([m_all, m_0, m_1])
print(m_all)
print(m_0)
print(m_1)
输出
2.0
[1. 2. 3.]
[2. 2.]
tf.concat(tensor,axis)
是按照指定方向扩展维度
t1 = [[1, 2, 3], [4, 5, 6]]
t2 = [[7, 8, 9], [10, 11, 12]]
tf.concat([t1, t2], 0)
输出:
[[1,2,3],
[4,5,6],
[7,8,9],
[10,11,12]]
类似的还有:
tf.reduce_sum(tensor,axis)
tf.reduce_max(tensor,axis)
tf.reduce_all(tensor,axis)
tf.reduce_any(tensor,axis)
tf.reduce_sum(tensor,axis):计算指定轴方向上的所有元素的累加和;
tf.reduce_max(tensor,axis): 计算指定轴方向上的各个元素的最大值;
tf.reduce_all(tensor,axis) : 计算指定轴方向上的各个元素的逻辑和;
tf.reduce_any(tensor,axis) : 计算指定轴方向上的各个元素的逻辑或;
tf.expand_dims(tensor, axis)
a = [[1,2],[2,4]]
ex = tf.expand_dims(a, 0)
with tf.Session() as sess:
e = sess.run([ex])
print(e)
输出:
[[[1 2]
[2 4]]]
tf.app.flags
tf.app.flags是一种tensorflow的命令行和参数解析的函数,用法和python的argparse类似。似乎在命令解析时tf.app.flags必须使用–+参数名才能被识别。
定义flag = tf.app.flages
import tensorflow as tf
flag = tf.app.flags.FLAGS
tf.app.flags.DEFINE_string('name','lalala','input your name')
tf.app.flags.DEFINE_integer('age',18,'input your age')
def main(unused_argv):
with tf.Session() as sess:
init = tf.global_variables_initializer()
print(flag.name)
print(flag.age)
sess.run(init)
if __name__ == '__main__':
tf.app.run()
输入python 文件名 --name zqh --age 17
输出
zqh
17