语言模型(序列模型)

终于快要毕业了,乘着还在还在研究室,把最后一章sequence模型也学完吧。

Sequence Model

  • 一:基础知识
    • 1:符号的定义
    • 2:词典(Vocabulary) 与编码(Encoding)
  • 二:RNN(Recurrent Neural Networks) 循环神经网络
    • 1:模型架构
    • 2:公式
    • 3:不同类型的RNN模型架构
  • 三:Language Model(LM) 语言模型
    • 1:模型架构
    • 2:概率公式
    • 如何进行文本生成?
    • 如何像ChatGPT一样对话呢?
    • ChatGPT也是依赖“问题-答案对”的样本训练吗?
  • 四:Sampling Novel Sequences 采样新序列
  • 五:Vanishing Gradient (梯度消失) & (Exploding Gradient 梯度爆炸)
  • 六:Gated Recurrent Unit(GRU) : 门控循环单元. 一种改进梯度消失的方法。
    • 1:基本模型架构
    • 2:基本GRU公式
    • 3:Full GRU公式
  • 七:Long Short-Term Memory(LSTM) : 长短期记忆
    • 1:模型架构
    • 2:公式

一:基础知识

1:符号的定义

X X X: 表示是一组输入的序列,也就是一段话,类似:

  • X = X= X= “Cats average 15 hours of sleep a day.”
  • 如果任务需要处理变长序列,则会用 <EOS> 标记序列结束
    X = X= X= “Cats average 15 hours of sleep a day. <EOS>

Y Y Y: 标签序列

T : T: T 时间序列的总长度,也就是总时间步数

  • 一般用到的是很多个 t t t 来表示某一个时刻。 x < 1 > x^{<1>} x<1> x < t > x^{<t>} x<t>
  • 在词类的任务中 (word-level classification) x < 1 > = x^{<1>}= x<1>=“Cast”、 x < 2 > = x^{<2>}= x<2>=“average”…
  • 在字母的任务中(character-level processing) x < 1 > = x^{<1>}= x<1>=“C”、 x < 2 > = x^{<2>}= x<2>=“a”…

除此之外,仍然用 i i i 表示每一个单独的样本

x ( i ) < t > : x^{(i)<t>}: x(i)<t>: i i i 个样本的第 t t t 个词.

T x ( i ) T_x^{(i)} Tx(i): 第 i i i 个序列的长度.

2:词典(Vocabulary) 与编码(Encoding)

词典是一个映射关系,将数据中的每个唯一单词或字符分配一个唯一的索引。
One-hot 编码将每个类别或字符表示为一个长度为词典长度的二进制向量。

如果在输入的序列 X X X中遇到一个词 x < 1 > x^{<1>} x<1>并且该词存在于一个词典 V={‘a’,‘ab’,‘abc’…‘zulu’}中,

使用One-hot对 ‘a’ 进行编码,则是[1,0,0,…,0]. 对 ‘zulu’ 进行编码则是[0,0,0,…,1].

如果一个单词、字符或子词不在词典中,通常会将其标记为 unknown word(未知词,简称 UNK)

并使用特殊符号 <UNK> 来表示。

二:RNN(Recurrent Neural Networks) 循环神经网络

1:模型架构

在这里插入图片描述
其中,权重矩阵 W a x W_{ax} Wax W a a W_{aa} Waa W y a W_{ya} Wya 的命名顺序是 输出-输入

为什么?

因为矩阵乘法的维度规则就是 矩阵A(输出维度\隐藏维度,输入维度) × 矩阵B(输出维度\隐藏维度,输入维度)

2:公式

a < t > = g ( w a a a < t − 1 > + w a x x < t > + b a ) a^{<t>}=g(w_{aa}a^{<t-1>}+w_{ax}x^{<t>}+ba) a<t>=g(waaa<t1>+waxx<t>+ba)
其中 w a a w_{aa} waa w a x w_{ax} wax可以堆积为 [ w a a : w a x ] = w a [w_{aa}:w_{ax}]=w_{a} [waa:wax]=wa

