当前位置: 首页 > news >正文

【深度学习】基础数据结构+访问

目录

  • 深度学习中的基础数据结构
    • 1. N维数组
      • 定义
      • 特点
      • 访问元素
    • 2. 机器学习中常用的数据结构
      • N维数组
      • 示例
    • 3. 数学中的访问操作
      • 带跳转的子区域
      • 访问示例
    • 4. 数学中的访问操作
        • 4.1 一维数组(向量)
          • 访问一个区间
          • 带步长的区间访问
        • 4.2 二维数组(矩阵)
          • 访问某一行或某一列
          • 访问子矩阵
        • 4.3 三维数组(张量)
          • 访问某个二维切片
          • 带步长的子区域访问


深度学习中的基础数据结构

在深度学习中,理解和操作数据的基础结构至关重要,主要包括以下几种:

1. N维数组

定义

  • N维数组(Tensor)是深度学习中最常用的数据结构。
  • 包括标量(0维数组)、向量(1维数组)、矩阵(2维数组)、3D数组(张量,3维数组)和更高维度的数组。

特点

  • 标量:只有一个值,例如5。
  • 向量:一维数组,例如[1, 2, 3]。
  • 矩阵:二维数组,例如[[1, 2], [3, 4]]。
  • 3D数组:例如一个包含多张图片的数据结构。
  • 4D数组:常用于批量处理多个3D数组。
  • 5D数组:常用于视频处理,表示多段视频的批量。

访问元素

  • 可以使用索引访问N维数组中的元素。
  • 索引的数量等于数组的维度。

2. 机器学习中常用的数据结构

N维数组

  • 包括标量、向量、矩阵、批量等。
  • 访问和创建这些数组的方法对于深度学习至关重要。

示例

  • 2D数组:如一张图片,可以表示为一个矩阵。
  • 3D数组:如一批图片,可以表示为一堆矩阵。
  • 4D数组:视频的帧数据,可以表示为多个3D数组。
  • 5D数组:批量的视频数据,可以表示为多个4D数组。

3. 数学中的访问操作

带跳转的子区域

  • 访问一个数组的子区域时,可以指定跳跃的步长(stride)。
  • 例如,访问矩阵的子矩阵时,可以通过步长来跳过某些行或列。

访问示例

  • 访问一个向量中的一个区间:array[start:end]
  • 访问一个矩阵中的某一行或某一列:matrix[row, :]matrix[:, column]
  • 通过步长访问带跳跃的子区域:array[start:end:step]

4. 数学中的访问操作

在处理高维数组(如张量)时,访问和操作其子区域是常见的需求。以下是一些具体的访问操作及其示例:

4.1 一维数组(向量)
访问一个区间

通过指定起始位置和结束位置来访问一个区间的元素:

import numpy as np# 创建一个一维数组
vector = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])# 访问从索引2到索引5的元素(不包括索引5)
sub_vector = vector[2:5]
print(sub_vector)  # 输出: [2 3 4]
带步长的区间访问

通过步长来访问带跳跃的元素:

# 访问从索引1到索引8的元素,步长为2
sub_vector_with_stride = vector[1:8:2]
print(sub_vector_with_stride)  # 输出: [1 3 5 7]
4.2 二维数组(矩阵)
访问某一行或某一列

通过指定行或列索引来访问:

# 创建一个二维数组
matrix = np.array([[0, 1, 2], [3, 4, 5], [6, 7, 8]])# 访问第二行(索引从0开始)
second_row = matrix[1, :]
print(second_row)  # 输出: [3 4 5]# 访问第三列
third_column = matrix[:, 2]
print(third_column)  # 输出: [2 5 8]
访问子矩阵

通过指定行和列的范围来访问子矩阵:

# 访问从第一行到第二行,从第一列到第二列的子矩阵
sub_matrix = matrix[0:2, 1:3]
print(sub_matrix)  
# 输出:
# [[1 2]
#  [4 5]]
4.3 三维数组(张量)
访问某个二维切片

通过指定切片索引来访问某个二维切片:

# 创建一个三维数组
tensor = np.array([[[ 0,  1,  2],[ 3,  4,  5],[ 6,  7,  8]],[[ 9, 10, 11],[12, 13, 14],[15, 16, 17]]])# 访问第一个二维切片
first_slice = tensor[0, :, :]
print(first_slice)  
# 输出:
# [[0 1 2]
#  [3 4 5]
#  [6 7 8]]
带步长的子区域访问

