【LLM】大模型基础--大规模预训练语言模型的开源教程笔记

news2024/11/17 13:37:20

1.引言

本文以DataWhale大模型开源教程为学习路线,进行一整个大模型的入门操作

什么是语言模型

语言模型是一种对词元序列(token)的概率分布,可以用于评估文本序列的合理性并生成新的文本。

从生成文本的方式来看,LM(language modle)可以简单的分为:

自回归模型非自回归模型
特点逐字生成文本,每个词的生成都依赖于上文,关联性好一次性生成整个文本序列,不捕捉上文信息
优点内容质量高生成速度快
缺点生成速度慢质量不稳定
常见模型RNN (LSTM, GRU)、Transformer (GPT seriels)Transformer with parallel decoding、Autoregressive-to-Non-autoregressive Translation (ANT)
应用场景文本生成、对话系统(求质)机器翻译、文本摘要(求速)

语言模型的发展历史

  1. 1948,香农的信息理论

    • 引入了熵(entropy)的概念,𝐻(𝑝)=Σ𝑥𝑝(𝑥)log⁡(1𝑝(𝑥))
    • 衡量我们平均需要多少信息(用比特数来表示)来描述这个事件
    • 事件越确定(e.g.抛硬币),熵越小;越不确定(e.g.鉴赏美),熵越大
    • 在语言模型中,熵也可以用来衡量一个模型对语言的掌握程度
    • 熵越低:对语言的理解越深刻
    • 熵越高: 模型对语言的理解越模糊,生成的文本可能出现语法错误或语义不通
  2. N-gram模型

    • N 代表一个数字,基于马尔可夫假设(即一个词的出现只与前面的N-1个词有关),gram 指的是一组连续的单词
    • N-gram 就是由N个单词(N-1+1)组成的连续片段
    • 如果n太小,那么模型将无法捕获长距离的依赖关系。如果n太大,统计上将无法得到概率的好估计(即使在“大”语料库中,几乎所有合理的长序列都出现0次)
  3. 神经语言模型(RNN–包括LSTMs、Transformers)

    • 将单词映射到连续的向量空间中,然后通过神经网络来学习这些向量之间的关系
    • 神经网络模型是一个黑盒,很难解释模型的决策过程
N-gram模型神经语言模型
学习方式背诵课文,只能记住有限的几个词的组合理解语言,能够根据上下文理解整个句子的含义
复杂度基于统计的简单模型基于神经网络的复杂模型
优点直观易实现能更好地捕捉长期依赖关系,上下文长度不受n的限制,泛化能力强(举一反三)
缺点上下文信息长度有限训练复杂,可解释性差
联系基础改进

2.LLM的能力

以下探讨均以GPT3为对象

GPT3作为一个极具代表性的大型语言模型,在NLP领域(语言建模、问答、翻译、算术、新闻文章生成等)表现出了超越了现有技术的最高水平,而在其他未特殊训练领域,只展示出了平均水平。

2.1 Adaptation:语言模型到任务模型的转化

在这里,语言模型是对词元序列的概率分布,能评估序列,在一定提示下还能生成序列;而任务被定义为从输入映射到输出(如问答任务)。

主要有两种方式来进行这种Adaptation:

训练(有监督学习)提示(上下文学习)
具体方式训练一个新模型对任务的描述建一个或一组提示(上下文信息)直接输入模型
分类探针/finetune微调/轻量级微调zero零/one单/few shot少样本学习
学习思路题海战术,学习输入与输出之间的映射关系侧重文本理解,弄懂上下文信息以推理
数据需求大量标注数据相对较少
可解释性较强,简单模型可直接规则提取较弱,但利用注意力机制、添加扰动和可视化工具,可将“黑盒”进行一定程度的解释

增加模型大小和训练样本的数量可以提升 GPT-3 的性能,同时也不能忽视提示学习的重要性

3.模型架构

语言模型可以看作一个黑箱(black box)

从形象化的概念理解上来说当前大语言模型(大:模型规模/参数量级大),可以根据输入需求的语言描述(prompt)生成符合需求的结果(completion)

