机械鹦鹉与真正的智能:大语言模型推理能力的迷思

编者按: 大语言模型真的具备推理能力吗?我们是否误解了"智能"的本质,将模式匹配误认为是真正的推理?

本文深入探讨了大语言模型(LLMs)是否真正具备推理能力这一前沿科学问题,作者的核心观点是:LLMs 本质上是高级的模式识别机器,而非真正具备逻辑推理能力。

首先,作者指出,尽管大语言模型在各类推理能力基准测试中表现出色,但其性能实际上高度依赖于训练数据中的模式识别,而非真正的逻辑推理。其次,文章质疑了目前广泛使用的思维链(Chain-of-Thought)提示词技术。再者,通过对数学推理的深入分析,作者指出 LLMs 实际上并不理解数学概念,而是在寻找和匹配模式。即便在复杂的数学问题中,模型也常常表现出对无关信息的过度敏感性。

本文作者并未贬低大语言模型的价值,而是客观地将其定位为拥有非凡记忆能力的系统,期待未来能够开发出真正具备推理能力的人工智能架构。

作者 | Salvatore Raieli

编译 | 岳扬

image generated by the author using DALL-E

我很少遇到能够进行推理的数学家。— 柏拉图

推理能够引导出结论,但这些结论是否确凿,还需通过经验的验证才能确定。— 罗杰·培根

大语言模型(LLMs)[1]展现出的性能惊人,特别是在自然语言处理[2]的传统领域(比如回答问题)方面表现突出。更令人惊讶的是,它们在那些需要逻辑推理的复杂任务(如编程和数学问题解决)上也取得了进步。长期以来,这些能力一直被认为是人类独有的。因此,当人们提出大语言模型(LLMs)能够解决那些需要推理的任务时,这个观点引发了激烈的讨论。

大语言模型(LLMs)真的能够进行推理吗?还是它们仅仅是比较高级的模式匹配器(pattern matchers)?

推理能力对于人工智能系统与人类的有效互动以及在执行关键任务时的应用具有决定性意义。这种能力要求系统能够逻辑性地推理(reason logically)、进行推断(conduct inference)、解决问题,并基于现有信息作出决策。在科学探索、医疗健康、金融领域以及教育行业中,能够为我们提供实质性帮助的模型,同样需要具备这些技能。

新模型的问世使得这场讨论愈发激烈。随着 OpenAI GPT-4o1[3] 的发布,人们对使用思维链(COT)训练模型来提高推理能力产生了浓厚的兴趣。经过这种训练的大语言模型(LLMs)所取得的成果让一些公司宣称,现在的 LLMs 已经具备了推理能力,AGI 离我们越来越近了。

因此,当前的我们正处于一场深刻的大辩论之中:一方面,有公司和研究人员坚称这些模型已经拥有了推理能力[4];而另一方面,也有人将 LLMs 贬称为“随机鹦鹉(stochastic parrots)”。

本文将着重探讨以下问题的答案:

  • 何谓推理?
  • 大语言模型(LLMs)是否具备真正的推理能力,还是仅仅在做鹦鹉学舌?
  • 我们对于推理能力的评估方法是否准确无误?

01 何谓推理(reasoning)?

推理是根据现有信息、逻辑和分析内容得出结论或做出决定的基本认知过程。根据亚里士多德的观点,推理可分为两种类型:

  • 演绎推理(Deductive reasoning) :从普遍原理中得出具体结论。
  • 归纳推理(Inductive reasoning) :通过观察现象来形成一般性结论。

传统观念认为,推理是人类独有的能力。但现在我们发现,灵长类、章鱼甚至鸟类也展现出了一定的推理能力,它们能够进行决策和解决问题。

一般来说,推理被视为解决复杂问题或做出明智选择的过程。这要求识别问题、将其拆分为小问题、发现其中的规律,然后选择最佳解决方案。决策过程也相似,需要识别问题、寻找规律,并在做出选择前对备选方案进行评估。

然而,这些定义存在不明确之处。按照这些标准,LLM 也可以被视为具有推理能力。

