稠密架构和稀疏架构
稠密架构和稀疏架构
flyfish
稠密架构
- 参数使用方面:稠密架构中的大部分参数在每次计算时都会被使用。也就是说,对于输入的每一个样本,模型的所有或大部分参数都会参与到计算过程中。
- 计算特点:计算密集,需要对大量的参数进行乘法和加法运算,通常会消耗较多的计算资源和内存。
稀疏架构
- 参数使用方面:稀疏架构中只有一小部分参数会在每次计算时被激活和使用。模型会根据输入的具体情况,动态地选择使用哪些参数进行计算。
- 计算特点:计算相对稀疏,避免了不必要的计算,从而可以减少计算量和内存占用,提高计算效率。
Transformer架构
- 类型:Transformer属于稠密架构。
- 原因:
- 参数使用:在Transformer中,对于每个输入序列,多头注意力机制和前馈神经网络层中的所有参数都会参与计算。例如,在多头注意力机制里,输入序列的每个位置都会与其他所有位置进行注意力计算,涉及到大量的矩阵乘法和加法运算,所有的注意力头和对应的权重矩阵都会被使用。
- 计算特点:Transformer的计算量随着输入序列长度的增加而显著增加,是一种计算密集型的架构。在处理长序列时,需要大量的计算资源和内存来存储中间结果。
DeepseekV2MoE架构
- 类型:DeepseekV2MoE属于稀疏架构。
- 原因:
- 参数使用:DeepseekV2MoE采用了混合专家(Mixture - of - Experts, MoE)架构,其中包含多个专家网络(
experts)和一个门控网络(MoEGate)。门控网络会根据输入数据的特征,为每个专家网络计算一个权重,然后根据这些权重动态地选择一部分专家网络来处理输入。也就是说,在每次计算时,只有被选中的专家网络的参数会参与到计算中,而其他专家网络的参数则不会被使用,实现了参数的稀疏使用。 - 计算特点:由于只有部分专家网络参与计算,避免了对所有专家网络进行不必要的计算,从而减少了计算量和内存占用。特别是在处理大规模数据时,这种稀疏计算的方式可以显著提高计算效率。例如,对于某些特定的输入,门控网络可能只选择少数几个专家网络进行处理,而其他专家网络则处于空闲状态。
- 参数使用:DeepseekV2MoE采用了混合专家(Mixture - of - Experts, MoE)架构,其中包含多个专家网络(
使用混合专家(Mixture of Experts, MoE)的例子
自然语言处理领域
1. Switch Transformer
- 提出者:由谷歌于2021年提出。
- 架构特点:将MoE架构引入到Transformer模型中,在Transformer的前馈网络层使用多个专家网络。门控网络会根据输入动态地将输入序列的不同部分路由到不同的专家网络进行处理,从而显著减少了计算量和内存占用,同时提高了模型的性能。
- 应用效果:在大规模语言模型训练中展现出了高效性,能够在相同计算资源下处理更大规模的数据和更复杂的任务。
2. GShard
- 提出者:也是谷歌的研究成果。
- 架构特点:同样基于Transformer架构,采用了MoE技术。它通过一种名为“GShard”的算法来实现专家网络的高效并行化和负载均衡,能够在分布式环境下进行大规模训练。
- 应用效果:在处理长序列文本和大规模语料库时表现出色,可有效提升模型的训练速度和性能。
3. ST-MoE
- 提出者:字节跳动提出。
- 架构特点:对传统的MoE进行了改进,在门控机制和专家网络的设计上进行了优化。它引入了一种自适应的路由策略,能够根据输入的动态特性更灵活地分配专家网络,同时采用了更高效的稀疏计算方法。
- 应用效果:在多个自然语言处理任务中取得了较好的效果,并且在计算效率上有显著提升。
计算机视觉领域
1. ViT - MoE
- 架构特点:将MoE架构与视觉Transformer(ViT)相结合。在ViT的多头注意力机制或前馈网络层引入专家网络,门控网络根据图像的特征将不同的图像区域或特征路由到合适的专家网络进行处理。
- 应用效果:能够更好地捕捉图像中的复杂模式和特征,提高图像分类、目标检测等任务的性能。
强化学习领域
1. MoE - based Policy Networks
- 应用方式:在强化学习的策略网络中使用MoE架构。不同的专家网络可以学习到不同的策略,门控网络根据当前的环境状态选择合适的专家网络生成动作,从而提高智能体在复杂环境中的决策能力。
- 应用效果:在一些复杂的游戏和机器人控制任务中,基于MoE的策略网络能够更快地学习到有效的策略,提升智能体的性能。
相关文章:
稠密架构和稀疏架构
稠密架构和稀疏架构 flyfish 稠密架构 参数使用方面:稠密架构中的大部分参数在每次计算时都会被使用。也就是说,对于输入的每一个样本,模型的所有或大部分参数都会参与到计算过程中。计算特点:计算密集,需要对大量的…...
LeetCode --- 436周赛
题目列表 3446. 按对角线进行矩阵排序 3447. 将元素分配给有约束条件的组 3448. 统计可以被最后一个数位整除的子字符串数目 3449. 最大化游戏分数的最小值 一、按对角线进行矩阵排序 直接模拟,遍历每一个斜对角线,获取斜对角线上的数字,排…...
用easyExcel如何实现?
要使提供的 ExcelModelListener 类来解析 Excel 文件并实现批量存储数据库的功能,需要结合 EasyExcel 库来读取 Excel 数据。具体来说,可以使用 EasyExcel.read() 方法来读取 Excel 文件,并指定 ExcelModelListener 作为事件监听器。 下面是…...
从 X86 到 ARM :工控机迁移中的核心问题剖析
在工业控制领域,技术的不断演进促使着工控机从 X86 架构向 ARM 架构迁移。然而,这一过程并非一帆风顺,面临着诸多关键挑战。 首先,软件兼容性是一个重要问题。许多基于 X86 架构开发的工业控制软件可能无法直接在 ARM 架构上运行…...
大模型DeepSeek-R1学习
学习路线 机器学习-> 深度学习-> 强化学习-> 深度强化学习 大模型演进分支 微调: SFT 监督学习蒸馏:把大模型作为导师训练小模型RLHF:基于人类反馈的强化学习 PPO 近端策略优化 油门 - 重要性采样 权重 * 打分刹车 - clip 修剪…...
【STM32】H743的以太网MAC控制器的一个特殊功能
调试743的MAC,翻阅手册的时候,发现了一个有意思的功能 混杂模式 H743的MAC控制器,可以设置为混杂模式,这就意味着它可以做一些网络监控的应用,譬如连接具备端口镜像功能的交换机,然后直接代替PC实现网络数据…...
关于“i18n“在vue中的使用
关于"i18n"在vue中的使用 <!-- vue2中 --> <template><div>{{ $t("This campaign has expired.") }}}}</div> </template> <script> export default {created() {this.onLoading();},methods: {onLoading () {this.$…...
前缀树算法篇:前缀信息的巧妙获取
前缀树算法篇:前缀信息的巧妙获取 那么前缀树算法是一个非常常用的算法,那么在介绍我们前缀树具体的原理以及实现上,我们先来说一下我们前缀树所应用的一个场景,那么在一个字符串的数据集合当中,那么我们查询我们某个字…...
DVSI使用SenseGlove为开发虚拟现实场景技能培训
虚拟现实场景技能培训能够有效提升被培训者的技能熟练度,使其在现实世界中经历类似事件时第一时间做出正确反映,从而大大降低因缺乏相关技能经验所造成的财产、人员、时间损失。 DVSI(Digital Voice Systems Inc)是一家美国数字化…...
VSCode + Continue 实现AI编程助理
安装VS Code 直接官网下载安装,反正是免费的。 安装VS插件Continue 直接在插件市场中搜索, Continue,第一个就是了。 配置Chat Model 点击Add Chat model后进行选择: 选择Ollama后,需要点击下面的config file : 由于…...
【PHP的static】
关于静态属性 最简单直接:静态方法也是一样 看了很多关于静态和动态的说法,无非是从 调用方式, 类访问实例变量, 访问静态变量, 需不要实例化这几个方向,太空了。问使用场景,好一点的 能说个…...
考研操作系统----操作系统的概念定义功能和目标(仅仅作为王道哔站课程讲义作用)
目录 操作系统的概念定义功能和目标 操作系统的四个特征 操作系统的分类 编辑 操作系统的运行机制 系统调用 操作系统体系结构 操作系统引导 虚拟机 操作系统的概念定义功能和目标 什么是操作系统: 操作系统是指控制和管理整个计算机系统的软硬件资源&…...
从360度全景照片到高质量3D场景:介绍SC-Omnigs 3D重建系统
在当今的数字化时代,3D重建技术正在迅速发展,并广泛应用于文旅、空间智能和3D重建等领域。为了简化360度全景相机拍摄数据的处理流程,提高3D场景重建的质量和效率,我们开发了一款专门处理360度全景相机数据的3D重建系统——SC-Omnigs。本文将详细介绍这一系统的功能、特点及…...
前沿技术新趋势:值得关注的创新发展
量子通信是一种新兴的通信技术。它基于量子力学的原理,特别是量子叠加和量子纠缠。量子通信的核心在于量子比特qubits),与传统的比特不同,量子比特可以同时处于多种状态。这种特性使得信息的传输更为安全。 量子通信技术的最大优…...
算法跟练第十一弹——二叉树
文章目录 part01 递归遍历1.1 二叉树的前序遍历1.2 二叉树的中序遍历1.3 二叉树的后序遍历 part02 迭代遍历2.1 二叉树的前序遍历2.2 二叉树的中序遍历2.3 二叉树的后序遍历 part03 层序遍历3.1 二叉树的层序遍历3.2 二叉树的层序遍历II3.3 二叉树的右视图 归纳获取双重链表的第…...
机器学习(李宏毅)——BERT
一、前言 本文章作为学习2023年《李宏毅机器学习课程》的笔记,感谢台湾大学李宏毅教授的课程,respect!!! 读这篇文章必须先了解self-attention、Transformer,可参阅我其他文章。 二、大纲 BERT简介self-…...
新数据结构(7)——Object
Object类是所有类的父类,在 Java 中,每个类都直接或间接地继承自Object类,也就是说所有类都是object类的子类可以使用Object里的方法。 equals()和hashCode()是Java中Object类所包含的两个关键方法,下面将介绍两个方法。 和equa…...
云计算基础
环境准备 配置虚拟机安装docker 前提安装 步骤命令效果图 安装docker-compose 前提安装 步骤效果图 安装gitea 步骤命令效果图 执行docker-compose命令浏览器初始gitea配置浏览器登录gitea创建组织创建仓库 Drone安装 步骤效果图 非自动化部署 nginx安装redis安装jdk安装…...
利用kali linux 进行自动化渗透测试
本方案旨在自动化创建渗透测试全流程 一、架构 1.智能信息收集体系 class IntelligentOSINT:def __init__(self, target):self.target targetself.intelligence_sources [OSINT_Platforms,DeepWeb_Crawlers, SocialMedia_Trackers,ML_Correlation_Engine]def advanced_col…...
【Vue中BUG解决】npm error path git
报错内容如下: 从错误信息可知,这是一个 ENOENT(No Entry,即找不到文件或目录)错误,并且与 git 相关。具体来说,npm 在尝试调用 git 时,无法找到 git 可执行文件,下面为…...
UE5 学习系列(三)创建和移动物体
这篇博客是该系列的第三篇,是在之前两篇博客的基础上展开,主要介绍如何在操作界面中创建和拖动物体,这篇博客跟随的视频链接如下: B 站视频:s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...
基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...
04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...
ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...
Ascend NPU上适配Step-Audio模型
1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤)&#x…...
vue3+vite项目中使用.env文件环境变量方法
vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...
Reasoning over Uncertain Text by Generative Large Language Models
https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...
处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的
修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...
【JVM面试篇】高频八股汇总——类加载和类加载器
目录 1. 讲一下类加载过程? 2. Java创建对象的过程? 3. 对象的生命周期? 4. 类加载器有哪些? 5. 双亲委派模型的作用(好处)? 6. 讲一下类的加载和双亲委派原则? 7. 双亲委派模…...
C#学习第29天:表达式树(Expression Trees)
目录 什么是表达式树? 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持: 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...
