python变量初始化_tensorflow之变量初始化(tf.Variable)使用详解
默認(rèn)本系列的的讀者已經(jīng)初步熟悉tensorflow。
我們通過(guò)tf.Variable構(gòu)造一個(gè)variable添加進(jìn)圖中,Variable()構(gòu)造函數(shù)需要變量的初始值(是一個(gè)任意類(lèi)型、任意形狀的tensor),這個(gè)初始值指定variable的類(lèi)型和形狀。通過(guò)Variable()構(gòu)造函數(shù)后,此variable的類(lèi)型和形狀固定不能修改了,但值可以用assign方法修改。
如果想修改variable的shape,可以使用一個(gè)assign op,令validate_shape=False.
通過(guò)Variable()生成的variables就是一個(gè)tensor,可以作為graph中其他op的輸入。另外,Tensor類(lèi)重載的所有操作符都被轉(zhuǎn)載到此variables中,所以可以通過(guò)對(duì)變量調(diào)用方法,將節(jié)點(diǎn)添加到圖形中。
import tensorflow as tf
#創(chuàng)造variable.指定這個(gè)variable的type和shape
w = tf.Variable(, name=)
# 接著就可以把這個(gè)variable當(dāng)做tensor運(yùn)用在graph中.
y = tf.matmul(w, ...another variable or tensor...)
z = tf.sigmoid(w + y)
# 通過(guò)`assign()`和相關(guān)方法給這個(gè)w賦值
w.assign(w + 1.0)
w.assign_add(1.0)
一個(gè)graph啟動(dòng)之前所有的variables必須都要賦值,實(shí)際上,變量初始化操作op只是一個(gè)賦值op,是將variables的初始值賦給variables自身。
# 在session中啟動(dòng)graph.
with tf.Session() as sess:
# variable初始化.
sess.run(w.initializer)
# ...現(xiàn)在可以運(yùn)行使用'w'的op...
給variables初始化最簡(jiǎn)單的方法就是global_variables_initializer(),可以直接初始化所有variables:
# 初始化所有variables 的op
init_op = tf.global_variables_initializer()
# 在session中啟動(dòng)graph.
with tf.Session() as sess:
# 啟動(dòng)這個(gè)op
sess.run(init_op)
# ...現(xiàn)在可以運(yùn)行使用variables的op...
但有時(shí)一個(gè)變量的初始化依賴(lài)于其他變量的初始化,但是為了確保初始化順序不能錯(cuò),可以使用initialized_value()。
以上這篇tensorflow之變量初始化(tf.Variable)使用詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持我們。
本文標(biāo)題: tensorflow之變量初始化(tf.Variable)使用詳解
本文地址: http://www.cppcns.com/jiaoben/python/299688.html
總結(jié)
以上是生活随笔為你收集整理的python变量初始化_tensorflow之变量初始化(tf.Variable)使用详解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 创维电视和海信电视那个好!
- 下一篇: 矫正牙齿期间可以吃辣条吗