02 LLM 能够推理吗?

在一系列评估推理能力的基准测试中(如 GLUE[5]、SuperGLUE[6] 和 Hellaswag[7]),大语言模型(LLMs)的表现甚至超越了人类。有人据此认为,LLMs 可以进行推理并得出合乎逻辑的结论。

LLMs 推理能力的提升主要得益于两个方面:

  • LLMs 在所有针对推理能力评估设计的基准测试中都表现出了推理能力。
  • 随着模型参数、token 数量和计算资源的增加,模型的新特性不断涌现。

采用思维链(CoT)等技巧,可以让模型发挥其潜力。如果我们认为 LLMs 不具备推理能力,那么我们就需要对上述观点提出质疑。

2.1 LLMs 在推理能力基准测试中的惊艳表现

当有人声称 LLM 不会推理时,AGI 的支持者会回应说:“看看推理能力基准测试[8]的结果。”这就像是“鸭子测试(duck test)”:如果它能像人一样解决问题,做出决策,甚至在推理能力基准测试中胜出,那么它很可能就具有人类拥有的推理能力。

然而,也有学者对此表示怀疑1。模型看似能够进行复杂的推理,但实际上它们依赖的是概率模式匹配,而非严谨的形式推理(formal reasoning)。

模型对特定 tokens 的过度依赖表明,它更多的是在利用输入数据的表面特征,而非深入理解背后推理任务的本质。—— source[9]

换言之,这些脆弱的表现揭示了 LLMs 在遇到与训练过程中所见模式不同的新案例时,缺乏泛化能力。一旦改变例子中的 tokens,就会导致逻辑错误(因为模型无法将新例子与训练数据中的模式相对应)。因此,模型对于测试案例极为敏感,容易受其影响(这也解释了为何模型有时看似推理能力惊人,有时却会以失败告终)。

通过扰动例子中的 tokens,我们可以看到模型的脆弱性,扰动导致 LLM 无法解决问题(说明其“推理”过于依赖特定的 tokens,并将它们与训练集中的内容相匹配)。这一点通过训练数据中例子的出现频率与测试表现之间的相关性得到了验证8。

“图论中经典的‘二十五匹马’问题。上面两幅子图由 GPT-4o 生成,仅供参考,通过将‘马’改为‘兔子’来演示这一概念,这与问题的基本逻辑无关。下面两幅子图显示的是 GPT-4 和 Claude 的实验结果,其中动物名称和数量的扰动导致性能显著下降”。图片来源:https://arxiv.org/pdf/2406.11050

这种现象被称为“提示词敏感性”(即模型对于语义上等价的不同提示词会有不同的反应)11-12。这意味着模型对于与训练文本更为贴近的提示词会有更好的响应。

大语言模型(Large Language Models,LLM)同样对噪声敏感2。实际上,这些模型很容易受到无关上下文的影响,导致其在进行推理时的表现大打折扣。此外,即便是那些专门用于提升推理能力的提示词技巧[10],也无法完全消除噪声的影响。这表明,噪声对模型记忆中模式识别能力的干扰是显著的。

2.2 智力被视为一种“涌现属性”

许多人认为,智力是随着生物系统自然趋向于复杂化和能力提升而逐渐涌现的[11]。如果生物不能适应这种变化,就会在进化压力下被淘汰。因此,进化过程会导致生物变得越来越聪明或越来越特化。智力就是在这样的压力下逐步进化而来的。智力的发展显然需要资源,因此大脑发展到了支持智力发展的水平。有些人认为,在模式训练(pattern training function)中的损失函数就如同一种进化压力。因此,一旦模型拥有了足够的“神经元”,它们就能够发展出推理能力(用专业术语来说,就是随着模型规模的扩大,推理能力逐渐显现)。

如前所述,这种推理能力的增强被认为是模型规模增加的结果(无论是参数的数量还是训练 tokens 的数量)。但是,在一些学者看来,推理能力是一种需要达到一定参数阈值才能显现的涌现属性。然而,后续的研究表明,大语言模型(Large Language Models,LLMs)中的涌现属性[12]可能是一种测量误差,因此,整个理论就与推理能力的突然出现3, 13有关了。