a < t > = g ( w a [ a < t − 1 > , x < t > ] + b a ) a^{<t>}=g(w_{a}[a^{<t-1>}, x^{<t>}]+ba) a<t>=g(wa[a<t1>,x<t>]+ba)
y ^ < t > = g ( w y a a < t > + b y ) \hat y^{<t>}=g(w_{ya}a^{<t>}+by) y^<t>=g(wyaa<t>+by)

损失函数
l < t > ( y ^ < t > , y < t > ) = − y < t > log ⁡ y ^ < t > − ( 1 − y < t > ) log ⁡ ( 1 − y ^ < t > ) l^{<t>}(\hat y^{<t>}, y^{<t>}) = - y^{<t>}\log \hat y^{<t>}-(1-y^{<t>})\log(1 - \hat y^{<t>}) l<t>(y^<t>,y<t>)=y<t>logy^<t>(1y<t>)log(1y^<t>)

L = ∑ t = 1 T = l < t > ( y ^ < t > , y < t > ) L = \sum_{t=1}^{T}=l^{<t>}(\hat y^{<t>}, y^{<t>}) L=t=1T=l<t>(y^<t>,y<t>)

3:不同类型的RNN模型架构

在这里插入图片描述

三:Language Model(LM) 语言模型

LM的核心目标就是根据已有的上下文(文本序列)来预测接下来的词语或句子。

  • 输入:一个文本序列(或上下文)。
  • 学习:隐藏状态 a t a^t at或者 h t h^t ht
  • 输出:预测下一个词的概率分布,或评估整个序列的概率。
  • 计算机损失:其中传统的标签 y y y就是序列训练样本中的单词。

1:模型架构

通过上一个词预测下一个词出现的概率
在这里插入图片描述

2:概率公式

P ( y ⟨ 1 ⟩ , y ⟨ 2 ⟩ , y ⟨ 3 ⟩ ) = P ( y ⟨ 1 ⟩ ) ⋅ P ( y ⟨ 2 ⟩ ∣ y ⟨ 1 ⟩ ) ⋅ P ( y ⟨ 3 ⟩ ∣ y ⟨ 1 ⟩ , y ⟨ 2 ⟩ ) P(y^{\langle 1 \rangle}, y^{\langle 2 \rangle}, y^{\langle 3 \rangle}) = P(y^{\langle 1 \rangle}) \cdot P(y^{\langle 2 \rangle} \mid y^{\langle 1 \rangle}) \cdot P(y^{\langle 3 \rangle} \mid y^{\langle 1 \rangle}, y^{\langle 2 \rangle}) P(y1,y2,y3)=P(y1)P(y2y1)P(y3y1,y2)
P ( y ⟨ 1 ⟩ , y ⟨ 2 ⟩ , … , y ⟨ T ⟩ ) = ∏ t = 1 T P ( y ⟨ t ⟩ ∣ y ⟨ 1 ⟩ , y ⟨ 2 ⟩ , … , y ⟨ t − 1 ⟩ ) P(y^{\langle 1 \rangle}, y^{\langle 2 \rangle}, \dots, y^{\langle T \rangle}) = \prod_{t=1}^{T} P(y^{\langle t \rangle} \mid y^{\langle 1 \rangle}, y^{\langle 2 \rangle}, \dots, y^{\langle t-1 \rangle}) P(y1,y2,,yT)=t=1TP(yty1,y2,,yt1)

LM 的训练目标是通过大量的序列(例如句子)数据,学习这些序列的概率分布规律,从而捕捉语言中的结构和模式。

  • (1) 文本生成
  • (2) 机器翻译
  • (3) 语音识别
  • (4) 拼写纠正

如何进行文本生成?

