码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • TensorFlow 02(张量)


    一、张量

    张量Tensor
    张量是一个多维数组。与NumPy ndarray对象类似,tf.Tensor对象也具有数据类型和形状。如下图所示:

    此外,tf.Tensors可以保留在GPU中。TensorFlow提供了丰富的操作库 (tf.add,tf.matmul,tf.linalg.inv等),它们使用和生成tf.Tensor。在进行张量操作之前先导入相应的工具包:

    1. import tensorflow as tf
    2. import numpy as np

    1.1 张量的创建

    创建张量

    1. # 创建int32类型的8维张量,即标量
    2. rank_0_tensor = tf.constant(4)
    3. print(rank__tensor)
    4. # 创建float32类型的1维张量
    5. rank_1_tensor = tf.constant([2.0,3.,4.0])
    6. print(rank_1_tensor)
    7. # 创建float16类型的二维张量
    8. rank_2_tensor = tf.constant([[1,2],
    9. [3,4],
    10. [5,6]],dtype=tf.float16)
    11. print(rank_2_tensor)

    1.2 转换为numpy

     我们可将张量转换为numpy中的ndarray的形式,转换方法有两种,以张量rank_2_tensor为例:

    np.array

    np.array(rank_2_tensor)

    Tensornumpy()

    rank_2_tensor.numpy()

    1.3 常用函数


    我们可以对张量做一些基本的数学运算,包括加法、元素乘法和矩阵乘法等

    1. # 定义张量a和b
    2. a = tf.constant([[1,2],[3,4])
    3. b = tf.constant([[1,1],[1,1])
    4. print(tf.add(a,b),"\n") # 计算张量的和
    5. print(tf.multiply(a,b),"\n") # 计算张量的元素乘法
    6. print(tf.matmul(a,b),“\n") # 计算乘法

    另外张量也可用于各种聚合运算:

    1. tf.reduce_sum()#求和
    2. tf.reduce_mean()#平均值
    3. tf.reduce_max()#最大值
    4. tf.reduce_min()#最小值
    5. tf.argmax() # 最大值的索引
    6. tf.argmin() # 最小值的索引

     

    1.4 变量

    变量是一种特殊的张量,形状是不可变,但可以更改其中的参数。定义时的方法是:

    my_variable = tf.Variable([[1.0,2.0],[3.0,4.0]])

    我们也可以获取它的形状,类型及转换为ndarray

    1. print("Shape:",my_variable.shape)
    2. print("DType:",my_variable.dtype)
    3. print("As NumPy:“,my_variable.numpy)

  • 相关阅读:
    Java手写位运算算法和位运算算法应用拓展案例
    解析字符串后分组写成多文件
    Vue源码学习(二):<templete>渲染第一步,模板解析
    【数字IC验证快速入门】10、Verilog RTL设计必会的FIFO
    博客停更,已开公众号-《GIS杂谈》,之后会在公众号持续更新相关知识,敬请关注,欢迎讨论~
    Gin框架: 控制器, 中间件的分层设计案例
    前端Vue后台管理表格增删/批量删除改查案例(带源码)【一】
    Nodejs 使用 ZooKeeper 做服务发现
    Vue3.2中的setup语法糖(易懂)
    什么是裸金属服务器?
  • 原文地址:https://blog.csdn.net/peng_258/article/details/132823665
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号