理解卷积中的valid和same以及在卷积函数tensorflow中的使用

关于padding的一些要点

padding主要是防止丢掉图像边缘位置的许多信息。如果不用padding,会导致1、很明显,图像中间位置的数据会参与更多的运算,而边缘位置的数据参与运算的次数比中间位置的数据少。2、每一步卷积图像都会缩小,如果网络层数很多的话,那么图像最后会很小。

所以根据自己需要可以在卷积之前进行padding。padding的意思即填充边缘,扩大边缘,也就是Same卷积。而Valid卷积则意味着不填充。

在步长stride=1的前提下,如果用Valid卷积,一个n * n的图像,用一个f * f的过滤器卷积,则可以得到一个(n-f+1)*(n-f+1)维的输出。

在步长stride=1的前提下,如果用Same卷积,则输入大小和输出大小是一样的,也就是一个n * n的图像,不管使用什么大小的过滤器卷积,输出大小都还是n * n维。

对于Valid卷积,输出的形状长和宽的计算如下:(其中W表示输入的长或宽,F表示卷积核filter大小,S表示步长stride)
⌈ W − F + 1 S ⌉ \lceil {{W-F+1}\over S} \rceil SWF+1
对于Same卷积,输出的形状长或宽只和输入的长和宽以及步长有关,计算如下:
⌈ W S ⌉ \lceil {{W}\over S} \rceil SW
其中 ⌈ ⌉ \lceil \rceil 为向上取整符号。

另外,卷积conv和池化pool中的Valid和Same的用法是一样的。

根据输入的形状,源码nn_ops.py中的convolution函数和pool函数给出的计算输出的形状的公式如下(ceil在英文中是向上取整的意思),可以看出也就是上面给出的两个公式:

 If padding == "SAME":
      output_spatial_shape[i] = ceil(input_spatial_shape[i] / strides[i])

    If padding == "VALID":
      output_spatial_shape[i] =
        ceil((input_spatial_shape[i] -
              (spatial_filter_shape[i]-1) * dilation_rate[i])
              / strides[i]).

再具体说明下如何使用Same池化(只是为了说明Same的原理而已,在卷积conv中Same是一样的):

来自网址:https://blog.youkuaiyun.com/wuzqchom/article/details/74785643 感谢!

变量x是一个2×3的矩阵,max pooling窗口为2×2,两个维度的步长strides=2 。
第一次由于窗口可以覆盖,橙色区域做max pooling,没什么问题,如下:
image

接下来就是SAME和VALID的区别所在:由于步长为2,当向右滑动两步之后,VALID方式发现余下的窗口不到2×2所以直接将第三列舍弃,而SAME方式并不会把多出的一列丢弃,但是只有一列了不够2×2怎么办?填充!
image
如上图所示,SAME会增加第四列以保证可以达到2×2,但为了不影响原始信息,一般以0来填充。这就不难理解不同的padding方式输出的形状会有所不同了。

下面代码就是上面这个例子:

import tensorflow as tf

x = tf.constant([[1., 2., 3.],
                 [4., 5., 6.]])
x = tf.reshape(x, [1, 2, 3, 1])  # give a shape accepted by tf.nn.max_pool
# print(x)
valid_pad = tf.nn.max_pool(x, [1, 2, 2, 1], [1, 2, 2, 1], padding='VALID')
same_pad = tf.nn.max_pool(x, [1, 2, 2, 1], [1, 2, 2, 1], padding='SAME')

valid_pad_1 = tf.reshape(valid_pad,[-1])
same_pad_1 = tf.reshape(same_pad,[-1])

init = tf.initialize_all_variables()
with tf.Session() as sess:
    print(sess.run(x))
    print("valid_pad:\n",sess.run(valid_pad))
    print("same_pad:\n",sess.run(same_pad))
    print("valid_pad.get_shape():\n",valid_pad.get_shape())
    print("same_pad.get_shape():\n",same_pad.get_shape())
    print("valid_pad_1:\n", sess.run(valid_pad_1))
    print("same_pad_1:\n", sess.run(same_pad_1))

输出:

[[[[1.]
   [2.]
   [3.]]

  [[4.]
   [5.]
   [6.]]]]
valid_pad:
 [[[[5.]]]]
same_pad:
 [[[[5.]
   [6.]]]]
valid_pad.get_shape():
 (1, 1, 1, 1)
