一文读懂大语言模型:基础概念篇

         在当今AI时代,大语言模型正以前所未有的速度重塑我们的世界。作为NLP领域的明星,它们不仅理解语言,更创造语言,开启了智能交互的新纪元。 本文将介绍着重介绍大模型的概念,帮助大家简单了解其技术原理、发展历程,并介绍国内外比较优秀的大模型。 

目录

第一章:大模型的基础知识 

1.1 什么是大语言模型?

1.2 大语言模型的历史与发展

1.3 大语言模型的特点

1.4 大语言模型的能力

涌现能力

作为基座模型支持多元应用的能力

支持对话作为统一入口的能力

1.5 大语言模型分类

第二章:大模型的技术架构

2.1 Transformer 模型

2.2 训练与构建流程

第三章:常见的大语言模型

3.1 国内外大模型评分(截止到24年6月)

3.2 优秀模型介绍 - Qwen2-72B-Instruct(阿里云)

3.3 优秀模型介绍 - SenseChat5.0(商汤)

3.4 优秀模型介绍 - Hunyuan-pro(腾讯混元)

第四章:大模型的发展趋势和技术突破

4.1 减少“幻觉”

4.2 增加上下文长度

4.3 多模态

4.4 具身智能

4.5 复杂推理

4.6 自我迭代

附录


第一章:大模型的基础知识 

1.1 什么是大语言模型?

        大语言模型(LLM,Large Language Model),也称大型语言模型,是一种旨在理解和生成人类语言的人工智能模型。通俗点讲,是一种基于深度学习的人工智能模型,它能够从海量的文本数据中学习并理解人类语言的模式和规则。这些模型通常包含数十亿甚至更多的参数,通过复杂的神经网络结构来模拟人类的语言处理能力。

目前,国外的知名 LLM 有 GPT-3.5、GPT-4、PaLM、Claude 和 LLaMA 等,国内的有文心一言、讯飞星火、通义千问、ChatGLM、百川等。

1.2 大语言模型的历史与发展

        语言建模的研究始于20世纪90年代,最初采用了统计学习方法,通过前面的词汇来预测下一个词汇。然而,这种方法在理解复杂语言规则方面存在一定局限性。

        随后,研究人员不断尝试改进,其中在2003年,深度学习先驱Bengio在他的经典论文《A Neural Probabilistic Language Model》中,首次将深度学习的思想融入到语言模型中,使用了更强大的神经网络模型,这相当于为计算机提供了更强大的“大脑”来理解语言。这种方法让模型可以更好地捕捉语言中的复杂关系,虽然这一步很重要,但仍有改进的空间。

        大约在2018年左右,研究人员引入了Transformer架构的神经网络模型,通过大量文本数据训练这些模型,使它们能够通过阅读大量文本来深入理解语言规则和模式,就像让计算机阅读整个互联网一样。所以它对语言有了更深刻的理解。这种方法在很多任务上表现得非常好。

        与此同时,研究人员发现,随着语言模型规模的扩大(增加模型大小或使用更多数据),模型展现出了一些惊人的能力,通常在各种任务中表现显著提升。2020年至今,大语言模型朝多模态融合方向发展,用来理解和处理多种类型的数据输入,例如文本、图像、音频和视频等