2.3 CoT is not all you need

其他学者认为,大语言模型(Large Language Models,LLMs)本身具备推理能力,但这种能力需要通过特定方式来激活。思维链(Chain-of-thought,CoT)提示词就是这样一种方法,它通过中间推理过程帮助模型释放其潜力,进而引导模型在解决算术问题时得出正确答案4。然而,几周前的一篇文章对 CoT 的实际效用提出了质疑5:

在 MMLU 基准测试中,CoT 带来的性能提升,多达 95% 是因为问题或生成的输出中包含了“=”符号。对于非数学问题,我们并未发现任何迹象表明 CoT 在什么情况下会有帮助。—— source[13]

由此可见,CoT 在解决数学问题上的确有所帮助,但它并不能真正激活 LLM 的推理潜力。尽管如此,CoT 仍被吹嘘为灵丹妙药,并被认为是最新一代 LLMs 推理能力的基础[14]。

通过对思维链(Chain-of-thought,CoT)相关文献的元分析发现,无论是在数学领域还是其他类型的符号推理领域,CoT 都能带来显著的性能提升(红色虚线所示为不同实验中 CoT 带来的平均改进效果)。图片来源:https://arxiv.org/pdf/2409.12183

这些发现似乎表明,LLMs 并不具备常识推理能力,但这并不意味着它们完全不具备其他类型的推理能力。

LLMs 真的能够进行数学推理吗?

尽管数学推理似乎是 LLMs 在推理方面的优势,但有研究表明,LLMs 可能只是在识别模式(patterns)。也就是说,它们在寻找模式(patterns)时,并不真正理解这些数学符号的含义。

一些研究者指出6,LLMs 在数学上无法进行形式推理(formal reasoning),因为它们不能制定出行动计划(这里所说的计划是指一系列行动策略,通过执行这些策略,可以从初始状态达到期望的最终状态)。没有这样的计划,模型就只能简单复现训练中遇到的模式(patterns)[15],而无法真正解决问题。在某些情况下,甚至可能是用户无意中引导 LLM 找到了答案7:

这就是所谓的“聪明的汉斯效应(The Clever Hans Effect)”,LLM 只是在进行猜测,而真正引导它的是处于环路中的人类,他们凭借对正确与错误解决方案的了解,无意中操控了 LLM 的输出 —— 即便他们并非有意为之。因此,确保准确性(如果有的话)的功过都应该归咎于这个环路中的人类。source:https://arxiv.org/pdf/2403.04121

LLMs 所声称的推理能力,有时实际上是由于参与其中的人类在不自觉中提供了有益的、连续的提示词。图片来源:https://arxiv.org/pdf/2403.04121

综上所述,支持大语言模型(LLM)存在推理能力的人们认为,我们之所以看到模型的这些行为,有多方面的原因。但是有几项研究表明,它们与这些观点存在冲突。

尽管那些研究坚称大语言模型(LLM)不具备推理能力,但它们在所有基准测试中都取得了惊人的成绩,甚至在一些复杂的测试中超越了人类的表现[16]。因此,我们提供的证据似乎更多是基于理论,而不是基于大语言模型(LLM)解决数学和复杂问题能力的实证研究。

是否是因为人类对于被大语言模型(LLM)超越而感到不满,还是其中确实存在问题呢?

2.4 发现一名学生在抄袭

无疑,看到有人声称大语言模型(LLM)的表现堪比博士生,这让人感到不悦:

o1-preview 模型的设计初衷是处理具有挑战性的任务,它通过像人一样花更多时间思考和优化回答来应对复杂问题。在测试中,这种方法使得模型在物理、化学和生物等领域的表现接近博士生水平。source:https://venturebeat.com/ai/forget-gpt-5-openai-launches-new-ai-model-family-o1-claiming-phd-level-performance/