分词和模型架构是构建大语言模型的两个重要方面

  • 分词为模型提供了高质量的输入
  • 模型架构则决定了模型的学习能力和表达能力

在构建大语言模型时,需要综合考虑分词方式和模型架构,以达到最佳的性能

3.1 token分词

词元(token)一般在NLP中,是指一个文本序列中的最小单元

分词是指将字符串文本转换为词元序列,常见的分词方法有三:

  • 基于空格的分词

    • 适用于英文,但对于单词之间没有空格的中文,或者存在很长复合词的德语,仅通过空格来判断单词会带来许多问题
  • Byte Pair Encoding (BPE) 分词

    • 字节对编码算法

    • 通过学习训练数据中的频率特征来生成词元序列的方法

    • 步骤包括

      • 初始化词汇表
      • 查找共同出现次数最多的元素对
      • 替换所有出现并添加新符号到词汇表中
  • Unigram 模型

    • 基于目标函数的分词模型
    • 其目标函数旨在捕捉好的分词的特征,并通过迭代优化和剪枝,优化词汇表,剔除对似然值贡献较小的词汇,以减少数据的稀疏性
    • 最终得到一个较为准确和合理的词汇表

3.2 模型架构

上下文向量表征 (Contextual Embedding):

  • 作为模型处理的先决条件,其关键是将词元序列表示为响应的上下文(周围的单词)的向量表征