1.3 大语言模型的特点

  • 巨大的规模:LLM通常具有巨大的参数规模,可以达到数十亿甚至数千亿个参数。这使得它们能够捕捉更多的语言知识和复杂的语法结构。

  • 预训练和微调:LLM采用了预训练和微调的学习方法。它们首先在大规模文本数据上进行预训练(无标签数据),学会了通用的语言表示和知识,然后通过微调(有标签数据)适应特定任务,从而在各种NLP任务中表现出色。

  • 上下文感知:LLM在处理文本时具有强大的上下文感知能力,能力理解和生成依赖于前文的文本内容。这使得它们在对话、文章生成和情境理解方面表现出色。

  • 多语言支持:LLM可以用于多种语言,不仅限于英语。它们的多语言能力使得跨文化和跨语言的应用变得更加容易。

  • 多模态支持:一些LLM已经扩展到支持多模态数据,包括文本、图像和语音。这意味着它们可以理解和生成不同媒体类型的内容,实现更多样化的应用。

  • 涌现能力:LLM表现出令人惊讶的涌现能力,即在大规模模型中出现但在小型模型中不明显的性能提升。这使得它们能够处理更复杂的任务和问题。

  • 多领域应用:LLM已经被广泛应用于文本生成、自动翻译、信息检索、摘要生成、聊天机器人、虚拟助手等多个领域,对人们的日常生活和工作产生了深远的影响。

  • 伦理和风险问题:尽管LLM具有出色的能力,但它们也引发了伦理和风险问题,包括生成有害内容、隐私问题、认知偏差等。因此,研究和应用LLM需要谨慎。

1.4 大语言模型的能力

  • 涌现能力

         区分大语言模型(LLM)与以前的预训练语言模型(PLM)最显著的特征之一是它们的涌现能力。涌现能力指的是一种令人惊讶的能力,它在小型模型中不明显,但在大型模型中显著出现。可以类比到物理学中的相变现象,涌现能力的显现就像是模型性能随着规模增大而迅速提升,超过了随机水平,也就是我们常说的量变引起了质变。具体类说,涌现能力可以定义为与某些复杂任务相关的能力,但我们更关注的是它们具备的通用能力,也就是能够应用于解决各种任务的能力。接下来,让我们简要介绍三个典型的LLM涌现能力:

上下文学习:上下文学习能力是由GPT-3首次引入的。这种能力允许语言模型在提供自然语言指令或多个任务示例的情况下,通过理解上下文并生成相应输出的方式来执行任务,而无需额外的训练或参数更新。

指令遵循:通过使用自然语言描述的多任务数据进行微调,也就是所谓的指令微调,LLM被证明在同样使用指令形式化描述的未见过的任务上表现良好。这意味着LLM能够根据任务指令执行任务,而无需事先见过具体示例,这展示了其强大的泛化能力

逐步推理:小型语言模型通常难以解决涉及多个推理步骤的复杂任务,例如数学问题。然而,LLM通过采用“思维链”推理策略,可以利用包含中间推理步骤的提示机制来解决这些任务,从而得到最终答案。据推测,这种能力可能是通过对代码的训练获得的。

  • 作为基座模型支持多元应用的能力

        在2021年,斯坦福大学等多所高校的研究人员提出了基座模型(foundation model)的概念,这更清晰地描述了之前学界所称的预训练模型的作用。这是一种全新的AI技术范式,借助于海量无标注数据的训练,获得可以适用于大量下游任务的大模型(单模态或者多模态)。这样,多个应用可以只依赖一个或少数几个大模型进行统一建设。

        大语言模型是这个新模式的典型例子,使用统一的大模型可以极大地提高研发效率,相比于分散的模型开发方式,这是一项本质上的进步。大型模型不仅可以缩短每个具体应用的开发周期,减少所需人力投入,也可以基于大模型的推理、常识和写作能力,获得更好的应用效果。因此,大模型可以成为AI应用开发的大一统基座模型,这是一个一举多得、全新的范式,值得大力推广。

  • 支持对话作为统一入口的能力

        让大语言模型真正火爆的契机,是基于对话聊天的ChatGPT。事实上,业界很早就发现了用户对于对话交互的特殊偏好,陆奇在微软期间2016年就推进“对话即平台(conversation as a platform)”的战略。此外,苹果Siri、亚马逊Echo等基于语音对话的产品也非常受欢迎,反映出互联网用户对于聊天和对话这种交互模式的偏好。虽然之前的聊天机器人存在各种问题,但大型语言模型的出现再次让聊天机器人这种交互模型可以重新想象。用户愈发期待像钢铁侠中“贾维斯”一样的人工智能,无所不能、无所不知。这引发我们对于智能体(Agent)类型应用前景的思考,Auto-GPT、微软Jarvis等项目已经出现并受到关注,相信未来会涌现出很多类似的以对话形态让助手完成各种具体工作的项目。