暂且不提这种不快,问题在于我们如何衡量这些模型的能力。我们可能并没有用正确的方法来测试它们的推理能力,是时候采用新的评测体系了。

这些模型都在 GSM8K(Grade School Math 8K)[17]数据集上进行测试,这个数据集提供了复杂的算术问题,但由于训练 LLM 时使用了数十亿个数据 tokens,存在答案泄露的风险。此外,这个数据集只提供了一个固定问题集上的单一度量标准,对我们了解 LLM 的推理能力帮助有限(有趣的是,LLM 可能在推理完全错误的情况下仍然给出正确答案)。而且,这个数据集是静态的,不允许我们改变测试条件。

在这项研究中,研究者提出了一个新的基准测试数据集 GSM-Symbolic[18] 9,它通过使用符号模板生成不同的问题。通过该数据集,我们可以调整问题的难度,并在测试时提供更精确的控制。这个数据集实际上与之前用于推理测试的数据集相同,只是对问题进行了修改,使得简单的统计模式匹配(statistical pattern matching)变得困难。如果 LLM 真的具备推理能力,它应该能够轻松解决这些问题;但如果它无法进行泛化,那么它将无法完成任务。

GSM-Symbolic 模板创建过程示意图。图片来源:https://arxiv.org/pdf/2410.05229

在对最先进的 LLMs 进行测试时,研究者并未发现模型具备形式推理的能力。这些模型并不稳健,当数值发生变化时,性能就会下降,且在问题复杂性提升时,其处理能力会迅速衰退。

如果向问题中插入看似相关却实际上对推理和结论无影响的语句,模型便容易被误导。模型会将这些语句考虑在内,从而诱发错误。研究指出,模型并没有真正理解数学概念,而是试图将这些语句转化为数学操作。作者们推测,这可能是由于训练数据集中包含了类似需要转化为数学操作的例子。

比如,我们观察到的一种常见情况是,无论上下文如何,模型会将涉及“折扣”的语句理解为“乘法”。这不禁让人质疑,这些模型是否真正掌握了数学概念。来源:https://arxiv.org/pdf/2410.05229

图片来源:https://arxiv.org/pdf/2410.05229

这再次证明,模型甚至在模式(patterns)仅仅是背景噪声的情况下,也会试图寻找这些模式(patterns)。当噪声增强,寻找模式(patterns)的难度加大(或者难以一致性地将这些模式(patterns)映射到解决方案上),模型的性能就会大幅下滑10。这一点同样适用于那些经过 CoT 训练的 LLMs(比如 ChatGPT4-O1[3])。这进一步说明,CoT 并未真正提升模型的推理能力。

图片来源:https://www.arxiv.org/pdf/2409.13373

03 结束语

本文探讨了一个热门话题:LLMs 是否具备推理能力?或者至少是某种形式的推理能力?

我们所展示的研究成果给出了不同的观点,认为 LLMs 实质上是高级的模式匹配机器。 总结来说,这些研究指出:

  • LLMs 通过海量 tokens 进行训练,因此存在主要基准测试数据集发生数据污染的风险。即便模型未曾直接见过某个数学问题,它也可能接触过众多类似的案例。
  • 凭借其庞大的知识库和与生俱来的模式识别能力(归功于注意力机制和上下文学习[19]),它们能够解决大部分问题。
  • 它们在应对问题变化、tokens 偏差以及噪声影响方面的脆弱性,强烈表明 LLMs 并不具备形式推理的能力。最新研究结果显示,即便采用先进的提示词技术,模型仍然容易受到噪声和不相关(甚至可能误导)信息的影响。
  • 这些模型能够进行模式匹配,但似乎并不理解解决问题所依据的任何数学概念。

这些发现并未否定 LLMs 的实用性,而是对 LLMs 具备推理能力的观点提出了质疑。 这些结果表明,可以将 LLM 视为拥有非凡记忆力的机器,却无法进行推理(或者可以说是迄今为止最精巧的“机械鹦鹉”)。这并非贬低创造它们所需的卓越技术,而是对人类智慧结晶的赞叹。 为了更深入地理解 LLMs 的能力,以及开发能够进行推理的新模型架构,可能还需要进一步的研究。

