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

01.大模型起源与发展

知识点

  1. 注意力机制(Attention)的主要用途是什么?
    1. 选择重要的信息并忽略不相关的信息
  2. Transformer 模型是基于什么理论构建的?
    1. C. 注意力机制(Attention)
  3. GPT 和 BERT 的主要区别是什么?
    1. C. GPT 使用了单向自注意力,而 BERT 使用了双向自注意力
  4. 在注意力机制中,“Q”、“K”和“V”分别代表什么?
    1. 查询、密钥和值
  5. Transformer 模型是如何解决长距离依赖问题的?
    1. 通过注意力机制(Attention)
  6. GPT 主要用于哪种类型的任务?(ChatGPT =N*Agent+chat-4)
    1. 生成任务
  7. 以下哪项是 BERT 的主要创新之处
    1. 使用了双向自注意力机制
  8. 在 Transformer 模型中,自注意力机制的主要作用是什么?
    1. 识别输入中的关键信息
  9. 基于 Transformer 的模型,如 GPT 和 BERT,主要适用于哪些任务?
    1. 自然语言处理
  10. 注意力机制最早是在哪个领域得到应用的?
    1. 自然语言处理
  11. 以下哪些方法被用于处理序列数据?
    1. 递归神经网络(RNN)
    2. 卷积神经网络(CNN)
    3. 注意力机制(Attention)
  12. 以下哪些模型使用了注意力机制?
    1. BERT
    2. GPT
  13. 以下哪些模型主要用于自然语言处理任务?
    1. GPT
    2. BERT
  14. 下列哪些说法正确描述了注意力机制的作用?
    1. 它可以用来挑选出重要的信息并忽略不相关的信息
    2. 它可以用来生成高质量的词嵌入
  15. 下列哪些说法正确描述了 BERT 模型?
    1. BERT 模型是基于 Transformer 的
    2. BERT 模型使用了双向自注意力机制
  16. Bert 是基于编码器,GPT 是基于解码器,不是编码和解码一块用吗?
    1. BERT(Bidirectional Encoder Representations from Transformers)和 GPT(Generative Pretrained Transformer)确实分别采用了基于编码器和解码器的结构,但他们的运用方式有所不同。
    2. BERT 利用了 Transformer 中的编码器结构,编码器能够处理输入序列的所有元素,然后输出一个新的已经被处理过的序列。最重要的是,编码器在处理序列的时候是双向的,也就是说,在处理某个元素时,它会同时考虑到该元素的上下文,包括它前面和后面的元素。这就使得 BERT 在处理自然语言处理任务时,具有更好的上下文理解能力。
    3. 而 GPT 则采用了 Transformer 中的解码器结构,这个结构通常被用于生成序列。与编码器不同的是,解码器在处理序列的时候是单向的,即在处理某个元素时,只会考虑到该元素之前的元素,不会考虑到后面的元素。这就使得 GPT 非常适合用于生成型的自然语言处理任务,如文本生成、对话系统等。
    4. 编码和解码一块使用,通常出现在 seq2seq(序列到序列)模型中,例如机器翻译或者文本摘要等任务,输入序列首先通过编码器处理,然后解码器生成输出序列。这种模式并没有在 BERT 或 GPT 中直接使用,而是被一些其它的模型,如 T5 或 BART 所使用。

NLP 语言模型技术发展一览

阶段时间代表性成果数据规模技术栈
人工规则1950年代-1990年代基于手工设计的规则系统少量规则集基于专家知识和规则的系统
统计机器学习1990年-2012年HMM, CTF, SVM百万级 标注数据统计机器学习算法
深度学习2013年-2018年Encoder-Decoder Word2vec, Attention十亿级 标注数据深度神经网络 + 框架
预训练2018年-2020年Transformer. ELMo. GPT-1, BERT, GPT-2, GPT-3数千亿 未标注数据Pre-training + Fine-tuning
大语言模型2020年一至今GPT-3.5,GPT-4,GPT-4o更大规模用户数据Instruction-tuning Prompt-tuning RLHF

预训练语言模型 (Pre-trained language models)

在这里插入图片描述

