模型压缩方法技术

技术编号:39657268 阅读:9 留言:0更新日期:2023-12-09 11:26
本申请公开了一种模型压缩方法

【技术实现步骤摘要】
模型压缩方法、装置、电子设备和可读存储介质


[0001]本申请属于人工智能
,具体涉及一种模型压缩方法

装置

电子设备和可读存储介质


技术介绍

[0002]随着自然语言处理技术的发展和深度学习算法的应用,大语言模型
(Large Language Model)
成为了当前自然语言处理领域的热门研究方向之一

大语言模型是指能够处理大量文本数据

具有强大语言生成和理解能力的神经网络模型,可以应用于机器翻译

文本摘要

对话系统等多个领域

[0003]在现有技术中,出于对个人隐私保护的目的,大语言模型运行于个人终端

然而,大语言模型功能强大,数据量也较大,受带宽限制,导致个人终端出现内存减小

功耗增加等问题,影响终端性能

[0004]可见,在现有技术中,因模型的数据处理量较大,导致承载的终端出现内存减小

功耗增加等问题,影响终端性能


技术实现思路

[0005]本申请实施例的目的是提供一种模型压缩方法,能够解决因模型的数据处理量较大,导致承载的终端出现内存减小

功耗增加等现象,影响终端性能的问题

[0006]第一方面,本申请实施例提供了一种模型压缩方法,该方法包括:在第一模型的各个节点中确定为矩阵乘法类型/>、
且权重值大于第一阈值的第一节点;调整所述第一节点的输入尺寸;根据第一参数,将调整尺寸后的所述第一节点的矩阵乘法转换为卷积算子

[0007]第二方面,本申请实施例提供了一种模型压缩装置,该装置包括:确定模块,用于在第一模型的各个节点中确定为矩阵乘法类型

且权重值大于第一阈值的第一节点;第一调整模块,用于调整所述第一节点的输入尺寸;转换模块,用于根据第一参数,将调整尺寸后的所述第一节点的矩阵乘法转换为卷积算子

[0008]第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤

[0009]第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤

[0010]第五方面,本申请实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法

[0011]第六方面,本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面所述的方法

[0012]这样,在本申请的实施例中,基于大语言模型,即第一模型,遍历各个节点,以得到
矩阵乘法类型的节点,同时,在矩阵乘法类型的节点的权重值大于第一阈值的情况下,确定该节点为一个第一节点,从而将第一节点原本的矩阵乘法转换为卷积算子

可见,基于本申请的实施例,针对卷积操作具有高算力

低功耗的特点,利用卷积操作替换矩阵乘法,替换后,卷积操作的计算访存比提高,使得模型的性能对数据读取能力的依赖降低,不会影响到电子设备的性能

附图说明
[0013]图1是本申请实施例的模型压缩方法的流程图;
[0014]图2是本申请实施例的模型压缩装置的框图;
[0015]图3是本申请实施例的电子设备的硬件结构示意图之一;
[0016]图4是本申请实施例的电子设备的硬件结构示意图之二

具体实施方式
[0017]下面将结合本申请实施例的附图,对本申请实施例的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例

基于本申请的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围

[0018]本申请的说明书和权利要求书的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序

应该理解这样使用的术语在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个

此外,说明书以及权利要求中“和
/
或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系

[0019]下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的模型压缩方法进行详细地说明

[0020]图1示出了本申请一个实施例的模型压缩方法的流程图,以该方法应用于电子设备进行举例,该方法包括:
[0021]步骤
110
:在第一模型的各个节点中确定为矩阵乘法类型

且权重值大于第一阈值的第一节点

[0022]可选地,第一模型为现有技术中的大语言模型

[0023]在该步骤之前,解析第一模型,以获取第一模型中的节点信息,从而在第一模型中确定第一节点,第一节点的数量为至少一个

[0024]具体地,循环遍历第一模型的各个节点,如果某个节点的算法类型为矩阵乘法,且该节点的权重值大于第一阈值,则将该节点确定为一个第一节点

[0025]在本该步骤中,基于确定第一节点的两个条件,可以判定为第一节点在终端遇到较为明显的带宽瓶颈,从而将这类节点的矩阵乘法转换为卷积算子,以实现对这类节点的优化

[0026]其中,模型是一个由节点组成的图表
(graph)
,任意节点都有输入和输出

若一个节点的算法类型是矩阵乘法,输入数据
A
和权重
B
通过该节点,可以输出结果
C
,而矩阵乘法表示为
Ax B

C。
[0027]例如,某节点,输入数据是上一个节点的输出数据,表示为
[1
,7,
4096];该节点的权重
(weights)
表示为
[16384

4096],输出数据表示为
[7

16384],作为下一个节点的输入数据

[0028]在本实施例中,基于训练好的模型,每个节点的权重值是固定的

[0029]步骤
120
:调整第一节点的输入本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.
一种模型压缩方法,其特征在于,所述方法包括:在第一模型的各个节点中确定为矩阵乘法类型

且权重值大于第一阈值的第一节点;调整所述第一节点的输入尺寸;根据第一参数,将调整尺寸后的所述第一节点的矩阵乘法转换为卷积算子
。2.
根据权利要求1所述的方法,其特征在于,所述调整所述第一节点的输入尺寸,包括:将所述第一节点的第一输入尺寸转换为第二输入尺寸;其中,所述第一输入尺寸适用于矩阵乘法,所述第二输入尺寸适用于卷积算子
。3.
根据权利要求1所述的方法,其特征在于,所述根据第一参数,将调整尺寸后的所述第一节点的矩阵乘法转换为卷积算子,包括:在所述第一节点的第一输出尺寸是所述第一节点的第一输入尺寸的整数倍的情况下,根据第一参数,将调整尺寸后的所述第一节点的矩阵乘法转换为两个卷积算子
。4.
根据权利要求1所述的方法,其特征在于,所述根据第一参数,将调整尺寸后的所述第一节点的矩阵乘法转换为卷积算子,包括:在所述第一节点的第一输出尺寸是所述第一节点的第一输入尺寸的非整数倍的情况下,将所述第一节点的矩阵乘法确定为第一矩阵乘法;根据所述第一矩阵乘法,在所述第一节点之后的矩阵乘法类型的节点中依次进行确定,直至确定所述第一节点之后的第
N
个矩阵乘法类型的节点的第二矩阵乘法的第二输出尺寸是所述第一输入尺寸的整数倍,其中,
N
为正整数;根据第一参数,将调整尺寸后的所述第一节点的所述第一矩阵乘法

所述第二矩阵乘法,以及所述第一矩阵乘法与所述第二矩阵乘法之间的所有矩阵乘法,转换为至少三个卷积算子
。5.
根据权利要求3或4所述的方法,其特征在于,所述根据第一参数,将调整尺寸后的所述第一节点的矩阵乘法转换为卷积算子之后,所述方法还包括:设置所述第一参数的取值;调整转换为卷积算子的所有节点的权重值;其中,每设置一次所述第一参数的取值,调整一次权重值,且每次设置的取值递增,直至所述第一模型转换前后基于同一输入内容输出的结果之间的差别满足第一条件
。6.
一种模型压缩装置,其特征在于,所述装置包括:确定模块,用于在第一模型的各个节点中确定为矩阵乘法类型

且权重值大于第一阈值的第一节点;第一调整模块,用...

【专利技术属性】
技术研发人员:覃营晟
申请(专利权)人:维沃移动通信有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1