使用tensorflow 訓練模型時,我們可以使用 tensorflow自帶的 s**ewww.cppcns.com模組 tf.train.s**er()來儲存模型,程式設計客棧使用方式很簡單 就是在訓練完模型後,呼叫s**er.s**e()即可
s**er = tf.train.s**er(write_version=tf.train.s**erdefhwdkcvgtn.v2)
s**er.s**e(sess, s**e_dir+"crfmodel.ckpt", global_step=0)
重新載入模型
s**er = tf.train.s**er()
ckpt = tf.train.get_checkpoint_state(flags.restore_model)
s**er.restore(sess, ckpt.model_checkpoint_path)
但是這種方式儲存的模型中包含特別多的資訊,使儲存的模型很大,其實裡面有很多不是我們想要的.我們就想要裡面最重要的權重資訊和偏差等等資料,然後再自己寫解密**,就可以把模型應用於其他的平台,比如安卓手機.
那麼我們可以使用下面的方式獲取訓練後的權重和偏移,
ww, bb = sess.run([self.w,self.b])
其中w,和b都是 tensor型別的資料
with tf.name_scope('weights'):
self.w = tf.get_variable(
shape=[swww.cppcns.comelf.feat_size, self.nb_classes],
initializer=tf.truncated_normal_initializer(stddevhwdkcvgtn=0.01),
name='weights'
# ,regularizer=tf.contrib.layers.l1_regularizer(0.1)
) with tf.name_scope('biases'):
self.b = tf.get_variable(
shape=[self.nb_classes],
initializer=tf.truncated_normal_initializer(stddev=0.01),
name='bias'
)tensorflow 輸出權重 到csv或txt
import numpy as np
w_val, b_val = sess.run([weights_tensor, biases_tensor])
np.s**etxt("w.csv", w_val, delimiter=",")
np.s**etxt("b.csv", b_val, delimiter=",")
本文標題: tensorflow輸出權重值和偏差的方法
本文位址:
Tensorflow中檢視權重
剛開始學習tensorflow,還不太會用,開個博記錄,今天遇到乙個問題是用tf.layers.dense建立的全連線層,如何檢視權重?知道kernel表示了權重,但是如何提示成變數?我分成兩步 1 檢視tensor tf.trainable variables 命令列裡中執行即可,如下圖 可以看到...
Tensorflow 權重衰減的使用
在 tf.get variable 這個函式中有乙個命名引數為 regularizer,顧名思義,這個引數可用於正則化。在 tensorflow 官網中,regularizer 的描述如下 get variable name,shape none,dtype none,initializer non...
tensorflow檢視權重引數值
每個框架都有檢視權重引數的機制,在tenstensorflow中 檢視的例子如下 import tensorflow as tf import numpy as np reader tf.train.newcheckpointreader model 100 all variables reader...