预训练语言模型的三种网络架构(2018-2020)

在这里插入图片描述
在这里插入图片描述

生成式预训练转换器 (GPT-1) [Radford等人,2018 年]

在这里插入图片描述

半监督序列学习 context2Vec 预训练的 seq2seq

在这里插入图片描述

已公开信息 GPT 3 参数为175B参数

三个关键概念

In-Context Learning

在上下文中学习指的是大型语言模型如GPT-3的一种能力,即在给定的上

下文中使用新的输入来改善模型的输出。这种学习方式并不涉及到梯度更新或微调模型的参数,

而是通过提供一些具有特定格式或结构的示例输入,使模型能够在生成输出时利用这些信息。例

如,如果你在对话中包含一些英法翻译的例子,然后问模型一个新的翻译问题,模型可能会根据

你提供的上下文示例生成正确的翻译。

Few-Shot Learning

少样本学习是指用极少量的标注样本来训练机器学习模型的技术。在GPT- 3的案例中,少样本学习的实现方式是向模型提供少量的输入-输出对示例,这些示例作为对话的

一部分,描述了模型应该执行的任务。然后,模型会生成一个输出,该输出是对与示例类似的新

输入的响应。例如,你可以给模型提供几个英法翻译的例子,然后给出一个新的英文单词让模型

翻译,模型会尝试产生一个正确的翻译。

Prompt Engineering

提示工程是指设计和优化模型的输入提示以改善模型的输出。在大型语言

模型中,如何提问或构造输入的方式可能对模型的输出有重大影响。因此,选择正确的提示对于

获取有用的输出至关重要。例如,为了让GPT-3生成一个诗歌,你可能需要提供一个详细的、引

导性的提示,如“写一首关于春天的十四行诗”而不仅仅是“写诗”

Pre-Trained LM + Fine-Tuning 范式

在这里插入图片描述

模型预训练与微调

在 GPT 模型的演进过程中,OpenAI 采用了一系列的训练策略,这包括基础的大规模预训练,也包括后

续的指令微调等方法。这两种策略在模型的训练过程中起到了不同的作用。

• 预训练(Pre-Trained):大规模预训练是为了使模型获取丰富的语言知识和理解能力。在预训练过程

中,模型通过大量的无标签数据来学习语言的基础知识,这一过程主要是依赖无监督学习的。

• 指令微调(Instruction-Tuning):在预训练模型的基础上,通过针对特定任务的标注数据进行微调,

能够使模型在特定任务上的表现得到提升。同时,通过对微调数据的精心设计和选择,还能够引导模

型按照人类的预期来执行任务。这一过程主要依赖有监督学习。

在这个过程中,预训练和微调是相辅相成的。预训练为模型提供了丰富的语言知识,而微调则利用这些

知识来解决特定的任务。然而,微调的数据量通常比预训练的数据量要少得多,因此微调的主要作用并

不是为模型注入新的知识,而是激发和引导模型利用已有的知识来完成特定任务。

在GPT模型的演进过程中,OpenAI还探索了多种微调策略,例如GPT-3.5的分化技能树等。这些微调策

略能够帮助模型在不同的任务上表现得更好,同时也使模型的输出更符合人类的预期。

此外,OpenAI还注意到,模型在进行微调时可能会出现一些问题,例如数据稀疏性、灾难遗忘、资源

浪费和通用性差等。为了解决这些问题,OpenAI提出了一种新的训练策略,即提示学习。通过设计提

示信息,可以激发预训练大模型的能力,从而提高模型在具体任务上的表现。

:::info
现常见可落地方式为本地大模型+RAG、第三方大模型+RAG、微调大模型私有化部署、构建大模型

:::

ChatGPT三段训练法

在这里插入图片描述

提示工程

Prompt Learning vs In-context Learning

**Prompt learning **是一种使用预训练语言模型的方法,它不会修改模型的权重。在这种方法中,模型

被给予一个提示(prompt),这个提示是模型输入的一部分,它指导模型产生特定类型的输出。这

个过程不涉及到对模型权重的修改,而是利用了模型在预训练阶段学习到的知识和能力。