Reference

  1. Jiang, 2024, A Peek into Token Bias: Large Language Models Are Not Yet Genuine Reasoners, https://arxiv.org/abs/2406.11050
  2. Shi, 2023, Large Language Models Can Be Easily Distracted by Irrelevant Context, https://proceedings.mlr.press/v202/shi23a.html
  3. Schaeffer, 2023, Are emergent abilities of large language models a mirage? https://arxiv.org/pdf/2304.15004
  4. Wei, 2022, Chain-of-Thought Prompting Elicits Reasoning in Large Language Models, https://arxiv.org/abs/2201.11903
  5. Sprague, 2024, To CoT or not to CoT? Chain-of-thought helps mainly on math and symbolic reasoning, https://arxiv.org/abs/2409.12183
  6. Valmeekam, 2023, PlanBench: An Extensible Benchmark for Evaluating Large Language Models on Planning and Reasoning about Change
  7. Kambhampati, 2024, Can Large Language Models Reason and Plan? https://arxiv.org/abs/2403.04121
  8. Razeghi, 2022, Impact of Pretraining Term Frequencies on Few-Shot Reasoning, https://arxiv.org/abs/2202.07206
  9. Mirzadeh, 2024, GSM-Symbolic: Understanding the Limitations of Mathematical Reasoning in Large Language Models, https://arxiv.org/abs/2410.05229
  10. Valmeekam, 2024, LLMs Still Can’t Plan; Can LRMs? A Preliminary Evaluation of OpenAI’s o1 on PlanBench, https://www.arxiv.org/abs/2409.13373
  11. Lu, 2022, Fantastically Ordered Prompts and Where to Find Them: Overcoming Few-Shot Prompt Order Sensitivity, https://aclanthology.org/2022.acl-long.556/
  12. Zhao, 2021, Calibrate Before Use: Improving Few-shot Performance of Language Models, https://proceedings.mlr.press/v139/zhao21c.html
  13. Rogers, 2024, Position: Key Claims in LLM Research Have a Long Tail of Footnotes, https://openreview.net/forum?id=M2cwkGleRL

Thanks for reading!

Hope you have enjoyed and learned new things from this blog!

About the authors

Salvatore Raieli

Senior data scientist | about science, machine learning, and AI. Top writer in Artificial Intelligence

END

本期互动内容 🍻

❓您对未来可能出现的、真正具备推理能力的 AI 系统有什么期待和想象?

🔗文中链接🔗

[1]https://github.com/SalvatoreRa/tutorial/blob/main/artificial%20intelligence/FAQ.md#large-language-models:~:text=Large%20Language%20Models,-What%20is%20a

[2]https://en.wikipedia.org/wiki/Natural_language_processing

[3]https://openai.com/index/introducing-openai-o1-preview/

[4]https://aibusiness.com/nlp/chatgpt-update-claims-reasoning-capabilities-industry-reacts

[5]https://gluebenchmark.com/

[6]https://super.gluebenchmark.com/

[7]https://deepgram.com/learn/hellaswag-llm-benchmark-guide

[8]https://paperswithcode.com/area/reasoning

[9]https://arxiv.org/pdf/2406.11050

[10]https://www.promptingguide.ai/techniques

[11]https://ngsf.in/2021/09/19/intelligence-as-an-emergent-property-in-biological-systems/

[12]https://github.com/SalvatoreRa/tutorial/blob/main/artificial%20intelligence/FAQ.md#large-language-models:~:text=What%20does%20it%20mean%20emergent%20properties%3F%20what%20it%20is%20the%20scaling%20law%3F

[13]https://arxiv.org/pdf/2409.12183

[14]https://openai.com/index/learning-to-reason-with-llms/

[15]https://www.lakera.ai/blog/what-is-in-context-learning

[16]https://www.technologyreview.com/2023/08/30/1078670/large-language-models-arent-people-lets-stop-testing-them-like-they-were/

