解析大语言模型LLM的幻觉问题:消除错觉、提高认知

news2024/11/15 9:34:11

文章目录

  • 前言
  • 一、幻觉介绍
  • 二、幻觉产生的原因
  • 三、幻觉的现象
  • 四、幻觉的分类
  • 五、幻觉解决方案
  • 六、幻觉待解决问题
  • 后记

在这里插入图片描述

前言

在人类的感知和认知过程中,幻觉一直是一个被广泛讨论和研究的问题。幻觉指的是一种虚假的感知或认知经验,使我们看到、听到或感受到不存在的事物或事件。无论是在科学领域还是日常生活中,幻觉都引发了极大的兴趣和好奇心。为了更好地了解幻觉的产生机制和解决方法,我们迫切需要深入探索这个领域。

随着人工智能技术的迅猛发展,大语言模型(LLM)在各个领域展现出了惊人的能力和潜力。然而,正如人类一样,LLM也会面临幻觉问题的挑战。幻觉在LLM中指的是产生虚假、不准确或误导性输出的现象,这可能对其可靠性和可信度造成负面影响。为了充分利用和信赖LLM的能力,我们必须了解幻觉产生的原因,并寻找解决这个问题的方法。在本文中,将探讨LLM幻觉问题的根源、可能的影响以及可能的解决方案,以期为改善LLM的表现提供一些启示和思考。

一、幻觉介绍

由ChatGPT带来的大模型时代,国内外各大厂家都在陆续推出自己的大模型,然而目前大模型都存在一个普遍的现象就是:幻觉。

幻觉的基本定义:大模型生成看似合理的内容,其实这些内容是不正确的或者是与输入Prompt无关,甚至是有冲突的现象,幻觉示例如下图所示:
在这里插入图片描述
在准确率要求非常高的场景下幻觉是不可接受的,比如医疗领域、金融领域等。

二、幻觉产生的原因

论文认为产生幻觉的主要原因有预训练数据收集、知识GAP和大模型优化过程三个方面。

  1. 数据收集:
  • 预训练数据:大模型的知识和能力主要来自与预训练数据,如果预训练数据使用了不完整或者过期的数据,那么就很可能导致知识的错误,从而引起幻觉现象;

  • 上下文学习:为了让大模型可以更好的输出,有时会在Prompt中增加一些上下文内容,然而这些上下文的类别和pair的顺序也可能引起幻觉,比如前几个example的标签是“是”,后面几个是“否”,那么大模型很可能就输出“否”了;

  • 多语言大模型:处理少语种或者非英文翻译的问题;

  1. 知识GAP:

    主要来自pre-training和fine-tuning阶段的输入数据格式不同引起的。
    
  2. 优化过程:

  • 最大似然估计和teacher-forcing训练有可能导致一种被称为随机模仿的现象,大模型在没有真正理解的情况下模仿训练数据,这样可能会导致幻觉;

  • top-k和top-p采样技术也可能导致幻觉,LLM倾向于产生滚雪球般的幻觉,以保持与早期幻觉的一致性,即使在“Let’s think step by step”这样的提示下,它们仍然会产生无效的推理链;

三、幻觉的现象

论文总结了常见的下游任务的幻觉现象,比如机器翻译、问答系统、对话系统、文本摘要、LLM知识图谱和视觉问答系统,结果如下表所示:
在这里插入图片描述

四、幻觉的分类

