DeepSeekMoE:迈向混合专家语言模型的终极专业化
一、结论写在前面
论文提出了MoE语言模型的DeepSeekMoE架构,目的是实现终极的专家专业化(expert specialization)。通过细粒度的专家分割和共享专家隔离,DeepSeekMoE相比主流的MoE架构实现了显著更高的专家专业化和性能。从较小的2B参数规模开始,论文验证了DeepSeekMoE的优势,展示了其接近MoE模型上限性能的能力。此外,论文证明DeepSeekMoE具有比GShard更高水平的专家特化。
放大到16B参数规模,论文在2T标记上训练DeepSeekMoE 16B,并展示了其与DeepSeek 7B和LLaMA2 7B可比的卓越性能,仅需要大约40%的计算量。另外,论文进行了监督微调用于对齐,基于DeepSeekMoE 16B构建了一个MoE聊天模型,进一步展示了其适应性和通用性。此外,论文初步探索以将DeepSeekMoE放大到145B参数:DeepSeekMoE 145B相对于GShard架构仍保持实质性优势,并展示了与DeepSeek 67B可比的性能,仅使用28.5%(可能甚至18.2%)的计算量。
论文公开了了DeepSeekMoE 16B的模型checkpoint,它可以在40GB内存的单GPU上部署。
Figure 1 | DeepSeekMoE 16B与开源模型在Open LLM Leaderboard上的比较。红色虚线是从除DeepSeekMoE 16B之外的所有模型的数据点线性拟合得到的。DeepSeekMoE 16B始终以很大的优势胜过具有类似激活参数数量的模型,并在性能上与LLaMA2 7B相媲美,后者的激活参数数量大约是其2.5倍
二、论文的简单介绍
2.1 论文的背景
最近的研究和实践通过充分的可用训练数据经验性地证明,扩大语言模型的参数和计算预算可以获得显著更强的模型。然而,必须承认的是,将模型扩展到极大规模的努力也与极高的计算成本相关联。考虑到成本,混合专家(Mixture-of-Experts,MoE)架构已成为一种流行的解决方案。它可以实现参数扩展,同时将计算成本保持在适度水平。
尽管MoE架构展示出有前景的潜力,但现有MoE架构可能存在知识杂交(f knowledge hybridity )和知识冗余(knowledge redundancy)的问题,这限制了专家专业化,即每个专家获得非重叠和专注的知识。传统的MoE架构用MoE层代替Transformer中的前馈网络(Feed-Forward Networks,FFN)。每个MoE层由多个专家组成,每个在结构上与标准FFN相同,每个token分配给一个或两个专家。这种架构体现出两个潜在问题:
(1)知识杂交:现有的MoE实践通常采用有限数量的专家(例如8或16),因此分配给特定专家的标记可能会涵盖不同的知识。因此,指定的专家将倾向于在其参数中汇集不同类型的知识,这些知识很难同时利用。
(2)知识冗余:分配给不同专家的token可能需要共同知识。因此,多个专家可能会在各自的参数中收敛到共享知识的获取,从而导致专家参数中的冗余。这些问题共同阻碍了现有MoE实践中的专家专业化,使其无法达到MoE模型的理论上限性能。
2.2 论文的方案
Figure 2 | DeepSeekMoE的示意图。子图(a)展示了具有传统top-2路由策略的MoE层。子图(b)说明了精细的专家细分策略。随后,子图(c)展示了共享专家隔离策略的集成,构成了完整的DeepSeekMoE架构。值得注意的是,在这三种架构中,专家参数和计算成本保持不变
DeepSeek MoE设计上述结构的前提在于假设:特定专家能可以覆某种领域知识。专家的细粒度切分可以避免一个专家覆盖太多领域把知识学杂了;共享专家可以让一些公共知识每次都参与计算。
同时期国外开源的Mistral of Experts也放了技术报告,它是完全照着GPT-4解密报告复现的MoE,模型结构就是经典的GShard方式。技术报告里的Sec. 5 Routing analysis展示很多路由工作的特征,这些都是非常新鲜的一手资料。有一些结论很有趣:
Mixtral of Experts
- 路由规则与文本的语义主题无关,这意味着专家并不专门精通某一领域的知识。
- 路由规则展示出了一定的语法特性,例如,某些关键词经常被分配给同一位专家。
- 路由规则还展示了位置的局部性,相邻的token通常被路由到同一位专家,这表明token在句子中的位置与路由选择有关。
结论1是比较颠覆传统认知的,又给了公众号做标题党一次机会。
混合专家系统里根本没专家?开源MoE模型论文引网友热议
那么也就是说按照Mistral报告的观察,DeepSeek-MoE设计的动机可能不太成立。我觉得DeepSeek开发者可以参考Mistral的Sec 5做实验看看结论是否一致。
为应对上述两个潜在问题,论文提出了DeepSeekMoE,这是一种创新的MoE架构,专门设计用于实现终极专家专业化。架构包含两大主要策略:
细粒度专家细分
在专家数量有限的情况下,分配给特定专家的标记更有可能涵盖各种类型的知识。因此,指定的专家将意图在其参数中学习非常不同类型的知识,并且它们很难同时被利用。然而,如果每个标记可以路由到更多的专家,不同的知识将有可能分解并在不同的专家中学到。在这种情况下,每个专家仍然可以保持高水平的专业化,有助于在专家之间实现更专注的知识分布。
为了实现这一目标,在保持一致的专家参数数量和计算成本的同时,通过更细粒度地分割专家。更细致的专家分割使得激活的专家组合更加灵活和适应。具体而言,在图 2(a) 中显示的典型 MoE 架构之上,我们通过将每个专家 FFN 的中间隐藏维度减小到其原始大小的 1/m 倍来将每个专家细分为 m 个较小的专家。由于每个专家变得较小,相应地,我们也增加激活的专家数量到 m 倍,以保持相同的计算成本,如图 2(b) 所示。
从组合的角度看,细粒度专家分割策略极大地增强了激活专家的组合灵活性。举例来说,考虑 N = 16 的情况。典型的 top-2 路由策略可以产生 16 2 = 120 种可能的组合。相比之下,如果每个专家分为 4 个较小的专家,细粒度的路由策略可以产生 64 8 = 4,426,165,368 种潜在的组合。组合灵活性的激增增强了实现更准确和有针对性的知识获取的潜力。
共享专家隔离
在传统的路由策略中,分配给不同专家的标记可能需要一些共同的知识或信息。因此,多个专家可能会在各自的参数中收敛于获取共享知识,从而导致专家参数的冗余。然而,如果有专门负责捕捉和 cons共享知识的专业专家,跨不同上下文的参数冗余将得到缓解。这种冗余的减轻将有助于构建更具参数效率的模型,并拥有更专业化的专家。
为实现这一目标,除了精细的专家细分策略之外,进一步隔离 𝐾𝑠个专家作为共享专家。无论路由模块如何,每个标记都将被确定性地分配给这些共享专家。为了保持恒定的计算成本,其他路由专家中激活的专家的数量将减少 𝐾,如图2(c)所示。
负载平衡考虑
自动学习的路由策略可能会遇到负载不平衡的问题,表现为两个显著的缺陷。首先,存在路由崩溃的风险,即模型始终只选择少数专家,阻止其他专家充分训练。其次,如果专家分布在多个设备上,负载不平衡可能会加剧计算瓶颈。
专家级平衡损失:为了缓解路由崩溃的风险,论文还采用了专家级平衡损失。
设备级平衡损失:除了专家级平衡损失外,论文引入了设备级平衡损失。当旨在缓解计算瓶颈时,就不必在专家级别强制执行严格的平衡约束,因为对负载平衡的过度约束会损害模型性能。相反,论文的主要目标是确保设备之间的平衡计算
2.3 论文的效果
从一个仅有2B参数的适度规模开始,验证了DeepSeekMoE架构的优势。在跨越多种任务的12个零试验或少试验基准测试中进行评估。实证结果表明,DeepSeekMoE 2B大大超过了GShard 2B,甚至匹配了GShard 2.9B,一个更大的MoE模型,具有1.5倍的专家参数和计算量。值得注意的是,DeepSeekMoE 2B的性能几乎接近具有相等参数数量的密集对应物,这为MoE语言模型设定了严格的上限。为了获得更深入的见解,对DeepSeekMoE进行了精心的消融研究和专家专业化分析。这些研究验证了细粒度专家细分和共享专家隔离的有效性,并提供了支持DeepSeekMoE可以实现高水平专家专业化的经验证据。
将模型参数扩大到16B,并在包含2T个标记的大规模语料上训练DeepSeekMoE 16B。评估结果显示,与仅使用约40%的计算量,DeepSeekMoE 16B达到与在相同2T语料上训练的密集模型DeepSeek 7B相当的性能。
还将DeepSeekMoE与开源模型进行了比较,评估结果表明,DeepSeekMoE 16B始终以大幅度超过参数数量相近的模型,并与LLaMA2 7B的性能相当,后者的激活参数数约为前者的2.5倍。图1展示了在Open LLM Leaderboard1上的评估结果。
另外,论文进行了监督微调(SFT)用于对齐,将模型转换为聊天模型。评估结果显示,在聊天设置中,DeepSeekMoE Chat 16B也取得了与DeepSeek Chat 7B和LLaMA2 SFT 7B相当的性能。这些结果鼓舞我们进一步进行扩展DeepSeekMoE到145B的初步尝试。实验结果仍然一致验证了其相对于GShard架构的重大优势。此外,它显示了与DeepSeek 67B相当的性能,仅使用28.5%(可能甚至只有18.2%)的计算量。
Table 1 | 验证实验的评估结果。粗体字表示最佳结果。与其他MoE架构相比,DeepSeekMoE表现出明显的性能优势
Table 2 | DeepSeekMoE、更大的GShard模型和更大的dense模型之间的比较。在“#专家”一行中,𝑎 + 𝑏表示𝑎个共享专家和𝑏个路由专家。在“#激活专家”一行中,𝑎 + 𝑏表示𝑎个激活的共享专家和𝑏个激活的路由专家。DeepSeekMoE在性能上与包含1.5倍专家参数和计算的GShard模型相媲美。此外,DeepSeekMoE几乎接近具有16倍FFN参数的dense模型的性能,这在模型容量方面为MoE模型设定了上限
Figure 3 | DeepSeekMoE的消融研究。为清晰展示,性能经过归一化处理。所有比较的模型具有相同数量的参数和激活参数。我们可以看到,精细的专家细分和共享专家隔离都有助于更强大的整体性能
Figure 4 | 关于禁用顶级路由专家比例的Pile损失。值得注意的是,DeepSeekMoE对禁用顶级路由专家比例的敏感性更大,表明DeepSeekMoE中路由专家之间的冗余较低
Table 3 | DeepSeek 7B和DeepSeekMoE 16B之间的比较。粗体字表示最佳或接近最佳。仅占40.5%的计算量,DeepSeekMoE 16B在性能上与DeepSeek 7B相媲美
Table 4 | LLaMA2 7B和DeepSeekMoE 16B之间的比较。仅占39.6%的计算量,DeepSeekMoE 16B在大多数基准测试上胜过LLaMA2 7B
Table 5 | LLaMA2 SFT 7B、DeepSeek Chat 7B和DeepSeekMoE Chat 16B之间的比较,这三个模型都在相同的SFT数据上进行了微调。与两个7B dense模型相比,DeepSeekMoE Chat 16B在大多数基准测试上仍然在仅占40%的计算量下达到相当或更好的性能
Table 6 | DeepSeek 67B(Dense)和约140B总参数规模的MoE模型之间的比较。在“#专家”和“#激活专家”一行中,𝑎 + 𝑏分别表示𝑎个共享专家和𝑏个路由专家。粗体字表示最佳或接近最佳的性能,最后一列除外。DeepSeekMoE 145B,甚至仅有一半激活专家参数的DeepSeekMoE 142B在性能上大大优于GShard 137B。此外,以28.5%的计算量,DeepSeekMoE 145B在性能上与DeepSeek 67B相媲美
论文贡献总结如下:
-
架构创新。我提出了DeepSeekMoE,这是一种创新性的MoE架构,旨在实现终极的专家特化,它采用细粒度专家分割和共享专家隔离两种主要策略。
-
经验证明进行了广泛的实验来经验证实DeepSeekMoE架构的有效性。实验结果验证了DeepSeekMoE 2B中的高水平专家特化,并表明DeepSeekMoE 2B几乎可以接近MoE模型的上限性能。
-
可扩展性。将DeepSeekMoE扩大到训练一个160亿参数的模型,并展示仅使用约40%的计算量,DeepSeekMoE 16B就达到了DeepSeek 7B和LLaMA2 7B的可比性能。我们还进行了将DeepSeekMoE扩大到1450亿的参数的初步尝试,突出了其相对于GShard架构的持续优势,并展示了与DeepSeek 67B可比的性能。
-
MoE的对齐。成功地对DeepSeekMoE 16B进行了监督微调来创建对齐的聊天模型,展示了DeepSeekMoE 16B的适应性和通用性。
-
公开发布。向公众发布了DeepSeekMoE 16B的模型checkpoint。值得注意的是,这个模型可以在不需要量化的情况下在具有40GB内存的单GPU上部署。
论文标题:DeepSeekMoE: Towards Ultimate Expert Specialization in Mixture-of-Experts Language Models
论文链接:https://arxiv.org/pdf/2401.06066.pdf
相关文章:
DeepSeekMoE:迈向混合专家语言模型的终极专业化
一、结论写在前面 论文提出了MoE语言模型的DeepSeekMoE架构,目的是实现终极的专家专业化(expert specialization)。通过细粒度的专家分割和共享专家隔离,DeepSeekMoE相比主流的MoE架构实现了显著更高的专家专业化和性能。从较小的2B参数规模开始&#x…...
知识库管理驱动企业知识流动与工作协同创新模式
内容概要 知识库管理在现代企业中扮演着至关重要的角色,其价值不仅体现在知识的积累,还在于通过优质的信息流动促进协作与创新。有效的知识库能够将分散的信息整合为有序、易于访问的资源,为员工提供实时支持,进而提升整体工作效…...
二叉树-堆(补充)
二叉树-堆 1.二叉树的基本特性2.堆2.1.堆的基本概念2.2.堆的实现2.2.1.基本结构2.2.2.堆的初始化2.2.3.堆的销毁2.2.4.堆的插入2.2.5.取出堆顶的数据2.2.6.堆的删除2.2.7.堆的判空2.2.8.堆的数据个数2.2.9.交换2.2.10.打印堆数据2.2.11.堆的创建2.2.12.堆排序2.2.13.完整代码 3…...
Java面试题2025-并发编程基础(多线程、锁、阻塞队列)
并发编程 一、线程的基础概念 一、基础概念 1.1 进程与线程A 什么是进程? 进程是指运行中的程序。 比如我们使用钉钉,浏览器,需要启动这个程序,操作系统会给这个程序分配一定的资源(占用内存资源)。 …...
【方法论】ChatGPT与DeepSeek的联合应用,提升工作效率的新解决方案
标题:ChatGPT与DeepSeek的联合应用,提升工作效率的新解决方案 【表格】ChatGPT与DeepSeek联合应用流程 阶段工具主要任务优势备注初稿生成ChatGPT基于用户输入生成初步内容高效、快速生成内容,适应多种主题适合生成长篇文章、报告、分析等验…...
RoboMaster- RDK X5能量机关实现案例(一)识别
作者:SkyXZ CSDN:https://blog.csdn.net/xiongqi123123 博客园:https://www.cnblogs.com/SkyXZ 在RoboMaster的25赛季,我主要负责了能量机关的视觉方案开发,目前整体算法已经搭建完成,实际方案上我使用的上…...
5分钟带你获取deepseek api并搭建简易问答应用
目录 1、获取api 2、获取base_url和chat_model 3、配置模型参数 方法一:终端中临时将加入 方法二:创建.env文件 4、 配置client 5、利用deepseek大模型实现简易问答 deepseek-v3是截止博文撰写之日,无论是国内还是国际上发布的大模型中…...
Ikigai是什么
Ikigai(生き甲斐) 是一个日语词语,意思是“生活的意义”或“生命的价值所在”。它是一种关于人生意义的哲学概念,源自日本文化,强调通过找到自己热爱、擅长、社会需要以及能带来经济回报的交集来实现幸福和满足感。 I…...
基于PyQt设计的智能停车管理系统
文章目录 一、前言1.1 项目介绍【1】项目开发背景【2】设计实现的功能【3】设计意义【4】国内外研究现状【6】摘要1.2 设计思路1.3 系统功能总结1.4 开发工具的选择【1】VSCODE【2】python【3】ptqt【4】HyperLPR31.5 参考文献二、安装Python环境1.1 环境介绍**1.2 Python版本介…...
Flink (十二) :Table API SQL (一) 概览
Apache Flink 有两种关系型 API 来做流批统一处理:Table API 和 SQL。Table API 是用于 Scala 和 Java 语言的查询API,它可以用一种非常直观的方式来组合使用选取、过滤、join 等关系型算子。Flink SQL 是基于 Apache Calcite 来实现的标准 SQL。无论输入…...
MySQL知识点总结(十三)
执行逻辑备份要具备哪些条件,其优缺点在哪。 逻辑备份是温备,创建逻辑备份文件时,MySQL服务器必须处于运行状态,其他应用程序在逻辑备份期间不能修改但可以执行读取操作。逻辑备份会把表结构和数据转换为SQL语句保存。 逻辑备份…...
ACL-2024 | 具身智能空间理解能力几何?EmbSpatial-Bench:视觉语言大模型在具身任务中空间理解水平测试基准
作者:Mengfei Du, Binhao Wu, Zejun Li, Xuanjing Huang, Zhongyu Wei 单位:复旦大学数据科学学院,复旦大学计算机科学学院 论文标题:EmbSpatial-Bench: Benchmarking Spatial Understanding for Embodied Tasks with Large Vis…...
动手学图神经网络(6):利用图神经网络进行点云分类
利用图神经网络进行点云分类 引言 在本教程中,大家将学习使用图神经网络(Graph Neural Networks, GNN)进行点云分类的基本工具。给定一组对象或点集的数据集,将这些对象嵌入到一个特征空间中,使得它们在特定任务下能够分类。将原始点云作为神经网络的输入,让网络学习捕…...
Ollama+DeepSeek本地大模型部署
1、Ollama 官网:https://ollama.com/ Ollama可以干什么? 可以快速在本地部署和管理各种大语言模型,操作命令和dokcer类似。 mac安装ollama: # 安装ollama brew install ollama# 启动ollama服务(默认11434端口…...
docker安装Redis:docker离线安装Redis、docker在线安装Redis、Redis镜像下载、Redis配置、Redis命令
一、镜像下载 1、在线下载 在一台能连外网的linux上执行docker镜像拉取命令 docker pull redis:7.4.0 2、离线包下载 两种方式: 方式一: -)在一台能连外网的linux上安装docker执行第一步的命令下载镜像 -)导出 # 导出镜像…...
HTML 标题
HTML 标题 引言 HTML(超文本标记语言)是构建网页的基础,而标题则是网页中不可或缺的元素。标题不仅能够帮助用户快速了解网页内容,还能够对搜索引擎优化(SEO)产生重要影响。本文将详细介绍HTML标题的用法…...
记录 | MaxKB创建本地AI智能问答系统
目录 前言一、重建MaxKBStep1 复制路径Step2 删除MaxKBStep3 创建数据存储文件夹Step4 重建 二、创建知识库Step1 新建知识库Step2 下载测试所用的txtStep3 上传本地文档Step4 选择模型补充智谱的API Key如何获取 Step5 查看是否成功 三、创建应用Step1 新建应用Step2 配置AI助…...
Linux 非阻塞IO
Linux 非阻塞IO 1. fcntl() 在Linux操作系统中,fcntl() 是一个用于操作文件描述符的系统调用。它提供了多种功能,包括控制文件描述符的属性、管理文件锁定、设置文件的非阻塞模式等。 本文只截取了用于IO模型的 fcntl() 部分内容, fcntl() …...
美国本科申请文书PS写作中的注意事项
在完成了introduction之后,便可进入到main body的写作之中。美国本科申请文书PS的写作不同于学术论文写作,要求你提出论点进行论证之类。PS更多的注重对你自己的经历或者motivation的介绍和描述。而这一描述过程只能通过对你自己的过往的经历的展现才能体…...
Qt文件操作
目录 一、文件操作相关类 1.QFile 2.QFileInfo 3.QTextStream 4.QDataStream 5.QDir 6.QFileSystemWatcher 7.QTemporaryFile 二、文件操作示例 1.文本文件操作 2.目录操作 3.二进制文件操作 一、文件操作相关类 1.QFile QFile类用于文件的创建、读写、复制、删除…...
赚钱的究极认识
1、赚钱的本质是提供了价值或者价值想象 价值: 比如小米手机靠什么?“性价比”,什么饥饿营销,创新,用户参与,生态供应链,品牌这些不能说不重要,但是加在一起都没有“性价比”这3字重…...
【项目】基于Qt开发的音乐播放软件
目录 项目介绍 项目概述 界面开发 界面分析 创建工程 主界面布局设计 窗口主框架设计 界面美化 主窗口设定 添加图片资源 head处理 播放控制区处理 自定义控件 BtForm 推荐页面 自定义CommonPage 自定义ListItemBox 自定义MusicSlider 自定义VolumeTool 音…...
week08_文本匹配任务
1、文本匹配任务概述 狭义: 给定一组文本,判断其是否语义相似 今天天气不错 match 今儿个天不错呀 √ 今天天气不错 match 你的代码有bug 以分值形式给出相似度 今天天气不错 match 今儿个天不错呀 0.9 今天天气不错 match…...
01-01 五元组
[外链图片转存中…(img-8JR8fhPZ-1737855365022)] 01-01 五元组 网络中的五元组(5-Tuple) 是用于唯一标识一个网络连接或数据流的五个关键参数组合。这五个参数共同定义了数据包的来源、目的地以及传输方式,是网络设备(如防火墙…...
5.2 软件需求分析
文章目录 需求分析的意义软件需求的组成需求分析的5个方面需求分析方法 需求分析的意义 需求分析解决软件“做什么”的问题。由于开发人员比较熟悉计算机而不熟悉领域业务,用户比较熟悉领域业务而不熟悉计算机,双方需要通过交流,制定出完整、…...
OpenCV:在图像中添加噪声(瑞利、伽马、脉冲、泊松)
目录 简述 1. 瑞利噪声 2. 伽马噪声 3. 脉冲噪声 4. 泊松噪声 总结 相关阅读 OpenCV:在图像中添加高斯噪声、胡椒噪声-CSDN博客 OpenCV:高通滤波之索贝尔、沙尔和拉普拉斯-CSDN博客 OpenCV:图像处理中的低通滤波-CSDN博客 OpenCV&…...
进程池的制作(linux进程间通信,匿名管道... ...)
目录 一、进程间通信的理解 1.为什么进程间要通信 2.如何进行通信 二、匿名管道 1.管道的理解 2.匿名管道的使用 3.管道的五种特性 4.管道的四种通信情况 5.管道缓冲区容量 三、进程池 1.进程池的理解 2.进程池的制作 四、源码 1.ProcessPool.hpp 2.Task.hpp 3…...
C++:多继承习题3
题目内容: 声明一个时间类Time,时间类中有3个私有数据成员(Hour,Minute,Second)和两个公有成员函数(SetTime和PrintTime)。要求: (1) SetTime根据传递的3个参数为对象设置时间; &a…...
数论问题75
命题,证明:存在K∈N,使得对于每个n∈N,Kx2^n1都是合数。 证明:设n2^m,当m0,1,2,3,4时,a(m)2^(2^m)1都是素数。 a(0)213,a(1)2^215,a(2)2^4117&…...
Baklib引领数字化内容管理转型提升企业运营效率
内容概要 在数字化迅速发展的背景下,企业正面临着前所未有的内容管理挑战。传统的内容管理方式已难以适应如今的信息爆炸,企业需要更加高效、智能的解决方案以应对复杂的数据处理需求。Baklib作为行业的先锋,以其创新技术对数字化内容管理进…...
2025年AI手机集中上市,三星Galaxy S25系列上市
2025年被认为是AI手机集中爆发的一年,各大厂商都会推出搭载人工智能的智能手机。三星Galaxy S25系列全球上市了。 三星Galaxy S25系列包含S25、S25和S25 Ultra三款机型,起售价为800美元(约合人民币5800元)。全系搭载骁龙8 Elite芯…...
Vue2官网教程查漏补缺学习笔记 - 3Vue实例4模板语法5计算属性监听器
3 Vue实例 3.1 创建一个 Vue 实例 每个 Vue 应用都是通过用 Vue 函数创建一个新的 Vue 实例开始的: var vm new Vue({// 选项 })虽然没有完全遵循 MVVM 模型,但是 Vue 的设计也受到了它的启发。因此在文档中经常会使用 vm (ViewModel 的缩写) 这个变…...
2025年数学建模美赛:A题分析(1)Testing Time: The Constant Wear On Stairs
2025年数学建模美赛 A题分析(1)Testing Time: The Constant Wear On Stairs 2025年数学建模美赛 A题分析(2)楼梯磨损分析模型 2025年数学建模美赛 A题分析(3)楼梯使用方向偏好模型 2025年数学建模美赛 A题分…...
WPS数据分析000007
目录 一、分列 智能分列 出生日期 数值转换 公式不运算 二、数据对比 离职员工 新入职员工 都在职的员工 三、合并计算 四、拆分表格 合并表格 一、分列 智能分列 出生日期 数据求和 文本型数字左对齐;数值型数字右对齐 数值转换 方式一: 方…...
oracle 19C RAC打补丁到19.26
oracle 19CRAC打补丁到19.26 本文只保留简介命令和每个命令大概的用时,方便大家直接copy使用,并了解每个命令的预期时间,减少命令执行期的等待焦虑。 1.本次所需的补丁如下 p6880880_190000_Linux-x86-64.zip (.43的opatch&…...
动手学图神经网络(8):在消息传递中定制聚合操作
在消息传递中定制聚合操作 安装Pytorch和PyG # 安装所需的包 import os import torch os.environ[TORCH] = torch.__version__# 以下是安装命令,实际运行时可取消注释 #!pip install -q torch-scatter -f https://data.pyg.org/whl/torch-${TORCH}.html #!pip install -q to…...
MySQL安装教程
一、下载 点开下面的链接:下载地址 点击Download 就可以下载对应的安装包了, 安装包如下: 二、解压 下载完成后我们得到的是一个压缩包,将其解压,我们就可以得到MySQL 8.0.34 的软件本体了(就是一个文件夹),我们可以把它放在你想…...
信息学奥赛一本通 1390:食物链【NOI2001】| 洛谷 P2024 [NOI2001] 食物链
【题目链接】 ybt 1390:食物链【NOI2001】 洛谷 P2024 [NOI2001] 食物链 【题目考点】 1. 种类并查集 2. 带权并查集 【解题思路】 解法1:种类并查集 已知有三类动物A、B、C。A吃B,B吃C,C吃A。 对于B类动物来说,…...
Linux网络之序列化和反序列化
目录 序列化和反序列化 上期我们学习了基于TCP的socket套接字编程接口,并实现了一个TCP网络小程序,本期我们将在此基础上进一步延伸学习,实现一个网络版简单计算器。 序列化和反序列化 在生活中肯定有这样一个情景。 上图大家肯定不陌生&a…...
【Django教程】用户管理系统
Get Started With Django User Management 开始使用Django用户管理 By the end of this tutorial, you’ll understand that: 在本教程结束时,您将了解: Django’s user authentication is a built-in authentication system that comes with pre-conf…...
万字长文总结前端开发知识---JavaScriptVue3Axios
JavaScript学习目录 一、JavaScript1. 引入方式1.1 内部脚本 (Inline Script)1.2 外部脚本 (External Script) 2. 基础语法2.1 声明变量2.2 声明常量2.3 输出信息 3. 数据类型3.1 基本数据类型3.2 模板字符串 4. 函数4.1 具名函数 (Named Function)4.2 匿名函数 (Anonymous Fun…...
React基础
前言 (2021年笔记)补充记录 React基础 前言React讲义一、create-react-app二、关于React1、React的起源和发展2、React与传统MVC的关系3、React高性能的体现:虚拟DOM4、React的特点和优势 三、编写第一个react应用程序四、元素与组件1、函数…...
读书笔记:《华为突围ERP封锁全纪实》
文章背景: 2019年5月,华为被美国制裁,其ERP系统面临断供风险。ERP系统是企业核心管理软件,一旦中断,华为的全球业务将陷入瘫痪。面对这一生死存亡的危机,华为启动了“突围”计划,历经数年艰苦奋…...
Linux的udev详解、安装和使用(dev下的设备每次开机的名称不固定怎么办?)
前言(问题与需求): 在传统的devfs 1:设备映射的不确定:一个设备多次加载设备的设备文件可能不同,比如一个hub有可能是ttyUSB0或ttyUSB2或ttyUSB3 2:devfs没有足够的主辅设备号,当设…...
单向循环链表的概念+单向循环链表的结点插入+单向循环链表的结点删除+程序设计与笔试题分析
单向循环链表的原理与应用 思考:对于单向链表而言,想要遍历链表,则必须从链表的首结点开始进行遍历,请问有没有更简单的方案实现链表中的数据的增删改查? 回答:是有的,可以使用单向循环的链表…...
【蓝桥杯嵌入式入门与进阶】2.与开发板之间破冰:初始开发板和原理图2
个人主页:Icomi 专栏地址:蓝桥杯嵌入式组入门与进阶 大家好,我是一颗米,本篇专栏旨在帮助大家从0开始入门蓝桥杯并且进阶,若对本系列文章感兴趣,欢迎订阅我的专栏,我将持续更新,祝你…...
Jetson Xavier NX 安装 CUDA 支持的 PyTorch 指南
本指南将帮助开发者完成在 Jetson Xavier NX 上安装 CUDA 支持的 PyTorch。 安装方法 在 Jetson 上安装 Pytorch 只有两种方法。 一种是直接安装他人已经编译好的 PyTorch 轮子;一种是自己从头开始开始构建 PyTorch 轮子并且安装。 使用轮子安装 可以从我的 Gi…...
“harmony”整合不同平台的单细胞数据之旅
其实在Seurat v3官方网站的Vignettes中就曾见过该算法,但并没有太多关注,直到看了北大张泽民团队在2019年10月31日发表于Cell的《Landscap and Dynamics of Single Immune Cells in Hepatocellular Carcinoma》,为了同时整合两类数据…...
[权限提升] 操作系统权限介绍
关注这个专栏的其他相关笔记:[内网安全] 内网渗透 - 学习手册-CSDN博客 权限提升简称提权,顾名思义就是提升自己在目标系统中的权限。现在的操作系统都是多用户操作系统,用户之间都有权限控制,我们通过 Web 漏洞拿到的 Web 进程的…...
大模型本地部署流程介绍
大模型本地部署流程介绍 随着人工智能技术的快速发展,大模型(如大型语言模型、图像识别模型等)的应用越来越广泛。然而,由于这些模型通常体积庞大且计算资源要求高,如何在本地环境中高效部署成为了一个重要的议题。以…...