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

深度学习 DAY1:RNN 神经网络及其变体网络(LSTM、GRU)

实验介绍

RNN 网络是一种基础的多层反馈神经网络,该神经网络的节点定向连接成环,其内部状态可以展示动态时序行为。相比于前馈神经网络,该网络内部具有很强的记忆性,它可以利用它内部的记忆来处理任意时序的输入序列,这让它在自然语言处理方面取得了很大的成功。

知识点
  • 循环网络的概念
  • RNN 网络结构
  • LSTM 网络结构
  • 细胞体三个门的工作方式
  • 其他 LSTM 网络变体的结构

循环神经网络

循环网络是一种对序列数据有较强处理能力的网络,类似于CNN 网络,这两种网路的结构中都存在权值共享的思想。

在网络模型的不同部分进行权值共享使得模型可以扩展到不同样式的样本,正如 CNN 网络中一个确定好的卷积核模板,几乎可以处理任何大小的图片。将图片中分成多个区域,使用同样的卷积核对每一个区域进行处理,最后可以获得非常好的处理结果。

同样的,循环网络使用的类似的模块( 形式上类似,之后会进行讲解 )对整个序列进行处理,可以将很长的序列进行泛化,得到需要的结果。

这里提到一点,因为循环神经网络可以将序列进行较好的处理,且时间同样也是有序数列,在实际应用中,RNN 循环神经网络对于处理时序数据具有天然的优势。

网络的结构

类似于 CNN 神经网络的卷积核概念,在 RNN 网络中也类有类似的概念 “ 计算图 ” 。

计算图其实质上是用来描述一个函数方法的模块,也等同于一个数据处理 “ 盒子 ” 。

每一个计算图有输入和输出的数据,同时在某一时刻的计算图的数据对下一时刻计算图造成影响。

计算图可以将按照序列进行展开成为一个具有深度的链结构,在这个深度结构中,也构成了参数的共享。

其中最为普遍的系统形式为:

                                                     

利用这个公式可以将每一个序列的元素进行连接处理,将公式进行展开可以得到类似于下面的形式:

进行展开后可以得到序列的第 t 个节点(或第 t 时刻)的处理结果。在式子中有不变的参数 θ ,通过保证 θ 使得整个网络可以进行权值共享,每一阶段通过参数将前一阶段的状态导入。

RNN 网络

介绍

在前面的讲解中,提到了什么是循环网络,以及循环网络的公式构造,RNN 网络模型即是循环神经网络的表现。相比于前面描述的循环网络,RNN 中加入了其他参数的输入。即在某一个节点或某一时刻 t (以下统称为某一时刻 t ),输入网络的参数还有外界的信号 x(t) ,这样将上式进行重写,有:

                                        

因为网络的参数通过循环不断地传入网络,这一点类似于人思考的过程,RNN 网络可以保持信息的持久性,这一点在其他的神经网络结构中是不具备的。也正是因为这个特征,RNN 网络可以很好的对时序模块进行处理。

在对于网络的理解,也可以理解成为对于同一个网络,每次传入的参数不同。传入参数的一部分是某一时刻 t 的新参数,另一部分是上一时刻 t−1 已经获取到的参数。 

RNN 拓扑结构

将 RNN 网络函数

                                                    

 进行展开后可以获得下图所示的链结构:

                          

在图中黄色框标注的部分为网络的一个计算图,也可以将其称作为一个细胞体。同时图中分别用蓝色和橙色标注了两种不同的参数传导方式。先解释一下每一个参数的含义, x(t) 为 t 时刻的输入参数,h(t) 为隐藏层的激活函数,o(t) 为 t 时刻的输出参数, L(t) 为网络的损失值, y(t) 为目标函数。一般情况下使用图中蓝色线标注的迭代方式,当整个网络位数很高并且信息非常多时,可以利用橙色算法进行传参。

通过将网络展开,能够较好的看到对于一个序列 x(t) ,可以使用 RNN 循环神经网络进行处理,网络具有联想能力,可以将之前的信息加以保存,并在之后的循环中进行调用。

RNN 的记忆功能

在上图中我们可以看到 RNN 展开链的形式,这里利用实例解释一下 RNN 的记忆功能。我们将 RNN 网络的拓扑图进行简化。