三种语言模型类型(详细介绍见#6):

  • 解码端(Decoder-Only)

    • GPT系列,常见的自回归语言模型
    • 生成上下文向量表征,但不能直接用于生成文本
    • 缺点在于只能单调的依赖左侧上下文
  • 编码端(Encoder-Only)

    • BERT、RoBERTa
    • 通常用于分类任务(也被称为自然语言理解任务)
    • 给定提示,生成上下文向量表征,并对下一个词元生成一个概率分布
  • 编码-解码端(Encoder-Decoder)

    • Transformer模型,以及BART、T5等模型
    • 结合二者优点:可以使用双向上下文向量表征来处理输入,并生成输出
    • 缺点就说需要更多的特定训练目标

3.3 Transformer架构机器延伸

深度学习的美妙之处在于能够创建构建模块,就像我们用函数构建整个程序一样

Transformer 作为深度学习的一种创新模式,是真正推动大型语言模型发展的序列模型。其关键是在传统的序列模型(如RNN)的基础上引入了自注意力机制(Self-Attention),这种机制将查询与序列中的每个元素进行匹配,并形成一个关于词元位置的概率分布,使得模型能够更好地捕捉序列数据中的长距离依赖关系

Transformer架构关键概念包括:

  • 注意力机制

    • 使得所有的词元都可以“相互通信”
  • 残差连接(ResNet)

    • 残差(跳跃)连接
    • x1:L+f(x1:L)
    • 如果f的梯度消失,梯度仍然可以通过x1:L进行计算
  • 归一化

    • 接收一个向量并确保其元素不会太大
    • ResNet和归一化的应用有效解决梯度消失的问题,提高模型的训练稳定性
  • 位置嵌入

    • 根据定义,词元的嵌入不依赖于其在序列中的位置,否则句子位置的角度忽略了上下文的信息,产生不合理的信息
    • 因此,将位置信息添加到嵌入中

4.新的模型架构

上一小节中,提到神经语言模型的核心接口是一个将token序列映射到上下文嵌入的编码器,这种稠密的Transformer模型架构是目前开发大语言模型的主要范式。

但是,随着数据的扩张,扩展这种模型并非易事,需要数据、模型和流水并行,需要重新思考如何构建大语言模型。

现在提出了扩展大语言模型的两种新型模型架构:

  • 混合专家模型(Mixture of Experts, MoE)

    • 通过创建一组专家,每个输入仅激活一小部分专家,从而提高了模型的规模上限
    • 类似一个由专家组成的咨询委员会,每个人都有不同的背景。每个专家都是一个线性分类器,引入平衡机制来确保所有专家都能得到充分利用
    • 混合专家非常有利于并行。每个专家都可以放置在不同的机器上,降低训练和部署的成本

在这里插入图片描述

将该思想应用于语言模型:因前馈层对于每个token是独立的,将每个前馈网络转变为混合专家(MoE)前馈网络

在这里插入图片描述

  • 基于检索的模型

    • 将外部知识库与语言模型结合起来,在生成文本时,模型可以从知识库中检索相关信息,从而提高生成文本的质量和相关性,克服稠密Transformer的缩放限制
    • 如果有人问你一个问题,你会进行网络搜索,并阅读搜索得到的文档以得出答案
混合专家模型基于检索的模型
核心思想将模型拆分成多个专家模型将模型与外部知识库结合
优势参数效率高,性能提升,可扩展性强知识增强,适应性强
挑战路由机制设计,训练稳定性检索效率,知识整合
应用场景自然语言处理,计算机视觉问答系统,文本摘要

5.模型背后的数据

任何机器学习方法的起点都是训练数据,接下来讨论这些模型是如何构建的

网络是寻找这种文本的自然场所,但不是唯一场所。这将是我们主要关注的焦点,例如Common Crawl,由于其便利性,它已经成为许多模型如T5、GPT-3和Gopher的标准数据源

但网络数据存在无意义文本和模板文本、数据代表性不足、偏见和数据污染等问题,因此需要对数据进行筛选和策划。

  1. WebText、OpenWebText数据集

    WebText数据集被用于训练GPT-2模型

    WebText数据集没有公开发布,OpenWebText数据集在理念上复制了WebText的构建方法,尽可能地复现WebText的数据特性和结构。

  2. Colossal Clean Crawled Corpus(C4)

    C4语料库被用来训练T5模型。

  3. Benchmark的数据污染问题

    Benchmark(基准测试)是用来评估模型性能的标准数据集

    数据污染指的是Benchmark数据集中存在与训练数据重叠、泄露或存在其他形式的偏差,导致模型在污染的Benchmark上表现良好,但在实际应用中表现不佳的情况。

  4. GPT-3的数据集

    在处理数据时,GPT-3采用了模糊去重的方法(检测13-gram重叠,如果在少于10个训练文档中出现,则移除窗口或文档),并从基准数据集中移除了数据。

  5. The Pile数据集

    网络爬虫之外的较小的高质量数据源(如学术和专业资源),包含了大量GPT-3数据集未能很好覆盖的信息。

5.2 数据集文档

数据集文档可以帮助数据集创建者反思潜在危害,并帮助使用者了解数据集的适用范围。

实例:

字段描述
数据集名称中文情感分析数据集
数据来源爬取自各大社交媒体平台
数据规模100万条评论,包含文本和情感标签

5.3 数据生态

数据生态,简单来说就是围绕数据的产生、采集、存储、处理、分析、应用等一系列活动所形成的复杂系统。就像自然生态系统一样,数据生态系统中的各个组成部分相互依存、相互影响,共同推动数据的流动和价值创造。

数据治理提供了一套规则和机制,来管理数据生态中的各个环节,确保数据的质量、安全、合规性。

数据尊严强调对个人数据隐私的尊重,以及对数据使用的伦理约束。只有在尊重数据尊严的前提下,数据生态才能健康发展,避免引发社会伦理问题。

6.模型训练

6.1目标函数

  • 解码端(Decoder-Only)

    • 计算单向上下文嵌入
    • 最大似然函数(Maximum Likelihood Estimation,MLE)
    • 通过寻找一组参数,使得模型产生观测数据的概率最大。它帮助模型学习到最优的参数,即生成序列的最大概率,从而生成最可能的输出序列
  • 编码端(Encoder-Only)

    • 计算双向上下文嵌入

    • 掩码语言模型

      • 基本思想是通过"加噪"(随机遮蔽),让模型去预测被遮盖的部分
      • 因为模型无法简单地通过记忆训练数据中的单词顺序来预测下一个单词,而是必须根据上下文信息来推断,进而学习到词语之间的语义关系、语法结构等深层信息
    • 下一句预测

      • 目标是预测第二句是否跟随第一句
      • 将两个句子输入到模型中,模型会输出一个概率值,表示这两个句子是否为连续的
      • 使用交叉熵损失函数来训练模型,目标是最大化正确预测的概率
  • 编码-解码端(Encoder-Decoder)

    • 双向编码输入,自回归解码输出
    • 将输入进行编码,然后进行自回归解码

6.2优化算法

  • 随机梯度下降(SGD)

    • 用于最小化一个函数,通常是模型的损失函数
    • 与传统的梯度下降相比,SGD每次迭代只随机抽取一个训练样本,计算其梯度,并更新模型参数
  • Adam(adaptive moment estimation)

    • 引入动量(继续朝同一方向移动)
    • 参数 θ0 的每个维度都有一个自适应(不同)的步长(受二阶方法启发)
  • AdaFactor

    • 不存储 O(m×n) 矩阵,而是存储行和列的和 O(m+n) 并重构矩阵
    • 去除动量
    • 它被用来训练T5
  • 混合精度训练

    • 另一种减少存储的方法
  • 学习率

    • 通常情况下,学习率会随着时间的推移而衰减
    • 对于Transformer模型,我们实际上需要通过预热(warmup)提高学习率
  • 初始化

7.Adaptation

大型语言模型(LLM)通常在广泛的领域内进行训练,这使得它们在处理与训练数据差异很大的下游任务时可能表现不佳。这些差异可以从格式、主题和时间三个方面来探讨,因此需要适配语言模型以满足各种下游任务的需求。

  • 探针(Probing)

    • 通过在冻结的语言模型之上训练一个特定任务的预测头来实现适配,即不会对庞大的预训练模型进行任何调整,而是直接将预训练模型的输出作为输入
    • 只对一小部分参数进行训练
    • 其使用线性的或浅前馈网络来学习预训练模型的输出,并获得分析和理解模型内容表示的能力
  • 微调(Fine-tuning)

    • 在预训练语言模型的基础上,针对特定任务,对模型的部分或全部参数进行进一步训练的过程。
    • 将大型语言模型参数视为下游任务的进一步训练的初始化来实现适配,但其成本高昂,因为需要为每个下游任务保存整个模型
  • 轻量级微调(Lightweight fine-tuning)

    • 平衡了微调和探测方法的优缺点的适配方法,通过只优化少量参数(模型的<1%)来实现高效的适配,同时保留了模型的表达能力

    • 包含提示调整、前缀调整和适配器调整等多种技术,这些技术通过在模型的输入或内部结构上添加可学习的参数来实现对特定任务的适配

    • 轻量级微调有许多变体,其中一些主要的方法包括

      • 提示调整(Prompt Tuning)
      • 前缀调整(Prefix Tuning)
      • 适配器调整(Adapter Tuning)

8.分布式训练

随着深度学习模型规模的不断扩大,单机训练已经无法满足需求,分布式训练成为必然趋势

常见的并行策略:

  • 数据并行

    • 将数据进行切分,每个设备上都拥有完整的模型
  • 模型并行

    • 将模型进行切分,每个设备上都拥有完整的数据
  • 流水并行

    • 将神经网络切分为多个阶段,并分发到不同的计算设备上

在这里插入图片描述

  • 混合并行

    • 将多种并行策略混用

9.LM的危害

  • 性能差异

    • 性能差异意味着模型在某些群体中表现更好,在其他群体中表现更差。
    • 例如,自动语音识别(ASR)系统在黑人说话者的识别性能要差于白人说话者
  • 社会偏见和刻板印象

    • 刻板印象是一种特定且普遍存在的社会偏见形式,其中的关联是被广泛持有、过度简化并且一般固定的。对于人类来说,这些关联来自于获得快速的认知启发。它们对于语言技术尤为重要,因为刻板印象是通过语言构建、获取和传播的
    • 社会偏见可能导致性能差异,如果大型语言模型无法理解表明反刻板印象关联的数据,则它们在这些数据上的表现可能会较差
  • 有害信息

    • 有毒性定义为“粗鲁、不尊重或不合理的行为,可能使某人想要离开一场对话”
  • 虚假信息

    • 误导性信息(Misinformation)指的是不论意图如何,被误导性地呈现为真实的错误信息
    • 虚假信息(Disinformation)则是有意为之地呈现错误或误导性信息以欺骗某一特定受众,其中存在对抗性质

10.LM法律

  • 版权问题:

    • 大模型训练数据来源广泛,其中可能包含大量受版权保护的作品。如何界定模型的原创性与侵权行为之间的界限?
    • 模型生成的文本是否享有版权?如果享有,版权归属如何确定?
  • 责任问题:

    • 大模型生成的内容可能包含虚假信息、歧视性言论等,如何界定模型提供者的责任?
    • 如果大模型造成实际损害,谁应承担赔偿责任?
  • 隐私问题:

    • 大模型训练过程中可能涉及大量个人隐私数据,如何保护这些数据?
    • 大模型生成的文本中是否可能泄露个人隐私信息?
  • 安全问题:

    • 大模型可能被用于生成虚假信息、进行网络攻击等非法活动,如何保障网络安全?
  • 伦理问题:

    • 大模型的发展可能带来一系列伦理问题,如就业歧视、社会不平等等。

11.环境影响

  • 大多数关于人工智能和机器学习对环境影响的工作都集中在温室气体排放上
  • 数据中心使用水进行冷却,发电是第二大用水需求,处理水和废水需要电力
  • 释放到环境中(空气、水、土壤)的化学物质,可致癌

12.Agent–基于大模型的智能体

一般而言,基于LLM的智能体框架包括以下核心组件:

  • 用户请求 - 用户的问题或请求

  • 智能体/大脑 - 充当协调者的智能体核心

  • 规划 - 协助智能体规划未来的行动

    • 无反馈规划

      • 思维链&思维树:分步骤细分复杂问题为一系列更小、更简单的任务
        在这里插入图片描述
    • 有反馈规划

      • 模型能够根据过去的行动和观察反复思考和细化执行计划
        在这里插入图片描述
  • 记忆 - 管理智能体的过往行为

    • 短期记忆 - 关注于当前情境的上下文信息,是短暂且有限的,通常通过上下文窗口限制的学习实现。
    • 长期记忆 - 储存智能体的历史行为和思考,通过外部向量存储实现,以便快速检索重要信息。
    • 混合记忆 -通过整合短期和长期记忆

如何系统的去学习大模型LLM ?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

事实上,抢你饭碗的不是AI,而是会利用AI的人。

科大讯飞、阿里、华为等巨头公司发布AI产品后,很多中小企业也陆续进场!超高年薪,挖掘AI大模型人才! 如今大厂老板们,也更倾向于会AI的人,普通程序员,还有应对的机会吗?

与其焦虑……

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高。

针对所有自学遇到困难的同学们,我帮大家系统梳理大模型学习脉络,将这份 LLM大模型资料 分享出来:包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)👈