1.5 大语言模型分类

自编码器模型可以同时利用上下文的信息,因此它们非常适合于理解任务,如文本分类、情感分析等。

自回归模型在训练过程中预测下一个词的概率,通常按照序列的顺序逐个预测下一个单词。它们只能利用已知的前序单词信息来预测下一个单词,不能利用未来的上下文信息。因此,自回归模型适合于生成任务,例如文本生成、对话系统和机器翻译等。

第二章:大模型的技术架构

2.1 Transformer 模型

       Transformer是一种用于自然语言处理(NLP)和其他序列到序列(sequence-to-sequence)任务的深度学习模型架构,它在2017年由Vaswani等人首次提出。 Transformer架构是大型语言模型背后的核心架构。它采用了自注意力机制来捕捉输入序列中的长距离依赖关系,避了传统循环神经网络(RNN)中存在的梯度消失问题。

        梯度消失(Gradient Vanishing)是深度神经网络训练过程中常见的一个问题,就像我们在玩一个传话游戏,队伍中的每个人都需要将前一个人说的话传给下一个人。在这个游戏中,如果每个人在传话时都只能模糊地复述他们听到的内容(比如声音太小、有干扰等),那么当信息传到队伍的最前端时,原本清晰的信息可能已经变得难以辨认,甚至完全消失。这个过程就类似于神经网络中的梯度消失现象。

        在神经网络中,梯度是指导网络权重如何更新的重要信号。在训练过程中,梯度从输出层开始,通过反向传播算法逐层传递到输入层,用于指导每一层权重的更新。然而,如果网络的层数很深,且每层都使用了某些激活函数(如Sigmoid或Tanh),这些激活函数在输入值很大或很小的时候,其导数会接近于零。这意味着在反向传播过程中,梯度在通过这些层时会逐渐变小,就像传话游戏中的信息逐渐模糊一样。

        当梯度变得非常小时,它几乎无法对权重产生有效的更新,导致网络底层的权重几乎不再变化,这就是梯度消失问题。这会导致网络训练过程变得非常缓慢,甚至可能完全停滞,因为底层的权重无法学习到有效的特征表示,从而影响整个模型的性能。

以下是Transformer的一些重要组成部分和特点:

  • 自注意力机制(Self-Attention):这是Transformer的核心概念之一,它使模型能够同时考虑输入序列中的所有位置,而不是像循环神经网络(RNN)或卷积神经网络(CNN)一样逐步处理。自注意力机制允许模型根据输入序列中的不同部分来赋予不同的注意权重,从而更好地捕捉语义关系。

        自注意力机制(Self-Attention Mechanism)是深度学习中的一种技术,最初在自然语言处理领域被广泛采用,并逐渐扩展到了计算机视觉和其他领域。为了通俗易懂地解释这个概念,我们可以将其类比为人类阅读和理解文章的方式。

        想象一下你正在阅读一篇文章。当你读到某个词语时,你会不自觉地联系上下文来更好地理解这个词的意思。比如,“银行”这个词,在不同的上下文中可能是指“河岸”或“金融机构”。你的大脑会根据周围的词汇(比如“存款”、“贷款”等金融相关词汇)来确定“银行”在这里指的是金融机构。

        自注意力机制的工作原理类似。它让模型能够关注输入序列中的不同部分,并根据这些部分的相关性来调整其对每个部分的重视程度。这样,模型可以学会给重要的词分配更多的权重,而给不那么重要的词分配较少的权重。

  • 多头注意力(Multi-Head Attention):Transformer中的自注意力机制被扩展为多个注意力头,每个头可以学习不同的注意权重,以更好地捕捉不同类型的关系。多头注意力允许模型并行处理不同的信息子空间。