假如需要使用 RNN 循环网络对一段话进行预测,“ 我是中国人,我爱中国,我的母语是()” 。对于网络来说,现假设 “ 中国人 ” 信息在 x(2) 输入,括号中的内容在 o(n) 输出。这里就涉及到联想功能,如果说是一个训练好的网络,输出信息时网络会根据前文的信息进行判断该点的输出应该为一种语言的名字,并通过之前的输入 “ 中国人 ” 判断此处应该是 “ 汉语 ” 。 

但是对于 RNN 网络仍然是存在一些局限性的,输出的信息还有很多依赖的因素。在理想情况下,RNN 网络的输出精度并不受循环次数的增加而降低。但是在实际应用中,当输入关键信息的位置和输出信息的位置之间的节点变得非常长之后,RNN 神经网络会丧失链接到判断输出的关键信息位置的能力。在实际的应用中,对于循环神经网络,人们经常应用的是 RNN 网络的变体,例如 LSTM 网络。在 LSTM 网络中没有因为位置远近而降低输出精度的问题。 

RNN 变体 LSTM 网络

LSTM 网络,即为长短期记忆网络。因为该网络的结构,该网络适合处理序列中间隔和延时较长的事件。在实际生活中,LSTM 网络已经应用在诸多方面, 2015 年谷歌将其应用在安卓系统语音识别功能中,在苹果手机中 Siri 功能也整合了 LSTM 网络,百度、亚马逊等公司的产品中很多也应用到了 LSTM 网络。

LSTM 细胞体结构

在基础 RNN 网络中,之所以不能解决长期依赖问题,是因为 RNN 处理数据的计算图( 细胞体 )结构简单,只有一个非常简单的结构,比如说只进行一个 Sigmoid 函数的数据处理,这使得网络很难对长时间的信息进行记忆,同时网络对于哪些信息需要舍弃,哪些信息需要保留也无法做出很好的判断。

在 LSTM 网络中,通过将细胞体结构复杂化,在算法中加入了判断信息是否有用的处理器。在网络中加入了三道 “ 门 ” ,分别叫做:遗忘门、输入门、输出门。信息进入网络中,网络会根据一定的规则来判断信息是否有用,有用的信息将加以保留,无用的信息将进行遗忘。下面我们将 LSTM 的一个细胞体以简图形式呈现。

                             

在这里需要解释一下上图中的一些符号。 σ 层代表一个输出的权重,表示信息通过的量,其取值范围为 [0 1] 。

当取值为 0 时,代表所有信息都不能通过;

当取值为 1 时,代表所有信息都能通过。

网络通过接受前一个细胞体的两个参数 ,以及外界给予的参数  ,经过三个门的过滤整合将信息传递给下一个细胞体。上图中黑色和蓝色的线是信息在整个网络中信息的传送带,将信息在网络中不断的传输。 

在上图两条线合并的地方表示将信息进行合并(蓝线和黑线不相交),在实际处理中,表示将两个向量进行合并。一条线分开成两条线的地方表示将信息进行复制(不需要考虑颜色),黑色方块代表 LSTM 神经网络中的一层,而圆圈代表将信息进行相应的处理。 

细胞体中颜色的区分是为了让读者更好理解三个门的概念。第一个门用橙色线进行标注为忘记门;第二个门用绿色线和黄色线标注为输入门;第三个门是用灰色线进行标注为输出门。下面将详细讲三个门结构进行讲解。 

结构分步讲解

LSTM 网络涉及到三个门的操作,将三个门分开进行讨论会使得该网络便于读者进行理解。

遗忘门

遗忘门为网络中的第一个门,网络会对信息进行判断,决定信息的弃留。为什么遗忘门作为网络的第一个门,是因为需要将网络信息进行过滤,放在之后容易对新加入的信息进行错误处理。

 应用到实际应用中,细胞体中可能含有的是 “ 小明 ” 这个人名,我们很希望使用它来预测之后的词语,网络中可能已经获取的信息是 “ 忧伤的 ” ,但经过网络处理中后该词需要进行更新,遗忘门就会将该词进行过滤。

输入门

输入门分为两步进行,首先绿色线的部分需要选择什么值需要进行更新,之后黄色线的部分是确定将什么值进行传输。这两步中可以用如下公式进行解释。

 

现在我们已经将网络信息中需要更新的旧信息予以遗忘,新信息定位好并获取其内容,之后就是将信息进行整合,更新细胞体状态,并且这里得到细胞体的一部分输出:

输出门