一、LLM大模型经典书籍

AI大模型已经成为了当今科技领域的一大热点,那以下这些大模型书籍就是非常不错的学习资源。

在这里插入图片描述

二、640套LLM大模型报告合集

这套包含640份报告的合集,涵盖了大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(几乎涵盖所有行业)

在这里插入图片描述

三、LLM大模型系列视频教程

在这里插入图片描述

四、LLM大模型开源教程(LLaLA/Meta/chatglm/chatgpt)

在这里插入图片描述

LLM大模型学习路线

阶段1:AI大模型时代的基础理解

  • 目标:了解AI大模型的基本概念、发展历程和核心原理。

  • 内容

    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
    • L1.4.1 知识大模型
    • L1.4.2 生产大模型
    • L1.4.3 模型工程方法论
    • L1.4.4 模型工程实践
    • L1.5 GPT应用案例

阶段2:AI大模型API应用开发工程

  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。

  • 内容

    • L2.1 API接口
    • L2.1.1 OpenAI API接口
    • L2.1.2 Python接口接入
    • L2.1.3 BOT工具类框架
    • L2.1.4 代码示例
    • L2.2 Prompt框架
    • L2.3 流水线工程
    • L2.4 总结与展望

阶段3:AI大模型应用架构实践

  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。

  • 内容

    • L3.1 Agent模型框架
    • L3.2 MetaGPT
    • L3.3 ChatGLM
    • L3.4 LLAMA
    • L3.5 其他大模型介绍

