CN113505613A - 一种面向小型cpu设备的模型结构化简压缩方法 - Google Patents

一种面向小型cpu设备的模型结构化简压缩方法 Download PDF

Info

Publication number
CN113505613A
CN113505613A CN202110861060.2A CN202110861060A CN113505613A CN 113505613 A CN113505613 A CN 113505613A CN 202110861060 A CN202110861060 A CN 202110861060A CN 113505613 A CN113505613 A CN 113505613A
Authority
CN
China
Prior art keywords
model
training
ffn
neural network
coefficient
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN202110861060.2A
Other languages
English (en)
Inventor
杜权
徐萍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenyang Yaze Network Technology Co ltd
Original Assignee
Shenyang Yaze Network Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenyang Yaze Network Technology Co ltd filed Critical Shenyang Yaze Network Technology Co ltd
Priority to CN202110861060.2A priority Critical patent/CN113505613A/zh
Publication of CN113505613A publication Critical patent/CN113505613A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/58Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开一种面向小型CPU设备的模型结构化简压缩方法,步骤为:构建训练平行语料及基于注意力机制的神经机器翻译的模型,利用平行语料生成机器翻译词表,进一步训练得到训练收敛后的模型作为对比的基线模型;在模型训练阶段利用0或1系数动态选择基线模型解码端中的前馈神经网络模块,训练过程中一部分前馈神经网络模块的系数为0,另一部分系数为1;模型训练结束后删除部分FFN模块得到模型结构化简后的模型,从而减少模型的参数,达到模型压缩的目的;微调化简后模型,提高化简后模型性能。本发明在多个机器翻译任务数据集上显著减少模型参数,保证模型性能无明显下降,使得神经机器翻译模型更容易在小型CPU设备进行部署和应用。

Description