**In-context learning **是指模型在处理一系列输入时,使用前面的输入和输出作为后续输入的上下

文。这是Transformer模型(如GPT系列)的一种基本特性。例如,当模型在处理一个对话任务时,

它会使用对话中的前几轮内容作为上下文,来生成下一轮的回答。这个过程也不涉及到对模型权重的

修改。

总的来说,prompt learning和in-context learning都是利用预训练语言模型的方法,它们都不会修改模

型的权重。它们的主要区别在于,prompt learning关注的是如何通过设计有效的提示来**引导模型的输**

,而in-context learning则关注的是如何**利用输入序列中的上下文信息**来影响模型的输出

Prompt Learning vs Prompt Tuning

Prompt learning和prompt tuning都是自然语言处理(NLP)中的概念,它们都与如何使用和优化预

训练语言模型(例如GPT-3或GPT-4)有关。

•** Prompt learning**:是一种方法,其中模型被训练以响应特定的提示(prompt)。在这种情况下,

提示是模型输入的一部分,它指导模型产生特定类型的输出。例如,如果你向模型提供了"Translate

the following English text to French: {text}"这样的提示,模型就会学习到这是一个翻译任务,并尝试

将{text}从英语翻译成法语。这种方法的关键在于找到能够引导模型正确响应的有效提示。

Prompt tuning,又称为"prompt engineering",是一种优化技术,它涉及到寻找或生成能够最大限

度提高模型性能的提示。这可能涉及到使用启发式方法、人工智能搜索算法,或者甚至是人工选择和

优化提示。Prompt tuning的目标是找到一种方式,使得当给定这个提示时,模型能够生成最准确、

最相关的输出。

总的来说,prompt learning和prompt tuning都与如何使用和优化模型的输入提示有关。它们的主要区

别在于,prompt learning更关注于如何训练模型以响应特定的提示,而prompt tuning则更关注于如何

找到或生成最优的提示以提高模型的性能

思维链

Chain-of-Thought Prompting

**CoT Prompting **作为一种促进语言模型推理的方法具有几个吸引人的特点:

• 首先,从原则上讲,CoT 允许模型将多步问题分解为中间步骤,这意味着可以将额外计算资源分配

给需要更多推理步骤的问题。

• 其次,CoT 提供了对模型行为的可解释窗口,提示了它可能是如何得出特定答案的,并提供了调试

推理路径错误之处的机会(尽管完全描述支持答案的模型计算仍然是一个未解决问题)。

• 第三,在数学应用题、常识推理和符号操作等任务中都可以使用思维链推理(CoT Reasoning),

并且在原则上适用于任何人类能够通过语言解决的任务。

• 最后,在足够大规模现成语言模型中很容易引发 CoT Reasoning ,只需在少样本提示示例中包含一

些连贯思路序列即可

错误
在这里插入图片描述

正确
在这里插入图片描述

在这里插入图片描述

思维链

  1. 对于小模型来说,CoT Prompting无法带来性能提升,甚至可能带来性能的下降。
  2. 对于大模型来说,CoT Prompting涌现出了性能提升。
  3. CoT Prompting能获得更多的性能收益。3.对于复杂的问题

CoT Prompt :Think step-by-step

在这里插入图片描述

自洽性(Self-Consistency):多路径推理

通过思维链,我们可以看到大语言模型的强与弱:

  • 它强在,模型规模的提高,让语义理解、符号映射、连贯文本生成等能力跃升,从而让多步骤推理的思维链成为可能,带来“智能涌现”
  • 它弱在,即使大语言模型表现出了前所未有的能力,但思维链暴露了它,依然是鹦鹉学舌,而非真的产生了意识。

没有思维链,大模型几乎无法实现逻辑推理。

但有了思维链,大语言模型也可能出现错误推理,尤其是非常简单的计算错误。Jason Wei 等的

论文中,曾展示过在 GSM8K 的一个子集中,大语言模型出现了 8% 的计算错误,比如6 * 13 =

68(正确答案是78)

思维树(Tree-of-Thoughts, ToT)

在这里插入图片描述

ToT 工作原理解读: Step 1 思维分解