阶段4:AI大模型私有化部署

  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。

  • 内容

    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景

这份 LLM大模型资料 包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)👈

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

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

相关文章

【C++ Primer Plus习题】10.4

问题: 解答: main.cpp #include <iostream> #include "sales.h" using namespace std; using namespace SALES;int main() {Sales s1;double de[QUARTERS] { 12.1,32.1,42.1,51.1 };Sales s2(de, QUARTERS);s1.showSales();s2.showSales();return 0; }sales.…

IP/TCP/UDP协议的关键知识点

导语&#xff1a;网络协议是理解网络情况的基础&#xff0c;当遇到网络问题时&#xff0c;首先可以从网络协议入手&#xff0c;熟悉的网络协议可以有效帮助小伙伴们排查或者说定位大概的问题方面。本文整理了目前最常用的网络通信协议&#xff0c;相信对小伙伴们肯定都有帮助。…

C#使用MQTT(一):MQTT服务端

MQTT&#xff08;Message Queuing Telemetry Transport&#xff09; 即时通讯协议&#xff0c; 开发商 IBM MQTT(消息队列遥测传输)是ISO 标准(ISO/IEC PRF 20922)下基于发布/订阅范式的消息协议。它工作在 TCP/IP协议族上&#xff0c;是为硬件性能低下的远程设备以及网络状…