多头注意力(Multi-Head Attention)它允许模型从不同的角度或表示空间来查看输入数据,从而捕捉到更丰富的信息。每个“头”(Head)都可以独立地计算注意力权重,这意味着它可以专注于输入的不同方面。

以自然语言处理为例,一个句子“狗追着猫跑”可以有不同的解读角度:

  1. 语法角度:关注主语、谓语、宾语等;

  2. 动作角度:强调“追”的动作;

  3. 情境角度:考虑场景中动物之间的关系。

多头注意力机制通过并行计算这些不同的注意力向量,然后将它们组合起来形成最终的输出。这种方式使得模型能够在处理复杂的输入时变得更加灵活和强大,尤其是在处理长距离依赖和多义性问题时表现优异。

  • 堆叠层(Stacked Layers):Transformer通常由多个相同的编码器和解码器层堆叠而成。这些堆叠的层有助于模型学习复杂的特征表示和语义。
  • 位置编码(Positional Encoding):由于Transformer没有内置的序列位置信息,它需要额外的位置编码来表达输入序列中单词的位置顺序。
  • 残差连接和层归一化(Residual Connections and Layer Normalization):这些技术有助于减轻训练过程中的梯度消失和爆炸问题,使模型更容易训练。
  • 编码器和解码器:Transformer通常包括一个编码器用于处理输入序列和一个解码器用于生成输出序列,这使其适用于序列到序列的任务,如机器翻译。

2.2 训练与构建流程

(1)预训练阶段: 使用超大规模文本对模型进行训练,训练任务为“预测下一个token”,训练的数据量往往需要几万亿token。

(2)指令微调:使用指令数据,让模型的输出格式与人类对齐,使其具备chat的能力。从5.4w人工标注的指令集中抽取1.3w,在GPT-3大模型上微调。也就是说从测试用户提交的 prompt 中随机抽取一批,靠专业的标注人员,给出指定 prompt 的高质量答案,然后用这些人工标注好的 < prompt,answer > 数据来 Fine-tune GPT 3.5 模型,从而让 GPT 3.5 初步具备理解指令中蕴含的意图的能力;

(3)奖励函数:基于新模型生成一批数据集<prompt,response>,重组成3.3w排序对形式,人工标注后,用于训练奖励模型。奖励模型结构同基座LLM,论文里全部用6B级别,规模大了反而不好。也就是说,随机抽样一批用户提交的 prompt,然后使用第一阶段 Fine-tune 好的冷启动模型为每个 prompt 生成 K 个不同的回答,再让标注人员对 K 个结果进行排序,以此作为训练数据,通过 pair-wise learning to rank 模式来训练reward model;

假设我们有一个机器人需要学习如何在一个迷宫中找到出口。奖励模型可以如下定义:

  • 当机器人接近出口时,给予正向奖励。

  • 当机器人撞墙或走回头路时,给予负向奖励。

  • 如果机器人找到了出口,给予较高的正向奖励。

  • 如果机器人长时间没有进展,可以给予轻微的负向奖励以鼓励探索。

通过这种方式,奖励模型指导机器人学习如何有效地探索环境并找到出口。奖励模型是强化学习中不可或缺的一部分,它通过定义奖励信号来指导代理学习最优策略。奖励模型的设计对于强化学习的成功至关重要,良好的奖励设计可以使代理更快地学习,并达到更高的性能水平。

(4)强化学习:使用人类反馈或者偏好数据来训练模型,使模型的输出更加符合人类的价值观或者预期行为。利用上一阶段学好的 RM 模型,靠 RM 打分结果来更新预训练模型参数。RLHF的具体实现,RM奖励模型作为critic(评论家),SFT阶段的大模型作为actor(行动家),二者相互配合,actor学习指令集,critic评估打分,再更新权重,进入下一轮。论文里对比两种损失函数,后采用混合预训练损失PPT_ptx,兼顾预训练的效果。