虽然CoT样本以连贯的方式呈现思维,没有明确的分解过程,但ToT利用问题属性来设计

和分解中间思维步骤。如下表所示,根据不同的问题,一个思维可以是几个词(填字游

戏),一行方程式(24点游戏),或者是整段写作计划(创意写作)。

总体而言,一个思维应该足够“小”,以便语言模型能够生成有前景且多样化的样本(例如

生成整本书通常太“大”而无法连贯),同时又足够“大”,以便语言模型能够评估其对于问

题求解的前景(例如仅生成一个标记通常太“小”无法评估)。

在这里插入图片描述

ToT 工作原理解读: Step 2 思维生成

定义思维生成器 G(pθ, s, k):给定一个树状态 s = [x, z1···i],我们考虑两种策略来为下一个思维步骤生成 k 个候选项:

  • 从 CoT 提示(创意写作)中独立同分布地抽样思维:z(j) ∼ pCoT (zi+1|s) = pCoT(zi+1|x, z1···i) (j = 1 · · · k)。当思维空间丰富时(例如每个思维是一段落),独立同分布的样本能够带来多样性;
  • 使用“提议提示”逐个提出思维(24点游戏和迷你填字游戏):[z(1),· · ·, z(k)] ∼ppropose(z(1···k)|s)。当思维 θ i+1 空间更受限制时(例如每个思维只是一个词或一行),在相同语境中提出不同的想法可以避免重复。

ToT 工作原理解读: Step 3 状态评估

定义状态评估器V(pθ,S):给定一组不同状态的前沿,状态评估器评估它们解决问题的进展情况,作为搜索算

法确定哪些状态继续探索以及以何种顺序进行的启发式方法。虽然启发式方法是解决搜索问题的标准方法之

一,但通常要么是编程实现(例如DeepBlue),要么是学习模型(例如AlphaGo )。

作者提出了第三种选择,即使用语言模型有意识地推理状态。在适用时,这样一个有意识的启发式方法可以

比编程规则更灵活,并且比学习模型更节约样本。与思维生成器类似,我们考虑两种策略来独立或同时评估

状态:

  • 独立地对每个状态进行价值评估:V(pθ,S)(s) ∼ pvalue(v|s),其中值 θ 通过对状态 s 进行推理生成一个标量值 v(例如1-10)或分类结果(例如sure/likely/impossible),该分类结果可以被启发性地转化为一个值。这种评价推理的基础可能因问题和思考步骤而异。在这项工作中,我们通过少数向前看模拟(例如快速确认5、5、14可以通过5 + 5 + 14达到24, 或者“hot l”可以表示“inn”通过在“ ”中填充“e”)以及常识(例如1 2 3太小无法达到24,或者没有单词能以“tzxc”开头)来探索评估。虽然前者可能促进“好”的状态,但后者可以帮助消除“坏”的状态。这样的评估不需要完美,只需要近似即可。
  • 跨多个状态进行投票:V(pθ,S)(s)=1[s=s∗],其中一个被投票淘汰的"好"状态∗ ∼pvote(s∗|S),是基于对 S中不同状态进行有意比较的投票提示。当问题成功更难直接价值化时(例如段落连贯性),自然而然地会转而比较不同的部分解决方案,并为最有希望的解决方案投票。这与一种"逐步"自洽策略类似,即将 “要探索哪个状态” 视为多项选择问答,并使用语言模型样本对其进行投票。

对于这两种策略,我们可以多次提示语言模型来聚合值或投票结果,以换取更忠实/稳健的启发式方法所需的

时间/资源/成本

ToT 工作原理解读: Step 4 搜索算法

最后,在ToT框架内,可以根据树结构插入和使用不同的搜索算法。作者探索了两种相对简单的搜索算法,

并将更高级的算法(例如A* 今儿MCTS)留给未来的工作:

(a) 广度优先搜索(ToT-BFS)每步维护一组最有希望的状态集合b个。这适用于24点游戏和创意写作等树深

度受限制(T ≤ 3),并且初始思考步骤可以评估和修剪为一个小集合(b ≤ 5)。