文本生成的本质是让计算机学会“接着写”。具体来说:

  • 你给它一个“开头”或“提示”。
  • 它根据这个提示,想象后面应该接什么,像人类完成句子一样。
  • 生成的内容要尽量看起来像“人写的”,语法正确、逻辑连贯。

模型如何完成?

  • 它会看你给的开头(上下文)。
  • 然后基于它学到的“写作经验”(训练数据),去推测下一个可能的内容并且输出。
  • 它不会随便乱写,而是会挑选最符合上下文的词语或句子。
  • 它不是真的理解,而是根据学习到的经验,找到可能性最高的下一个词,也就是去“猜”

如何像ChatGPT一样对话呢?

  • 回答也是一种“接着写”,只是“接着写”这个过程被赋予了更复杂的规则和目标,从简单的续写变成了更有针对性的生成。
  • 训练对话模型通常会使用“问题-答案对”作为训练样本 回答问题时,模型依然是在接着写,只不过上下文(提示)包含了一个明确的问题
  • “问题-答案对”模式,生成最可能符合这个上下文的内容。

在这里插入图片描述

ChatGPT也是依赖“问题-答案对”的样本训练吗?

并不完全是,ChatGPT 的训练过程分为两部分:预训练(Pre-training)和微调(Fine-tuning)

预训练:使用了大量的通用文本数据学习内容的分布,包括互联网文章、书籍、百科、代码片段等。这些数据并不是严格的“问题-答案对”,而是通用文本序列。

微调阶段:使用包含专门的“问题-答案对”,尤其是与对话相关的数据。

四:Sampling Novel Sequences 采样新序列

这个步骤的的主要目的是了解模型学到了什么,也就是希望训练好的模型输出一个句子的方法。

在这里插入图片描述

五:Vanishing Gradient (梯度消失) & (Exploding Gradient 梯度爆炸)

  1. 梯度消失(Vanishing Gradient)
    梯度消失指的是在反向传播过程中,模型的梯度在层层传递时逐渐变小,最终接近于零。这会导致深层网络的前面几层权重几乎不更新,使模型难以有效学习深层特征。

  2. 梯度爆炸(Exploding Gradient)
    梯度爆炸指的是在反向传播过程中,梯度在层层传递时不断增大,导致梯度值非常大,从而导致模型参数更新过大,甚至数值溢出出现NaN,模型无法正常训练。

解决方法:

梯度消失

  • 改进激活函数:使用 ReLU、Leaky ReLU 或 Swish 等不会饱和的激活函数。
  • 归一化技术:如 BatchNormalization,可以在每层网络中规范化激活值,防止数值过小。
  • 权重初始化:使用合适的初始化方法(如 Xavier 或 He初始化),可以让激活值保持稳定范围。
  • 残差网络(ResNet):引入残差连接,允许梯度直接跳过多个网络层。

梯度爆炸

  • 梯度裁剪(Gradient Clipping):对梯度的大小设置上限,防止其值过大。
  • 权重正则化:通过 L2 正则化限制权重值的大小。
  • 权重初始化:合理初始化权重,避免初始值太大。

六:Gated Recurrent Unit(GRU) : 门控循环单元. 一种改进梯度消失的方法。

1:基本模型架构

普通的RNN单元
在这里插入图片描述

GRU的单元
在这里插入图片描述

相较于普通的RNN单元,GRU引入了一个新的组件,更新门 Γ u Γ_u Γu.

这是一个通过学习而动态调整权重的组件,用于判断当前输入新信息对整体序列状态的重要性。

2:基本GRU公式

计算当前新输入 x < t > x^{<t>} x<t>与记录的历史状态的 c < t − 1 > c^{<t-1>} c<t1>的隐藏状态:预备
c ~ < t > = tanh ⁡ ( W c [ c < t − 1 > , x < t > ] + b c ) \tilde c^{<t>}= \tanh (Wc[c^{<t-1>}, x^{<t>}]+bc) c~<t>=tanh(Wc[c<t1>,x<t>]+bc)