在这里插入图片描述

  1. 推理分类器:

    给定问题Q和答案A,训练一个分类器,让分类器去判断生成的答案是否包含幻觉H,因此,Shen等人(2023)采用最先进的LLM对检测结果进行端到端文本生成。其他一些研究(Li et al.,2023b)发现,在输出之前添加思维链可能会干预最终判断,而检索知识则会带来收益。进一步推进这一概念,用于生成中间过程标签和高质量自然语言解释的暗示分类器和解释器(Shen et al.,2023)被证明可以从各种角度增强最终预测的类别。随后,Tam等人(2023)建议采用与生成的模型不同的分类器模型,这有助于更容易判断事实的一致性。对于放射学报告生成,可以利用二元分类器(Mahmood等人,2023)通过结合图像和文本嵌入来测量可靠性。
    
  2. 不确定度度量:

    重要的是要检查幻觉指标与各种视角的输出质量之间的相关性。一种直观的方法是使用模型本身的概率输出。类似地,BARTSCORE(Yuan et al.,2021)采用了一个普遍的概念,即当生成的文本更好时,被训练将生成的文本转换为参考输出或源文本的模型得分会更高。这是一种无监督的度量,支持添加适当的提示来改进度量设计,而无需人工判断来训练。此外,KoK(Amayuelas et al.,2023)基于Pei和Jurgens(2021)的工作,从主观性、模糊限制语和文本不确定性三个类别来评估答案的不确定性。然而,SLAG(Hase等人,2023)在转述、逻辑和蕴涵方面衡量了一致的事实信念。除此之外,KLD(Pezeshkpour,2023)结合了基于信息理论的度量(例如熵和KL散度)来捕捉知识的不确定性。除了专家提供的方案监督外,POLAR(赵等人,2023b)引入了帕累托最优学习评估风险评分,用于估计响应的置信水平;
    
  3. 自我评估:

    自我评估是一种挑战,因为模型可能对其生成的样本的正确性过于自信。SelfCheckGPT(Manakul et al.,2023)的动机是利用LLM自身的能力对多个响应进行采样,并通过测量响应之间的信息一致性来识别虚构陈述。Kadavath等人(2022)进一步说明,规模的增加和评估的展示都可以改善自我评估。除了重复的多个直接查询,Agrawal等人(2023)使用开放式间接查询,并将其答案相互比较,以获得一致的分数结果。自矛盾(Mündler et al.,2023)对同一LLM施加了适当的约束,以生成触发自矛盾的成对传感器,从而促使检测。相反,基于轮询的查询(Li et al.,2023i)通过随机抽样查询对象来降低判断的复杂性。此外,Self-Checker(Li et al.,2023d)将复杂的语句分解为多个简单的语句,逐一进行事实核查。然而,Cohen等人(2023)引入了两个LLM交互交叉询问,以推动复杂的事实核查推理过程;

  4. 证据检索:

    证据检索通过检索与幻觉有关的支持性证据来辅助事实检测。为此,设计一个以索赔为中心的管道允许问题检索摘要链有效地收集原始证据(Chen et al.,2023b;霍等人,2023)。因此,FActScore(Min等人,2023)计算给定知识源支持的原子事实的百分比。为了适应用户与生成模型交互的任务,FacTool(Chern et al.,2023)提出将各种工具集成到任务不可知和领域不可知的检测框架中,以收集有关生成内容真实性的证据。
    

五、幻觉解决方案

论文总结了五种解决幻觉的方法,具体如下图所示:
在这里插入图片描述
不同下游任务解决幻觉的方法不同,具体如下图所示:
在这里插入图片描述

  1. 参数自适应:

LLM中的参数存储了预训练中学习到的偏见,这些偏见通常与用户意图不一致。一般策略是通过参数调节、编辑和优化来引导有效的知识。例如,CLR(Sun等人,2023)利用对比学习参数在跨度水平上进行优化,以降低负面样本的生成概率。在引入与模型的内在先验知识相矛盾的上下文知识边缘背景的同时,TYE(Shi et al.,2023a)通过上下文感知解码方法有效地降低了先验知识的权重。此外,PURR(Chen et al.,2023a)将噪声腐蚀到文本中,微调紧凑的编辑器,并通过合并相关证据来去噪。为了引入额外的缓存组件,HISTALIGN(Wan et al.,2023)发现其隐藏状态与当前隐藏状态不一致,并提出了序列信息对比学习以提高内存参数的可靠性。因此,Edit TA(Ilharco等人,2023)从任务算法的角度缓解了在预训练中学习到的问题。其背后的直觉是,通过负示例任务学习到的参数变化可以通过权重变化来感知。然而,由于这没有考虑到不同反例的重要性,因此EWR(Da-heim et al.,2023)提出了Fisher信息模型来测量其估计的不确定性,该模型用于对话系统执行参数插值并消除幻觉。EasyEdit(Wang et al.,2023c)总结了参数编辑的方法,同时将对无关参数的影响降至最低。

