大模型论文:Language Models are Unsupervised Multitask Learners(GPT2)
大模型论文:Language Models are Unsupervised Multitask Learners(GPT2)
文章地址:https://storage.prod.researchhub.com/uploads/papers/2020/06/01/language-models.pdf
摘要
自然语言处理任务,例如问答、机器翻译、阅读理解和摘要,通常是通过对特定任务的数据集进行监督学习来实现的。我们展示了,语言模型在没有任何显式监督的情况下,仅通过训练一个名为 WebText 的包含数百万网页的新数据集,就开始学会这些任务。
当模型以“文档 + 问题”的形式进行输入时,生成的回答在 CoQA 数据集上达到了 55 的 F1 分数 —— 这一成绩相当于或超过了四个基线系统中的三个的表现,而无需使用 127,000 多个训练样本。
语言模型的容量对于实现零样本任务迁移(zero-shot task transfer)至关重要,增加模型容量会以对数线性方式提升各种任务的表现。我们最大的模型 GPT-2 是一个具有 15 亿参数的 Transformer,它在 8 个语言建模数据集中的 7 个上,在零样本设置下达到了最先进的表现,但仍未完全拟合 WebText 数据。
该模型生成的样本文本体现了这些改进,并且内容连贯、段落清晰。这些发现表明,构建能从自然演示中学习完成任务的语言处理系统,是一个非常有前景的方向。
模型背景
1、背景和挑战:
当前的机器学习系统通过大量数据、强大的模型和监督学习,能够高效地完成某些特定任务。然而,这些系统在面对数据分布的变化时表现出不稳定性,难以处理来自不同数据源或新的任务类型的输入。这些系统通常只能在特定任务中表现良好,缺乏跨任务的泛化能力。
2、现有方法的限制:
为了训练这些模型,通常的做法是为每个任务手动收集和标注大量数据,然后训练模型进行任务。虽然这种方法能有效推动“狭义专家”系统的发展,但仍存在许多问题,特别是对于复杂且多样化的任务,现有方法的表现不尽如人意。例如,标题生成模型、图像分类系统和阅读理解系统在面对多样化的输入时,往往难以维持稳定和高效的表现。
3、从单一任务到多任务学习的转变:
为了克服这种局限性,研究人员开始探索多任务学习的方向。多任务学习是通过同时训练多个任务来提高模型的泛化能力。然而,现有的多任务学习方法仍处于起步阶段,通常依赖大量的训练对,而这对于构建广泛应用的系统而言仍然困难重重。
4、预训练与迁移学习的结合:
在自然语言处理领域,结合预训练和监督微调的方法已经取得了显著成果。通过在一个大的数据集上进行预训练,然后在具体任务上进行微调,模型能够迁移并应用到新的任务中。最近的研究表明,使用自注意力机制的模型(如Transformer)已经能够取得更高效的迁移效果,无需依赖任务特定的架构。
5、零样本学习的潜力:
本文的一个重要创新是展示了语言模型能够在“零样本”设置下执行多种任务,无需任何额外的监督学习或架构修改。这意味着,通过训练一个通用的语言模型,可以直接在新的任务中获得竞争力的表现,甚至在某些任务上达到最先进的水平。
方法介绍
-
一切的基础在于语言建模。这种建模方式视语言为符号序列,目标是学习这些符号序列的联合分布,而这种联合概率可以分解为逐个预测下一个词的条件概率。Transformer 等架构的出现极大提升了这种预测能力
p ( x ) = ∏ i = 1 n p ( s i ∣ s 1 , … , s i − 1 ) p(x) = \prod_{i=1}^{n} p(s_i \mid s_1, \dots, s_{i-1}) p(x)=i=1∏np(si∣s1,…,si−1) -
传统任务建模是“给定输入,预测输出”,但为了让模型泛化到多个任务,我们需要“给定输入+任务类型,预测输出”。例如:
- 翻译任务:
(translate to french, english text, french text)
- 阅读理解任务:
(answer the question, document, question, answer)
这将不同任务统一成语言格式的输入输出序列,使得模型通过学习语言结构就能学会任务
- 翻译任务:
-
本质上,语言建模任务本身就可以隐式包含监督目标。如果目标词序列中包含任务和输入信息,模型就可以在没有显式监督标签的前提下学会任务。这是利用语言建模进行任务迁移和泛化的关键突破口,作者得出结论:只要模型足够大(capacity 足够),它将能够被动学习自然语言中的任务模式,从而在没有额外标签的情况下执行多种任务
-
文章的最终目标是验证这种基于语言建模的“无监督多任务学习”是否成立——即能否在 zero-shot 的前提下完成各种任务
训练数据集
-
以往的大多数语言模型训练工作都基于单一领域的文本,比如新闻文章、维基百科或小说书籍。本文的做法则强调构建尽可能大且多样化的数据集,以收集来自尽可能多领域和语境下的自然语言任务示例
-
现有的一些数据集存在问题,比如网页抓取数据 Common Crawl,数据质量问题也非常严重,在研究常识推理任务时大量文档“内容几乎无法理解”
-
本文构建了一个新的网页抓取数据集,强调文档质量。为此,本文仅抓取了经过人工筛选/推荐的网页。人工全面筛选网页代价极高,因此采用了 Reddit 作为起点 —— 抓取所有 Reddit 用户推荐(至少获得 3 karma)的链接。最终的数据集被称为 WebText,包含了这些 4500 万个链接中提取的文本子集。使用 Dragnet和 Newspaper1 两种内容抽取器,从 HTML 页面中提取正文文本。
-
经过去重和启发式清洗后,最终得到约 800 万个文档,共计约 40 GB 文本数据。本文移除了所有维基百科文档,以避免和常见评估任务中的训练数据产生重叠。
-
WebText 训练集中发现的英语到法语和法语到英语翻译的自然发生的演示示例
输入表示
‘’一个通用的语言模型应该能够为任意字符串计算概率(或生成该字符串)‘’
-
当前的大规模语言模型在预处理上通常包括小写转换、分词、词表外(OOV)标记等,这些步骤限制了模型可处理的字符串范围,虽然直接将 Unicode 字符串处理为 UTF-8 字节序列在理论上是优雅的,但目前的字节级语言模型在像 One Billion Word Benchmark 这类大规模数据集上性能不如词级模型。
-
Byte Pair Encoding (BPE) 是一种折中方案,介于字符级与词级之间。它能将频繁的符号序列作为整体词处理,稀有序列则逐字符处理。尽管名字中有“字节”,但主流 BPE 实现实际上是基于 Unicode 码点而非字节。如果要处理所有 Unicode 字符串,这将导致初始词汇表超过 13 万个符号,这远超 BPE 常用的 32,000 到 64,000 的词汇规模。而使用字节级 BPE,初始词汇表只需 256(所有字节)。但如果直接对字节序列应用 BPE,由于其贪心的频率启发式策略,会产生很多变体词,例如:
dog
、dog.
、dog!
、dog?
都会占用不同词位,造成词汇空间浪费。 -
为避免这一点,本文禁止 BPE 在不同字符类别之间合并(如字母与标点),但允许空格作为例外。这种做法大大提高了压缩效率,同时仅带来极小的词碎片问题。这种输入表示方式结合了词级模型的经验优势与字节级模型的通用性。由于该方法能为任意 Unicode 字符串赋予概率,因此我们可以在任何数据集上评估模型,而无需考虑预处理、分词或词汇表差异。
-
字节级模型:字节级模型将文本数据转换为 UTF-8 编码的字节序列(每个字符由 1~4 个字节组成),并直接对这些字节进行建模,模型的输入不是“词”或“字”,而是:
文本:"Hello 你好" 字节序列:[72, 101, 108, 108, 111, 32, 228, 189, 160]
模型结构(Model)
-
本文采用基于 Transformer架构的语言模型。其整体结构大体遵循 OpenAI GPT 模型(GPT1,2018),但进行了如下修改:
- Layer Normalization从原本的子模块输出移至输入端,类似于预激活残差网络。
- 在最后一个 自注意力模块(Self-attention block) 之后加入了一个额外的 LayerNorm。
- 使用了一种改进的初始化方式,以适应深层模型中残差路径上的累积效应。具体地,残差层的初始化权重按 1 N \frac{1}{\sqrt{N}} N1 缩放( N N N 是残差层数)。
- 词汇表扩展为 50,257 个 token。
- 上下文窗口从 512 tokens 扩展到 1024 tokens。
- 训练时使用 更大的 batch size:512。
-
WebText 语言模型在多个 NLP 任务上的零样本表现,随模型规模增长而变化
总结
1. WebText 的创建思路:
传统语言模型训练依赖单一语料,如 Wikipedia,而 WebText 尝试模拟“真实互联网语言环境”,利用 Reddit 的社交推荐机制(3 karma 门槛)实现“半自动高质量筛选”。这是一种近似“人类兴趣驱动”的筛选方法,避免了模型过拟合某些任务或文本类型。
2. 输入表示策略的突破:
- 普通模型受限于词表和预处理方法。
- 字节级模型通用但性能差。
- 他们通过改进的 BPE 变体结合了两者优势:兼顾压缩效率、泛化能力和字符保留完整性,对低资源或多语言任务尤其关键。
3. 架构优化重点:
- 残差连接初始化和 LayerNorm 的调整,提高了模型的稳定性与训练效率。
- 更大词表 + 更长上下文窗口,显著提升理解长文段能力。
- 这些设计让模型能支持更复杂的任务输入,如“问答+文档+答案”等复杂结构。
实验
-
本文训练并测试了四个语言模型(LM),规模呈对数均匀分布。所有模型都基于 WebText 数据集训练,并进行 perplexity 调优模型架构总结如下表所示:
-
最小的模型与原始 GPT 相当,第二小的模型等效于 BERT中的最大模型。最大的模型称为 GPT-2,其参数数量是 GPT 的十倍以上。每个模型的学习率均通过在 WebText 中 5% 的保留集(held-out sample)上手动调整,以获得最佳困惑度(perplexity)。所有模型在 WebText 上仍存在欠拟合,且保留集困惑度随着训练时间增加尚未达到最优
-
下面对常用的几个任务进行实验
困惑度(Perplexity)是语言模型中最常用的评估指标之一,用来衡量模型对语言序列预测的“困惑程度”或“不确定性”。它本质上反映的是模型在预测下一个词(或字符、字节)时的平均不确定性。数值越低,说明模型越“自信”、越擅长预测;数值越高,说明模型越“困惑”。
1、 语言建模(Language Modeling)
- 首先研究 WebText 语言模型在其主要训练任务语言建模上的表现。由于模型在字节级上操作,不依赖有损预处理或分词,可以在任意语言建模基准上直接评估它。评估方式是:计算一个数据集在 WebText LM 下的对数概率,并除以该数据集的单位数量(如字符、字节或单词)
- 由于许多数据集与 WebText 存在风格差异(如使用标准化文本、分词、标点断开、缩写、句子顺序打乱等),模型在这些测试集上通常会面临分布外预测(out-of-distribution)挑战。特别地,符号
<UNK>
在 WebText 中极其稀有(在 400 亿字节中仅出现 26 次),因此我们使用可逆 de-tokenizer 来移除这些预处理残留,以实现简单的领域适应
- WebText 模型在多个数据集和任务间迁移能力强。在 zero-shot 设置下,8 个任务中有 7 个任务上达成当前最优。在 One Billion Word Benchmark上,模型仍显著落后,主要是因为该数据集较大且预处理极端(如句子级打乱),使得语言的长距离结构信息被破坏。
2、儿童图书测试(Children’s Book Test, CBT)
-
CBT用于评估语言模型在不同词类别(如命名实体、名词、动词、介词)上的表现。它是一种自动化 cloze 测试,任务是从 10 个候选项中选择正确的被遮盖词。
-
本文复现了原始论文中的方法,对每个选项和句子剩余部分联合计算概率,并选出概率最高者。如下图所示,随着模型规模增加,准确率稳定上升,接近人类表现。
-
经过分析发现测试集之一《丛林奇谈》与 WebText 有重叠,因此报告无重叠的验证集结果。GPT-2 达到了新的 SOTA 水平:
- 名词类准确率:93.3%
- 命名实体准确率:89.1%
同时,本文使用 de-tokenizer 移除了 CBT 中的 PTB 风格分词伪影,以提升质量
3、LAMBADA
-
LAMBADA 数据集用于测试系统建模文本中长距离依赖的能力。任务是预测句子的最后一个词,而这些句子通常需要至少 50 个词的上下文信息,才能被人类成功预测。GPT-2 将该任务上的困惑度(perplexity)从 99.8降至 8.6,准确率从 19%提升至 52.66%。但错误分析显示,GPT-2 预测的大多数词虽然是语法上合理的延续词,却不是句子的真实结尾词。这表明 GPT-2 没有意识到“所预测词必须是句末词”这一隐含规则。通过添加停用词过滤器,准确率可进一步提升至 63.24%,比之前最优方法还提高了 4%。
-
要点总结:
-
LAMBADA 是一个理解句子整体结构的重要 benchmark。
-
GPT-2 在语言建模指标上(如困惑度)取得了突破性进展,但在“理解任务规则”方面仍有缺陷。
-
加入额外约束(如“必须是句末词”或过滤停用词)有助于提升性能。
-
4、Winograd Schema Challenge
- Winograd Schema 挑战评估系统进行常识推理和歧义消解的能力。任务是基于语境判断指代词所指的实体。Trinh(2018)证明了语言模型能通过概率预测实现良好的性能。本文遵循他们的方法,在下图中用全分与部分分两种方式可视化性能
- GPT-2 能处理歧义性语言,展现出一定的常识理解能力,但由于样本数量较少,结论需要谨慎解读
5、阅读理解(Reading Comprehension)
- CoQA是一个对话式问答数据集,来自 7 个不同领域,包括自然语言对话中的问题和答案。该任务考察模型是否能理解上下文并回答上下文相关的问题(如 “Why?”)。
- GPT-2 在未进行任何监督训练的情况下,直接使用贪心解码,在开发集上取得 55 F1 分数,与 4 个基准系统中的 3 个持平或超越(这些系统使用了 127,000+ 手工标注数据进行训练)。尽管 GPT-2 的表现令人惊艳,但其答案中仍存在启发式错误,如将回答限制为“文中提到的名字”来回应 who 类问题。即仍存在“检索式回答”偏好,说明它更擅长识别已有信息,而非深度推理
6、文本摘要(Summarization)
-
本文在 CNN/Daily Mail 数据集上测试 GPT-2 的摘要能力。通过在文章后添加提示 “TL;DR:” 并用 Top-k 随机采样(k=2)生成 100 个 token,总结为前三个句子。
-
生成的摘要结构合理,但存在细节混乱或偏向文章结尾的问题。例如将事故车数量或标志位置搞错。ROUGE-1/2/L 分数略优于“随机选三句”方法,但低于经典摘要系统。若移除 “TL;DR:” 提示,则分数下降 6.4,说明 GPT-2 确实能“理解任务提示”。
-
这说明GPT-2 具有一定抽象性与结构化摘要能力,添加任务提示(prompt)可显著提升表现,说明模型学会了**“提示控制行为”**
7、翻译(Translation)
-
我们测试 GPT-2 是否学会了翻译任务。通过提供训练格式为:
english sentence = french sentence
并以类似 prompt 形式开始预测,GPT-2 可在 WMT-14 英法测试集上取得:
- 英→法:5 BLEU(略低于简单词典替换方法)
- 法→英:11.5 BLEU(显著优于多种无监督基线)
但仍远低于当前最优系统(33.5 BLEU,Artetxe et al., 2019)。这令人惊讶,因为 WebText 明确过滤了非英语网页。
经检测,仅有 10MB 法语数据进入 WebText,比常规法语训练语料小 500 倍。
-
总结:
- GPT-2 展现出初步翻译能力,尽管训练时几乎没见过目标语言。
- 借助 prompt,模型能“理解”任务需求。
- 强大的英文语言建模能力可以部分迁移到翻译任务。
8、问答(Question Answering)
-
为了评估 GPT-2 能否“记住”或“检索”知识,本文使用 Natural Questions数据集作为测试。GPT-2 仅正确回答 4.1% 的问题,但这已比简单基线(如返回最多见回答)高出 5.3 倍。最小模型准确率甚至不超过 1%。在 GPT-2 最有信心的前 1% 问题中,准确率达 63.1%,说明其置信度校准良好。但整体表现(4.1%)仍远不及开放问答系统(30-50%)。
-
总结:
- GPT-2 在未检索的前提下直接生成答案,是极具挑战的任务。
- 它的知识“储存在参数中”,但仍不足以应对大规模事实问答。
- 高置信度预测表现好,提示有望借助置信度进行“选择性回答”。
9、总结
总结表:GPT-2 在各任务中的表现
任务 | 评估指标 | GPT-2 表现(Zero-shot) | 备注 |
---|---|---|---|
LAMBADA | Perplexity/Acc | 8.6 PPL / 52.7% → 63.2% | 加约束显著提升 |
Winograd | Accuracy | 70.7% | 高于 SOTA,任务样本少 |
阅读理解 CoQA | F1 | 55 | 接近或超越多数有监督系统 |
摘要 CNN/DM | ROUGE 1,2,L | 稍优于 random-3 | 有提示时表现显著更好 |
翻译 WMT-14 | BLEU | 5(英→法),11.5(法→英) | 英文强大建模能力迁移带动 |
问答 NQ | Accuracy | 4.1%(全体),63.1%(Top1%) | 记忆能力弱但置信度校准好 |
相关文章:
大模型论文:Language Models are Unsupervised Multitask Learners(GPT2)
大模型论文:Language Models are Unsupervised Multitask Learners(GPT2) 文章地址:https://storage.prod.researchhub.com/uploads/papers/2020/06/01/language-models.pdf 摘要 自然语言处理任务,例如问答、机器翻译、阅读理解和摘要&am…...
大模型本地部署系列(3) Ollama部署QwQ[阿里云通义千问]
大家好,我是AI研究者, 今天教大家部署 一个阿里云通义千问大模型。 QwQ大模型简介 QwQ是由阿里云通义千问(Qwen)团队推出的开源推理大模型,专注于提升AI在数学、编程和复杂逻辑推理方面的能力。其核心特点包括&#x…...
WPF ObjectDataProvider
在 WPF(Windows Presentation Foundation)中,ObjectDataProvider 是一个非常有用的类,用于将非 UI 数据对象(如业务逻辑类或服务类)与 XAML 绑定集成。它允许在 XAML 中直接调用方法、访问属性或实例化对象,而无需编写额外的代码。以下是关于 ObjectDataProvider 的详细…...
《Vue Router实战教程》12.不同的历史记录模式
欢迎观看《Vue Router 实战(第4版)》视频课程 不同的历史记录模式 在创建路由器实例时,history 配置允许我们在不同的历史模式中进行选择。 Hash 模式 hash 模式是用 createWebHashHistory() 创建的: import { createRouter,…...
Dify什么?Dify 零门槛打造专属 AI 应用
Dify 是一个专注于简化大语言模型(LLM)应用开发的开源平台,旨在帮助用户通过可视化界面和模块化工具快速构建、部署和管理 AI 驱动的应用程序。以下是其核心特点: 主要功能 可视化编排 提供直观的界面,无需深入编码即…...
【Javascript】在canvas中加载shader着色器的方法(开箱即用)
功能简介 可以播放,暂停shader代码,可以在js中配置shader参数(下面案例列举了所有可用参数形式)缺点 这个是固定机位,没有自定义顶点着色器部分的功能,有需要可直接在class中改,或者修改后调用…...
华为华三模拟器解决兼容问题Win11 24H2 现在使用ENSP的问题解决了
一、Win11 24H2 现在使用ENSP的问题解决了 这个Win11 的 24H2不能使用ENSP的问题已经困扰我们很久了,在之前的文章中,我们也有说明这个问题 之前ENSP肯定启动会报错40 当时还建议大家先不要更新到win11的24H2版本,现在终于迎来了更新&#…...
五、用例篇
Bug等级:崩溃、严重、一般、次要 bug的生命周期 面试高频考题:跟开发产生争执怎么办? (1)反思自己,是不是bug描述写的不清楚 (2)站在用户思考问题,反问开发人员:“如果你是用户,你能接受这样…...
Mysql中的数据类型和语句概述
Mysql中的数据类型 数值类 整数:int,四个字节构成 浮点型:float单精度浮点数,四个字节,double双精度浮点数,八个字节,decimal用于高精度计算,尤其是在金融领域。decimalÿ…...
Vue3连接MQTT作为客户端
先下载依赖 npx --yes --registry https://registry.npmmirror.com npm install mqtt 在src的api创建 mes.js // 导入axios import axios from axios;// 定义一个变量,记录公共的前缀, baseURL const baseURL http://localhost:8080; const instance axios.create({ base…...
VLC快速制作rtsp流媒体服务器
1.安装vlc media player工具 2.打开后点击菜单 媒体->流 3.添加mp4视频,选择串流 4.选择 下一个 5.新目标选择 RTSP,点击添加按钮 6.端口和路径随便填写,如果推流失败就换个端口。一路操作下去 7.点击 流 按钮后,就可以看到下图…...
24FIC
一,赛前准备 检材密码:2024Fic杭州Powered~by~HL! 案情简介: 2024年4月,卢某报案至警方,声称自己疑似遭受了“杀猪盘”诈骗,大量钱财被骗走。卢某透露,在与某公司交流过程中结识了员工李某。李某…...
P3367 【模板】并查集
题目链接:点击进入 题目 思路 代码(路径压缩) #include <bits/stdc.h> using namespace std; const int maxn 1e6 10;int n,m,fa[maxn];int find(int x) {if(xfa[x]) return x;else return fa[x]find(fa[x]); }int unions(int x,…...
【leetcode hot 100 300】最长递增子序列
错误解法:在每次更新db[i]时,如果当前nums[i]>nums[i-1]就db[i-1]1,否则db[i-1] class Solution {public int lengthOfLIS(int[] nums) {int n nums.length;int[] db new int[n]; // db[i]表示到i的最长严格递增子序列的长度db[0] 1;f…...
jwt.io学习
jwt.io 是一个专门用于 JSON Web Token(JWT)相关操作和学习的网站,地址是:JSON Web Tokens - jwt.io具有以下主要功能: JWT 解码:能够将 JWT 令牌进行解码,展示出令牌中包含的各个部分…...
MySQL 优化方案大全
一、数据库设计优化 1. 表结构设计 合理选择字段类型: 使用最小满足需求的类型(如TINYINT代替INT)字符串类型优先VARCHAR,固定长度用CHAR 时间类型用TIMESTAMP(4字节)或DATETIME(8字节…...
题目 2701: 蓝桥杯2022年第十三届决赛真题-取模(C/C++/Java组)
题目 2701: 蓝桥杯2022年第十三届决赛真题-取模(C/C/Java组) 时间限制: 3s 内存限制: 512MB 提交: 6633 解决: 1263 题目描述 给定 n, m ,问是否存在两个不同的数 x, y 使得 1 ≤ x < y ≤ m 且 n mod x n mod y 。 输入格式 输入包含多…...
【LeetCode 题解】算法:36.有效的数独
一、问题剖析 在算法领域中,数独问题是一个经典且有趣的逻辑验证题目。本题的核心任务是判断一个给定的 9x9 数独是否有效。判断的依据是数独的基本规则:数字 1-9 在每一行、每一列以及每一个 3x3 的宫内都只能出现一次。同时,题目中明确指出…...
C++学习之MYSQL数据库
目录 1.mysql数据库介绍 2.mysql数据库安装 3.mysql数据库启动和登录 4.mysql数据库CURD 5.mysql数据库表CURD 6.mysql数据库数据CURD 7.mysql基础综合练习 8.mysql数据库总日期和时间函数 9.mysql中函数 10.PLSQL工具使用介绍 11.ORACLE实例别名和ORACLE客户端 12.…...
Node.js 开发的简单 Web 服务器代码
步骤 1:创建项目文件 新建名为 app.js 的文件,添加以下代码: // 1. 导入内置 http 模块 const http require(http);// 2. 创建服务器实例 const server http.createServer((req, res) > {// 设置响应头res.writeHead(200, { Content-T…...
Postgresql安装mysql_fdw并映射MySQL数据库
关于Postgresql映射Mysql数据库数据 领导:小汪啊,他们的数据库是不是能连接上了。 我:对啊,我已经读数据了。 领导:那改一下吧,直接把他们的数据映射过来,体现一下我们功能的多样性。 我&#…...
flutter 获取通话记录和通讯录
Dart SDK version is 3.7.01 dependencies:flutter:sdk: flutterpermission_handler: ^11.0.1 # 权限管理flutter_contacts: ^1.1.92call_log: ^5.0.5cupertino_icons: ^1.0.8dev_dependencies:flutter_test:sdk: flutterflutter_lints: ^5.0.0 2 contact_and_calls_page.da…...
AICon 2024年全球人工智能与大模型开发与应用大会(脱敏)PPT汇总(36份).zip
AICon 2024年全球人工智能与大模型开发与应用大会(脱敏)PPT汇总(36份).zip 1、面向开放域的大模型智能体.pdf 2、企业一站式 AI 智能体构建平台演进实践.pdf 3、PPIO 模型平台出海实战,跨地域业务扩展中的技术优化之道…...
swift菜鸟教程6-10(运算符,条件,循环,字符串,字符)
一个朴实无华的目录 今日学习内容:1.Swift 运算符算术运算符比较运算符逻辑运算符位运算符赋值运算区间运算符其他运算符 2.Swift 条件语句3.Swift 循环4.Swift 字符串字符串属性 isEmpty字符串常量let 变量var字符串中插入值字符串连接字符串长度 String.count使用…...
【14】RUST高级特性
文章目录 不安全操作裸指针应用 不安全函数or方法extern调用外部函数调用C语言函数创建供C调用的接口 全局变量(静态变量)不安全的trait访问联合体中的字段 不安全操作 裸指针 需要程序员保证有效性 从引用创建 let mut num 5; let r1 &num as …...
Linux 系统中 `echo`、`cat`、`tail`、`grep` 四个常用命令介绍
以下是 Linux 系统中 echo、cat、tail、grep 四个常用命令的详细介绍,涵盖其功能、常用选项及实际示例: 1. echo - 输出文本 作用:将文本或变量的值输出到终端或文件。常用于脚本中的信息提示或日志记录。 常用选项: 选项说明-…...
Python 根据多个下标向列表中插入对应的值的巧妙方法:逆序插入
例如根据多个下标(比如2, 5, 8)向列表中插入对应的值,即: 在位置2插入一个值A,在位置5插入一个值B,在位置8插入一个值C, 而且每次插入都会改变列表长度,所以后续位置也会发生偏移。…...
“实时滚动”插件:一个简单的基于vue.js的无缝滚动
1、参考连接: 安装 | vue-seamless-scroll 2、使用步骤: 第一步:安装 yarn add vue-seamless-scroll 第二步:引入 import vueSeamlessScroll from vue-seamless-scroll/src 第三步:注册 components: { vueSeamless…...
【Vue3 + Element-Plus】TreeTransfer树形穿梭框组件
基于 Element Plus 实现高效树形穿梭框组件 组件概述 本组件实现了一个基于 Element Plus 的双树形结构穿梭框,支持以下核心功能: 树形结构数据展示节点多选与批量转移展开状态记忆双向数据同步节点禁用与过滤全选/全不选功能(待完善&#…...
014_多线程
多线程 多线程创建线程方式一:继承Thread类方式二:实现Runable接口方式三:实现Callbale接口 Thread的常用方法线程安全线程同步方式一:同步代码块同步方法方式三:Lock锁 线性池创建线程池处理Runnable任务处理Callable…...
vue自定义颜色选择器
vue自定义颜色选择器 效果图: step0: 默认写法 调用系统自带的颜色选择器 <input type"color">step1:C:\Users\wangrusheng\PycharmProjects\untitled18\src\views\Home.vue <template><div class"container"><!-- 颜…...
(十五)安卓开发中不同类型的view之间继承关系详解
在安卓开发中,View 是所有 UI 组件的基类,不同类别的 View 通过继承关系扩展和特化功能,以满足多样化的界面需求。以下将详细讲解常见 View 类别的继承关系,并结合代码示例和使用场景进行说明。 1. View 继承关系: java.lang.Obj…...
Linux 入门七:从基础到进阶的文件操作
一、Linux 文件系统基础:一切皆文件的哲学 在 Linux 的世界里,“一切皆文件” 是核心设计哲学。无论是普通文件、目录、设备(如硬盘、串口),还是网络套接字,都被抽象为文件模型,通过统一的接口…...
DeepSeek的神经元革命:穿透搜索引擎算法的下一代内容基建
DeepSeek的神经元革命:穿透搜索引擎算法的下一代内容基建 ——从语义网络到价值共识的范式重构 一、搜索引擎的“内容饥渴症”与AI的基建使命 2024年Q1数据显示,百度索引网页总数突破3500亿,但用户点击集中在0.78%的高价值页面。这种“数据…...
【时时三省】(C语言基础)用switch语句实现多分支选择结构 例题
山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省 例题: 用switch语句处理菜单命令。在许多应用程序中,用菜单对流程进行控制,例如从键盘输入一个 A 或 a 字符,就会执行A操作,输入一…...
CMake macro
CMake中的macro主要用于在调用处直接展开代码,类似于文本替换,其作用类似于C语言的#define宏,但具备更复杂的结构。以下是详细分析: 1. macro的作用 代码展开:调用宏时,其内容会原地展开,如同…...
高防服务器防御DDoS全解析——从架构设计到实战对抗
本文系统阐述高防服务器对抗DDoS攻击的技术原理与实施路径,深度剖析BGP线路、流量清洗、协议栈优化等关键技术,结合2024年最新攻击案例与Gartner防御框架,提供企业级防御体系构建指南,涵盖硬件选型、策略配置、合规审计等全生命周…...
高防IP如何构筑DDoS防线?_解析抗攻击核心技术体系
本文深度解析高防IP防御DDoS攻击的技术实现路径,涵盖流量清洗机制、智能调度策略、混合防护架构三大核心技术体系。通过2023年某金融平台800Gbps混合攻击实战案例,结合Gartner最新防护成熟度模型,给出高防IP部署的六步实施框架与成本优化方案…...
RDD行动算子和累加器
RDD行动算子: 是能触发真正计算数据的算子 reduce:聚集RDD元素 collect:返回数据集所有元素 foreach:分布式遍历元素 count:返回元素个数: first:返回首个元素 take:返回前n个元素 takeOrdered:返回排序后的前n个元素 aggregate:分区和分区间数据聚合 fol…...
【计算机网络】同步操作 vs 异步操作:核心区别与实战场景解析
📌 引言 在网络通信和分布式系统中,**同步(Synchronous)和异步(Asynchronous)**是两种基础却易混淆的操作模式。本文将通过代码示例、生活类比和对比表格,帮你彻底理解它们的区别与应用场景。 1…...
iframe学习与应用场景指南
一、iframe核心原理与学习路径 1. 嵌套网站的本质原理 技术特性: • 浏览器为每个iframe创建独立的window对象和DOM环境 • 资源独立加载:子页面拥有自己的CSS/JS/Cookie作用域 • 跨域限制:同源策略下无法直接访问DOM(需CORS或…...
基于SSM的线上花店鲜花销售商城网站系统
作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…...
【大模型理论篇】Search-R1: 通过强化学习训练LLM推理与利⽤搜索引擎
最近基于强化学习框架来实现大模型在推理和检索能力增强的项目很多,也是Deep Research技术持续演进的缩影。之前我们讨论过《R1-Searcher:通过强化学习激励llm的搜索能⼒》,今天我们分析下Search-R1【1】。 1. 研究背景与问题 ⼤模型(LLM&a…...
错误码code:9568282 error: install releaseType target not same怎么处理?
目录 1.背景 2.解决方案 1.背景 当前是由于应用从4.1版本升级到5.0版本,然后安装应用会报错9568282 ,如果签名是一致的&#...
qt联动其他库实现一个客户端(本章主要是概述如何实现)
一.服务器功能 1.能连接多个客户端通信 2.负责统计与手机客户端的数据 3.遇到客户端请求数据时能检索数据库并发送对应数据 4.服务器需要能连接到公网 5.服务器需要有账号密码登录功能 6.服务器要有日志与管理员系统能统计信息 二.客户端 1.客户端需要有登录界面 2.客户端需要…...
爱普生FC1610AN5G手机中替代传统晶振的理想之选
在 5G 技术引领的通信新时代,手机性能面临前所未有的挑战与机遇。从高速数据传输到多任务高效处理,从长时间续航到紧凑轻薄设计,每一项提升都离不开内部精密组件的协同优化。晶振,作为为手机各系统提供稳定时钟信号的关键元件&…...
SpringMVC基础二(RestFul、接收数据、视图跳转)
ReauestMapping ReauestMapping注解用于映射url到控制器类或一个特定的处理程序方法。可用于类或方法上,用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。 创建一个新项目:设置为web项目 编写web.xml(此配置也几…...
BERT - 段嵌入(Segment Embedding)
1. 段嵌入(Segment Embedding)的作用 在BERT模型中,段嵌入的主要作用是区分不同的句子。具体来说: 单句任务:所有位置的段嵌入都是0。 句子对任务:第一个句子的所有位置使用段嵌入0,第二个句子…...
Kaggle-Disaster Tweets-(二分类+NLP+模型融合)
Disaster Tweets 题意: 就是给出一个dataframe包含text这一列代表着文本,文本会有一些词,问对于每条记录中的text是真关于灾难的还是假关于灾难的。 比如我们说今天作业真多,这真是一场灾难。实际上这个灾难只是我们调侃而言的。…...
关于哈希冲突的讨论
文章目录 1. 什么是哈希冲突?2. 为什么会产生哈希冲突?3. 如何解决哈希冲突?4. 为什么哈希算法一定会产生冲突?5. 存在不发生冲突的哈希算法吗?6. 为什么不用无冲突的哈希算法(如完美哈希)&…...