一种面向小型CPU设备的模型结构化简压缩方法
技术领域
本发明涉及一种神经机器翻译模型压缩技术,具体为一种面向小型CPU设备的模型结构化简压缩方法。
背景技术
小型智能移动设备成为人们不可缺少的知识获取来源,CPU为小型智能移动设备中主要用来计算的元件。由于人们对各种类型应用的需求,各类APP软件频繁被小型智能移动设备用户下载并存储,导致小型智能移动设备出现卡顿的问题。单纯增大小型智能移动设备容量会导致硬件成本过高,增加用户经济负担,因此如何压缩面向CPU设备的神经机器翻译模型大小是一个非常重要的问题。
机器翻译在现阶段有着广泛的应用需求,智能翻译软件也被广泛应用于移动设备中。端到端的神经机器翻译通过神经网络模型直接实现从源语言到目标语言的翻译,所采用的主要框架是编码器-解码器(Encoder-Decoder)框架。编码器-解码器框架将翻译任务看作序列到序列的转换,即将翻译过程看作从源语言序列转换成目标语言序列的过程。该过程主要包括两个步骤:(1)源语言端,编码器将源语言序列编码成源语言上下文向量;(2)目标语言端,解码器根据编码器提供的源语言上下文向量生成目标语言序列。
谷歌在2017年提出了完全基于注意力机制的模型结构,这种网络结构完全由注意力机制组成,更准确地讲,它仅由注意力机制和前馈神经网络组成。基于注意力机制的模型仍是基于编码器-解码器框架,通过堆叠多个相同的栈,分别组成了编码器和解码器,编码器和解码器的子层结构略有不同,在机器翻译任务的多个数据集上翻译性能得到显著提高,并达到了当时的最好性能,而且具备更快的训练速度。在生成一个目标语单词时,基于注意力机制的神经网络会基于得到的不同的注意力对不同源语位置向量进行加权求和,得到不同的上下文向量。注意力机制的引入使得不同源语言位置对目标语单词生成的贡献度不同,神经网络中信息流的传递变得更为高效,有助于神经网络模型的学习。
虽然当前这种模型已经取得了不错的性能,但仍存在着一个问题:当前的神经网络模型规模过于庞大,虽然模型性能不断增强,但在存储和计算资源受限的小型智能移动设备(如:手机、平板电脑等移动设备)部署此类模型却面临着巨大的挑战。
发明内容
针对现有技术中机器翻译的计算过于复杂而不能部署在存储资源受限的小设备上的问题,本发明要解决的技术问题是提供一种面向小型CPU设备的模型结构化简压缩方法,通过化简模型结构,去除部分的FFN模块,到达模型压缩的目的。
为解决上述技术问题,本发明采用的技术方案是:
本发明提供一种面向小型CPU设备的模型结构化简压缩方法,包括以下步骤:
1)构建训练平行语料及基于注意力机制的神经机器翻译的模型,利用平行语料生成机器翻译词表,进一步训练得到训练收敛后的模型作为对比的基线模型;
2)在模型训练阶段利用0或1系数动态选择基线模型解码端中的前馈神经网络模块,训练过程中一部分前馈神经网络模块的系数为0,另一部分系数为1;
3)模型训练结束后删除部分FFN模块得到模型结构化简后的模型,从而减少模型的参数,达到模型压缩的目的;
4)微调化简后模型,提高化简后模型性能。
步骤1)中,训练基于注意力机制的神经机器翻译模型,得到符合要求的基线模型;基于注意力机制的神经机器翻译模型包括编码端和解码端,主要由前馈神经网络模块和注意力模块组成;
前馈神经网络模块计算公式为:
FFN(x)=max(0,xW1+b1)W2+b2
其中,FFN(x)为前馈神经网络模块,x为前馈神经网络模块的输入矩阵,W1和W2为两个线性变换矩阵,b1和b2为两个线性变换的偏置矩阵;
使用注意力机制的计算方式为:
MultiHead(Q,K,V)=concat(head1,head2,...,headh)W°
其中concat为级联操作,MultiHead(Q,K,V)为多头注意力机制,head1,head2,...,headh代表模型中的h个头,其中每个头的注意力计算公式为:
Figure BDA0003185613720000021
其中SoftMax(·)为归一化函数,Q、K和V分别为参与计算的不同的线性变换矩阵,dk为K矩阵每个头的维度大小。
步骤2)中在模型训练阶段利用0或1系数动态选择基线模型解码端中的前馈神经网络模块,训练过程中一部分前馈神经网络模块的系数为0,另一部分系数为1,具体为:
改变模型训练过程,在每个FFN模块前随机加上0或1系数,原本的FFN计算公式为:
FFN(x)=max(0,xW1+b1)W2+b2
改变训练过程后的FFN计算公式为:
FFN′(x)=α·(max(0,xW1+b1)W2+b2)
其中,α为系数0或1。
步骤3)中在模型训练结束后删除部分FFN模块得到模型结构化简后的模型,从而减少模型的参数,达到模型压缩的目的,具体为:
在每个FFN模块前随机加上0或1系数变换后,训练结束后神经机器翻译模型可以对去掉FFN模块的包容性更强,在这里可以采取2种策略去掉FFN模块:1)按50%的概率随机去掉FFN模块;2)均匀的每隔一层去掉一个FFN模块。
步骤4)中,微调化简后模型,提高化简后模型性能,具体为:
在得到化简后模型后,在训练数据继续训练该模型直到模型收敛,弥补模型结构化简带来的性能损失。
本发明具有以下有益效果及优点:
1.本发明应用于小型智能移动设备中,通过化简基于自注意力机制的机器翻译模型结构,使神经机器翻译更轻松部署在存储资源受限的小设备上。
2.本发明能够有效地降低神经机器翻译系统模型参数量,节省存储资源,并保证模型的性能没有明显下降。
附图说明
图1为本发明提出方法的流程图;
图2为神经机器翻译编码解码注意力机制示意图;
图3为本发明方法翻译效果图。
具体实施方式
下面结合说明书附图对本发明作进一步阐述。
本发明追求更高效的架构,模型结构化简是当前机器翻译模型压缩常用的一种手段,通过化简模型结构,消除冗余的计算,可以在不明显损失模型性能的前提下达到减小模型规模的目的。
本发明提供一种面向小型CPU设备的模型结构化简压缩方法,其过程如图1所示,包括以下步骤:
1)构建训练平行语料及基于注意力机制的神经机器翻译的模型,利用平行语料生成机器翻译词表,进一步训练得到训练收敛后的模型作为对比的基线模型;
2)在模型训练阶段利用0或1系数动态选择基线模型解码端中的前馈神经网络模块,训练过程中一部分前馈神经网络模块的系数为0,另一部分系数为1;
3)模型训练结束后删除部分FFN模块得到模型结构化简后的模型,从而减少模型的参数,达到模型压缩的目的;
4)微调化简后模型,提高化简后模型性能。
在步骤1)中,训练基于注意力机制的神经机器翻译模型,得到符合要求的基线模型;基于注意力机制的神经机器翻译模型包括编码端和解码端,主要由前馈神经网络模块和注意力模块组成;
前馈神经网络模块计算公式为:
FFN(x)=max(0,xW1+b1)W2+b2
其中,FFN(x)为前馈神经网络模块,x为输入,max为取最大函数,W1和W2为两个线性变换矩阵,b1和b2为两个线性变换的偏置。
使用注意力机制的计算方式为:
MultiHead(Q,K,V)=concat(head1,head2,...,headh)W°
其中concat为级联操作,MultiHead(Q,K,V)为多头注意力机制,head1,head2,...,headh代表模型中的h个头,其中每个头的注意力计算公式为:
Figure BDA0003185613720000041
其中SoftMax(·)为归一化函数,Q、K和V分别为参与计算的不同的线性变换矩阵,dk为K矩阵每个头的维度大小。
本步骤中编码端和解码端结构如图2所示。
步骤2)在模型训练阶段利用0或1系数动态选择基线模型解码端中的前馈神经网络模块,训练过程中一部分前馈神经网络模块的系数为0,另一部分系数为1,具体为:
改变模型训练过程,在每个FFN模块前随机加上0或1系数,原本的FFN计算公式为:
FFN(x)=max(0,xW1+b1)W2+b2
改变训练过程后的FFN计算公式为:
FFN(x)=α·(max(0,xW1+b1)W2+b2)
其中α为非0即1的系数,这个过程的目的就是训练模型使得部分FFN模块前的系数为0,表明它们是可以被去除的。
步骤3)在模型训练结束后删除部分FFN模块得到模型结构化简后的模型,从而减少模型的参数,达到模型压缩的目的,具体为:
在每个FFN模块前随机加上0或1系数变换后,训练结束后神经机器翻译模型可以对去掉FFN模块的包容性更强,在这里可以采取2种策略去掉FFN模块:1)按50%的概率随机去掉FFN模块;2)均匀的每隔一层去掉一个FFN模块。
化简后的模型FFN部分的参数量减少,而FFN在整个模型中占有很大的参数比例,可以较大程度的对模型进行压缩。
变换后模型结构表示能加高效,减少占据了神经机器翻译模型较大部分参数量的FFN模块的数量,从而减小模型整个规模。
步骤4)中,微调化简后模型,提高化简后模型性能,具体为:
在得到化简后模型后,在训练数据继续训练该模型直到模型收敛,这个过程可以弥补模型结构化简带来的性能损失。
为了验证本发明方法压缩效果,解码化简后的神经机器翻译模型,得到模型解码结果,并计算压缩倍数。具体为:根据步骤1)和4)中所训练的基线神经机器翻译模型以及化简后神经机器翻译模型进行解码,得到化简后神经机器翻译模型的参数量以及翻译性能,与基线模型进行比较得到压缩率与性能损失。
本发明能够在多个机器翻译任务数据集上显著压缩模型规模,并保证模型的性能没有明显下降。
在基于自注意力机制的神经机器翻译系统中,从某种程度上而言,模型结构的可解释性更强了。本实施例以编码端为例进行说明,在每一层内主要包含自注意力的子层和前馈网络的子层。其中前馈网络的结构主要目的在于增加模型的表达能力,将自注意力子层的信息进行整合后送入下一层。而自注意力机制的操作则可以看作是对源语词向量的富集抽象。但当前的神经网络模型模型规模过于庞大,虽然有着性能上的优势,但将此规模的模型部署在存储和计算资源受限的小设备上却面临着巨大的挑战。模型结构化简是当前机器翻译模型压缩常用的一种手段,通过化简模型结构,消除冗余的计算,可以在不明显损失模型性能的前提下减小模型所需的存储,达到模型压缩的目的。
本发明延续模型结构化简方法,提出了一种面向小型CPU设备的模型结构化简压缩方法,为验证本发明方法的技术效果,本发明实验在WMT14英德、WMT14英法双向翻译总共4个语言方向进行,性能与强大的基线相当。本发明实验在Intel Pentium和AMD K6-2+进行,在压缩率为1.69的前提下,平均损失性能为0.27。图3为本发明方法翻译效果图。
本发明方法化简了模型结构,将神经机器翻译模型变为更小的模型,从而减小模型所需存储大小,达到模型压缩的目的。