一个有效的替代方法是识别特定于任务的参数并利用它们。例如,ALLM(Luo et al.,2023)将参数模块与特定任务的知识对齐,然后在背景增强提示中生成相关知识作为附加上下文。类似地,mmT5(Pfeiffer et al.,2023)在预训练期间利用特定语言模块将特定语言信息与独立于语言的信息分离,表明添加特定语言模块可以消除多语性的诅咒。相反,TRAC(Li et al.,2023f)将保角预测和全局测试相结合,以增强基于检索的QA。保守策略公式确保在预测集中包括与真实答案在数量上等效的答案。

另一个参数自适应思想侧重于符合用户需求的灵活采样。例如,Lee等人(2022)观察到,当生成句子的后半部分时,抽样的随机性对事实更不利。为了在保证生成质量和多样性的同时保持生成的忠实性,引入了事实核采样算法。此外,推理时间(Li et al.,2023c)首先识别出一组具有高线性探测精度的注意头,然后沿着与事实知识相关的方向转移推理过程中的激活。

  1. 事后归因和编辑技术:

幻觉的一个来源是LLM可能会利用预训练数据中观察到的模式,以一种新的形式进行推理。最近,ORCA(Han和Tsvetkov,2022)通过从预训练数据探索支持数据证据,揭示了模型行为中的问题模式。同样,TRAK(Park et al.,2023)和Data Portraits(Marone和Durme,2023。QUIP(Weller等人,2023)进一步证明,提供在预训练阶段观察到的文本可以提高LLM生成更多实际信息的能力。此外,由于LLM和人类思维模式之间的差距,一种直觉是将两种推理模式结合起来。因此,CoT(Wei et al.,2022b)通过一种思维链(CoT)(Kojima et al.,2022)提示引发了忠实的推理。类似地,RR(He等人,2023)基于从CoT提示获得的分解推理步骤来检索相关的外部知识。由于LLM通常不会在第一次尝试时产生最佳输出,因此自精化(Madaan et al.,2023)通过迭代反馈和改进来实现自精化算法。反思(Shinn等人,2023)还采用言语强化,通过学习先前的失败来产生反思性反馈。Verify-and-Edit(赵等人,2023a)提出了一种CoT提示的验证和编辑框架,该框架通过基于外部检索的知识对推理链进行后编辑来提高预测的逼真度。幻觉的另一个来源是用不正确的检索来描述事实内容。为了说明这一点,NP Hunter(Dziri et al.,2021)遵循一种先生成后细化的策略,即使用KG修改生成的响应,以便对话系统化,通过查询KG来纠正潜在的幻觉。

  1. 利用外部知识:

为了扩展语言模型以减少歧义,建议从大型文本数据库中检索相关文档。RETRO(Borgeud et al.,2022)将输入序列分割成块并检索相似的文档,而In-Context RALM(Tam et al.,2023)将所选文档放在输入文本之前以改进预测。此外,IRCoT(Trivedi等人,2023)将CoT生成和文档检索步骤交织在一起,以指导LLM。由于缩放主要提高了公共知识的内存,但并没有显著提高长尾中事实知识的内存。因此,POPQA(Mallen et al.,2023)在必要时仅检索非参数内存以提高性能。LLM-AUMMENTER(Peng et al.,2023)还将LLM的回答建立在综合外部知识和自动反馈的基础上,以提高答案的真实性得分。另一项工作,CoK(Li et al.,2023h)迭代分析即将到来的句子的未来内容,然后将它们作为查询来检索相关文档,以便在句子包含低可信度令牌时重新生成句子。类似地,RETA-LLM(Liu et al.,2023c)创建了一个完整的管道,以帮助用户构建自己的基于域的LLM检索系统。请注意,除了文档检索之外,还可以将各种外部知识查询组合到检索增强的LLM系统中。例如,FLARE(Jiang et al.,2023)利用结构化知识库来支持复杂的查询,并提供更直接的事实陈述。此外,KnowledGPT(Wang et al.,2023e)采用了思想程序(PoT)提示,生成代码与知识库交互。而cTBL(Ding et al.,2023)提出在会话设置中使用表格数据来增强LLM。此外,GeneGPT(Jin et al.,2023)证明,通过上下文学习和增强解码算法检测和执行API调用,可以更容易、更准确地访问专业知识。为了支持潜在的数百万不断变化的API,Gorilla(Patil et al.,2023)探索了自我构造的微调和检索,以高效利用API。

  1. 评估反馈:

随着语言模型变得越来越复杂,评估反馈可以显著提高生成文本的质量,并减少幻觉的出现。为了实现这一概念,LSHF(Stiennon等人,2020)通过模型预测了人类偏好的总结,并将其作为奖励函数,使用强化学习来微调总结策略。然而,这种方法建立在人工注释器构建的模型之上,这使得它们在数据利用率方面效率低下。因此,TLM(Menick et al.,2022)提出通过从人类偏好中强化学习,通过选择几个拒绝回答的问题来提高系统的可靠性,这显著提高了系统的可靠性。而强化学习往往存在不完美的奖励函数,并依赖于具有挑战性的优化。因此,后见链(Liu et al.,2023a)将反馈偏好转化为句子,然后将其输入到模型中进行微调,以增强语言理解。

除了使模型能够以样本有效的方式直接从事实指标的反馈中学习(Dixit et al.,2023)外,建立模型的自我评估功能以过滤候选生成的文本也很重要。例如,BRIO(Liu et al.,2022)提出了摘要模型评估,估计候选输出的概率分布,以评估候选摘要的质量。而LM know(Kadavath et al.,2022)致力于调查LLM是否可以通过检测他们知道问题答案的概率来评估他们自己主张的有效性。随后,Do LLM Know(Agrawal et al.,2023)专门使用黑盒LLM进行查询,并将多次重复生成的查询结果相互比较,以通过一致性检查。此外,黑盒LLM增加了即插即用检索模块(Liu et al.,2023a;Huang et al.,2021),以生成反馈,从而提高模型响应。

由于遗漏引文质量评估影响最终表现,ALCE(Gao et al.,2023c)采用自然语言推理模型来衡量引文质量,并扩展了综合检索系统。类似地,CRITIC(Gou et al.,2023)建议与适当的工具进行交互,以评估文本的某些方面,然后根据验证过程中获得的反馈修改输出。请注意,自动错误检查还可以利用LLM生成符合工具界面的文本。PaD(Zhu et al.,2023c)通过综合推理程序提取LLM,获得的综合程序可以由程序员自动编译和执行。此外,迭代精化过程被验证可以有效地识别适当的细节(Ning et al.,2023;张等人,2023b;余等人,2023b),并且可以停止早期无效的推理链,有益地减少幻觉滚雪球的现象(张等人,2021)。

  1. 心态社会:

人类的智慧源于认知协同的概念,不同认知过程之间的协作比孤立的个体认知过程产生更好的结果。“心智社会”(Minsky,1988)被认为有可能显著提高LLM的性能,并为语言产生和理解的一致性铺平道路。为了在不同翻译场景的大规模多语言模型中解决幻觉,HLMTM(Guerreiro et al.,2023a)提出了一种混合设置,在该设置中,当原始系统产生幻觉时,可以请求其他翻译系统作为备份系统。因此,多主体辩论(Du et al.,2023)在几轮中使用多个LLM来提出和辩论他们的个人反应和推理过程,以达成一致的最终答案。由于这一过程,鼓励模型构建与内部批评和其他主体反应一致的答案。在给出最终答案之前,所得到的模型社区可以同时保持和维护多个推理链和可能的答案。基于这一想法,MAD(Liang et al.,2023)增加了一个法官管理的辩论过程,表明辩论的适应性中断和受控的“针锋相对”状态有助于完成事实辩论。此外,FORD(Xiong et al.,2023)提出了包括两个以上LLM的圆桌辩论,并强调有能力的法官对主导辩论至关重要。LM与LM(Cohen et al.,2023)还提出了LM与另一个LM之间的多轮交互,以检查原始陈述的真实性。此外,PRD(Li et al.,2023e)提出了一个基于同行排名和讨论的评估框架,以得出所有同行都同意的公认评估结果。为了保持强有力的推理,SPP(Wang et al.,2023g)利用LLM来分配几个细粒度的角色,这有效地刺激了知识获取并减少了幻觉。

六、幻觉待解决问题

尽管在LLM幻觉调查中提出了许多技术解决方案,但仍存在一些潜在的方向:

  1. 数据构建管理:

如前所述,LLM的风格和知识通常在模型预训练期间学习。高质量的数据为LLM中幻觉的减少提供了有希望的机会(Kirstain等人,2022)。受机器学习模型的基本规则“垃圾输入,垃圾输出”的启发,周等人(2023)提出了超社会对齐假设,将对齐视为学习与用户交互。对一些高质量样本进行简单微调的结果表明,数据质量和多样性超过了微调大规模指令的重要性(Mishra等人,2021;Wei等人,2022a;Sanh等人,2022)和RLHF(Bai等人,2022;欧阳等人,2020)。为了在知识密集型垂直领域高效执行,我们认为,构建以实体为中心的微调指令(Bao et al.,2023;桂等人,2023)是一个很有前途的方向,它可以将结构化知识和知识图的语义相关性相结合,以增强生成的实体信息的真实性。另一个可行的建议是在教学构建过程中加入自我管理阶段(Li et al.,2023g),以评估候选配对的质量。在迭代过程中,基于手动或自动规则约束的质量评估(Chen et al.,2023c)可以提供自校正能力

  1. 下游任务协调:

通用LLM在各种开放环境中具有一定程度的自然语言问题理解能力。然而,主要问题仍然存在于对应用要求的偏离,这导致了各种幻觉的出现。因此,下游任务对齐,特别是建立在垂直领域认知的基础上,需要广泛的符号推理、复杂任务的分解和规划,以及忠实的外部知识注入。具体来说,尽管LLM是语言处理方面的专家,但它很难在数学能力方面取得突破,这是一个与文本训练目标有关的缺陷。尽管已经提出了一些关于符号数学单词问题的研究(Gaur和Saunshi,2023;Zhu et al.,2023b),但增强符号推理和回答数字问题仍有待广泛研究。此外,对于需要不同输出的故事生成任务(Yang et al.,2022023),除了避免事实矛盾外,还需要引人入胜的故事情节。因此,在模型推理过程中实现忠实和创造性之间的平衡仍然是一个关键的挑战。此外,整合新知识来处理知识密集型任务涉及处理LLM的内部知识和外部知识图的显式知识边缘之间的联合推理。设计知识感知方法,将知识边缘图中的结构化信息纳入LLM的预训练过程,这带来了挑战。或者,预计推理过程将动态注入知识图信息(Wen等人,2023)。

LLM作为一种评估工具的使用是一种新兴的应用,但受到模型规模、教学调整效果和不同形式输入的限制(Agrawal等人,2023)。值得注意的是,LLM作为评分法官的尝试必须克服由立场、冗长、自我增强引起的各种偏见(Zheng等人,2023a;Berglund等人,2023;Wang等人,2023b)。因此,我们预测,未来关于设计特定任务机制来分析和纠正新出现的下游任务的过程的研究是一个值得长期关注的领域。

  1. 推理机制开发:

新兴的CoT技术(Wei et al.,2022b)通过模仿内在思维流来刺激LLM的涌现推理能力。构造一个逻辑中间推理步骤已被证明能显著提高问题解决能力。最近,一个主要的改进是与CoT的自一致性(CoT-SC)(Yao et al.,2023),这是一种生成多个CoT选项,然后选择最佳结果作为反馈的方法。此外,思维树(ToT)(Yao et al.,2023)在思维过程中引入了严格的树结构,这有助于不同思维路径的发展,并提供了一种新颖的回滚功能。由于以前的方法没有中间结果的存储,累积推理(CR)(Zhang et al.,2023c)以累积和迭代的方式使用LLM来模拟人类的思维过程,并将任务分解为更小的组件。然而,实际思维过程产生了一个复杂的思想网络,例如,人们可以探索一个特定的推理链,回溯或开始一个新的推理链。特别是当意识到以前推理链中的想法可以与当前探索的想法相结合时,它们可以合并为一个新的解决方案。更令人兴奋的是,思维图(GoT)(Zhang et al.,2023c)通过构建具有多个传入边的顶点来聚合任意思想,从而扩展了思想之间的依赖关系。此外,程序辅助语言模型(PAL)(Gao等人,2023b)和思维程序提示(PoT)(Chen等人,2022b)将编程逻辑引入语言空间(Bi等人,2023),扩展了调用外部解释器的能力。总之,我们相信,基于人类认知的研究有助于为幻觉的分析提供精彩而深刻的见解,如双过程理论(Frankish,2010)、三层心理模型(Stanovich,2011)、心理计算理论(Piccinini,2004)和连接主义(Thorndike,1898)。

  1. 多模态幻觉调查:

利用LLM出色的理解和推理能力,建立强大的多模式大型语言模型(MLLM)已成为社区共识(Li et al.,2023a;Dai et al.,2021;Ye et al.(2023))。李等人(2023i)通过对象检测和基于轮询的查询证实了MLLM中幻觉的严重性。结果表明,这些模型对物体幻觉具有很高的敏感性,并且生成的描述与目标图像不匹配。此外,Shao等人(2023)认为MLLMs具有有限的多模态推理能力以及对虚假线索的依赖性。尽管目前的研究(Yin et al.,2023b)对MLLMs进行了广泛的概述,但幻觉的原因尚未得到全面的调查。LLM中的幻觉主要来自训练数据中的错误知识,而MLLM的挑战在于将抽象的视觉编码准确地传递到语义空间中。现有的MLLM通过指令进行微调,使其目标输出遵循人类意图。然而,视觉模式和文本模式之间的错位可能会导致有偏见的分配。此外,缺乏视觉约束导致MLLMs出现严重的幻觉问题。因此,一个潜在的改进是将注意力转移到图像上(Wang et al.,2023a)或增强对视觉常识的理解。在细粒度的视觉和实际模态对齐方面,关注图像的局部特征和相应的文本描述可以提供忠实的模态交互。此外,一些MLLM的性能,如MiniGPT-4(Zhu et al.,2023a),高度依赖于提示的选择,需要仔细选择。请注意,为了方便用户,需要在多样性和幻觉之间进行可控的权衡。未来,随着更复杂的多模型应用的出现,改进MLLM的推理路径也是一个很有前途的研究方向。

后记

感谢您阅读本系列文章《LLM之幻觉》。在这个系列中,我们探讨了大语言模型(LLM)在生成文字时可能出现的幻觉问题,并提出了一些解决方案。

首先,我们介绍了大语言模型的基本概念和工作原理。大语言模型是一种基于深度学习的人工智能模型,可以从大规模的文本数据中学习语言的规律,并生成与输入文本相似的新文本。

然后,我们深入研究了大语言模型可能出现的幻觉问题。幻觉是指模型生成的文本与现实世界不一致或不符合预期的情况。我们列举了一些常见的幻觉问题,包括内容错误、逻辑混乱、偏见和歧视等。

接着,我们提出了一些解决方案来应对这些幻觉问题。首先是数据清洗和预处理,通过筛选和整理高质量的训练数据,可以减少模型生成的幻觉问题。其次是模型微调和迁移学习,通过在特定领域或任务上进行额外训练,可以提升模型的生成能力和准确性。最后,我们还探讨了人类编辑和审查的重要性,人的参与可以有效纠正模型的幻觉问题。

尽管以上解决方案可以在一定程度上减少幻觉问题,但完全消除幻觉仍然是一个挑战。大语言模型的生成能力受限于其训练数据和算法的局限性,无法完全理解和模拟人类的智能。因此,我们需要继续研究和改进大语言模型,以解决幻觉问题并提高其生成能力和准确性。

再次感谢您的阅读,如果您对本系列文章或大语言模型的幻觉问题有任何疑问或建议,欢迎与我们交流。期待我们共同努力,推动大语言模型的发展,为人工智能的未来贡献一份力量。

注:

本文参考自论文:

  • 论文题目:《Cognitive Mirage: A Review of Hallucinations in Large Language Models》
  • 论文链接:https://arxiv.org/abs/2309.06794v1
  • 论文代码:https://github.com/hongbinye/cognitive-mirage-hallucinations-in-llms

转载自:https://blog.csdn.net/u014727709/article/details/135354240
欢迎 👍点赞✍评论⭐收藏,欢迎指正

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

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

相关文章

YOLOv5算法进阶改进(12)— 引入YOLOv8中的C2f模块 | 提升小目标检测精度

前言:Hello大家好,我是小哥谈。YOLOv8是由Ultralytics开发的一个前沿的SOTA模型。它在以前成功的YOLO版本基础上,引入了新的功能和改进,进一步提升了其性能和灵活性。C2f模块和C3模块分别是YOLOv8和YOLOv5中的两种不同的模块设计,它们在结构和功能上有一些区别。本文将YOL…

很实用的ChatGPT网站—在线编程模块增补篇

很实用的ChatGPT网站(http://chat-zh.com/)——增补篇 今天介绍一个好兄弟开发的ChatGPT网站,网址[http://chat-zh.com/]。这个网站功能模块很多,包含生活、学习、医疗、法律、经济等很多方面。今天跟大家分享一下,新…

Java IO流介绍以及缓冲为何能提升性能

概念: 流是一种抽象概念,它代表了数据的无结构化传递。按照流的方式进行输入输出,数据被当成无结构的字节序或字符序列。从流中取得数据的操作称为提取操作,而向流中添加数据的操作称为插入操作。 Java IO 也称为IO流,…

QT上位机开发(数据库sqlite编程)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 编写软件的时候,如果用户的数据比较少,那么用json保存是非常方便的。但是一旦数据量大了之后,建议还是用数据库…

计算机网络(8):因特网上的音频/视频服务

概述 计算机网络最初是为传送数据设计的。因特网 IP 层提供的 “尽最大努力交付” 服务以及每一个分组独立交付的策略,对传送数据信息十分合适。因特网使用的 TCP 协议可以很好地解决P层不能提供可靠交付这一问题。 音频/视频常称为多媒体信息 多媒体信息&#xff…

进程与计划任务

什么是程序? 程序:在硬盘上躺着,执行特定任务的一串代码 静态 进程:加载到内存中运行 动态 进程是程序的副本,进程是有生命周期,是硬件资源分配的最小单位 pid号可以通过pstree -p 查到 uid &…

Cytoscape3.8安装下载及安装教程

Cytoscape3.8下载链接:https://docs.qq.com/doc/DUmhZQ1lqTWhuSXJC 1.选中下载好的安装包右键选择“解压到 Cytoscape3.8.0”文件夹 2.打开解压好的”Cytoscape3.8.0“文件夹 3.选中“Cytoscape_3_8_0_windows_64bit.exe“右键以管理员身份运行 4.点击”Download“&…

平衡二叉树,力扣

目录 前序遍历与后续遍历 题目地址: 题目: 我们直接看题解吧: 审题目事例提示: 解题方法: 难度分析: 解题方法分析: 解题分析: 解题思路: 代码实现: 补充说明…

使用jieba库进行中文分词和去除停用词

jieba.lcut jieba.lcut()和jieba.lcut_for_search()是jieba库中的两个分词函数,它们的功能和参数略有不同。 jieba.lcut()方法接受三个参数:需要分词的字符串,是否使用全模式(默认为False)以及是否使用HMM模型&…

魔术表演Scratch-第14届蓝桥杯Scratch省赛真题第1题

1.魔术表演(20分) 评判标准: 4分:满足"具体要求"中的1); 8分:满足"具体要求"中的2); 8分,满足"具体要求"中的3&#xff09…

