欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 文化 > tensorflow安装及数据操作----学习笔记(一)

tensorflow安装及数据操作----学习笔记(一)

2024/10/24 9:26:01 来源:https://blog.csdn.net/zhangkexin_z/article/details/140546425  浏览:    关键词:tensorflow安装及数据操作----学习笔记(一)

安装Miniconda

下载对应系统版本的Miniconda。我的系统是ubuntu,所以选择Miniconda3 Linux 64-bit。下载后执行下载的sh脚本

sh Miniconda3-latest-Linux-x86_64.sh -b

执行后,运行conda初始化命令

~/miniconda3/bin/conda init

关闭当前命令终端,打开新的终端,创建一个新的环境

conda create --name tensorflow python=3.9 -y

激活tensorflow环境

conda activate tensorflow

安装tensorflow

pip install tensorflow==2.8.0
pip install tensorflow-probability==0.16.0

基本数据操作

导入tensorflow,创建一个行向量x,包含以0开始的前12个整数,默认创建的为整数。

import tensorflow as tfx = tf.range(12)# 可以通过shape属性来访问张量的形状
x.shape# 获取张量中元素总数
tf.size(x)
# tf.Tensor(12, shape=(), dtype=int32)# 改变张量的形状,不改变元素数量和元素值
x = tf.reshape(x, (3, 4))
"""
输出x
tf.Tensor(
[[ 0  1  2  3][ 4  5  6  7][ 8  9 10 11]], shape=(3, 4), dtype=int32)
"""# 创建全0张量,形状为(2,3,4)
tf.zeros((2, 3, 4))
"""
tf.Tensor(
[[[0. 0. 0. 0.][0. 0. 0. 0.][0. 0. 0. 0.]][[0. 0. 0. 0.][0. 0. 0. 0.][0. 0. 0. 0.]]], shape=(2, 3, 4), dtype=float32)
"""# 创建全1张量,形状为(2, 3, 4)
tf.ones((2, 3, 4))
"""
tf.Tensor(
[[[1. 1. 1. 1.][1. 1. 1. 1.][1. 1. 1. 1.]][[1. 1. 1. 1.][1. 1. 1. 1.][1. 1. 1. 1.]]], shape=(2, 3, 4), dtype=float32)
"""# 创建形状为(3,4)的张量,每个元素都从均值为0、标准差为1的标准高斯分布中随机采样
tf.random.normal(shape=[3, 4])
"""
tf.Tensor(
[[-0.09441569  0.38432765  0.14562869 -1.4273915 ][-1.2483802  -0.5629799   0.61917394  0.95960045][-0.23416954  0.78880084  0.5428484   0.5864796 ]], shape=(3, 4), dtype=float32)
"""# 创建包含数值的Python列表,为所需张量中的每个元素赋予确定的值。
tf.constant([[2, 1, 4, 3], [1, 2, 3, 4], [4, 3, 2, 1]])
"""
tf.Tensor(
[[2 1 4 3][1 2 3 4][4 3 2 1]], shape=(3, 4), dtype=int32)
"""

运算符

# 张量的基本运算符(+、-、/、**)
x = tf.constant([1.0, 2, 4, 8])
y = tf.constant([2.0, 2, 2, 2])
x + y, x - y, x * y, x / y, x ** y  # **运算符是求幂运算
"""
tf.Tensor([ 3.  4.  6. 10.], shape=(4,), dtype=float32)
tf.Tensor([-1.  0.  2.  6.], shape=(4,), dtype=float32)
tf.Tensor([ 2.  4.  8. 16.], shape=(4,), dtype=float32)
tf.Tensor([0.5 1.  2.  4. ], shape=(4,), dtype=float32)
tf.Tensor([ 1.  4. 16. 64.], shape=(4,), dtype=float32)
"""# “按元素”方式可以应用更多的计算,包括像求幂这样的一元运算符。
tf.exp(x)
"""
tf.Tensor([2.7182817e+00 7.3890562e+00 5.4598148e+01 2.9809580e+03], shape=(4,), dtype=float32)
"""# 多个张量连结在一起
X = tf.reshape(tf.range(12, dtype=tf.float32), (3, 4))
Y = tf.constant([[2.0, 1, 4, 3], [1, 2, 3, 4], [4, 3, 2, 1]])
tf.concat([X, Y], axis=0), tf.concat([X, Y], axis=1)
"""
tf.Tensor(
[[ 0.  1.  2.  3.][ 4.  5.  6.  7.][ 8.  9. 10. 11.][ 2.  1.  4.  3.][ 1.  2.  3.  4.][ 4.  3.  2.  1.]], shape=(6, 4), dtype=float32) tf.Tensor(
[[ 0.  1.  2.  3.  2.  1.  4.  3.][ 4.  5.  6.  7.  1.  2.  3.  4.][ 8.  9. 10. 11.  4.  3.  2.  1.]], shape=(3, 8), dtype=float32)
"""# 通过逻辑运算符构建二元张量
X == Y
"""
tf.Tensor(
[[False  True False  True][False False False False][False False False False]], shape=(3, 4), dtype=bool)
"""

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com