将RK3588平台的TMC等USB function驱动挪出内核源码树

背景 前一段时间定位一个上位机通过USB-TMC连接下位机&#xff08;基于RK3588平台&#xff09;时界面发生卡顿的问题&#xff0c;发现USB-TMC驱动代码是放在内核源码树里跟内核一起编译的&#xff0c;觉着这样既不便于更换TMC 驱动版本&#xff08;每次修改代码都要重编内核&a…

2024年【广西安全员C证】考试题及广西安全员C证考试技巧

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 广西安全员C证考试题是安全生产模拟考试一点通生成的&#xff0c;广西安全员C证证模拟考试题库是根据广西安全员C证最新版教材汇编出广西安全员C证仿真模拟考试。2024年【广西安全员C证】考试题及广西安全员C证考试技…

AI电商产品一键换高清背景,就是这么简单(comfyui)

comfyui电商产品换背景工作流 工作流作者&#xff1a;Aki Hung c 工作流我放在了文末&#xff0c;需要的朋友自取&#xff01; 这里给大家准备好了一份详细的ComfyUI资料和安装包&#xff0c;扫描下方二维码即可获取&#xff01; 大家好&#xff0c;我是你们的老朋友&#xf…

10.4 网际层协议

网际层协议 真题

YashanDB产品调优实战:分享日常调优技巧及提升系统性能的实战经验

本文旨在提供一系列关于YashanDB产品的调优技巧和实战经验&#xff0c;帮助读者更好地理解和应用这些技术来优化数据库性能。内容将涵盖索引优化、查询优化、内存管理、参数配置&#xff0c;以及性能监控等多个方面&#xff0c;通过实际案例和详细的分析&#xff0c;展示如何有…

程序员学python的七大就业方向!

Python作为一种多功能的编程语言&#xff0c;其就业方向广泛且前景乐观。以下是Python的七大就业方向&#xff1a; Web开发&#xff1a; Python在Web开发领域具有重要地位&#xff0c;拥有Flask、Django等优秀的Web开发框架&#xff0c;可以快速搭建网站和Web应用。这些框架不仅…

【Redis】缓存击穿、缓存穿透、缓存雪崩原理以及多种解决方案

一、前言 在 Spring Cloud 微服务集群项目中&#xff0c;客户端的请求首先会经过 Nginx&#xff0c;Nginx 会将请求反向代理到 Gateway 网关层&#xff0c;接着才会将请求发送到具体的服务 service。 在 service 中如果要查询数据&#xff0c;则会到缓存中查询&#xff0c;如…

COT思维链,TOT思维树,GOT思维图,这些都是什么?