[17]https://paperswithcode.com/dataset/gsm8k

[18]https://machinelearning.apple.com/research/gsm-symbolic

[19]http://ai.stanford.edu/blog/understanding-incontext/

原文链接:

https://towardsdatascience.com/the-savant-syndrome-is-pattern-recognition-equivalent-to-intelligence-242aab928152

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

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

相关文章

.net winform 实现CSS3.0 泼墨画效果

效果图 代码 private unsafe void BlendImages1(Bitmap img1, Bitmap img2) {// 确定两个图像的重叠区域Rectangle rect new Rectangle(0, 0,Math.Min(img1.Width, img2.Width),Math.Min(img1.Height, img2.Height));// 创建输出图像,尺寸为重叠区域大小Bitmap b…

VUE+Node.js+mysq实现响应式个人博客|项目初始化+路由配置+基础组件搭建

Day 1 开发文档:项目初始化与基础架构搭建 一、项目初始化 1. 创建项目 首先,我们使用 Vite 创建一个基于 Vue 3 的项目: # 创建项目 npm create vitelatest my-blog -- --template vue # 这条命令会创建一个名为 my-blog 的新项目&#…

短视频矩阵:构建多平台曝光的高效运营网络

在当今这个瞬息万变的数字化时代,短视频以其独特的魅力迅速占领了人们的视野,成为信息传播与娱乐消遣的重要一环。随着短视频平台的不断增多和用户群体的日益庞大,如何精准高效地利用短视频进行品牌推广和产品营销,成为了众多企业…

ubuntu+ros新手笔记(三):21讲没讲到的MoveIt2

系统ubuntu22.04 ros2 humble 1 安装MoveIt2 安装参照在ROS2中,通过MoveIt2控制Gazebo中的自定义机械手 安装 MoveIt2可以选择自己编译源码安装,或者直接从二进制安装。 个人建议直接二进制安装,可以省很多事。 sudo apt install ros-humbl…

Guava 提供了集合操作 `List`、`Set` 和 `Map` 三个工具类

入门示例 guava 最佳实践 学习指南 以下是使用Google Guava库中的工具方法来创建和操作List、Set、Map集合的一些示例&#xff1a; List相关操作 创建List 使用Lists.newArrayList()创建一个新的可变ArrayList实例。List<Integer> list Lists.newArrayList(1, 2, 3);/…

蓝桥杯摆烂第三天

小蓝给学生们组织了一场考试&#xff0c;卷面总分为 100 分&#xff0c;每个学生的得分都是一个 0 到 100 的整数。 请计算这次考试的最高分、最低分和平均分。 输入描述 输入的第一行包含一个整数 n (1≤n≤104)&#xff0c;表示考试人数。 接下来 n 行&#xff0c;每行包…

DotNetBrowser 3.0.0 正式发布!

&#x1f6e0;️ 重要消息&#xff1a;DotNetBrowser 3.0.0 正式发布&#xff01; 我们很高兴向您介绍全新的 DotNetBrowser 3.0.0 版本。此次更新带来了多项重要功能与优化&#xff0c;进一步提升了 Web 开发的效率和体验。 &#x1f4e2; DotNetBrowser 3.0.0 包含哪些新功…

C++ —— 使用指针

C —— 使用指针 解引用指针用于函数的参数 解引用 声明指针变量后&#xff0c;在没有赋值之前&#xff0c;这时候不能使用指针。因为&#xff0c;此时我们不知道指针里面装的是什么。 在声明变量后&#xff0c;应该养成对变量赋初始值的好习惯。 指针存放的是变量的地址&…

在 Visual Studio Code 中编译、调试和执行 Makefile 工程 llama2.c

在 Visual Studio Code 中编译、调试和执行 Makefile 工程 llama2.c 1. Installing the extension (在 Visual Studio Code 中安装插件)1.1. Extensions for Visual Studio Code1.2. C/C1.2.1. Pre-requisites 1.3. Makefile Tools 2. Configuring your project (配置项目)2.1.…

CSS Backgrounds(背景)

CSS Backgrounds(背景) Introduction(介绍) CSS backgrounds play a crucial role in web design, allowing developers to apply colors, images, and other decorative elements to the background of HTML elements. This enhances the visual appeal of web pages and he…

Oracle 查询表占用空间(表大小)的方法

目录 概述方法一&#xff1a;使用 dbms_space 包方法二&#xff1a;查询 dba_extents 视图方法三&#xff1a;查询 dba_segments 视图总结 1. 概述 在Oracle数据库管理中&#xff0c;了解特定表或索引所占用的空间对于性能调优、存储规划以及资源分配至关重要。本文档介绍了三…

EfficientNet:对模型深度、宽度和分辨率的混合缩放策略

论文&#xff1a;https://arxiv.org/abs/1905.11946 项目&#xff1a;https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet Pytorch实现&#xff1a;EfficientNet模型Pytorch版本具体实现-CSDN博客 一、概况 1、概述&#xff1a; 这张图可以清晰明…

搭建分布式Hive集群

title: 搭建分布式Hive集群 date: 2024-11-29 23:39:00 categories: - 服务器 tags: - Hive - 大数据搭建分布式Hive集群 本次实验环境&#xff1a;Centos 7-2009、Hadoop-3.1.4、JDK 8、Zookeeper-3.6.3、Mysql-5.7.38、Hive-3.1.2 功能规划 方案一&#xff08;本地运行模…

实现路由懒加载的方式有哪些?

1函数式懒加载 使用vue的异步组件和webpack的代码分割功能&#xff0c;通过&#xff08;&#xff09;>import()这种函数形式来定义路由组件&#xff0c;示例如下&#xff1a; const Home () > import(/views/Home.vue); const router new VueRouter({routes: [{ path…

【QT实战の心情笔记】

文章目录 界面布局主要界面分为三部分&#xff1a;1. 笔记列表区域2. 笔记内容编辑区域3. 操作按钮区域 Qt Designer 界面设计步骤完整界面布局图各控件设置和属性Qt Designer 文件 (.ui) 数据库表结构SQL 表结构&#xff1a; 逻辑代码1. 项目结构2. Note 类 (Note.h 和 Note.c…

大模型学习笔记------SAM模型详解与思考

大模型学习笔记------SAM模型详解与思考 1、SAM框架概述2、Segment Anything Task3、Segment Anything Model SAM模型是Meta 提出的分割一切模型&#xff08;Segment Anything Model&#xff0c;SAM&#xff09;突破了分割界限&#xff0c;极大地促进了计算机视觉基础模型的发展…

【嵌入式软件】跑开发板的前置服务配置

在嵌入式开发中,通常需要在 开发板和主机之间共享、传输和挂载文件。 这篇文章是关于如何在 Ubuntu 中配置 Samba、TFTP 和 NFS 协议的详细步骤。这些协议分别用于远程文件共享、文件传输和内核挂载文件系统。 如何安装协议: 参考:ubuntu18配置:详细的内容我手写了一份文档。…

2024最新qrcode.min.js生成二维码Demo

找了一堆代码一堆GPT&#xff0c;终于给写对了&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><…

【Spring】Spring的模块架构与生态圈—核心容器(Beans、Core、Context、Expression)

Spring框架因其强大的功能和灵活性而成为企业级应用开发的首选&#xff0c;它的模块化设计使得开发者可以根据需求选择合适的模块&#xff0c;降低了系统的复杂性。核心容器模块是Spring框架的基础&#xff0c;它为整个框架提供了核心功能&#xff0c;包括Bean的管理、上下文的…

CRC校验例题详解

CRC校验例题详解 示例题目 给定数据帧1101001和生成多项式G(x)x4x3x21&#xff0c;求该数据帧的CRC校验码&#xff0c;并验证传输过程中是否会出现错误。 解题步骤 第一步转换生成多项式&#xff1a; 接下来是对这一步骤的详细解答&#xff1a; 生成多项式的二进制表示 当我们…