通过步长来访问三维数组的子区域:

# 访问第一个二维切片的子区域,步长为2
sub_tensor_with_stride = tensor[0, 0:3:2, 0:3:2]
print(sub_tensor_with_stride)  
# 输出:
# [[0 2]
#  [6 8]]

相关文章:

【深度学习】基础数据结构+访问

目录 深度学习中的基础数据结构1. N维数组定义特点访问元素 2. 机器学习中常用的数据结构N维数组示例 3. 数学中的访问操作带跳转的子区域访问示例 4. 数学中的访问操作4.1 一维数组(向量)访问一个区间带步长的区间访问 4.2 二维数组(矩阵&am…...

一个产品需求工程师繁忙的一天

早晨:开启新的一天 7:00 AM - 起床 早晨七点准时起床。洗漱、早餐后,查看手机上的邮件和消息,提前了解今天的工作安排和优先事项。 8:00 AM - 前往公司 坐地铁前往公司。在地铁上,习惯性地阅读一些行业资讯和市场报告&#xff0…...

MD5加密接口

签名算法 app_key和app_secret由对方系统提供 MD5_CALCULATE_HASH_FOR_CHAR(中文加密与JAVA不一致) 代码: *获取传输字段名的ASCII码,根据ASCII码对字段名进行排序SELECT * FROM zthr0051WHERE functionid iv_functionidINTO …...

AI大模型日报#0626:首款大模型芯片挑战英伟达、面壁智能李大海专访、大模型测试题爆火LeCun点赞

导读:AI大模型日报,爬虫LLM自动生成,一文览尽每日AI大模型要点资讯!目前采用“文心一言”(ERNIE-4.0-8K-latest)生成了今日要点以及每条资讯的摘要。欢迎阅读!《AI大模型日报》今日要点&#xf…...

专业技能篇---计算机网络

文章目录 前言计算机网络基础一、网络分层模型 HTTP一、从输入URL到页面显示发生了什么?二、Http的状态码有哪些?三、 HTTP与HTTPS有什么区别?四、URI 和 URL 的区别是什么?五、Cookie和Session有什么区别?六、GET与POST WebSock…...

Matlab|【免费】含氢气氨气综合能源系统优化调度

目录 主要内容 部分代码 结果一览 下载链接 主要内容 该程序参考《_基于氨储能技术的电转氨耦合风–光–火综合能源系统双层优化调度》模型,对制氨工厂、风力发电、电制氢、燃气轮机、火电机组等主体进行建模分析,以火电机组启停成本、煤耗…...

python的一些常用的内建函数

内建函数 python中的内建函数是可以被自动加载的,可以随时调用这些函数,不 需要定义。方便的编程。 eval()函数 将字符串当成有效的表达式来求值,并返回计算结果 用于对动态表达式求值,语法格式如下: eval(source&…...

Docker部署常见应用之Oracle数据库

文章目录 安装部署参考文章 安装部署 使用Docker安装Oracle数据库是一个相对简便的过程,可以避免在本地环境中直接安装Oracle数据库的复杂性。 安装Docker环境:确保你的系统上已经安装了Docker,并且Docker服务正在运行。具体的安装方法可以根…...

小程序中echarts的bug

这个文字在手机上显示会有黑的的阴影 textStyle: {fontSize: 12,wrap: true,textShadowColor: "#fff", // 文字本身的阴影颜色textShadowBlur: 10, // 文字本身的阴影长度textShadowOffsetX: 10, // 文字本身的阴影X偏移textShadowOffsetY: 10, //阴影Y偏移}...

项目验收测试有必要找第三方软件测试机构吗?

在当今信息技术飞速发展的时代,软件测试成为了确保软件质量的重要环节。而在项目的验收测试中,很多企业都面临一个问题,那就是是否有必要找第三方软件测试机构进行验收测试?今天,我们就来探讨一下这个问题。 第三方软件测试机构…...

【python入门】循环语句

文章目录 1. for 循环2. while 循环3. break 和 continue 语句4. else 子句5. 循环控制语句6. 列表推导式7. 循环中的异常处理8. 循环的高级用法 1. for 循环 for 循环通常用于遍历序列(如列表、元组、字典、集合、字符串)或者迭代器。for 循环可以自动…...

php调用soap, 报错 failed to load external entity‘http://xxxxxxxx?wsdl‘ 解决方法

先说下环境,非当前环境参考思路 服务器 centos 6php版本 5.5.39调用java写的soap服务器开启soap缓存出现的问题是, 运行一段时间后就会随机报异常 PHP Fatal error: SOAP-ERROR: Parsing WSDL: Couldnt load from http://xxxxxxxx?wsdl : failed to l…...

ts可选参数

可选参数 参数后加个问号,代表这个参数是可选的 function bdd(x:number,y?:number){return x y } console.log(bdd(2,3)) function bdd(x:number,y?:number){return x y } console.log(bdd(2))...

day41--Redis(三)高级篇之最佳实践

Redis高级篇之最佳实践 今日内容 Redis键值设计批处理优化服务端优化集群最佳实践 1、Redis键值设计 1.1、优雅的key结构 Redis的Key虽然可以自定义,但最好遵循下面的几个最佳实践约定: 遵循基本格式:[业务名称]:[数据名]:[id]长度不超过…...

PDF 生成(4)— 目录页

当学习成为了习惯,知识也就变成了常识。 感谢各位的 关注、点赞、收藏和评论。 新视频和文章会第一时间在微信公众号发送,欢迎关注:李永宁lyn 文章已收录到 github 仓库 liyongning/blog,欢迎 Watch 和 Star。 回顾 上一篇 PD…...

黑盒测试用例的四种设计方法

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 一、输入域测试用例设计方法 输入域测试法是一种综合考虑了等价类划分、边界值分析等方法的综合…...

GIT重新提交-恢复到暂存状态

Git重新提交 --git reset --soft HEAD~n 有时候我们提交了commit并且push到分支之后,发现代码有需要修改的地方,想要修改重新提交commit应该怎么办呢 这时候我们只需要使用git reset --soft HEAD~n命令,然后修改代码后强制提交修改提交就可以 示例(修改最近的1个提交):…...

半藏酒商业模式解读,半藏酱酒营销案例,半藏总院分院招商模式

半藏酱酒通过新零售模式,实现销售额快速增长。其模式包括私域营销、共享门店和DTC模式 入局酱酒市场短短4个月,销售额便破亿,15个月销售额突破6亿,还成立了700多家分院… 主要步骤是三个身份:分院、联创股东、个人股东…...

从云原生视角看 AI 原生应用架构的实践

本文核心观点: 基于大模型的 AI 原生应用将越来越多,容器和微服务为代表的云原生技术将加速渗透传统业务。API 是 AI 原生应用的一等公民,并引入了更多流量,催生企业新的生命力和想象空间。AI 原生应用对网关的需求超越了传统的路…...

浅学JVM

一、基本概念 目录 一、基本概念 二、JVM 运行时内存 1、新生代 1.1 Eden 区 1.2. ServivorFrom 1.3. ServivorTo 1.4 MinorGC 的过程 (复制- >清空- >互换) 1.4.1:eden 、servicorFrom 复制到ServicorTo,年龄1 …...

[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?

🧠 智能合约中的数据是如何在区块链中保持一致的? 为什么所有区块链节点都能得出相同结果?合约调用这么复杂,状态真能保持一致吗?本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里&#xf…...

多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度​

一、引言:多云环境的技术复杂性本质​​ 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时,​​基础设施的技术债呈现指数级积累​​。网络连接、身份认证、成本管理这三大核心挑战相互嵌套:跨云网络构建数据…...

Cursor实现用excel数据填充word模版的方法

cursor主页:https://www.cursor.com/ 任务目标:把excel格式的数据里的单元格,按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例,…...

C++_核心编程_多态案例二-制作饮品

#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为&#xff1a;煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例&#xff0c;提供抽象制作饮品基类&#xff0c;提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

Day131 | 灵神 | 回溯算法 | 子集型 子集

Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 笔者写过很多次这道题了&#xff0c;不想写题解了&#xff0c;大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容

基于 ​UniApp + WebSocket​实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配​微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

Java入门学习详细版(一)

大家好&#xff0c;Java 学习是一个系统学习的过程&#xff0c;核心原则就是“理论 实践 坚持”&#xff0c;并且需循序渐进&#xff0c;不可过于着急&#xff0c;本篇文章推出的这份详细入门学习资料将带大家从零基础开始&#xff0c;逐步掌握 Java 的核心概念和编程技能。 …...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

算法岗面试经验分享-大模型篇

文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer &#xff08;1&#xff09;资源 论文&a…...

【7色560页】职场可视化逻辑图高级数据分析PPT模版

7种色调职场工作汇报PPT&#xff0c;橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版&#xff1a;职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...