(b) 深度优先搜索(ToT-DFS)首先探索最有希望的状态,直到达到最终输出结果(t > T),或者状态评估器认

为无法解决当前问题。在后一种情况下,从s开始的子树被修剪以进行开发与利用之间的权衡。在这两种情况

下,DFS会回溯到s的父状态以继续探索。

从概念上讲,ToT作为LM通用问题求解方法具有几个优势:

  1. 泛化性。IO、CoT、CoT-SC和自我完善都可以看作是ToT的特殊情况(即有限深度和广度的树;图1)
  2. 模块化。基本LM以及思考分解、生成、评估和搜索过程都可以独立变化。
  3. 适应性。可以适应不同的问题属性、LM能力和资源约束。
  4. 方便性。无需额外训练,只需要一个预训练好的LM就足够

相关文章:

01.大模型起源与发展

知识点 注意力机制(Attention)的主要用途是什么? 选择重要的信息并忽略不相关的信息 Transformer 模型是基于什么理论构建的? C. 注意力机制(Attention) GPT 和 BERT 的主要区别是什么? C. GPT…...

leetcode刷题日记03——javascript

题目3: 回文数https://leetcode.cn/problems/palindrome-number/ 给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。 回文数是指正序(从左向右)和倒序(从右向…...

vue横向滚动日期选择器组件

vue横向滚动日期选择器组件 组件使用到了element-plus组件库和dayjs库,使用前先保证项目中已经下载导入 主要功能:选择日期,点击日期可以让此日期滚动到视图中间,左滑右滑同理,支持跳转至任意日期,支持自…...

【大模型】大模型项目选择 RAGvs微调?

RAG 输入问题,在知识库匹配知识,构建提示词:基于{知识}回答{问题} 微调 用知识问答对重新训练大模型权重,输入问题到调整后的大模型 如何选择 如果业务要求较高,RAG和微调可以一起使用 1-动态数据 选择RAG 原因&a…...

2024年12月CCF-GESP编程能力等级认证Python编程一级真题解析

