5个简单的步骤掌握Tensorflow的Tensor( 三 )
Output:The shape of our initial Tensor object is: (1, 6) The shape of our initial Tensor object is: (6, 1) The shape of our initial Tensor object is: (3, 2) The shape of our flattened Tensor object is: tf.Tensor([1 2 3 4 5 6], shape=(6,), dtype=int32)
如你所见 , 我们可以很容易地重塑我们的张量对象 。 但要注意的是 , 在进行重塑操作时 , 开发人员必须是合理的 。 否则 , 张量可能会混淆 , 甚至会产生错误 。 所以 , 小心点.
广播当我们尝试使用多个张量对象进行组合操作时 , 较小的张量可以自动伸展以适应较大的张量 , 就像NumPy数组一样 。 例如 , 当你尝试将标量张量与秩2张量相乘时 , 标量将被拉伸以乘以每个秩2张量元素 。 参见以下示例:
m = tf.constant([5])n = tf.constant([[1,2],[3,4]])print(tf.multiply(m, n))
Output:tf.Tensor( [[ 5 10][15 20]], shape=(2, 2), dtype=int32)
多亏了广播 , 在对张量进行数学运算时 , 你不必担心大小匹配 。
张量的特殊类型我们倾向于生成矩形的张量 , 并将数值存储为元素 。 但是 , TensorFlow还支持不规则或特殊的张量类型 , 这些类型包括:
- 参差不齐的张量
- 字符串张量
- 稀疏张量
文章插图
让我们仔细看看每一个都是什么 。
参差不齐的张量参差不齐张量是沿着尺寸轴具有不同数量元素的张量
可以构建不规则张量 , 如下所示
ragged_list = [[1, 2, 3],[4, 5],[6]]ragged_tensor = tf.ragged.constant(ragged_list)print(ragged_tensor)
Output:
字符串张量字符串张量是存储字符串对象的张量 。 我们可以建立一个字符串张量 , 就像你创建一个普通的张量对象 。 但是 , 我们将字符串对象作为元素而不是数字对象传递 , 如下所示:string_tensor = tf.constant(["With this","code, I am","creating a String Tensor"])print(string_tensor)
Output:tf.Tensor([b'With this'b'code, I am'b'creating a String Tensor'],shape=(3,), dtype=string)
稀疏张量最后 , 稀疏张量是稀疏数据的矩形张量 。 当数据中有空值时 , 稀疏张量就是对象 。 创建稀疏张量有点耗时 , 应该更主流一些 。 这里有一个例子:sparse_tensor = tf.sparse.SparseTensor(indices=[[0, 0], [2, 2], [4, 4]],values=[25, 50, 100],dense_shape=[5, 5])# 我们可以把稀疏张量转换成密集张量print(tf.sparse.to_dense(sparse_tensor))
Output:tf.Tensor( [[ 250000][00000][005000][00000][0000 100]], shape=(5, 5), dtype=int32)
结尾我们已经成功地介绍了TensorFlow的张量对象的基础知识 。【5个简单的步骤掌握Tensorflow的Tensor】这应该会给你很大的信心 , 因为你现在对TensorFlow框架的基本知识了解得更多了 。
- 智能手机市场|华为再拿第一!27%的份额领跑全行业,苹果8%排在第四名!
- 会员|美容院使用会员管理软件给顾客更好的消费体验!
- 行业|现在行业内客服托管费用是怎么算的
- 人民币|天猫国际新增“服务大类”,知舟集团提醒入驻这些类目的要注意
- 美国|英国媒体惊叹:165个国家采用北斗将GPS替代,连美国也不例外?
- 国外|坐拥77件专利,打破国外的垄断,造出中国最先进的家电芯片
- 技术|做“视频”绿厂是专业的,这项技术获人民日报评论点赞
- 面临|“熟悉的陌生人”不该被边缘化
- 中国|浅谈5G移动通信技术的前世和今生
- 页面|如何简单、快速制作流程图?上班族的画图技巧get