Claims (5)

1.一种面向小型CPU设备的模型结构化简压缩方法,其特征在于包括以下步骤:
1)构建训练平行语料及基于注意力机制的神经机器翻译的模型,利用平行语料生成机器翻译词表,进一步训练得到训练收敛后的模型作为对比的基线模型;
2)在模型训练阶段利用0或1系数动态选择基线模型解码端中的前馈神经网络模块,训练过程中一部分前馈神经网络模块的系数为0,另一部分系数为1;
3)模型训练结束后删除部分FFN模块得到模型结构化简后的模型,从而减少模型的参数,达到模型压缩的目的;
4)微调化简后模型,提高化简后模型性能。
2.按权利要求1所述的面向小型CPU设备的模型结构化简压缩方法,其特征在于:在步骤1)中,训练基于注意力机制的神经机器翻译模型,得到符合要求的基线模型;基于注意力机制的神经机器翻译模型包括编码端和解码端,主要由前馈神经网络模块和注意力模块组成;
前馈神经网络模块计算公式为:
FFN(x)=max(0,xW1+b1)W2+b2
其中,FFN(x)为前馈神经网络模块,x为前馈神经网络模块的输入矩阵,W1和W2为两个线性变换矩阵,b1和b2为两个线性变换的偏置矩阵;
使用注意力机制的计算方式为:
MultiHead(Q,K,V)=concat(head1,head2,…,headh)W°
其中concat为级联操作,MultiHead(Q,K,V)为多头注意力机制,head1,head2,…,headh代表模型中的h个头,其中每个头的注意力计算公式为:
Figure FDA0003185613710000011
其中SoftMax(·)为归一化函数,Q、K和V分别为参与计算的不同的线性变换矩阵,dk为K矩阵每个头的维度大小。
3.按权利要求1所述的面向小型CPU设备的模型结构化简压缩方法,其特征在于:步骤2)在模型训练阶段利用0或1系数动态选择基线模型解码端中的前馈神经网络模块,训练过程中一部分前馈神经网络模块的系数为0,另一部分系数为1,具体为:
改变模型训练过程,在每个FFN模块前随机加上0或1系数,原本的FFN计算公式为:
FFN(x)=max(0,xW1+b1)W2+b2
改变训练过程后的FFN计算公式为:
FFN′(x)=α·(max(0,xW1+b1)W2+b2)
其中,α为系数0或1。
4.按权利要求1所述的面向小型CPU设备的模型结构化简压缩方法,其特征在于:步骤3)在模型训练结束后删除部分FFN模块得到模型结构化简后的模型,从而减少模型的参数,达到模型压缩的目的,具体为:
在每个FFN模块前随机加上0或1系数变换后,训练结束后神经机器翻译模型可以对去掉FFN模块的包容性更强,在这里可以采取2种策略去掉FFN模块:1)按50%的概率随机去掉FFN模块;2)均匀的每隔一层去掉一个FFN模块。
5.按权利要求1所述的面向小型CPU设备的模型结构化简压缩方法,其特征在于:步骤4)中,微调化简后模型,提高化简后模型性能,具体为:
在得到化简后模型后,在训练数据继续训练该模型直到模型收敛,弥补模型结构化简带来的性能损失。
CN202110861060.2A 2021-07-29 2021-07-29 一种面向小型cpu设备的模型结构化简压缩方法 Withdrawn CN113505613A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110861060.2A CN113505613A (zh) 2021-07-29 2021-07-29 一种面向小型cpu设备的模型结构化简压缩方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110861060.2A CN113505613A (zh) 2021-07-29 2021-07-29 一种面向小型cpu设备的模型结构化简压缩方法