最后是将信息进行输出,输出门所采用的信息是将细胞状态进行处理并和初始信息整合后进行输出。

 通过最后输出门的处理,将细胞信息进行了选择,输出了我们需要的那部分信息,比如按照之前的语料信息,“ 小明 ” 现在的状态并不是 “ 忧伤的 ” 而是 “ 快乐的 ” 。这时网络的输出会将 “ 快乐的 ” 这个信息进行输出。

RNN 其他形式变体介绍

在实际应用中,会使用到很多 LSTM 网络的变体,通过这些变体也演化出非常多的应用。

Peephole 网络

这个变体是由 GersGers 和 Schmidhuber 在 2000 年提出的,该网络将细胞体的状态作为网络神经层的一部分输入。整合了细胞状态的输入,使得网络判断可依据的信息变多,这种优化的方法也称作是窥孔优化。

                      

 

Coupled 网络

在这个网络中,细胞状态的遗忘是相对的,遗忘门遗忘了一些信息之后,相应的在输入门就会生成一些信息。未被遗忘的信息将传输到输入门中,有:

                                                                    

                                      

GRU 网络

该网络是简化版的 LSTM 网络,在这个网络中将细胞状态的概念去掉,通过一条输出链在每时刻和输入信息进行整合作为输出并传输到下一时刻。正因为这样的结构,使得 GRU 网络收敛的时间和需要的信息量的要求上都优于 LSTM 网络。

                               

实验总结

本文大体介绍了 RNN 算法及其变体算法 LSTM 算法,通过讲解循环网络的结构使得读者能够初步理解 RNN 网络的运行模式,对 RNN 算法进行了解。之后将 RNN 算法的变体 LSTM 算法进行讲解。通过对 LSTM 细胞体结构的讲解,使用户能理解 LSTM 网络中三个门的概念,然后分步进行每个门的运算展示。最后希望读者能够了解其他 LSTM 网络的变体。

小练习

希望读者能思考整个算法的流程并将算法进行复述,能较好的说出三个门结构的运行特点,以及怎样将信号进行处理。同时希望读者能够思考怎样将 LSTM 网络用代码实现,并且那些希望深入研究的读者可以继续理解其他变体网络。

相关文章:

深度学习 DAY1:RNN 神经网络及其变体网络(LSTM、GRU)

实验介绍 RNN 网络是一种基础的多层反馈神经网络,该神经网络的节点定向连接成环,其内部状态可以展示动态时序行为。相比于前馈神经网络,该网络内部具有很强的记忆性,它可以利用它内部的记忆来处理任意时序的输入序列,…...

BW复制ERP数据源跑程序激活后才可见

场景: BW提取ERP数据走ODP通道之后,数据源需要用下列程序激活加入白名单后才能被BW系统访问到; 检查: 1、RSA6检查数据源是否可正常使用,若为绿√表示可正常访问,反之,则不行。 2、白名单表ROO…...

MarsCode青训营打卡Day10(2025年1月23日)|稀土掘金-147.寻找独一无二的糖葫芦串、119.游戏队友搜索

资源引用: 147.寻找独一无二的糖葫芦串 119.游戏队友搜索 今日小记: 回乡聚会陪家人,休息一天~ 稀土掘金-147.寻找独一无二的糖葫芦串(147.寻找独一无二的糖葫芦串) 题目分析: 给定n个长度为m的字符串表…...

无人机 PX4 飞控 | PX4源码添加自定义参数方法并用QGC显示与调整

无人机 PX4 飞控 | PX4源码添加自定义参数方法并用QGC显示与调整 0 前言 之前文章添加了一个自定义的模块,本篇文章在之前的自定义模块中,添加两个自定义参数 使用QGC显示出来,并通过QGC调整参数值,代码实现参数更新 新增的参…...

【全栈】SprintBoot+vue3迷你商城-扩展:vue3项目创建及目录介绍

【全栈】SprintBootvue3迷你商城-扩展:vue3项目创建及目录介绍 往期的文章都在这里啦,大家有兴趣可以看一下 【全栈】SprintBootvue3迷你商城(1) 【全栈】SprintBootvue3迷你商城(2) 【全栈】SprintBootvu…...

Linux系统 C/C++编程基础——基于Qt的图形用户界面编程

ℹ️大家好,我是练小杰,今天周四了,距离除夕只有4天了,各位今年卫生都搞完了吗!😆 本文是接着昨天Linux 系统C/C编程的知识继续讲,基于Qt的图形用户界面编程概念及其命令,后续会不断…...