更新门:计算当前原始新输入对整体序列状态的重要性。
决定新输入 x < t > x^{<t>} x<t>与记录的历史状态的 c < t − 1 > c^{<t-1>} c<t1>怎么融合

Γ u = σ ( W u [ c < t − 1 > , x < t > ] + b u ) Γ_u= σ(Wu[c^{<t-1>}, x^{<t>}]+bu) Γu=σ(Wu[c<t1>,x<t>]+bu)

更新隐藏状态:将当前新值的影响设为 Γ u Γ_u Γu倍,旧状态的影响设为 1 − Γ u 1-Γ_u 1Γu倍,维度相同,逐元素相乘。
Γ u Γ_u Γu为0时,不更新,保留旧的状态。
c < t > = Γ u ∗ c ~ < t > + ( 1 − Γ u ) ∗ c < t − 1 > c^{<t>}=Γ_u* \tilde c^{<t>}+ (1-Γ_u)*c^{<t-1>} c<t>=Γuc~<t>+(1Γu)c<t1>

3:Full GRU公式

Γ u Γ_u Γu的作用是控制当前输入的新信息与历史状态 的融合比例。换句话说,它决定 “当前输入的重要性有多大”。

然而,在某些场景中,历史信息可能有一部分是无关紧要的,或者对当前任务是“干扰信息”。单靠 Γ u Γ_u Γu无法筛选出历史状态的哪些部分是重要的、哪些应该被忽略。

所以,我们需要一个控制历史信息的门:重置门 Γ r Γ_r Γr

重置门 Γ r Γ_r Γr 的主要作用是允许模型选择性地“忘记”部分历史状态,以便更好地捕获当前输入的重要特征。
Γ r = σ ( W r [ c < t − 1 > , x < t > ] + b r ) Γ_r= σ(Wr[c^{<t-1>}, x^{<t>}]+br) Γr=σ(Wr[c<t1>,x<t>]+br)

候选门:增加了重置门的候选值计算:
c ~ < t > = tanh ⁡ ( W c [ Γ r ∗ c < t − 1 > , x < t > ] + b c ) \tilde c^{<t>}= \tanh (Wc[Γ_r * c^{<t-1>}, x^{<t>}]+bc) c~<t>=tanh(Wc[Γrc<t1>,x<t>]+bc)

更新门:计算当前原始新输入对整体序列状态的重要性。
决定新输入 x < t > x^{<t>} x<t>与记录的历史状态的 c < t − 1 > c^{<t-1>} c<t1>怎么融合

Γ u = σ ( W u [ c < t − 1 > , x < t > ] + b u ) Γ_u= σ(Wu[c^{<t-1>}, x^{<t>}]+bu) Γu=σ(Wu[c<t1>,x<t>]+bu)

更新:

c < t > = Γ u ∗ c ~ < t > + ( 1 − Γ u ) ∗ c < t − 1 > c^{<t>}=Γ_u* \tilde c^{<t>}+ (1-Γ_u)*c^{<t-1>} c<t>=Γuc~<t>+(1Γu)c<t1>

a < t > = c < t > a^{<t>}=c^{<t>} a<t>=c<t>

七:Long Short-Term Memory(LSTM) : 长短期记忆

1:模型架构

在这里插入图片描述

2:公式

注意!!!!!!

  • x < t > x^{<t>} x<t>(当前输入)才是关键的核心信息
  • a < t − 1 > a^{<t-1>} a<t1>(上一时间步的隐藏状态)的作用是为了提供更多的上下文信息,帮助模型更准确地理解和处理当前输入。
  • a < t − 1 > a^{<t-1>} a<t1>以帮助遗忘门、输入门和候选状态的计算更灵活

公式:

候选门:计算当前输入 x < t > x^{<t>} x<t>要保存到长期记忆细胞 c t c^{t} ct中的值作为候选:

c ~ < t > = tanh ⁡ ( W c [ a < t − 1 > , x < t > ] + b c ) \tilde c^{<t>}= \tanh (Wc[a^{<t-1>}, x^{<t>}]+bc) c~<t>=tanh(Wc[a<t1>,x<t>]+bc)

遗忘门 Γ f Γ_f Γf:考虑当前输入 x < t > x^{<t>} x<t>上一时间步的隐藏状态 a < t − 1 > a^{<t-1>} a<t1>, 输出是一个逐元素向量,值范围在[0,1]
将来要使用这个范围在[0,1]的逐元素向量长期记忆细胞 c t − 1 c^{t-1} ct1相乘,来决定记忆是否保留。

Γ f = σ ( W f [ a < t − 1 > , x < t > ] + b f ) Γ_f= σ(W_f[a^{<t-1>}, x^{<t>}]+bf) Γf=σ(Wf[a<t1>,x<t>]+bf)

输入门 Γ u Γ_u Γu:考虑当前输入 x < t > x^{<t>} x<t>上一时间步的隐藏状态 a < t − 1 > a^{<t-1>} a<t1>, 输出是一个逐元素向量,值范围在[0,1]
将来要使用这个范围在[0,1]的逐元素向量候选值 c ~ < t > \tilde c^{<t>} c~<t>相乘,用于控制候选值中哪些部分需要加入到长期记忆细胞 c < t > c^{<t>} c<t>
Γ u = σ ( W u [ a < t − 1 > , x < t > ] + b u ) Γ_u= σ(W_u[a^{<t-1>}, x^{<t>}]+bu) Γu=σ(Wu[a<t1>,x<t>]+bu)

输出门 Γ o Γ_o Γo:考虑当前输入 x < t > x^{<t>} x<t>上一时间步的隐藏状态 a < t − 1 > a^{<t-1>} a<t1>, 输出是一个逐元素向量,值范围在[0,1]
将来要使用这个范围在[0,1]的逐元素向量长期记忆状态的非线性激活值 t a n h ( c < t > ) tanh(c^{<t>}) tanh(c<t>) 相乘,得到当前隐藏状态 a < t > a^{<t>} a<t>
Γ o = σ ( W o [ a < t − 1 > , x < t > ] + b o ) Γ_o= σ(W_o[a^{<t-1>}, x^{<t>}]+bo) Γo=σ(Wo[a<t1>,x<t>]+bo)

更新门:
c < t > = Γ u ∗ c ~ < t > + ( Γ f ) ∗ c < t − 1 > c^{<t>}= Γ_u* \tilde c^{<t>}+(Γ_f)*c^{<t-1>} c<t>=Γuc~<t>+(Γf)c<t1>
a < t > = Γ o ∗ t a n h ( c < t > ) a^{<t>}= Γ_o*tanh(c^{<t>}) a<t>=Γotanh(c<t>)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/63926.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【自然语言处理与大模型】使用llama.cpp将HF格式大模型转换为GGUF格式

llama.cpp的主要目标是在本地和云端的各种硬件上以最小的设置和最先进的性能实现LLM推理。是一个专为大型语言模型&#xff08;LLM&#xff09;设计的高性能推理框架&#xff0c;完全使用C和C编写&#xff0c;没有外部依赖&#xff0c;这使得它可以很容易地被移植到不同的操作系…

npm : 无法加载文件 D:\nodejs\npm.ps1

问题描述 npm run serve 启动一个Vue项目&#xff0c;报错如下&#xff1a; npm : 无法加载文件 D:\nodejs\npm.ps1&#xff0c;因为在此系统上禁止运行脚本。有关详细信息&#xff0c;请参阅 https:/go.microsoft.com/fwlink/? LinkID135170 中的 about_Execution_Policies。…

线程池+线程安全+常见锁

