首页 > 代码库 > TensorFlow经典案例5:对前4次案例的一些思考与总结

TensorFlow经典案例5:对前4次案例的一些思考与总结

一、关于numpy的random的使用:

      1.rand随机值

In [2]: np.random.rand(3,2)
Out[2]:
array([[ 0.04287046,  0.68212741],
       [ 0.25322512,  0.50287344],
       [ 0.75530125,  0.55308281]])

    2.randn返回样本具有标准正太分布

In [4]: np.random.randn(3,2)
Out[4]:
array([[-2.26840223, -0.24799291],
       [-0.81557012,  0.92537801],
       [ 0.04456033, -0.03864446]])

  3.randint返回随机整数

In [8]: np.random.randint(2, size=10)
Out[8]: array([0, 1, 1, 0, 0, 1, 0, 0, 0, 0])

  

In [9]: np.random.randint(1, size=5)
Out[9]: array([0, 0, 0, 0, 0])

  

In [10]: np.random.randint(9, size=(4,5))
Out[10]:
array([[2, 5, 3, 0, 0],
       [5, 5, 8, 0, 5],
       [8, 3, 3, 8, 1],
       [5, 5, 7, 4, 3]])

  4.random([size])返回随机浮点数位于半开区间[0.0,1.0)

In [12]: np.random.random((3,5))
Out[12]:
array([[ 0.9406723 ,  0.88534251,  0.48993398,  0.04959344,  0.69200616],
       [ 0.8317934 ,  0.02332241,  0.07543021,  0.26467834,  0.29640229],
       [ 0.79139576,  0.72745639,  0.04238559,  0.15145797,  0.40844399]])

  5.choice从给定的数字中生成一个随机样本

#从np.arange(8)中选取大小问为3的样本
In [13]: np.random.choice(8,3)
Out[13]: array([0, 2, 5])

  

In [14]: a = [3,5,6,8,2,6,8]

In [15]: np.random.choice(a,1)
Out[15]: array([3])

In [16]: np.random.choice(a,1)
Out[16]: array([3])

In [17]: np.random.choice(a,3)
Out[17]: array([2, 6, 8])

In [18]: np.random.choice(a,4)
Out[18]: array([6, 3, 2, 8])

  6.shuffle(x)打乱x的顺序

In [22]: arr = np.arange(9)

In [23]: np.random.shuffle(arr)

In [24]: arr
Out[24]: array([6, 0, 2, 7, 1, 3, 5, 8, 4])

更多详细内容参考:http://www.mamicode.com/info-detail-507676.html

二、tf.reduce_sum()中的参数reduction_indices详解

 

distance = tf.reduce_sum(tf.abs(tf.add(x_train,tf.negative(x_test))),reduction_indices=1)

  reduce_sum() 就是求和,由于求和的对象是tensor,所以是沿着tensor的某些维度求和。reduction_indices是指沿tensor的哪些维度求和。

  具体见下图详细解释:

技术分享

三、

 

TensorFlow经典案例5:对前4次案例的一些思考与总结