23.日常算法

1. 最小绝对差 题目来源 给你个整数数组 arr&#xff0c;其中每个元素都 不相同。请你找到所有具有最小绝对差的元素对&#xff0c;并且按升序的顺序返回。 每对元素对 [a,b] 如下&#xff1a; a , b 均为数组 arr 中的元素 a < b b - a 等于 arr 中任意两个元素的最小绝对…...

迅为RK3568开发板篇OpenHarmony实操HDF驱动控制LED-添加内核编译

编译内核时将该 HDF 驱动编译到镜像中&#xff0c;接下来编写驱动编译脚本 Makefile&#xff0c;代码如下所示&#xff1a; 加入编译体系&#xff0c;填加模块目录到 drivers/hdf_core/adapter/khdf/linux/Makefile 文件 更多内容可以关注&#xff1a;迅为RK3568开发板篇OpenHa…...

为AI聊天工具添加一个知识系统 之54 为事务处理 设计 基于DDD的一个 AI操作系统 来处理维度

本文要点 要点 Architecture程序 它被设计为一个双面神结构的控制器&#xff0c;它的两侧一侧编译执行另一侧 解释执行&#xff0c;自已则是一个 翻译器--通过提供两个不同取向之间 的 结构映射的显示器&#xff08;带 图形用户接口GUI和命令行接口CLI 两种 接口&#xff09…...

Golang 中除了加锁还有哪些安全读写共享变量的方式?

Golang 中除了加锁还有哪些安全读写共享变量的方式&#xff1f; 在 Golang 中&#xff0c;除了使用 Mutex 锁来保护共享变量外&#xff0c;还可以通过 Channel 和 原子性操作 来实现安全读写共享变量。 1. 使用 Channel 原理 Channel 是 Golang 中用于 Goroutine 之间通信的…...

【优选算法】8----四数之和

有看过我上篇算法博客并且去做过的铁子们&#xff0c;对这道题的话应该就不会那么陌生了&#xff0c;因为这两道题 的解题思路有着异曲同工之妙~ -----------------------------------------begin------------------------------------- 题目解析&#xff1a; 跟三数之和就多了…...

订单状态定时处理、来单提醒和客户催单(day10)

Spring Task 介绍 Spring Task 是 Spring 框架提供的任务调度工具&#xff0c;可以按照约定的时间自动执行某个代码逻辑。 定位&#xff1a; 定时任务框架 作用&#xff1a; 定时自动执行某段Java代码 为什么要在 Java 程序中使用 Spring Task&#xff1f; 应用场景&#xff1…...

备赛蓝桥杯之第十五届职业院校组省赛第一题:智能停车系统

提示&#xff1a;本篇文章仅仅是作者自己目前在备赛蓝桥杯中&#xff0c;自己学习与刷题的学习笔记&#xff0c;写的不好&#xff0c;欢迎大家批评与建议 由于个别题目代码量与题目量偏大&#xff0c;请大家自己去蓝桥杯官网【连接高校和企业 - 蓝桥云课】去寻找原题&#xff0…...

【2024年华为OD机试】(C卷,100分)- 查找接口成功率最优时间段 (JavaScriptJava PythonC/C++)

一、问题描述 题目解析 题目描述 服务之间交换的接口成功率作为服务调用关键质量特性&#xff0c;某个时间段内的接口失败率使用一个数组表示。数组中每个元素都是单位时间内失败率数值&#xff0c;数组中的数值为 0~100 的整数。给定一个数值 minAverageLost&#xff0c;表…...

Linux进度条实现

Linux进度条实现 1.\r\n2.缓冲区3.缓冲区分类4.进度条实现 &#x1f31f;&#x1f31f;hello&#xff0c;各位读者大大们你们好呀&#x1f31f;&#x1f31f; &#x1f680;&#x1f680;系列专栏&#xff1a;【Linux的学习】 &#x1f4dd;&#x1f4dd;本篇内容&#xff1a;\…...

Java如何实现反转义

Java如何实现反转义 前提 最近做的一个需求&#xff0c;是热搜词增加换一批的功能。功能做完自测后&#xff0c;交给了测试伙伴&#xff0c;但是测试第二天后就提了一个bug&#xff0c;出现了未知词 levis。第一眼看着像公司售卖的一个品牌-李维斯。然后再扒前人写的代码&…...