目录 一、线程池1、日志与策略模式2、线程池设计3、线程安全的单例模式&#xff08;1&#xff09;单例模式的特点&#xff08;2&#xff09;饿汉实现方式和懒汉实现方式&#xff08;i&#xff09;饿汉方式实现单例模式&#xff08;ii&#xff09;懒汉方式实现单例模式&#xff…

数据结构6.4——归并排序

基本思想&#xff1a; 归并排序是建立在归并操作上的一种有效的排序算法&#xff0c;该算法是采用分治法的一个非常典型的应用。将已有的子序列合并&#xff0c;得到完全有序的序列&#xff1b;即先使每个子序列有序&#xff0c;再使子序列段间有序。若将两个有序表合并成一个…

revit转gltf,revit转3dtiles,如何将Revit模型转为3DTiles格式并在Cesiumjs中高效可视化

Revit模型导出gltf、glb与3dtiles有多种方式&#xff0c;但一般的商业工具收费普遍较高&#xff1a;Cesiumlab导出3dTile格式数据&#xff0c;Cesiumlab暂时可试用3天&#xff0c;会员版收费每年800&#xff1b;BimAngleEngine导出3dTile格式数据BimAngleEngine暂时可试用30天&…

可视化建模与UML《部署图实验报告》

一、实验目的&#xff1a; 1、熟悉部署图的基本功能和使用方法。 2、掌握使用建模工具软件绘制部署图的方法 二、实验环境&#xff1a; window11 EA15 三、实验内容&#xff1a; 根据以下的描述&#xff0c;绘制部署图。 网上选课系统在服务器端使用了两台主机&#xff0c;一…

在CentOS中安装和卸载mysql

在CentOS7中安装和卸载mysql 卸载mysql1、查看是否安装过mysql2、查看mysql服务状态3、关闭mysql服务4、卸载mysql相关的rpm程序5、删除mysql相关的文件6、删除mysql的配置文件my.cnf 安装mysql1、下载mysql相关的rpm程序2、检查/tmp临时目录权限3、安装mysql前的依赖检查3、安…

使用ERA5数据绘制风向玫瑰图的简易流程

使用ERA5数据绘制风向玫瑰图的简易流程 今天需要做一个2017年-2023年的平均风向的统计,做一个风向玫瑰图&#xff0c;想到的还是高分辨率的ERA5land的数据&#xff08;0.1分辨率&#xff0c;逐小时分辨率&#xff0c;1950年至今&#xff09;。 风向&#xff0c;我分为了16个&…

软考:工作后再考的性价比分析

引言 在当今的就业市场中&#xff0c;软考&#xff08;软件设计师、系统分析师等资格考试&#xff09;是否值得在校学生花费时间和精力去准备&#xff1f;本文将从多个角度深入分析软考在不同阶段的性价比&#xff0c;帮助大家做出明智的选择。 一、软考的价值与局限性 1.1 …

Qt绘制仪表————附带详细说明和代码示例

文章目录 1 效果2 原理3 编码实践3.1 创建仪表属性类3.2 设置类属性3.3 绘制图案3.3.1 设置反走样3.3.2 绘制背景3.3.3 重新定义坐标原点3.3.4 绘制圆环3.3.5 绘制刻度线3.3.6 绘制刻度线上的描述值3.3.7 绘制指针3.3.8 绘制指针数值和单位3.3.9 控制指针变化 扩展福利参考 1 效…

vue 纯前端预览pdf,纯前端实现pdf加水印下载文件也带水印,防止pdf下载

效果图 1.pdf预览 原理:主要是利用pdfh5这个插件来完成的 使用方法: 1.页面需要有一个容器例子: 2.下载pdfh5插件 npm install pdfh5 (注意:webpack5之后不会下载polyfill 需要手动下载 所以引入pdfh5的时候会报错) 解决方案:下载 node-polyfill-webpack-plugin npm i…

