我在做一些简单的计算时出了问题,我的代码如下:
import tensorflow as tf
import numpy as np
#...
Zeta=0.05
Lambda=2**20
step1 =sess.run(tf.matmul(x_k,alpha_T))
step2 =Lambda*step1
step3 =Zeta+step2
step1_2_3 = sess.run(Zeta + Lambda*tf.matmul(x_k,alpha_T))
print step1
print step2
print step3
print step1_2_3
它打印出来像:
[[ 1.60326695]]
[[ 1681147.25]]
[[ 1681147.3]]
[[ 1681147.25]]
看来step1_2_3
由step1
,step2
,step3
组合而成。
为什么不是step1_2_3
:[[ 1681147.3]]
?
答案 0 :(得分:0)
我运行了这段代码:
import tensorflow as tf
import numpy as np
sess = tf.Session()
x_k = np.array([[1.0]])
alpha_T = np.array([[1.60326695]])
Zeta = 0.05
Lambda = 2**20
step1 = sess.run(tf.matmul(x_k,alpha_T))
step2 = Lambda*step1
step3 = Zeta+step2
step1_2_3 = sess.run(Zeta + Lambda*tf.matmul(x_k,alpha_T))
print('step1', step1)
print('step2', step2)
print('step3', step3)
print('step1_2_3', step1_2_3)
产生了这个:
('step1', array([[ 1.60326695]]))
('step2', array([[ 1681147.2453632]]))
('step3', array([[ 1681147.2953632]]))
('step1_2_3', array([[ 1681147.2953632]]))
似乎对我来说是一样的。也许某些代码中有些内容没有包含在内。