计算机网络 (57)改进“尽最大努力交付”的服务

前言 计算机网络中的“尽最大努力交付”服务是网络层的一种数据传输方式。这种服务的特点是网络层只负责尽力将数据报从源端传输到目的端&#xff0c;而不保证数据传输的可靠性。 一、标记与分类 为数据分组打上标记&#xff1a; 给不同性质的分组打上不同的标记&#x…...

Java 基于 SpringBoot 的校园外卖点餐平台微信小程序(附源码,部署,文档)

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…...

重构(4)

&#xff08;一&#xff09;添加解释性变量&#xff0c;使得代码更容易理解&#xff0c;更容易调试&#xff0c;也可以方便功能复用 解释性的变量 总价格为商品总价&#xff08;单价*数量&#xff09;-折扣&#xff08;超过100个以上的打9折&#xff09;邮费&#xff08;原价的…...

【Arduino】语言参考功能

前言 翻译Arduino 参考处列出的常用函数。文中为了减少篇幅&#xff0c;达到能快速翻到查询的目标&#xff0c;在介绍函数中&#xff0c;对部分内容进行了省略&#xff0c;不会列出函数输入参数类型&#xff0c;以及使用注意事项等等&#xff0c;所以若是首次使用或者是调试时出…...

CMake使用CPack制作安装程序

CPack的功能很强大&#xff0c;笔者前面有一博文使用CMake的CPack工具打包项目介绍了一下使用CPack来打包成7z压缩文件&#xff0c;不仅如此&#xff0c;它还可以生成各平台的安装包。 CPack支持以下类型的生成器&#xff1a; 名称文件类型平台及说明STGZSTGZ(.sh)自解压文件…...

Flink运行时架构

一、系统架构 1&#xff09;作业管理器&#xff08;JobManager&#xff09; JobManager是一个Flink集群中任务管理和调度的核心&#xff0c;是控制应用执行的主进程。也就是说&#xff0c;每个应用都应该被唯一的JobManager所控制执行。 JobManger又包含3个不同的组件。 &am…...

平衡二叉树(力扣110)

所谓平衡二叉树&#xff0c;就是每一个节点的左右子树的高度差不大于1。而一个子树的高度&#xff0c;就是父节点的最大高度。这道题的思路其实和二叉树的最大深度(力扣104)-CSDN博客有很大的相似之处&#xff0c;都需要将左右子树的高度返回给父节点&#xff0c;因此也是采用后…...

【玩转全栈】---基于YOLO8的图片、视频目标检测

本篇主要讲YOLO8的具体操作&#xff0c;想要了解YOLO的具体原理&#xff0c;可以去官网查询 目录 下载ultralytics库 开始检测 介绍 YOLOv8&#xff08;You Only Look Once Version 8&#xff09;是 YOLO 系列的最新版本&#xff0c;由 Ultralytics 开发并发布&#xff0c;是一…...

ES6+新特性,var、let 和 const 的区别

在 JavaScript 中&#xff0c;var、let 和 const 都用于声明变量&#xff0c;但它们有一些重要的区别&#xff0c;主要体现在 作用域、可变性和提升机制 等方面。 1. 作用域&#xff08;Scope&#xff09; var: var 声明的变量是 函数作用域&#xff0c;也就是说&#xff0c;它…...

汇编实验·分支程序设计

一、实验目的: 1.能够熟练的进行分支程序的编写,掌握条件语句对应的汇编语言指令的实现 2.掌握多个条件的分支语句的实现原理,理解C语言中的逻辑运算“短路”特征 二、实验内容 1.对2和3任务中的C代码在VS2022中运行,设置生成对应的汇编代码,观察生成代码的不同,着重…...

激光线扫相机无2D图像的标定方案

方案一&#xff1a;基于运动控制平台的标定 适用场景&#xff1a;若激光线扫相机安装在可控运动平台&#xff08;如机械臂、平移台、旋转台&#xff09;上&#xff0c;且平台的运动精度已知&#xff08;例如通过编码器或高精度步进电机控制&#xff09;。 步骤&#xff1a; 标…...

【Python・机器学习】多元回归模型(原理及代码)

