tensorflow 的一些问题
(一)
No module named 'numpy.core._multiarray_umath'
这种错误基本上是因为numpy版本和tensorfolw版本不匹配。
解决办法:
pip uninstall numpy
pip install numpy-xx #版本自己查
(二)
tf.contrib.layers.xavier_initializer
no module named contrib
#改代码为2.0版本
tf.keras.initializers.glorot_normal
(三)
关于linear
tf.contrib.layers.linear
#这个linear在1.4版本以前存在,1.5版本删除,添加了一个比较相似(但不是)的fully_connected()函数
#2.x模块删除contrib linear 可以用dense 代替,但是注意dense和Dense的区别
tf.layers.dense
(四) 关于变量初始化以及如何输出这些初始化的变量
#引入库函数
import tensorflow as tf
from ops import *
#初始化方式init
init = tf.contrib.layers.xavier_initializer()
#变量定义,包括变量名,变量维度,变量初始化方式
word_embedding_matrix = tf.get_variable(
name="word_embedding_matrix",
shape=[20,100],
initializer=init,
trainable = True
)
#如何输出这个变量
with tf.Session() as sess:
sess.run(tf.initialize_all_variables())
print(sess.run(word_embedding_matrix))
session显示一些特殊变量,
sess=tf.Session()
sess.run(v)
sess.close()