1. 导入 hallucinations 1. 什么是幻觉&#xff1f; 大模型出现幻觉&#xff0c;简而言之就是“胡说八道”。 用《A Survey on Hallucination in Large Language Models》文中的话来讲&#xff0c;是指模型生成的内容与现实世界事实或用户输入不一致的现象。 研究人员将大模型…

基于精益六西格玛管理方法进行生产线综合改善

生产线精益六西格玛改善是一个系统工程&#xff0c;只有对其进行系统的策划与组织&#xff0c;才能收到良好的改善效果。一般来说&#xff0c;需要成立一个专门的精益六西格玛推进组织&#xff0c;由其完成一系列的组织、准备工作。具体如下&#xff1a; &#xff08;1&#xf…

AutosarMCAL开发——基于EB FlsLoader驱动

目录 1.FlsLoader原理2.EB配置以及接口应用3.总结 1.FlsLoader原理 FlsLoader模块提供对Dflash bank0以及整个Pflash的操作。Dflash数据存储器Pflash程序储存器&#xff0c;因此在实际运用中 2.EB配置以及接口应用 EB配置步骤 1.取消安全检查&#xff0c;其他所有配置保持默…

《物流工程与管理》是什么级别的期刊?是正规期刊吗?能评职称吗?

​问题解答 问&#xff1a;《物流工程与管理》是不是核心期刊&#xff1f; 答&#xff1a;不是&#xff0c;是知网收录的第一批认定学术期刊。 问&#xff1a;《物流工程与管理》级别&#xff1f; 答&#xff1a;国家级。主管单位&#xff1a; 全国商品养护科技情报中心站 …

mongodb在Java中条件分组聚合查询并且分页(时间戳,按日期分组,年月日...)

废话不多说&#xff0c;先看效果图&#xff1a; SQL查询结果示例&#xff1a; 多种查询结果示例&#xff1a; 原SQL&#xff1a; db.getCollection("hbdd_order").aggregate([{// 把时间戳格式化$addFields: {orderDate: {"$dateToString": {"for…

分类预测|基于蜣螂优化极限梯度提升决策树的数据分类预测Matlab程序DBO-Xgboost 多特征输入单输出 含基础模型

分类预测|基于蜣螂优化极限梯度提升决策树的数据分类预测Matlab程序DBO-Xgboost 多特征输入单输出 含基础模型 文章目录 一、基本原理1. 数据准备2. XGBoost模型建立3. DBO优化XGBoost参数4. 模型训练5. 模型评估6. 结果分析与应用原理总结 二、实验结果三、核心代码四、代码获…

龙兴物联5G物联网主机:开启电力智能化新篇章

在当今时代&#xff0c;电力行业的智能化已成为不可阻挡的趋势。随着社会对电力需求的持续增长以及对供电质量和可靠性要求的不断提高&#xff0c;传统的电力系统管理模式逐渐难以满足需求。 智能化技术的融入为电力系统带来了革命性的变革。通过先进的传感器、通信网络和数据分…

ELK系列之一---探索ELK奇妙世界:初识日志界大名鼎鼎的ES集群!

目录 一、为什么要使用ELK 二、ELK简介 三、Elaticsearch入门 3.1、什么是elaticsearch 3.2、elaticsearch的底层优点 3.2.1、全文检索 3.2.2、倒排索引 3.3、elaticsearch集群原理 一、为什么要使用ELK 一般我们需要进行日志分析场景&#xff1a;直接在日志文件中 gre…

Linux -文件I/O操作

文章目录 C语言文件I/O相关函数操作fopen/fcolsefwritefseekfprintf/fscanffgets/fputs 系统调用相关接口open/closewrite/read C语言文件I/O相关函数操作 fopen/fcolse fopen 函数用于打开一个文件&#xff0c;并根据指定的模式&#xff08;如只读、只写、读写等&#xff09…

SaaS行业渠道管理的深度探索:两种增长模式哪个更强?

在当今数字化时代&#xff0c;SaaS&#xff08;Software-as-a-Service&#xff09;行业正以前所未有的速度重塑企业运营模式。随着市场的日益成熟与竞争的加剧&#xff0c;渠道管理不再仅仅是产品销售的通道&#xff0c;而是成为了SaaS企业构建生态体系、实现业务飞跃的重要策略…