前言 自学笔记&#xff0c;分享给语言学/语言教育学方向的&#xff0c;但对语言数据处理感兴趣但是尚未入门&#xff0c;却需要在论文中用到的小伙伴&#xff0c;欢迎大佬们补充或绕道。ps&#xff1a;本文最少限度涉及公式讲解&#xff08;文科生小白友好体质&#xff09;&am…...

ubuntu20.04安装使用direct_visual_lidar_calibration标定雷达和相机

官方链接GitHub - koide3/direct_visual_lidar_calibration: A toolbox for target-less LiDAR-camera calibration [ROS1/ROS2] 官方安装方式 Installation - direct_visual_lidar_calibration 安装依赖 sudo apt install libomp-dev libboost-all-dev libglm-dev libglfw…...

Android 自定义View时四个构造函数使用详解

该文章我们以自定义View继承TextView为例来讲解 创建自定义View命名MyTextView&#xff0c;并使其继承TextView 1、自定义View时第一个构造函数 // 第一个构造函数主要是在Java代码中声明一个MyTextView时所用 // 类似这种(MyTextView myTextViewnew MyTextView(this);) // 不…...

linux中关闭服务的开机自启动

引言 systemctl 是 Linux 系统中用于管理 systemd 服务的命令行工具。它可以用来启动、停止、重启服务&#xff0c;管理服务的开机自启动&#xff0c;以及查看服务的状态等。 什么是 systemd&#xff1f; systemd 是现代 Linux 发行版中默认的 初始化系统&#xff08;init sys…...

【go语言】go的卸载与安装

一、卸载go sudo rm -rf /usr/local/go sudo apt-get remove golang sudo apt-get remove golang-go sudo apt-get autoremove wget https://dl.google.com/go/go1.19.linux-amd64.tar.gz sudo tar -xzf go1.19.linux-amd64.tar.gz -C /usr/local go env -w GOPROXY"http…...

微软Win10 RP 19045.5435(KB5050081)预览版发布!

系统之家1月20日最新报道&#xff0c;微软面向Release Preview频道的Windows Insider项目成员&#xff0c;发布了适用于Windows10 22H2版本的KB5050081更新&#xff0c;更新后系统版本号将升至19045.5435。本次更新增加了对GB18030-2022标准的支持&#xff0c;同时新版日历将为…...

VUE elTree 无子级 隐藏展开图标

这4个并没有下级节点&#xff0c;即它并不是叶子节点&#xff0c;就不需求展示前面的三角展开图标! 查阅官方文档如下描述&#xff0c;支持bool和函数回调处理&#xff0c;这里咱们选择更灵活的函数回调实现。 给el-tree结构配置一下props&#xff0c;注意&#xff01; :pr…...

python实现代理服务器转换

使用 http.server 模块和 requests 库来实现&#xff0c;代理服务器可拦截匹配指定路径的 HTTP 请求&#xff0c;并打印或存储请求头和响应体。 实现目标&#xff1a; 1、创建一个HTTP代理服务器。 2、代理所有流量&#xff0c;而对指定的接口&#xff08;如 /api/target&#…...

计算机网络三张表(ARP表、MAC表、路由表)总结

参考&#xff1a; 网络三张表&#xff1a;ARP表, MAC表, 路由表&#xff0c;实现你的网络自由&#xff01;&#xff01;_mac表、arp表、路由表-CSDN博客 网络中的三张表&#xff1a;ARP表、MAC表、路由表 首先要明确一件事&#xff0c;如果一个主机要发送数据&#xff0c;那么必…...

Dangerzone:免费的危险的文件转换安全程序

我们知道很多杀毒软件会将很多文件视作恶意程序&#xff0c;尤其是带宏病毒的DOC文件&#xff0c;直接删除难免会带来不必要的麻烦&#xff0c;那么推荐一款免费的危险的文件转换安全程序&#xff1a;Dangerzone 。它可以检查各种可能有危险的文件并将其转换为安全版本&#xf…...

2025/1/21 学习Vue的第四天

睡觉。 --------------------------------------------------------------------------------------------------------------------------------- 11.Object.defineProperty 1.在我们之前学习JS的时候&#xff0c;普通得定义一个对象与属性。 <!DOCTYPE html> <h…...

【IEEE Fellow 主讲报告| EI检索稳定】第五届机器学习与智能系统工程国际学术会议(MLISE 2025)

重要信息 会议时间地点&#xff1a;2025年6月13-15日 中国深圳 会议官网&#xff1a;http://mlise.org EI Compendex/Scopus稳定检索 会议简介 第五届机器学习与智能系统工程国际学术会议将于6月13-15日在中国深圳隆重召开。本次会议旨在搭建一个顶尖的学术交流平台&#xf…...

