TensorFlow之变量的使用

目录

前言

变量和常量相对, 变量定义之后可以改变值。变量通过tf.Variable来定义。

示例

变量通过tf.Variable来定义。

python 复制代码
import tensorflow as tf


v = tf.Variable([[1., 2., 3.], [4., 5., 6.]])
# 打印的是Variable对象
print(v)
# 打印的是变量的值的tensor
print(v.value())
# 打印的是ndarray
print(v.numpy())

结果如下:

powershell 复制代码
<tf.Variable 'Variable:0' shape=(2, 3) dtype=float32, numpy=
array([[1., 2., 3.],
       [4., 5., 6.]], dtype=float32)>
tf.Tensor(
[[1. 2. 3.]
 [4. 5. 6.]], shape=(2, 3), dtype=float32)
[[1. 2. 3.]
 [4. 5. 6.]]

对变量进行赋值:

python 复制代码
import tensorflow as tf


v = tf.Variable([[1., 2., 3.], [4., 5., 6.]])

# 对变量之间赋值, 所有位置乘于2
v.assign(2*v)
print(v.numpy())
# 对变量的某个位置进行赋值
v[0, 1].assign(42)
print(v.numpy())
# 对变量的某一行赋值
v[1].assign([7., 8., 9.])
print(v.numpy())

结果如下:

powershell 复制代码
[[ 2.  4.  6.]
 [ 8. 10. 12.]]
[[ 2. 42.  6.]
 [ 8. 10. 12.]]
[[ 2. 42.  6.]
 [ 7.  8.  9.]]

变量赋值必须使用assign, 不能直接用=.

python 复制代码
import tensorflow as tf

v = tf.Variable([[1., 2., 3.], [4., 5., 6.]])

try:
    v[1] = [7., 8., 9.]
except TypeError as ex:
    print(ex)

结果如下:

powershell 复制代码
'ResourceVariable' object does not support item assignment
相关推荐
余槐i2 分钟前
Firecrawl 实战:将网站转换为大模型可用数据
人工智能·python·工具·firecrawl
shirsl4 分钟前
算法 Day 2 滑动窗口 + 栈 / 单调栈
开发语言·python·算法
hsg775 分钟前
简述: 人工智能 + 行动意见
人工智能
步行cgn5 分钟前
Spring 启动报错:BeanFactory not initialized 的原因与解决
java·python·spring
jason_renyu7 分钟前
《月魁传》的终极预言:真正的 AI 未来,是超智能进化与万物互联
人工智能·万物互联·超人工智能·人工智能未来畅想
XiaoZhenHua9812 分钟前
VisionPro多相机高速检测性能优化实战:从图像堆积到稳定运行
人工智能·计算机视觉·自动化
昇腾知识体系21 分钟前
CANN 安装升级避坑:version.cfg 查版本、银河麒麟找不到驱动、nnrt --version 无输出排查
人工智能·华为·知识图谱
java_logo22 分钟前
Claude 遭大规模「蒸馏」?过去 8 个月,AI 行业另一场战争被摊开了
人工智能·claude·qwen·ai 安全·kimi·模型蒸馏·anthropic
yychen_java23 分钟前
第二篇:从世界模型到 Physical AI——一套可落地的工业智能体架构
人工智能·架构
matlab代码27 分钟前
基于matlab多尺度形态学提取眼前节组织【源码73期】
图像处理·人工智能·计算机视觉