机器学习--ROC AUC

参考 机器学习-ROC曲线 - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/347470776一文看懂ROC、AUC - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/81202617 在了解之前,我们先来认识一下以下的概念 针对一个二分类问题,将实例分成正类(postive)或…

linux-6.0 内核存储栈全景图

linux 存储栈原图地址:https://www.thomas-krenn.com/en/wiki/Linux_Storage_Stack_Diagram

【Linux系统编程二十六】:线程控制与线程特性(Linux中线程库/线程创建/线程退出/线程等待)

【Linux系统编程二十六】:线程控制与线程特性 一.Linux线程库pthread1.线程控制块2.线程tid3.线程栈 二.线程控制1.线程创建2.线程退出3.线程等待 三.线程的特性1.独立栈2.局部存储3.线程可分离 一.Linux线程库pthread 在Linux中,是没有明确的线程概念的…

Sonarqube安装(Docker)

一,拉取相关镜像并运行 # 拉取sonarqube镜像 docker pull sonarqube:9.1.0-community在运行之前要提前安装postgres并允许,新建数据库名为sonar的数据库 Docker安装postgres教程 docker run -d --name sonarqube --restartalways \ -p 19000:9000 \ …

Redis 持久化—RDB

文章目录 1. 为什么需要Redis持久化?2. Redis持久化的几种方式3. RDB简介4. 持久化触发4.1 手动触发4.1.1 save命令4.1.2 bgsave 命令 4.2 自动触发4.2.1 save m n4.2.2 flushall4.2.3 主从同步触发 5. 配置说明6. 配置配置7. 配置配置8. RDB 文件恢复9. RDB 优缺点…

