机器学习--张量

机器学习--张量

机器学习的数据结构--张量

张量是机器学习程序中的数字容器,本质上就是各种不同维度的数组,如下图所示。

张量的维度称为轴(axis),轴的个数称为阶(rank)

标量--0D张量

py 复制代码
import numpy as np #导入NumPy
X = np.array(5) # 创建0D张量,也就是标量
print("X的值",X)
print("X的阶",X.ndim) #ndim属性显示张量轴的个数
print("X的数据类型",X.dtype) # dtype属性显示张量数据类型
print("X的形状",X.shape) # shape属性显示张量形状

向量--1D张量

由一组数字组成的数组叫作向量(vector),也就是一阶张量

py 复制代码
X = np.array([5,6,7,8,9]) #创建1D张量,也就是向量
print("X的值",X)
print("X的阶",X.ndim) #ndim属性显示张量轴的个数
print("X的形状",X.shape) # shape属性显示张量形状

(5,)表示一个1D张量,元素数量是5,也就是5维向量。

矩阵--2D张量

矩阵是2D张量,形状为 (样本,特征)。第一个轴是样本轴,第二个轴是特征轴。

序列数据--3D张量

时序数据集的形状为3D张量:(样本,时戳,标签)

图像数据--4D张量

图像数据集其形状为(样本,图像高,图像宽度,颜色深度),如MNIST特征数据集的形状为 (60000,28,28,1)。

比如指定批量大小为64。此时每批的100px×100px的彩色图像张量形状为(64, 100,100,3),如果是灰度图像,则为(64,100,100,1)

视频数据--5D张量

其形状为(样本,帧,高度,宽度,颜色深度)

张量的创建和访问

py 复制代码
array_04=np.arange(1,5,1) # 通过arange函数生成数组
array_05=np.linspace(1,5,5) # 通过linspace函数生成数组
print (array_04)
print (array_05)

arange(a,b,c)函数产生a~b(不包括b),间隔为c;

linspace(a,b, c)函数是把a~b(包括b),平均分成c份。

索引(indexing)和切片(slicing)这两种方式访问张量

py 复制代码
array_06 = np.arange(10)
print (array_06)
index_01 = array_06[3] # 索引-第4个元素
print ('第4个元素', index_01)
index_02 = array_06[-1] # 索引-最后一个元素
print ('第-1个元素', index_02)
slice_01 = array_06[:4] # 从0到4切片
print ('从0到4切片', slice_01)
slice_02 = array_06[0:12:4] # 从0到12切片,步长为2
print ('从0到12切片,步长为4', slice_02)
相关推荐
深蓝易网25 分钟前
为什么制造企业需要用MES管理系统升级改造车间
大数据·运维·人工智能·制造·devops
xiangzhihong833 分钟前
Amodal3R ,南洋理工推出的 3D 生成模型
人工智能·深度学习·计算机视觉
狂奔solar1 小时前
diffusion-vas 提升遮挡区域的分割精度
人工智能·深度学习
资源大全免费分享1 小时前
MacOS 的 AI Agent 新星,本地沙盒驱动,解锁 macOS 操作新体验!
人工智能·macos·策略模式
跳跳糖炒酸奶1 小时前
第四章、Isaacsim在GUI中构建机器人(2):组装一个简单的机器人
人工智能·python·算法·ubuntu·机器人
AI.NET 极客圈1 小时前
AI与.NET技术实操系列(四):使用 Semantic Kernel 和 DeepSeek 构建AI应用
人工智能·.net
Debroon1 小时前
应华为 AI 医疗军团之战,各方动态和反应
人工智能·华为
俊哥V1 小时前
阿里通义千问发布全模态开源大模型Qwen2.5-Omni-7B
人工智能·ai
果冻人工智能2 小时前
每一条广告都只为你而生: 用 人工智能 颠覆广告行业的下一步
人工智能
掘金安东尼2 小时前
GPT-4.5 被 73% 的人误认为人类,“坏了?!我成替身了!”
人工智能·程序员