强化学习的目标是找到一个策略(Policy),即一个函数或者规则,该策略规定了在任何给定状态下智能体应该采取什么行动以最大化长期奖励。

在这里插入图片描述

第三章:常见的大语言模型

3.1 国内外大模型评分(截止到24年6月)

superclue_2406 (cluebenchmarks.com)

3.2 优秀模型介绍 - Qwen2-72B-Instruct(阿里云)

3.3 优秀模型介绍 - SenseChat5.0(商汤)

3.4 优秀模型介绍 - Hunyuan-pro(腾讯混元)

第四章:大模型的发展趋势和技术突破

        虽然大语言模型领域已经实现了众多技术突破,但仍有不少可迭代和提升的领域,如减少“幻觉”、GPT中文、增加上下文长度、实现多模态、具身智能、进行复杂推理及自我迭代。

4.1 减少“幻觉”

        幻觉可以理解为一种错误输出,Meta将其定义为“自信的假话”。幻觉的产生常见原因是语言模型采集的知识或数据密度不够。然而,幻觉也可以被视为创造力的体现,如同诗人在酒后能写出美妙的诗篇,AI的幻觉也可能带来奇妙的内容。减少幻觉的方法包括使用更高质量的语料库进行训练,通过微调和强化学习提高模型的准确性和适应性,以及在模型的提示词中加入更多背景信息。

4.2 增加上下文长度

        增加上下文长度。上下文长度相当于语言模型的脑容量,现在通常是32K,最高为128K,即不到10万字或英文单词。为了让语言模型理解复杂文本、处理复杂任务,需要进一步扩大上下文长度。

4.3 多模态

        人类主要依靠视觉获取信息,而当前语言模型主要依靠文本数据进行训练。视觉数据能帮助语言模型更好地认知物理世界。2023年,视觉数据被规模化地加入到模型训练中,如GPT-4引入了多模态数据,Google的Gemini模型也使用了大量图像和视频数据。虽然Gemini的多模态交互有明显提升,但复杂推理等智力的提升尚未显现。

4.4 具身智能

       即基于物理身体进行感知和行动的智能系统,能从环境中获取信息、理解问题、做出决策并行动。地球上的所有生物都可以说是具身智能,如人形机器人就是具身智能的一种形式,为AI延展出了能活动的“手脚”。

4.5 复杂推理

        通常,GPT中文会一次性地给出回答,没有明显的多步推理或回退迭代。而人类在思考复杂问题时,会在纸上列出一些步骤,反复推演和计算。研究人员通过思维树等思考模型,试图让GPT中文学会复杂的多步骤推理。

4.6 自我迭代

        现在的语言模型主要依靠人类设计算法、提供算力和喂数据。未来,语言模型能否实现自我迭代?这可能依赖于新的模型训练和微调方法,如强化学习。据说OpenAI正在尝试一种代号为“Q*”的训练方法,研究如何让AI自我迭代,是未来的发展方向。

Q* 训练方法通常指的是在强化学习中追求最优Q值(Q*)的训练方法。在强化学习中,Q值(Q-function)是状态-动作对的价值函数,它表示在给定状态下采取某个动作所能获得的期望累积奖励。Q* 表示的是最优Q值,即在给定状态下的每个动作所能获得的最大期望累积奖励

        大模型还处在高速发展期,还有很大的提升空间。除了以上几点,还需解决和提升诸如可解释性、安全性及输出内容更符合人类价值观等方面的问题。 

附录

  1. LLM(大语言模型)——大模型简介_语言模型_code recored-GitCode 开源社区 (csdn.net)
  2. 《深入浅出LLM基础篇》(一):大模型概念与发展_大模型rm-CSDN博客
  3. superclue_2406 (cluebenchmarks.com)
  4. 【超详细】【原理篇&实战篇】一文读懂Transformer-CSDN博客
  5. LLM大语言模型原理、发展历程、训练方法、应用场景和未来趋势_llm发展历程-CSDN博客

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

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