重生之我在异世界学编程之C语言:深入文件操作篇(上)

大家好&#xff0c;这里是小编的博客频道 小编的博客&#xff1a;就爱学编程 很高兴在CSDN这个大家庭与大家相识&#xff0c;希望能在这里与大家共同进步&#xff0c;共同收获更好的自己&#xff01;&#xff01;&#xff01; 函数递归与迭代 引言正文一、为什么要用文件二、文…

linux-16 关于shell(十五)date,clock,hwclock,man,时间管理,命令帮助

想显示一下当前系统上的时间该怎么显示&#xff1f;有一个命令叫做date&#xff0c;来看date命令&#xff0c;如下图&#xff0c; 第一个星期几对吧&#xff1f;然后是月日小时分钟秒&#xff0c;最后一个是年对吧&#xff1f;CST指的是它的时间格式&#xff0c;我这个可以先姑…

严蔚敏老师,一路走好

Hey&#xff0c;小伙伴们&#xff0c;今天我要和大家分享一个令人心痛的消息&#xff0c;但也是我们向一位伟大的学者致敬的时刻。&#xff1a;清华大学计算机教授、《数据结构》编著者严蔚敏 去世&#xff0c;享年 86 岁。她的离去&#xff0c;让无数学子和同行感到深深的哀痛…

Input Action (输入动作) 在虚幻引擎中常用的值类型

1. Digital (bool) 含义: Digital 类型代表一个离散的、二元的输入状态,它只有两种可能的值:true(按下,激活)或 false(未按下,未激活)。 用途: 最常用于表示按键或按钮的按下状态。 适合于开关类型的操作,比如: 跳跃(按键按下时跳跃,松开时不跳跃) 奔跑/行走切换 …

PostgreSQL的学习心得和知识总结(一百六十四)|深入理解PostgreSQL数据库之在 libpq 中支持负载平衡

目录结构 注&#xff1a;提前言明 本文借鉴了以下博主、书籍或网站的内容&#xff0c;其列表如下&#xff1a; 1、参考书籍&#xff1a;《PostgreSQL数据库内核分析》 2、参考书籍&#xff1a;《数据库事务处理的艺术&#xff1a;事务管理与并发控制》 3、PostgreSQL数据库仓库…

智能机器人技术突破,开启移动领域无限可能

移动机器人已经成为现代社会不可或缺的一部分&#xff0c;在各个领域发挥着越来越重要的作用。在这个过程中&#xff0c;富唯智能机器人以其卓越的技术突破&#xff0c;引领着移动机器人领域的发展潮流。 一、技术突破的体现 1.深度学习与计算机视觉&#xff1a;富唯智能机器人…

汽车车牌识别数据集,支持YOLO,COCO,VOC格式的标注,8493张图片,可识别多种环境下的车牌

汽车车牌识别数据集&#xff0c;支持YOLO&#xff0c;COCO&#xff0c;VOC格式的标注&#xff0c;8493张图片&#xff0c;可识别多种环境下的车牌 数据集分割 训练组82&#xff05; 6994图片 有效集12&#xff05; 999图片 测试集6% 500图片 预处理 自动…

奇奇怪怪的错误-Tag和space不兼容

报错信息如下&#xff1a; TabError: inconsistent use of tabs and spaces in indentation make: *** [Makefile:24: train] Error 1不能按Tab&#xff0c;要老老实实按space 不过可以在编辑器里面改&#xff0c;把它们调整成一致的&#xff1b;

vscode借助插件调试OpenFoam的正确的.vscode配置文件

正确的备份文件位置&#xff1a; /home/jie/桌面/理解openfoam/正确的调试爆轰单进程案例/mydebugblastFoam 调试爆轰案例流体 并且工作区和用户区都是openfoam-7版本 问题&#xff1a;F5以debug模式启动后不停在断点 解决方法&#xff1a; 这里备份一下.vsode正确的配置&…