Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
| Download

📚 The CoCalc Library - books, templates and other resources

Views: 96145
License: OTHER
1
""" Variable exmaples
2
Created by Chip Huyen ([email protected])
3
CS20: "TensorFlow for Deep Learning Research"
4
cs20.stanford.edu
5
Lecture 02
6
"""
7
import os
8
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
9
10
import numpy as np
11
import tensorflow as tf
12
13
# Example 1: creating variables
14
s = tf.Variable(2, name='scalar')
15
m = tf.Variable([[0, 1], [2, 3]], name='matrix')
16
W = tf.Variable(tf.zeros([784,10]), name='big_matrix')
17
V = tf.Variable(tf.truncated_normal([784, 10]), name='normal_matrix')
18
19
s = tf.get_variable('scalar', initializer=tf.constant(2))
20
m = tf.get_variable('matrix', initializer=tf.constant([[0, 1], [2, 3]]))
21
W = tf.get_variable('big_matrix', shape=(784, 10), initializer=tf.zeros_initializer())
22
V = tf.get_variable('normal_matrix', shape=(784, 10), initializer=tf.truncated_normal_initializer())
23
24
with tf.Session() as sess:
25
sess.run(tf.global_variables_initializer())
26
print(V.eval())
27
28
# Example 2: assigning values to variables
29
W = tf.Variable(10)
30
W.assign(100)
31
with tf.Session() as sess:
32
sess.run(W.initializer)
33
print(sess.run(W)) # >> 10
34
35
W = tf.Variable(10)
36
assign_op = W.assign(100)
37
with tf.Session() as sess:
38
sess.run(assign_op)
39
print(W.eval()) # >> 100
40
41
# create a variable whose original value is 2
42
a = tf.get_variable('scalar', initializer=tf.constant(2))
43
a_times_two = a.assign(a * 2)
44
with tf.Session() as sess:
45
sess.run(tf.global_variables_initializer())
46
sess.run(a_times_two) # >> 4
47
sess.run(a_times_two) # >> 8
48
sess.run(a_times_two) # >> 16
49
50
W = tf.Variable(10)
51
with tf.Session() as sess:
52
sess.run(W.initializer)
53
print(sess.run(W.assign_add(10))) # >> 20
54
print(sess.run(W.assign_sub(2))) # >> 18
55
56
# Example 3: Each session has its own copy of variable
57
W = tf.Variable(10)
58
sess1 = tf.Session()
59
sess2 = tf.Session()
60
sess1.run(W.initializer)
61
sess2.run(W.initializer)
62
print(sess1.run(W.assign_add(10))) # >> 20
63
print(sess2.run(W.assign_sub(2))) # >> 8
64
print(sess1.run(W.assign_add(100))) # >> 120
65
print(sess2.run(W.assign_sub(50))) # >> -42
66
sess1.close()
67
sess2.close()
68
69
# Example 4: create a variable with the initial value depending on another variable
70
W = tf.Variable(tf.truncated_normal([700, 10]))
71
U = tf.Variable(W * 2)
72