如何使用虚拟现实技术有效提升模拟训练效率

虚拟现实&#xff08;VR&#xff09;技术在模拟训练中的应用正逐步展现其巨大的潜力&#xff0c;通过提供高度沉浸式的体验、灵活的训练场景和精准的数据分析&#xff0c;显著提升训练效率。本文将结合Varjo XR-4头显、Techviz多通道显示软件、Senseglove虚拟现实手套等具体案例…...

OpenEuler学习笔记(十一):OpenEuler上搭建LAMP环境

LAMP环境指的是Linux、Apache、MySQL&#xff08;或MariaDB&#xff09;和PHP的组合&#xff0c;下面为你介绍在OpenEuler上搭建LAMP环境的详细步骤&#xff1a; 1. 系统更新 首先要更新系统中的软件包&#xff0c;保证系统处于最新状态。 sudo dnf update -y2. 安装Apache…...

Anaconda安装(2024最新版)

安装新的anaconda需要卸载干净上一个版本的anaconda&#xff0c;不然可能会在新版本安装过程或者后续使用过程中出错&#xff0c;完全卸载干净anaconda的方法&#xff0c;可以参考我的博客&#xff01; 第一步&#xff1a;下载anaconda安装包 官网&#xff1a;Anaconda | The O…...

【玩转全栈】----YOLO8训练自己的模型并应用

继上篇&#xff1a; 【玩转全栈】---基于YOLO8的图片、视频目标检测-CSDN博客 相信大家已经可以训练一些图片和视频了&#xff0c;接下来我将为大家介绍如何训练自己的特定模型&#xff0c;并用其进行检测 目录 准备数据 图片数据 标识数据 配置文件 运行 测试训练结果 存在的问…...

计算机视觉算法实战——无人机检测

✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连✨ ​ ​ 1. 引言✨✨ 随着无人机技术的快速发展&#xff0c;无人机在农业、物流、监控等领域的应用越来越广泛。然而&#xff0c;无人机的滥用也带…...

css粘性定位超出指定宽度失效问题

展示效果 解决办法&#xff1a;外层容器添加display:grid即可 完整代码 <template><div class"box"><div class"line" v-for"items in 10"><div class"item" v-for"item in 8">drgg</div>&…...

⽤vector数组实现树的存储(孩⼦表示法)c++

在我们遇到的算法题中&#xff0c; ⼀般给出的树结构都是有编号的&#xff0c;这样会简化我们之后存储树的操作 &#xff0c;⼀般提供两个信息&#xff1b; 结点的个数 n;n-1条x结点与y结点相连的边 题⽬描述: ⼀共9个结点셈 1号结点为根节点&#xff0c;接下来8⾏&#xff…...

高级java每日一道面试题-2025年01月23日-数据库篇-主键与索引有什么区别 ?

如果有遗漏,评论区告诉我进行补充 面试官: 主键与索引有什么区别 ? 我回答: 一、主键&#xff08;Primary Key&#xff09; 1. 定义 主键是关系型数据库中的一条记录中的某个属性组&#xff08;可以是一个字段或多个字段的组合&#xff09;&#xff0c;用于唯一标识一条记…...

spring aop 中 返回值

使用环绕切面 Around(value "requsetInterceptor()")public Object logExectionTime(ProceedingJoinPoint joinPoint) throws Throwable {logger.info("-------logExectionTime--------");if(isRun){Object proceed joinPoint.proceed(); // 执行目标方…...

总结7。。

二叉树的遍历是指按某条搜索路径访问树中的每个结点&#xff0c;使得每个结点均被访问一次&#xff0c;而且仅能访问一次&#xff08;说明不可二次访问&#xff0c;一遍而过&#xff09;。遍历一颗二叉树便要决定对根结点N、左子树L和右子树的访问顺序。 二叉树常的的遍历方法有…...

9.中断系统、EXTI外部中断

中断系统原理 中断 中断系统是管理和执行中断的逻辑结构&#xff0c;外部中断是众多能产生中断的外设之一&#xff0c;所以本节我们就借助外部中断来学习一下中断系统。在以后学习其它外设的时候&#xff0c;也是会经常和中断打交道的。 中断&#xff1a;在主程序运行过程中…...