矩阵运算

矩阵运算

代码

#!/usr/bin/python3
# -*- coding: utf-8 -*-
'tensorflow test '
__author__ = 'administrator'
import tensorflow.compat.v1 as tf
tf.disable_eager_execution()#保证sess.run()能够正常运行
print ('矩阵运算,例如执行乘法、加法和减法,是任何神经网络中信号传播的重要操作。通常在计算中需要随机矩阵、零矩阵、一矩阵或者单位矩阵。')
sess=tf.InteractiveSession()
#5*5 Identity matrix
i_matrix=tf.eye(5)
print('\n5*5 幺矩阵;纯量矩阵;恒等矩阵;单位矩阵\n',i_matrix.eval())

X=tf.Variable(tf.eye(10))
X.initializer.run()     #initialize variable
print("\n10*10 单位矩阵变量(X)\n",X.eval())


A=tf.Variable(tf.random_normal([5,10]))
A.initializer.run()
print ('\n5*10 正态分布随机变量(A):\n',A.eval())

product=tf.matmul(A,X)
print('\n(matmul(A,X)\n',product.eval())



b=tf.Variable(tf.random_uniform([5,10],0,2,dtype=tf.int32))
b.initializer.run()
print('\n5*10 伽马分布 变量random_uniform\n',b.eval())


b_new=tf.cast(b,dtype=tf.float32)
print('\n5*10 init32 转 5*10 float32 (b)\n',b_new.eval())
t_sum=tf.add(product,b_new)
t_sub=product-b_new
print("\nA*X+b\n",t_sum.eval())
print("\nA*X-b\n",t_sub.eval())

o_a=tf.Variable(tf.random_normal([4,5],stddev=2))
o_a.initializer.run()
o_b=tf.Variable(tf.random_normal([4,5],stddev=2))
o_b.initializer.run()
o_A=o_a * o_b 
o_B=tf.scalar_mul(2,A) 
o_C=tf.div(o_a,o_b) 
o_D=tf.mod(o_a,o_b) 
print("a:",o_a.eval())
print("b:",o_b.eval())
print("a*b",o_A.eval())
print("a scalar_mul b",o_B.eval())
print("a div b",o_C.eval())
print("a mod b",o_D.eval())

运行结果:

矩阵运算,例如执行乘法、加法和减法,是任何神经网络中信号传播的重要操作。通常在计算中需要随机矩阵、零矩阵、一矩阵或者单位
矩阵。
  
5*5 幺矩阵;纯量矩阵;恒等矩阵;单位矩阵
 [[1. 0. 0. 0. 0.]
 [0. 1. 0. 0. 0.]
 [0. 0. 1. 0. 0.]
 [0. 0. 0. 1. 0.]
 [0. 0. 0. 0. 1.]]