ResNet论文阅读和简单实现

论文:https://arxiv.org/pdf/1512.03385.pdf Deep Residual Learning for Image Recognition 本模块主要是阅读论文,会做简单的翻译(至少满足我自己能看明白)。 Introduction 由上图可见,在20层和56层的网络上训练的…

深信服技术认证“SCCA-C”划重点:云计算关键技术

为帮助大家更加系统化地学习云计算知识,高效通过云计算工程师认证,深信服特推出“SCCA-C认证备考秘笈”,共十期内容。“考试重点”内容框架,帮助大家快速get重点知识。 划重点来啦 *点击图片放大展示 深信服云计算认证&#xff08…

滑动窗口最大值(力扣239题)

单调递减队列: 在解决题目之前,我们先来了解一下单调递减队列,它其实就是在队列的基础上多加了一些限制,如下图: 要求队列中的元素必须按从大到小的顺序排列。 如果向单调递减队列中加入数字 1,可以直接加入…

基于ElementUI封装的下拉树选择可搜索单选多选清空功能

效果&#xff1a; 组件代码 /*** 树形下拉选择组件&#xff0c;下拉框展示树形结构&#xff0c;提供选择某节点功能&#xff0c;方便其他模块调用* author wy* date 2024-01-03 * 调用示例&#xff1a;* <tree-select * :height"400" // 下拉框中树形高度* …

智慧工厂:科技与制造融合创新之路

随着科技的迅猛发展&#xff0c;智慧工厂成为制造业领域的热门话题。智慧工厂利用先进的技术和智能化系统&#xff0c;以提高生产效率、降低成本、增强产品质量和灵活性为目标&#xff0c;正在引领着未来制造业的发展。 智慧工厂的核心是数字化和自动化生产&#xff0c;相较于传…