相关文章

Autosar(Davinci) --- 创建一个Implementation Data Types

前言 这里我们讲一下如何创建一个Implementation Data Types&#xff08;IDT) 一、什么是IDT 二、如何创建一个IDT 鼠标右键【Implementation Data Types】,选择【new Type Reference...】 起一个名字【IdtDoorState】&#xff0c;Data Types选择【boolean】&#xff0c;这里…

海康VisionMaster使用学习笔记18-常见问题排查

常见问题排查思路 常见问题排查方法-安装阶段 常见问题排查方法-启动阶段 常见问题排查方法-使用阶段 常见问题排查方法-相关资料 关于VisionMaster使用的学习笔记到这里告一段落了,继续海康二次开发的学习. 海康二次开发 海康相机二次开发学习笔记1-环境配置

设计模式-结构型模式-适配器模式

1.适配器模式定义 将类的接口转化为客户期望的另一个接口&#xff0c;适配器可以让不兼容的两个类一起协同工作&#xff1b; 1.1 适配器模式的优缺点 优点 将目标类和适配者类解耦&#xff0c;通过引入一个适配器类来重用现有的适配者类&#xff0c;无需修改原有结构&#x…

linux安装elasticsearch

只考虑单机的情况&#xff0c;因为没有那么大的需求 首先创建个文件夹用于存放elasticsearch cd /opt/mkdir modulecd module根据官网提示下载 官网文档链接 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.15.0-x86_64.rpmwget https://artifac…

USB详解,配置及难点

一、USB发展历史 二、USB简介 USB有USB1.0/1.1/2.0/3.0多个版本&#xff0c;标准USB由4根线组成,VCC&#xff0c;GND&#xff0c;D&#xff0c;D-&#xff0c;其中D和D-是数据线&#xff0c;采用差分传输。在USB主机上,D-和D都是接了15K的电阻到地,所以在没有设备接入的时候,D、…

2024年第六届控制与机器人国际会议(ICCR 2024)即将召开!

2024年第六届控制与机器人国际会议&#xff08;ICCR 2024&#xff09;将于2024年12月5日至7日在日本横滨举行。智能机器人结合了多种概念、学科和技术&#xff0c;共同创造出各种有用的设备、操作器和自主实体&#xff0c;为特定人类社区服务&#xff0c;如制造设备、医疗和远程…

极光推送(JPush)赋能登虹科技,打造智慧视觉云平台新体验

近日&#xff0c;中国领先的客户互动和营销科技服务商极光&#xff08;Aurora Mobile&#xff0c;纳斯达克股票代码&#xff1a;JG&#xff09;与杭州登虹科技有限公司&#xff08;以下简称“登虹科技&#xff08;Closeli&#xff09;”&#xff09;达成合作&#xff0c;借助极…

C++学习笔记——打印ASCII码

一、题目描述 二、代码 #include <iostream> using namespace std; int main() {char a_char;int a_int;cin >> a_char;a_int a_char;cout << a_int;return 0; }

企业建站技术路线探索

前言 企业站是指企业或公司创建的官方网站&#xff0c;用于展示企业信息、产品和服务。它通常包括公司简介、产品或服务介绍、联系方式、新闻更新等内容。企业站的目的是提升品牌形象、提供客户服务和促进业务发展。在跨境贸易中&#xff0c;企业建站尤为关键&#xff0c;因为…

python-docx复制的行格式多出一个单元格

目录 一、问题 二、原因 三、解决方法 一、问题 我需要在下述表格中第三行的编号、证件名称、来源、证明对象一列的第三行填入1、1、1、1&#xff0c;之后复制第三行的格式&#xff0c;再填入2、2、2、2&#xff0c;再复制第三行的格式&#xff0c;填入3、3、3、3&#xff…

VBA技术资料MF180:将某个文件夹中的某类图片导入Word