same_pad.get_shape():
 (1, 1, 2, 1)
valid_pad_1:
 [5.]
same_pad_1:
 [5. 6.]
下面是关于卷积的例子和使用:

(来自网址:https://blog.youkuaiyun.com/zuolixiangfisher/article/details/80528989 感谢!)

tf.nn.conv2d (input, filter, strides, padding, use_cudnn_on_gpu=None, data_format=None, name=None)

参数:

  • **input : ** 输入的要做卷积的图片,要求为一个张量,shape为 [ batch, in_height, in_weight, in_channel ],其中batch为图片的数量,in_height 为图片高度,in_weight 为图片宽度,in_channel 为图片的通道数,灰度图该值为1,彩色图为3。(也可以用其它值,但是具体含义不是很理解)
  • filter: 卷积核,要求也是一个张量,shape为 [ filter_height, filter_weight, in_channel, out_channels ],其中 filter_height 为卷积核高度,filter_weight 为卷积核宽度,in_channel 是图像通道数 ,和 input 的 in_channel 要保持一致,out_channel 是卷积核数量。
  • strides: 卷积时在图像每一维的步长,这是一个一维的向量,[ 1, strides, strides, 1],第一位和最后一位固定必须是1
  • padding: string类型,值为“SAME” 和 “VALID”,表示的是卷积的形式,是否考虑边界。"SAME"是考虑边界,不足的时候用0去填充周围,"VALID"则不考虑
  • use_cudnn_on_gpu: bool类型,是否使用cudnn加速,默认为true
import tensorflow as tf

# case 1
# 输入是1张 3*3 大小的图片,图像通道数是5,卷积核是 1*1 大小,数量是1
# 步长是[1,1,1,1]最后得到一个 3*3 的feature map
# 1张图最后输出就是一个 shape为[1,3,3,1] 的张量
input = tf.Variable(tf.random_normal([1, 3, 3, 5]))
filter = tf.Variable(tf.random_normal([1, 1, 5, 1]))
op1 = tf.nn.conv2d(input, filter, strides=[1, 1, 1, 1], padding='SAME')

# case 2
# 输入是1张 3*3 大小的图片,图像通道数是5,卷积核是 2*2 大小,数量是1
# 步长是[1,1,1,1]最后得到一个 3*3 的feature map
# 1张图最后输出就是一个 shape为[1,3,3,1] 的张量
input = tf.Variable(tf.random_normal([1, 3, 3, 5]))
filter = tf.Variable(tf.random_normal([2, 2, 5, 1]))
op2 = tf.nn.conv2d(input, filter, strides=[1, 1, 1, 1], padding='SAME')

# case 3
# 输入是1张 3*3 大小的图片,图像通道数是5,卷积核是 3*3 大小,数量是1
# 步长是[1,1,1,1]最后得到一个 1*1 的feature map (不考虑边界)
# 1张图最后输出就是一个 shape为[1,1,1,1] 的张量
input = tf.Variable(tf.random_normal([1, 3, 3, 5]))
filter = tf.Variable(tf.random_normal([3, 3, 5, 1]))
op3 = tf.nn.conv2d(input, filter, strides=[1, 1, 1, 1], padding='VALID')

# case 4
# 输入是1张 5*5 大小的图片,图像通道数是5,卷积核是 3*3 大小,数量是1
# 步长是[1,1,1,1]最后得到一个 3*3 的feature map (不考虑边界)
# 1张图最后输出就是一个 shape为[1,3,3,1] 的张量
input = tf.Variable(tf.random_normal([1, 5, 5, 5]))
filter = tf.Variable(tf.random_normal([3, 3, 5, 1]))
op4 = tf.nn.conv2d(input, filter, strides=[1, 1, 1, 1], padding='VALID')

# case 5
# 输入是1张 5*5 大小的图片,图像通道数是5,卷积核是 3*3 大小,数量是1
# 步长是[1,1,1,1]最后得到一个 5*5 的feature map (考虑边界)
# 1张图最后输出就是一个 shape为[1,5,5,1] 的张量
input = tf.Variable(tf.random_normal([1, 5, 5, 5]))
filter = tf.Variable(tf.random_normal([3, 3, 5, 1]))
op5 = tf.nn.conv2d(input, filter, strides=[1, 1, 1, 1], padding='SAME')

# case 6
# 输入是1张 5*5 大小的图片,图像通道数是5,卷积核是 3*3 大小,数量是7
# 步长是[1,1,1,1]最后得到一个 5*5 的feature map (考虑边界)
# 1张图最后输出就是一个 shape为[1,5,5,7] 的张量
input = tf.Variable(tf.random_normal([1, 5, 5, 5]))
filter = tf.Variable(tf.random_normal([3, 3, 5, 7]))
op6 = tf.nn.conv2d(input, filter, strides=[1, 1, 1, 1], padding='SAME')

# case 7
# 输入是1张 5*5 大小的图片,图像通道数是5,卷积核是 3*3 大小,数量是7
# 步长是[1,2,2,1]最后得到7个 3*3 的feature map (考虑边界)
# 1张图最后输出就是一个 shape为[1,3,3,7] 的张量
input = tf.Variable(tf.random_normal([1, 5, 5, 5]))
filter = tf.Variable(tf.random_normal([3, 3, 5, 7]))
op7 = tf.nn.conv2d(input, filter, strides=[1, 2, 2, 1], padding='SAME')

# case 8
# 输入是10 张 5*5 大小的图片,图像通道数是5,卷积核是 3*3 大小,数量是7
# 步长是[1,2,2,1]最后每张图得到7个 3*3 的feature map (考虑边界)
# 10张图最后输出就是一个 shape为[10,3,3,7] 的张量
input = tf.Variable(tf.random_normal([10, 5, 5, 5]))
filter = tf.Variable(tf.random_normal([3, 3, 5, 7]))
op8 = tf.nn.conv2d(input, filter, strides=[1, 2, 2, 1], padding='SAME')

init = tf.initialize_all_variables()
with tf.Session() as sess:
    sess.run(init)
    print('*' * 20 + ' op1 ' + '*' * 20)
    print(sess.run(op1))
    print('*' * 20 + ' op2 ' + '*' * 20)
    print(sess.run(op2))
    print('*' * 20 + ' op3 ' + '*' * 20)
    print(sess.run(op3))
    print('*' * 20 + ' op4 ' + '*' * 20)
    print(sess.run(op4))
    print('*' * 20 + ' op5 ' + '*' * 20)
    print(sess.run(op5))
    print('*' * 20 + ' op6 ' + '*' * 20)
    print(sess.run(op6))
    print('*' * 20 + ' op7 ' + '*' * 20)
    print(sess.run(op7))
    print('*' * 20 + ' op8 ' + '*' * 20)
    print(sess.run(op8))

输出为:

******************** op1 ********************
[[[[-2.1102579 ]
   [ 1.7528694 ]
   [-4.330162  ]]

  [[-2.980529  ]
   [-4.02174   ]
   [-1.3803103 ]]

  [[-0.52696365]
   [-0.5400877 ]
   [ 4.257976  ]]]]
******************** op2 ********************
[[[[ 6.794629  ]
   [ 7.0605865 ]
   [-3.839518  ]]

  [[ 3.705162  ]
   [ 6.544575  ]
   [ 2.7251601 ]]

  [[-1.776925  ]
   [-6.010596  ]
   [ 0.20474422]]]]
******************** op3 ********************
[[[[-5.858827]]]]
******************** op4 ********************
[[[[ 5.1534324 ]
   [ 0.24438173]
   [ 2.6629415 ]]

  [[-6.6123667 ]
   [ 3.0014296 ]
   [ 5.95994   ]]

  [[-5.420522  ]
   [-0.16013396]
   [ 6.3741193 ]]]]
******************** op5 ********************
[[[[  0.7076789 ]
   [  2.7754245 ]
   [ -8.20875   ]
   [ -7.670368  ]
   [ 13.234421  ]]

  [[-14.473554  ]
   [-24.415937  ]
   [  4.2061357 ]
   [ -3.0130825 ]
   [ -6.42306   ]]

  [[  7.863237  ]
   [-15.57128   ]
   [ 11.033218  ]
   [  7.3614597 ]
   [ -6.8422723 ]]

  [[  5.0591707 ]
   [ -7.7274995 ]
   [ -5.5328083 ]
   [ -6.1364474 ]
   [-10.909695  ]]

  [[  0.3346491 ]
   [  3.9912639 ]
   [ -0.96540976]
   [  1.778172  ]
   [ -3.2838888 ]]]]
******************** op6 ********************
[[[[ 3.3766987e+00  1.8238509e-01 -5.0712049e-01 -5.8417220e+00
    -1.3495737e+00  7.2260219e-01  5.4029684e+00]
   [-6.5919771e+00  3.4026594e+00  1.1648191e+01  3.7200637e+00
     2.3319988e+00 -1.1140907e+00  4.3448937e-01]
   [ 1.1609080e+00 -8.1715136e+00 -1.0701718e+01 -3.5535312e+00
     5.2467089e+00 -4.3264627e-01  5.0995941e+00]
   [-4.9373450e+00  2.8186305e+00  6.4909940e+00  1.2804997e+00
    -1.5649986e-01 -1.7928773e+00 -1.4341359e+00]
   [ 2.9774120e+00 -2.5351973e+00 -2.6322658e+00 -1.9835292e+00
     3.9607582e+00 -1.5774579e+00 -2.4415855e+00]]

  [[ 4.2983584e+00 -5.1479087e+00 -3.4114823e-01 -1.7837211e+00
    -4.3760118e+00 -6.8484349e+00 -5.9178218e-02]
   [-1.6580420e+00  7.6442108e+00  1.6944296e+01  5.7970457e+00
    -4.1081457e+00 -9.1539736e+00 -4.7948341e+00]
   [-2.9536286e-01 -1.4625232e+01 -7.5019760e+00 -3.9085441e+00
     2.2455480e+00  6.0694165e+00  9.1763239e+00]
   [-4.1500372e-01  6.0697980e+00  8.5761061e+00  5.4807434e+00
     6.7770252e+00  1.0990472e+00 -6.6264313e-01]
   [-1.1099565e+01 -9.7044163e+00  2.7593523e-01 -6.2704134e-01
    -3.5072777e+00  8.7580938e+00  4.2789965e+00]]

  [[ 8.6269724e-01  5.5576096e+00  9.5227271e-02  4.6656817e-01
    -7.0653844e+00 -2.9691746e+00 -6.8748891e-01]
   [-2.0854315e+01  3.8642945e+00  1.5439602e+01 -6.2325506e+00
    -5.3711343e+00  1.3131008e+01  1.4660603e+01]
   [ 1.4693165e+01  2.7910218e+00  7.8768821e+00  8.4947652e-01
     1.0254288e+01 -4.8888803e+00 -5.2695742e+00]
   [-2.8294441e-01 -2.3655815e+00 -1.0143698e+01 -9.2427950e+00
     7.0068598e+00 -6.3560429e+00  5.5390029e+00]
   [-1.4542973e+00 -3.2016857e+00  3.0236146e+00  7.8254042e+00
     3.4446232e+00  4.2143569e+00  9.0647078e-01]]

  [[ 1.6468962e+00 -4.6848245e+00 -6.0909958e+00  6.7973571e+00
    -2.8578022e+00  2.5114522e+00 -1.5889795e+00]
   [ 9.4042921e+00 -3.0222580e+00  7.6566644e+00 -7.0463271e+00
     3.9854026e+00 -1.3263643e+01  2.9594634e+00]
   [ 8.1233187e+00  4.2183638e+00 -7.3966086e-01 -1.5055463e+01
     4.1892443e+00 -4.6484060e+00  7.5296903e-01]
   [-7.2690644e+00  5.7705808e+00  1.3935292e+00 -9.8303871e+00
     3.0329249e+00  1.3553764e+01  3.5225368e+00]
   [-5.3503901e-02  6.1269464e+00  7.0602541e+00 -5.7827979e-02
    -4.2867603e+00  1.6927242e-02 -2.9667466e+00]]

  [[ 8.2041204e-01  8.0074263e+00  5.0753446e+00  1.1840314e+00
     1.1343875e+00 -5.8627415e+00 -8.4282932e+00]
   [ 8.7454300e+00 -3.0310152e+00  1.7002646e+00 -8.3700790e+00
    -7.7701068e+00 -6.0737019e+00  9.7972288e+00]
   [ 4.8193526e+00 -1.0198227e+01 -1.3411115e+00 -2.9800222e+00
    -7.0696278e+00 -1.5774721e+00 -1.9846292e+00]
   [ 5.8017945e+00 -5.9069500e+00 -5.2448416e-01  2.7093234e+00
    -1.2863131e+00 -1.5249186e+00  3.2082253e+00]
   [-5.9433370e+00 -4.3355811e-01  8.6034365e+00 -3.4143336e+00
    -5.7050300e+00 -4.2822728e+00 -2.9184520e+00]]]]
******************** op7 ********************
[[[[ -7.5372252    0.869042    -2.0809057   -0.5405408   -1.8470072
      7.1394873    5.438758  ]
   [ -2.3003712   -3.4028695    4.6274524   -1.6452856    3.4990501
     -0.9364133   -2.0937176 ]
   [ -0.28855896   4.8629384    2.2287118    6.390027     6.3039274
     -6.614783    -0.39455616]]

  [[  0.826122     5.051365    -2.2048364    9.305028     0.6260247
     -1.879495    -2.2270882 ]
   [ -1.1186478   17.342714   -10.628071    -5.104243    -0.88188994
     10.782307     2.9390166 ]
   [ -0.28509504   3.4745169   -3.8931267    4.9868436   -5.966717
      6.878785     1.5596883 ]]

  [[  2.7953954   -2.1384845   -3.916284    -2.873501    -0.8095609
      0.99812984  -2.099301  ]
   [ -0.7582061   -2.57421     -0.3044435   11.94333      3.720908
     -4.9527564    1.1970487 ]
   [  4.146548    -2.8289194   -4.120914    -0.9884004   -1.491147
      2.9562085    3.2215147 ]]]]
******************** op8 ********************
[[[[ -8.987838    -4.029111    -7.044727    -3.615126    -1.668101
     -3.9156017   -1.4720523 ]
   [ -5.5716453    2.5921113   -4.730905    -2.2866921   -0.34536296
      1.5864456    4.016749  ]
   [  1.378424     1.3865173    2.5837576    1.8788316    2.832894
      3.8592756    3.4136848 ]]

  [[ -0.50596595   3.7122116    0.41441262  -3.9372468   -2.9495358
     -7.310069    -3.0173693 ]
   [  0.79144853   7.494745     3.1170692    5.0595737    7.154664
      7.911112    -2.394431  ]
   [ -7.949675     0.7280495   -3.7469447    1.9297526    1.5553339
      7.5879593    1.9296365 ]]

  [[ -1.1751139   -3.6501503    6.039238     4.6818886   -2.135901
     -1.0763779   -5.8715587 ]
   [  5.0613437    0.13088787 -10.610691     5.9394503    0.9739995
      2.0069845    2.4331532 ]
   [  0.60831624  -0.39788914   3.1580377   -0.16400816  -0.5498022
     -3.611261    -6.0220146 ]]]


 [[[  5.5971704    3.698498    -9.070675     7.2897997   -4.94272
    -13.771665    -2.3148098 ]
   [ -0.8207602   -0.44880065  -2.5555444    2.0951614  -10.386882
     -2.9281578   -4.4660788 ]
   [  3.3822691   -0.7254721    3.9041047    3.847748     0.2976513
     -2.5028167   -1.9643843 ]]

  [[  4.3488646    5.192009    -8.295724     6.8376236   -4.036196
     -4.40831     -3.4350529 ]
   [  4.9603543    3.8839452    9.893962    -5.6196766    2.5933034
     -1.9516581   -8.230413  ]
   [ -7.933528    -3.5193477    2.657087    -2.3083775    3.1224494
      4.99346      6.6617928 ]]

  [[  8.464641    -0.7099503    2.302021     3.7608442   -9.808253
      7.4395585    7.501337  ]
   [ -2.5251894    3.3782656   -2.2453785    1.8856752   -4.347996
     13.046864     8.456448  ]
   [  0.719531     5.6648893    5.0832977   -4.1559486   -2.263636
     10.406567     6.3195763 ]]]


 [[[ -4.5550904   -3.720043     3.1199975    2.1738605   -8.574187
     -2.4273107   -5.072332  ]
   [ -4.2602577    0.36366314  -4.5683694    4.178451    -8.062807
     -6.557127    -7.0324516 ]
   [  8.537974     8.441982     4.864913   -14.189858     7.095237
      1.5988588   -1.5192288 ]]

  [[  3.6944568    4.4403076    9.397589    -4.546336    -3.9134052
     -3.4662483   -0.24406385]
   [  4.1908336   -4.4171796   -1.9225447    7.837098   -11.265582
     -3.837552    14.160036  ]
   [  3.7344842   -4.670222   -17.679253    13.935692    -6.173209
      1.6511383    1.2128376 ]]

  [[  6.2919884   -4.6020546   -5.4328456    4.5560393   -3.7783115
     -2.6887546    2.5767186 ]
   [  6.787188    -0.13424832  11.590554     0.8781717    2.1341581
      0.6424012    2.4818373 ]
   [  0.36873797  -1.0694993    2.4167862    6.3189936   -6.5165224
      0.6907333   -1.3944467 ]]]


 [[[  3.421029    -7.233859     3.3495028    1.9169188   -0.28828853
     -2.9511962   -4.618907  ]
   [  5.007436     5.3819504   -4.9620214    2.0950384    0.5609176
     -4.2858677    1.514807  ]
   [  4.0171447    1.7605144    2.029901    -3.2808828    4.706432
      0.86181307  -7.821994  ]]

  [[ -5.0385923   -1.6944396   -9.382163    -2.0090818    5.3859253
     -9.40564     -6.0278926 ]
   [ -5.3338847    2.7189367    8.969738    -4.240023   -15.497588
     10.853391    15.426717  ]
   [  7.1965146    5.5878873   -6.9999113    5.9089503   -3.8333137
     -2.31907      5.3611073 ]]

  [[ -2.8334084   -0.39519292   5.9286284   -5.9159756    6.7779465
     -5.0923433   -5.3177834 ]
   [ -8.954654    -1.6732624   -7.7512193    8.683105    -0.43687057
      7.139389     5.237968  ]
   [ -6.953234    -0.71392286   3.7499995   -1.5003002    2.8990993
     15.865892     1.0296693 ]]]


 [[[  4.973996    -3.196669     0.2824005   -1.0465801    3.608333
      4.3892016   -2.4723551 ]
   [ -9.047925   -10.103672    -2.5059106    0.13098462  -0.19980884
     -1.2837625    9.85107   ]
   [  8.653666     4.742559     7.8596897   -1.7765528    5.2112546
      1.7150581   -4.5945582 ]]

  [[ -5.1238627   -1.7859178   10.422352    -1.4375889    6.047653
     -2.7019408   -6.6909037 ]
   [-10.11571      1.0489686    0.9947159  -16.038723     1.5364237
    -11.5860615   -0.5897728 ]
   [  1.715276    -1.6922637    0.36946785  -1.8722501   -1.1054568
     -5.3501234    5.260828  ]]

  [[  4.4832516    3.4605289    2.655251    -5.193367    -5.8154745
     -2.40253     -0.90614724]
   [ -6.1823716   -0.5788322   -5.887986     1.7573938   -2.801522
     -3.5710354    1.558593  ]
   [  3.386841    -2.2731526    3.5240433    4.1528316   -1.1139324
     -4.701375     2.5103724 ]]]


 [[[  2.3088198    0.1576212    2.9027982   -2.0484095   -1.4965516
      6.6314707   -5.9286933 ]
   [  3.922245    -4.2303414    7.2173495   -0.82356906  -4.565625
     -7.048286     8.189629  ]
   [  9.92221      4.971711     3.62113      4.332257     1.8120606
     -6.354764    -6.803279  ]]

  [[  0.5582811    0.22512491  -0.14138716  -9.232525    -4.4669757
     -6.444928    -0.35495442]
   [ -7.0769267    0.11286694  -2.6398146   -1.9807957   -1.5415475
      6.77529      1.6627494 ]
   [ -4.234903     3.8677368    1.8505411    1.6956189   -0.67265034
      3.492041     2.699194  ]]

  [[ -2.3700027   -5.072471     0.9853908    3.3275373   -3.4059224
     -8.77684     -4.966244  ]
   [  6.8965716   -0.18738294  -1.7098974   -2.7875865    9.46776
    -10.7062645  -14.834945  ]
   [  5.385265     3.7076745   -6.0929165   -0.6565029   -0.86310875
     -8.78685     -4.969616  ]]]


 [[[ -1.0209117   -4.2185674   -2.049982    -4.464074    -0.2671275
      0.6496007   -1.1486138 ]
   [ -1.3296125  -10.25571     -2.6270077    0.8397493   10.442083
    -13.532871    -2.3582375 ]
   [  1.2241515    0.8895823   -5.6431136   -0.07153833  -6.4833794
      2.367209    -3.1225934 ]]

  [[ -1.3196164    8.285897    -4.7141843   -1.0256715    2.2417316
     -5.4240646    1.4462825 ]
   [  5.586397    -2.7534332   12.254203    -3.8077755   19.0667
      4.490488    -4.8286085 ]
   [  2.5509892   -1.5626694   13.281624     2.1947544   -9.041932
     -3.7475128   -0.9359677 ]]

  [[ -3.4364285   -3.5713546    4.0417204    0.31394115  -1.0756681
      8.270457     0.6314969 ]
   [-12.394723    -1.0741487   -7.0030975  -11.949853     5.8212543
     -0.20166934  -4.0470276 ]
   [ -2.460311     0.3859284    4.4872227    0.20786184   2.8219168
      0.3782506    3.6827655 ]]]


 [[[  2.7063005   -1.3238144    3.1177645   -5.0840263    4.5578613
      0.07863757  -3.0700552 ]
   [ -2.008148     0.12366204  -0.7898965   -3.1715546    0.26139206
      9.43925     -5.015103  ]
   [ -1.5658057    4.0374494    4.104787     1.0457339    0.09459102
     11.385288     7.7985954 ]]

  [[ -2.9855955   -6.0000887    6.579556    -0.05770028  -0.6478224
      9.684253     1.6530621 ]
   [ -6.0577374   -1.8108991    0.38446543  -3.8347025   -5.3681655
     -9.710058     5.249672  ]
   [  1.6688104   -4.2434406    0.0591527   -2.8747175    5.5640755
      1.6630073   -3.383694  ]]

  [[ -0.9499241    2.0315142    3.4428368   -5.4022408    1.2451274
     -5.958596    -2.857951  ]
   [ -0.51289654  -2.2868602   -2.035109    -0.03335524   5.4950924
      0.7035148   -7.2624903 ]
   [  3.1216207    0.2532745    2.4681516   -3.3973331    4.235839
     -7.8828998    1.6310639 ]]]


 [[[-10.515576    -4.5501885   -5.0842285   -7.5735607    2.457988
     -5.6815295   -6.0293984 ]
   [ -2.4532561   12.281616    -3.941203   -10.871101     1.700299
      6.669799    11.233063  ]
   [ -0.71848714  -3.5167284   -4.0122576    0.9800604   -0.19633102
     -4.852952   -10.5411215 ]]

  [[ 11.680188     0.05068594  13.759515    -4.1095057    7.866522
     -3.465414    -5.62963   ]
   [  0.5491446   -2.8228009  -15.9925995    9.0901165   -9.546025
      7.689098     7.799924  ]
   [  3.489983     2.6987522    8.452219    -0.82351255  11.615891
    -12.184435   -10.012669  ]]

  [[ -1.2847803    2.5336533   -4.6983747   -1.5195134    4.887515
      7.197543     4.566704  ]
   [-11.077008    -3.807155    11.323916   -11.889059     1.7963223
      8.54782     -5.0532045 ]
   [ -2.7697368   -4.146005    -1.8596052   -2.6719205    1.8064184
     -0.70393324   0.8676312 ]]]


 [[[ -4.761016    -5.9982576    2.8612869    3.537052     2.1374872
     -2.4504776   -1.9832699 ]
   [  5.7043376   -0.5752067   -2.0760405    7.471276    -6.9522486
     -0.7939579    4.361729  ]
   [ -1.0325197    1.5073726   -3.6527808   11.209878   -10.8710985
      2.5047367    9.575737  ]]

  [[  7.1922426   -8.298925    13.826018    -5.753524    10.346201
      1.1289907  -11.83487   ]
   [  1.4808033   -4.4347563    3.423127    11.154205     3.1012897
      4.096381     6.1002216 ]
   [  2.966996     3.8355513    4.554683     0.7981096   -6.3219185
      5.665936     4.33562   ]]

  [[  3.9837096    0.6084199    6.052963    -2.520135     5.9205747
     -7.7821994   -4.444783  ]
   [  7.046544     1.1473477    3.7973588    2.1445422   -5.4242034
      9.448392     3.4596193 ]
   [ -5.2644525   -1.4216101   -1.0145       2.4781537   -0.5456511
     -1.0106888   -0.29154396]]]]

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值