机器学习--张量

机器学习--张量

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

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

张量的维度称为轴(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)
相关推荐
shuououo33 分钟前
YOLOv4 核心内容笔记
人工智能·计算机视觉·目标跟踪
DO_Community4 小时前
普通服务器都能跑:深入了解 Qwen3-Next-80B-A3B-Instruct
人工智能·开源·llm·大语言模型·qwen
WWZZ20254 小时前
快速上手大模型:机器学习3(多元线性回归及梯度、向量化、正规方程)
人工智能·算法·机器学习·机器人·slam·具身感知
deephub4 小时前
深入BERT内核:用数学解密掩码语言模型的工作原理
人工智能·深度学习·语言模型·bert·transformer
PKNLP4 小时前
BERT系列模型
人工智能·深度学习·bert
兰亭妙微5 小时前
ui设计公司审美积累 | 金融人工智能与用户体验 用户界面仪表盘设计
人工智能·金融·ux
AKAMAI6 小时前
安全风暴的绝地反击 :从告警地狱到智能防护
运维·人工智能·云计算
岁月宁静6 小时前
深度定制:在 Vue 3.5 应用中集成流式 AI 写作助手的实践
前端·vue.js·人工智能
galaxylove6 小时前
Gartner发布数据安全态势管理市场指南:将功能扩展到AI的特定数据安全保护是DSPM发展方向
大数据·人工智能
格林威6 小时前
偏振相机在半导体制造的领域的应用
人工智能·深度学习·数码相机·计算机视觉·视觉检测·制造