Publications (1)

Publication Number Publication Date
CN113505613A true CN113505613A (zh) 2021-10-15

Family

ID=78014473

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110861060.2A Withdrawn CN113505613A (zh) 2021-07-29 2021-07-29 一种面向小型cpu设备的模型结构化简压缩方法

Country Status (1)

Country Link
CN (1) CN113505613A (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111382581A (zh) * 2020-01-21 2020-07-07 沈阳雅译网络技术有限公司 一种机器翻译中的一次剪枝压缩方法
CN111597778A (zh) * 2020-04-15 2020-08-28 哈尔滨工业大学 一种基于自监督的机器翻译译文自动优化的方法和系统
CN112257463A (zh) * 2020-11-03 2021-01-22 沈阳雅译网络技术有限公司 一种中英互译的神经机器翻译模型的压缩方法
CN112257464A (zh) * 2020-11-03 2021-01-22 沈阳雅译网络技术有限公司 一种基于小型智能移动设备的机器翻译解码加速方法
CN112257466A (zh) * 2020-11-03 2021-01-22 沈阳雅译网络技术有限公司 一种应用于小型机器翻译设备的模型压缩方法
CN112733541A (zh) * 2021-01-06 2021-04-30 重庆邮电大学 基于注意力机制的BERT-BiGRU-IDCNN-CRF的命名实体识别方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111382581A (zh) * 2020-01-21 2020-07-07 沈阳雅译网络技术有限公司 一种机器翻译中的一次剪枝压缩方法
CN111597778A (zh) * 2020-04-15 2020-08-28 哈尔滨工业大学 一种基于自监督的机器翻译译文自动优化的方法和系统
CN112257463A (zh) * 2020-11-03 2021-01-22 沈阳雅译网络技术有限公司 一种中英互译的神经机器翻译模型的压缩方法
CN112257464A (zh) * 2020-11-03 2021-01-22 沈阳雅译网络技术有限公司 一种基于小型智能移动设备的机器翻译解码加速方法
CN112257466A (zh) * 2020-11-03 2021-01-22 沈阳雅译网络技术有限公司 一种应用于小型机器翻译设备的模型压缩方法
CN112733541A (zh) * 2021-01-06 2021-04-30 重庆邮电大学 基于注意力机制的BERT-BiGRU-IDCNN-CRF的命名实体识别方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
DECEBAL CONSTANTIN MOCANU: "Scalable training of artificial neural networks with adaptive sparse connectivity inspired by network science", NATURE COMMUNICATIONS, vol. 9, no. 1, pages 1 *
孙晓骞;苏依拉;赵亚平;王宇飞;仁庆道尔吉;: "基于编码器-解码器重构框架的蒙汉神经机器翻译", 计算机应用与软件, no. 04, pages 150 - 155 *
孙环龙: "前馈神经网络结构新型剪枝算法研究", 广西师范学院学报(自然科学版), vol. 2013, no. 4, pages 55 - 60 *

Similar Documents

Publication Publication Date Title
Shao et al. Communication-computation trade-off in resource-constrained edge inference
CN107516129B (zh) 基于维度自适应的Tucker分解的深度网络压缩方法
CN110069644B (zh) 一种基于深度学习的压缩域大规模图像检索方法
CN113709455A (zh) 一种使用Transformer的多层次图像压缩方法
CN111768354A (zh) 基于多尺度人脸部位特征字典的人脸图像复原系统
Li et al. Multiple description coding based on convolutional auto-encoder
CN104023216A (zh) 人脸视频压缩方法
CN113132735A (zh) 一种基于视频帧生成的视频编码方法
CN111541900A (zh) 基于gan的安防视频压缩方法、装置、设备及存储介质
WO2018120019A1 (zh) 用于神经网络数据的压缩/解压缩的装置和系统
CN112257464A (zh) 一种基于小型智能移动设备的机器翻译解码加速方法
CN113505613A (zh) 一种面向小型cpu设备的模型结构化简压缩方法
CN110688501A (zh) 一种基于深度学习的全卷积网络的哈希检索方法
CN111479286A (zh) 一种边缘计算系统减少通信流量的数据处理方法
CN111246176A (zh) 一种节带化视频传输方法
Zhu et al. An improved SPIHT algorithm based on wavelet coefficient blocks for image coding
CN116128070A (zh) 基于无线空中计算和多比特量化压缩感知的联邦学习方法
CN113505614A (zh) 一种面向小型cpu设备的小模型训练方法
CN113505615A (zh) 面向小型cpu设备的神经机器翻译系统解码加速方法
CN110719473B (zh) 基于结构化稀疏的可伸缩压缩视频采集与重构系统
CN106027545A (zh) 一种基于虚拟数据的鲁棒信息隐藏方法
US11677944B1 (en) Video compression method, electronic device, and computer program product
CN116128737B (zh) 一种基于数据压缩的图像超分网络鲁棒性提升装置
CN110753241B (zh) 基于多描述网络的图像编码、解码方法及系统
Wang et al. SNN-SC: A Spiking Semantic Communication Framework for Feature Transmission

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20211015