10*10 单位矩阵变量(X)
 [[1. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
 [0. 1. 0. 0. 0. 0. 0. 0. 0. 0.]
 [0. 0. 1. 0. 0. 0. 0. 0. 0. 0.]
 [0. 0. 0. 1. 0. 0. 0. 0. 0. 0.]
 [0. 0. 0. 0. 1. 0. 0. 0. 0. 0.]
 [0. 0. 0. 0. 0. 1. 0. 0. 0. 0.]
 [0. 0. 0. 0. 0. 0. 1. 0. 0. 0.]
 [0. 0. 0. 0. 0. 0. 0. 1. 0. 0.]
 [0. 0. 0. 0. 0. 0. 0. 0. 1. 0.]
 [0. 0. 0. 0. 0. 0. 0. 0. 0. 1.]]

5*10 正态分布随机变量(A):
 [[-4.91353609e-02  5.35970211e-01  1.39990485e+00  1.68981943e-02
   1.07096046e-01  5.47472119e-01 -8.34636509e-01  7.94281602e-01
   1.17378807e+00  3.23794723e-01]
 [ 6.86909676e-01 -8.79748940e-01 -6.53411210e-01  6.91390276e-01
  -3.73241633e-01 -1.77399158e-01  8.71190965e-01  2.99036987e-02
   2.81679630e-02  1.64658463e+00]
 [ 1.07807004e+00  4.80453551e-01 -3.55023891e-01  4.51839328e-01
  -3.35935980e-01 -2.90277541e-01 -7.17005372e-01  1.23319757e+00
   2.65232533e-01  9.61952567e-01]
 [-3.48799407e-01  2.95763403e-01 -3.92669380e-01 -7.36970280e-04
   8.45904797e-02  1.08629197e-01 -1.28558826e+00 -8.33302811e-02
  -7.31215477e-02 -2.25087717e-01]
 [ 1.79689631e-01 -7.16789424e-01  1.03346482e-01 -1.21773756e+00
   9.55768943e-01  2.01287940e-01 -1.98669270e-01  1.20893523e-01
   1.27796188e-01 -1.16478395e+00]]

(matmul(A,X)
 [[-4.91353609e-02  5.35970211e-01  1.39990485e+00  1.68981943e-02
   1.07096046e-01  5.47472119e-01 -8.34636509e-01  7.94281602e-01
   1.17378807e+00  3.23794723e-01]
 [ 6.86909676e-01 -8.79748940e-01 -6.53411210e-01  6.91390276e-01
  -3.73241633e-01 -1.77399158e-01  8.71190965e-01  2.99036987e-02
   2.81679630e-02  1.64658463e+00]
 [ 1.07807004e+00  4.80453551e-01 -3.55023891e-01  4.51839328e-01
  -3.35935980e-01 -2.90277541e-01 -7.17005372e-01  1.23319757e+00
   2.65232533e-01  9.61952567e-01]
 [-3.48799407e-01  2.95763403e-01 -3.92669380e-01 -7.36970280e-04
   8.45904797e-02  1.08629197e-01 -1.28558826e+00 -8.33302811e-02
  -7.31215477e-02 -2.25087717e-01]
 [ 1.79689631e-01 -7.16789424e-01  1.03346482e-01 -1.21773756e+00
   9.55768943e-01  2.01287940e-01 -1.98669270e-01  1.20893523e-01
   1.27796188e-01 -1.16478395e+00]]

5*10 伽马分布 变量random_uniform
 [[1 1 1 0 1 0 1 1 0 1]
 [1 0 1 1 0 1 1 0 1 0]
 [1 0 0 1 0 1 0 1 0 0]
 [1 0 1 0 1 0 1 0 1 1]
 [1 0 0 0 1 1 0 1 0 0]]

5*10 init32 转 5*10 float32 (b)
 [[1. 1. 1. 0. 1. 0. 1. 1. 0. 1.]
 [1. 0. 1. 1. 0. 1. 1. 0. 1. 0.]
 [1. 0. 0. 1. 0. 1. 0. 1. 0. 0.]
 [1. 0. 1. 0. 1. 0. 1. 0. 1. 1.]
 [1. 0. 0. 0. 1. 1. 0. 1. 0. 0.]]

A*X+b
 [[ 9.5086461e-01  1.5359702e+00  2.3999047e+00  1.6898194e-02
   1.1070961e+00  5.4747212e-01  1.6536349e-01  1.7942816e+00
   1.1737881e+00  1.3237947e+00]
 [ 1.6869097e+00 -8.7974894e-01  3.4658879e-01  1.6913903e+00
  -3.7324163e-01  8.2260084e-01  1.8711910e+00  2.9903699e-02
   1.0281680e+00  1.6465846e+00]
 [ 2.0780702e+00  4.8045355e-01 -3.5502389e-01  1.4518393e+00
  -3.3593598e-01  7.0972246e-01 -7.1700537e-01  2.2331977e+00
   2.6523253e-01  9.6195257e-01]
 [ 6.5120059e-01  2.9576340e-01  6.0733062e-01 -7.3697028e-04
   1.0845904e+00  1.0862920e-01 -2.8558826e-01 -8.3330281e-02
   9.2687845e-01  7.7491230e-01]
 [ 1.1796896e+00 -7.1678942e-01  1.0334648e-01 -1.2177376e+00
   1.9557689e+00  1.2012880e+00 -1.9866927e-01  1.1208935e+00
   1.2779619e-01 -1.1647840e+00]]

A*X-b
 [[-1.0491353e+00 -4.6402979e-01  3.9990485e-01  1.6898194e-02
  -8.9290392e-01  5.4747212e-01 -1.8346364e+00 -2.0571840e-01
   1.1737881e+00 -6.7620528e-01]
 [-3.1309032e-01 -8.7974894e-01 -1.6534111e+00 -3.0860972e-01
  -3.7324163e-01 -1.1773992e+00 -1.2880903e-01  2.9903699e-02
  -9.7183204e-01  1.6465846e+00]
 [ 7.8070045e-02  4.8045355e-01 -3.5502389e-01 -5.4816067e-01
  -3.3593598e-01 -1.2902775e+00 -7.1700537e-01  2.3319757e-01
   2.6523253e-01  9.6195257e-01]
 [-1.3487995e+00  2.9576340e-01 -1.3926694e+00 -7.3697028e-04
  -9.1540951e-01  1.0862920e-01 -2.2855883e+00 -8.3330281e-02
  -1.0731215e+00 -1.2250878e+00]
 [-8.2031035e-01 -7.1678942e-01  1.0334648e-01 -1.2177376e+00
  -4.4231057e-02 -7.9871207e-01 -1.9866927e-01 -8.7910646e-01
   1.2779619e-01 -1.1647840e+00]]
WARNING:tensorflow:From I:\TensorFlow\3.py:45: div (from tensorflow.python.ops.math_ops) is deprecated and will be remov
ed in a future version.
Instructions for updating:
Deprecated in favor of operator or tf.math.divide.
a: [[-0.44818628 -2.6304233  -1.7160052   2.0238476  -0.39415786]
 [-0.7398243   3.1942618   5.38006     1.8023189   1.1498046 ]
 [ 2.3887103   1.9210685   1.4340501  -0.45060584 -0.90641284]
 [ 0.63061017  3.063334    0.17735931  0.44855243  1.676453  ]]
b: [[ 1.8985803   0.87606835 -3.3345618  -1.4218808  -0.8089453 ]
 [-2.5922127  -3.2161064   0.02149472  0.71784985 -0.26562917]
 [ 0.6057434   1.2970325   1.2207457   1.9657913   2.0542657 ]
 [ 3.1395557   0.8850745  -5.2406154   0.7405137  -2.8812637 ]]
a*b [[ -0.85091764  -2.3044307    5.7221255   -2.87767      0.31885216]
 [  1.917782   -10.273086     0.11564291   1.2937944   -0.30542165]
 [  1.4469455    2.4916883    1.7506105   -0.8857971   -1.8620129 ]
 [  1.9798357    2.7112787   -0.92947197   0.33215922  -4.830303  ]]
a scalar_mul b [[-9.8270722e-02  1.0719404e+00  2.7998097e+00  3.3796389e-02
   2.1419209e-01  1.0949442e+00 -1.6692730e+00  1.5885632e+00
   2.3475761e+00  6.4758945e-01]
 [ 1.3738194e+00 -1.7594979e+00 -1.3068224e+00  1.3827806e+00
  -7.4648327e-01 -3.5479832e-01  1.7423819e+00  5.9807397e-02
   5.6335926e-02  3.2931693e+00]
 [ 2.1561401e+00  9.6090710e-01 -7.1004778e-01  9.0367866e-01
  -6.7187196e-01 -5.8055508e-01 -1.4340107e+00  2.4663951e+00
   5.3046507e-01  1.9239051e+00]
 [-6.9759881e-01  5.9152681e-01 -7.8533876e-01 -1.4739406e-03
   1.6918096e-01  2.1725839e-01 -2.5711765e+00 -1.6666056e-01
  -1.4624310e-01 -4.5017543e-01]
 [ 3.5937926e-01 -1.4335788e+00  2.0669296e-01 -2.4354751e+00
   1.9115379e+00  4.0257588e-01 -3.9733854e-01  2.4178705e-01
   2.5559238e-01 -2.3295679e+00]]
a div b [[-2.3606390e-01 -3.0025320e+00  5.1461190e-01 -1.4233595e+00
   4.8724908e-01]
 [ 2.8540263e-01 -9.9320775e-01  2.5029678e+02  2.5107186e+00
  -4.3286080e+00]
 [ 3.9434359e+00  1.4811261e+00  1.1747329e+00 -2.2922364e-01
  -4.4123447e-01]
 [ 2.0085968e-01  3.4611030e+00 -3.3843223e-02  6.0573143e-01
  -5.8184642e-01]]
a mod b [[ 1.450394    0.8738501  -1.7160052  -0.8199141  -0.39415786]
 [-0.7398243  -0.02184463  0.00637923  0.36661923 -0.17834127]
 [ 0.57148004  0.6240361   0.2133044   1.5151855   1.1478529 ]
 [ 0.63061017  0.4081105  -5.0632563   0.44855243 -1.2048107 ]]

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ynchyong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值