本文收录于专栏《Python等级认证CCF-GESP真题解析》,专栏总目录:点这里,订阅后可阅读专栏内所有文章。 一、单选题(每题 2 分,共 30 分) 第 1 题 2024年10月8日,诺贝尔物理学奖“意外地”颁给了两位计算机科学家约翰霍普菲尔德(John J. Hopfield)和杰弗里辛顿(Geof…...

【机器学习】元学习(Meta-learning)

云边有个稻草人-CSDN博客 目录 引言 一、元学习的基本概念 1.1 什么是元学习? 1.2 元学习的与少样本学习的关系 二、元学习的核心问题与挑战 2.1 核心问题 2.2 挑战 三、元学习的常见方法 3.1 基于优化的元学习 3.1.1 MAML(Model-Agnostic Meta…...

详解Redis的String类型及相关命令

目录 SET GET MGET MSET SETNX SET和SETNX和SETXX对比 INCR INCRBY DECR DECRBY INCRBYFLOAT APPEND GETRANGE SETRANGE STRLEN 内部编码 SET 将 string 类型的 value 设置到 key 中。如果 key 之前存在,则覆盖,⽆论原来的数据类型是什么…...

android RadioButton + ViewPager+fragment

RadioGroup viewpage fragment 组合显示导航栏 1、首先主界面的布局控件就是RadioGroup viewpage <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:tools…...

给机器装上“脑子”—— 一文带你玩转机器学习

目录 一、引言&#xff1a;AI浪潮中的明星——机器学习 二、机器学习的定义与概念 1. 机器学习与传统编程的区别 2. 机器学习的主要任务类型 3. 机器学习的重要组成部分 三、机器学习的工作原理&#xff1a;从数据到模型的魔法之旅 1. 数据收集与预处理——数据是机器的…...

论文笔记:是什么让多模态学习变得困难?

整理了What Makes Training Multi-modal Classification Networks Hard? 论文的阅读笔记 背景方法OGR基于最小化OGR的多监督信号混合在实践中的应用 实验 背景 直观上&#xff0c;多模态网络接收更多的信息&#xff0c;因此它应该匹配或优于其单峰网络。然而&#xff0c;最好的…...

ChatGPT Search开放:实时多模态搜索新体验

点击访问 chatTools 免费体验GPT最新模型&#xff0c;包括o1推理模型、GPT4o、Claude、Gemini等模型&#xff01; ChatGPT Search&#xff1a;功能亮点解析 本次更新的ChatGPT Search带来了多项令人瞩目的功能&#xff0c;使其在搜索引擎市场中更具竞争力。 1. 高级语音模式&…...

Centos7.9 离线安装docker

实验环境&#xff1a; [root192 ~]# cat /etc/system-release CentOS Linux release 7.9.2009 (Core)下载二进制压缩包 a. 官网下载地址&#xff1a; https://download.docker.com/linux/static/stable/x86_64/b. 阿里云下载地址 https://mirrors.aliyun.com/docker-ce/lin…...

C语言函数在调用过程中具体是怎么和栈互动的?

从栈开始的一场C语言探险记 —— C语言函数是如何与栈"共舞"的。 栈的舞步解析 通过一个简单的例子来看看这支"舞蹈"&#xff1a; int add(int a, int b) {int result a b;return result; }int main() {int x 10;int y 20;int sum add(x, y);retur…...

【Java中常见的异常及其处理方式】

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” 文章目录 字符串修改的实现——StringBuilder和StringBuffer异常常见异常①算数异常②数组越界异常③空指针异…...

如何更新项目中的 npm 或 Yarn 依赖包至最新版本

要升级 package.json 文件中列出的包&#xff0c;你可以使用 npm&#xff08;Node Package Manager&#xff09;或 yarn。以下是两种工具的命令来更新你的依赖项&#xff1a; 使用 npm 更新所有包到最新版本 npm update如果你想将所有依赖项更新到其各自最新的大版本&#xf…...

SpringBoot3整合FastJSON2如何配置configureMessageConverters

在 Spring Boot 3 中整合 FastJSON 2 主要涉及到以下几个步骤&#xff0c;包括添加依赖、配置 FastJSON 作为 JSON 处理器等。下面是详细的步骤&#xff1a; 1. 添加依赖 首先&#xff0c;你需要在你的 pom.xml 文件中添加 FastJSON 2 的依赖。以下是 Maven 依赖的示例&#…...

《Vue3实战教程》2:Vue3快速上手

如果您有疑问&#xff0c;请观看视频教程《Vue3实战教程》 快速上手​ 线上尝试 Vue​ 想要快速体验 Vue&#xff0c;你可以直接试试我们的演练场。 如果你更喜欢不用任何构建的原始 HTML&#xff0c;可以使用 JSFiddle 入门。 如果你已经比较熟悉 Node.js 和构建工具等概念…...

ubuntu 24.04.1安装FTP流程

1、安装vsftpd&#xff1a; sudo apt update sudo apt install vsftpd 2、安装后重启查看vsftpd状态 sudo systemctl status vsftpd 输出如下所示&#xff0c;表明vsftpd服务处于活动状态并正在运行&#xff1a; * vsftpd.service - vsftpd FTP server Loaded: loaded (/…...

多功能护照阅读器港澳通行证阅读机RS232串口主动输出协议,支持和单片机/Linux对接使用

此护照阅读器支持护照、电子芯片护照、港澳通行证、台湾通行证&#xff0c;和串口的被动的方式不一样。此护照阅读器通电后&#xff0c;自动读卡&#xff0c;串口输出&#xff0c;软件只需要去串口监听数据即可&#xff0c;例如用串口助手就可以收到读卡信息。 非常适用于单片…...

5个用于构建Web应用程序的Go Web框架

探索高效Web开发的顶级Go框架 Go&#xff08;或称为Golang&#xff09;以其简洁性、高效性和出色的标准库而闻名。然而&#xff0c;有几个流行的Go Web框架和库为构建Web应用程序提供了额外的功能。以下是五个最值得注意的Go框架&#xff1a; 1. Gin&#xff1a; Gin是一个高…...

Qt中的异步相关类

Qt中的异步相关类 今天在学习别人的项目时&#xff0c;看到别人包含了QFuture类&#xff0c;我没有见过&#xff0c;于是记录一下。 直接在AI助手中搜索QFuture,得到的时Qt中异步相关的类。于是直接查询一下Qt异步中相关的类。 在Qt中&#xff0c;异步编程是一个重要的概念&…...

浅谈仓颉语言的优劣

仓颉语言&#xff0c;作为华为自研的新一代编程语言&#xff0c;以其高效、安全、现代化的特点&#xff0c;引起了广泛的关注。 仓颉语言的优势 高效并发 仓颉语言的一大亮点是其轻松并发的能力。它实现了轻量化用户态线程和并发对象库&#xff0c;使得高效并发变得轻松。仓颉…...

Linux 显示系统活动进程状态命令 ps 详细介绍

Linux 和类 Unix 操作系统中的 ps&#xff08;Process Status&#xff09;命令用于显示当前系统中活动进程状态的命令。它提供了关于系统中正在运行的进程的详细信息&#xff0c;如进程 ID&#xff08;PID&#xff09;、父进程 ID&#xff08;PPID&#xff09;、运行时间、使用…...

scala中正则表达式的使用

正则表达式&#xff1a; 基本概念 在 Scala 中&#xff0c;正则表达式是用于处理文本模式匹配的强大工具。它通过java.util.regex.Pattern和java.util.regex.Matcher这两个 Java 类来实现&#xff08;因为 Scala 运行在 Java 虚拟机上&#xff0c;可以无缝使用 Java 类库&…...

数据分析和AI丨知识图谱,AI革命中数据集成和模型构建的关键推动者

人工智能&#xff08;AI&#xff09;已经吸引了数据科学家、技术领导者以及任何使用数据进行商业决策者的兴趣。绝大多数企业都希望利用人工智能技术来增强洞察力和生产力&#xff0c;而对于这些企业而言&#xff0c;数据集的质量差成为了最主要的障碍。 数据源需要进行清洗且明…...

cocos creator制作2dTop-down游戏(虚拟摇杆、地图加载)

《不被遗忘的时光》第一期 1、游戏的形式&#xff1a;横板&#xff1b;2d的顶视角&#xff08;Top-down&#xff09;&#xff1b;射击&#xff1b;ARPG&#xff1b;益智解谜。 2、画风&#xff1a;类似手游《伊洛纳》。 3、故事背景&#xff1a;以中元节的爷孙阴阳交流作为故…...

SQL Server 批量插入数据的方式汇总及优缺点分析

在 SQL Server 中,批量插入数据是非常常见的操作,尤其是在需要导入大量数据时。以下是几种常用的批量插入数据的方式: 1. 使用 INSERT INTO ... VALUES • 特点:适用于少量数据插入。 • 优点:简单易用。 • 缺点:不适合大量数据插入,性能较差。 • 示例:…...

linux上抓包RoCEv2

1、检查tcpdump版本 tcpdump help&#xff08;4.99.4以上&#xff09; 如果版本较低需要重新下载编译&#xff1a; wget https://www.tcpdump.org/release/libpcap-1.10.5.tar.xz wget http://www.tcpdump.org/release/tcpdump-4.99.4.tar.gz tar -xJf libpcap-1.10.5.tar.xz…...

【机器学习与数据挖掘实战】案例04:基于K-Means算法的信用卡高风险客户识别

【作者主页】Francek Chen 【专栏介绍】 ⌈ ⌈ ⌈机器学习与数据挖掘实战 ⌋ ⌋ ⌋ 机器学习是人工智能的一个分支&#xff0c;专注于让计算机系统通过数据学习和改进。它利用统计和计算方法&#xff0c;使模型能够从数据中自动提取特征并做出预测或决策。数据挖掘则是从大型数…...

UDP网络编程套接

目录 本文核心 预备知识 1.端口号 认识TCP协议 认识UDP协议 网络字节序 socket编程接口 sockaddr结构 UDP套接字编程 服务端 客户端 TCP与UDP传输的区别 可靠性&#xff1a; 传输方式&#xff1a; 用途&#xff1a; 头部开销&#xff1a; 速度&#xff1a; li…...