我给VBA的定义&#xff1a;VBA是个人小型自动化处理的有效工具。利用好了&#xff0c;可以大大提高自己的工作效率&#xff0c;而且可以提高数据的准确度。“VBA语言専攻”提供的教程一共九套&#xff0c;分为初级、中级、高级三大部分&#xff0c;教程是对VBA的系统讲解&#…

工作实战-项目压测记录

1-1-1每分钟的单量 1-1-2第二版测试 2022年5月16日 17:43:11 成功 失败 其它(nginx) 真实入库单量 总单量 52 1 447 500 2022年5月16日 19:42:18 成功 失败 其它(nginx) 真实入库单量 总单量 311 689 306 1000 2-0-1. 20线程-2000单执行结果 2-1-0. 40线…

关键点检测——HRNet源码解析篇

&#x1f34a;作者简介&#xff1a;秃头小苏&#xff0c;致力于用最通俗的语言描述问题 &#x1f34a;专栏推荐&#xff1a;深度学习网络原理与实战 &#x1f34a;近期目标&#xff1a;写好专栏的每一篇文章 &#x1f34a;支持小苏&#xff1a;点赞&#x1f44d;&#x1f3fc;、…

JavaEE 第18节 TCPUDP优缺点(对比)

目录 前言1、UDP(User Datagram Protocol)优点缺点 2、TCP(Transmission Control Protocol)优点缺点 3、总结 前言 基于TCP/IP协议栈&#xff0c;TCP和UDP属于传输层协议。在Java生态中也分别提供了相关套接字&#xff08;Socket&#xff09;1的API&#xff0c;方便网络编程。…

C++资料电子书资源PDF免费分享

C电子书 这里写目录标题 C电子书目录资源获取 目录 《数据结构(C语言版)》(严蔚敏 吴伟明编著).pdf 7.6MB 《C程序设计题解与上机指导》(第二版).谭浩强.pdf 7.0MB 《C程序设计(第四版)学习辅导》.谭浩强.扫描版.pdf 13.1MB 《C程序设计》第一版&#xff08;谭浩强&#xff09…

反汇编快速定位内核OOPS

前言 简单的说&#xff0c;出现内核奔溃&#xff0c;我们可以通过串口日志提供的信息&#xff1b;使用gdb反汇编出问题函数所在的文件&#xff0c;然后使用《disassemble /m 函数名》查看具体函数的源码和汇编码&#xff1b;这样能直观的看到源代码对应的汇编码干了什么&#…

大数据基础:数仓架构演变

文章目录 数仓架构演变 一、传统离线大数据架构 二、​​​​​​Lambda架构 三、Kappa架构 四、​​​​​​​​​​​​​​混合架构 五、湖仓一体架构 六、流批一体架构 数仓架构演变 20世纪70年代&#xff0c;MIT(麻省理工)的研究员致力于研究一种优化的技术架构&…

海明码的基本原理

海明码 一、什么是海明码二、校验位的分布方式1、奇偶校验2、海明码校验位 三、检错原理四、纠错原理 一、什么是海明码 首先来看一下百度的介绍&#xff1a; ‌‌海明码&#xff08;‌Hamming Code&#xff09;‌是一种具有检错和纠错能力的编码方式&#xff0c;由‌理查德汉…

下载(win10-win11)微软官方ISO镜像方法

下载Win11安装镜像。 官方下载win10地址&#xff1a;下载 Windows 10 官方下载win11地址&#xff1a;Download Windows 11 下载完成后&#xff0c;运行 MediaCreationTool_Win11_23H2.exe 等待完成100%跳转页面后&#xff0c;关闭界面即可。

IDEA工具设置默认使用maven的settings.xml文件

第一步&#xff1a;打开idea工具&#xff0c;选中 File ——> New Projects Setup ——> Settings for New Projects 第二步&#xff1a;先设置下自动构建项目这个选项 第三步&#xff1a;选中 Build Tools ——> Maven&#xff0c;让后就可以设置自己安转的maven和se…