CN114860927B - 面向多任务联邦学习的文本匹配方法 - Google Patents
面向多任务联邦学习的文本匹配方法 Download PDFInfo
- Publication number
- CN114860927B CN114860927B CN202210401729.4A CN202210401729A CN114860927B CN 114860927 B CN114860927 B CN 114860927B CN 202210401729 A CN202210401729 A CN 202210401729A CN 114860927 B CN114860927 B CN 114860927B
- Authority
- CN
- China
- Prior art keywords
- client
- information
- sample information
- server
- model
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000012549 training Methods 0.000 claims abstract description 37
- 230000007246 mechanism Effects 0.000 claims abstract description 27
- 238000002790 cross-validation Methods 0.000 claims abstract description 9
- 238000012545 processing Methods 0.000 claims abstract description 8
- 230000011218 segmentation Effects 0.000 claims abstract description 7
- 238000004364 calculation method Methods 0.000 claims description 18
- 230000008569 process Effects 0.000 claims description 15
- 239000013598 vector Substances 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 13
- 238000007781 pre-processing Methods 0.000 claims description 9
- 238000001914 filtration Methods 0.000 claims description 7
- 238000011176 pooling Methods 0.000 claims description 6
- 238000012360 testing method Methods 0.000 claims description 5
- 238000011835 investigation Methods 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 claims description 3
- 230000000739 chaotic effect Effects 0.000 claims description 2
- 238000013528 artificial neural network Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 6
- 238000012937 correction Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 241000251468 Actinopterygii Species 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 235000013372 meat Nutrition 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 235000015277 pork Nutrition 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/38—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/383—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Library & Information Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种面向多任务联邦学习的文本匹配方法,包括:在服务器以及各客户端上构建bm25+esim模型;bm25算法用于对样本信息库进行处理,从样本信息库中召回相似度最高的k条样本信息;样本信息包括用户特征信息以及对应的推荐信息;需要推荐的目标用户所输入的文本信息与召回的k条样本信息构成样本信息对;esim模型用于对样本信息对进行处理,输出目标用户的用户特征信息在k条样本信息中的分类,就得到了文本匹配结果;该方法采用横向联邦学习,服务器通过基于多头注意力机制的图神经网络节点选择方案选择部分客户端。各客户端使用k折交叉验证切分数据集,训练后向服务器发送参数;服务器根据收到的全部参数,更新自身参数,并发送给客户端。
Description
技术领域
本发明涉及自然语言处理中的文本匹配领域和分布式机器学习技术,具体涉及一种面向多任务联邦学习的文本匹配方法。
背景技术
在市场的逐步发展下,市场上不断地涌现各种各样的客户端服务器分离,即(C/S)框架的服务产品,面向用户人群提供各方面的服务,但受限于人力资源、网络环境等因素,需求一种能够自动匹配目标信息并回复的系统模型。运行程序需要让系统能理解用户的特征信息或文本信息,并匹配目标信息,所使用的技术即为自然语言处理中的文本匹配模型。
在生产进入市场后,大部分服务产品在投入实际落地使用时,受影响于场景因素,逐渐偏向单个目标领域的使用需求,在内容不变的情况下,其目标信息却发生了演变,此时服务系统匹配出的目标信息与用户目标存在差异,使用户的使用体验失去了保障。如何在数量众多客户端处于多种目标领域的情况下,即面向多任务,通过模型训练和学习,提高客户端系统对信息目标匹配的准确性,已成为当前推动发展的关键。目前,文本匹配已经应用到多种领域,如:服务推荐、问答产品、输入矫正。通过对使用产品的用户特征信息进行目标匹配,有利于建立用户与服务的模型,为用户提供方便快捷的服务推荐;通过对问答产品的用户发言进行文本匹配,找到符合用户描述的目标领域,同时唤醒对应领域的问答系统,从而实现更高的用户体验。
得利于深度学习的快速发展,文本匹配也有了很大的进步。使用本地模型对信息进行文本匹配具有较高的响应速度,从而实现更快的回复,但是本地模型仅有使用该客户端的少量信息,若作为训练集则会因多任务数据集稀缺导致模型训练出现过拟合。与本地模型相比,云端服务器匹配的准确率较高,但存在用户信息泄露的隐患,且受限于用户所处的网络环境,难以确保回复的效率。
综上所述,如何合法(保护用户数据隐私等)且有效地实现在数量众多客户端处于多种目标领域的情况下,即面向多任务,通过模型训练和学习,提高客户端系统对信息目标匹配的准确性,是目前本领域科研人员急需解决的技术问题。
现有的解决隐私保护问题的技术手段为联邦学习,但该方法针对文本匹配的多任务问题暂无合适的解决方式。同时,在实际生产场景中,客户端的基数较大,以遍历或随机抽样的方式对客户端进行选择均非适宜的决策。
发明内容
本发明的目的是提供一种面向多任务联邦学习的文本匹配方法,用以解决当前算法难以满足数量众多客户端处于多种目标领域的情况下,维护客户端系统对信息目标匹配的准确性的问题。
为了实现上述任务,本发明采用以下技术方案:
一种面向多任务联邦学习的文本匹配方法,包括以下步骤:
在服务器以及各客户端上构建由bm25算法以及esim模型构成的bm25+esim模型;所述bm25算法用于对样本信息库进行处理,从样本信息库中召回相似度最高的k条样本信息;所述样本信息包括用户特征信息以及对应的推荐信息;需要推荐的目标用户所输入的文本信息与召回的k条样本信息构成样本信息对;所述esim模型用于对样本信息对进行处理,输出目标用户的用户特征信息在k条样本信息中的分类,就得到了文本匹配结果;
服务器通过节点选择方案选择部分客户端,发送最新的bm25+esim模型参数w作为所选择的客户端本地的bm25+esim模型参数wi;被服务器选择出的各客户端根据接收到的模型参数wi,训练本地模型esim,计算出梯度gi,利用梯度gi更新模型参数wi,并计算本地数据集的平均数据误差度davg,i;各被选择出的客户端向服务器发送训练后的本地模型参数和平均数据误差度davg,i;服务器根据收到的所有本地模型参数更新自身参数w;服务器将自身参数w发送给各客户端,各客户端利用参数w对本地模型参数进行更新。
进一步地,所述服务器通过节点选择方案选择部分客户端,包括:
其中a为注意力机制计算函数,采用相似度函数;W表示注意力机制,表示为esim模型提取特征的转置矩阵;
1.2采用softmax函数重新计算权重系数,更新后的系数为aij,计算公式为:
其中Ni为由全部客户端组成的集合,eik为第k个客户端的权重系数,softmaxj表示将softmax函数应用于第j个客户端;
1.3引入多头机制,通过多次训练得到多个矩阵W并计算多个系数aij,通过以下公式的计算得到的结果aij′,即为客户端在多头注意力机制下的权重系数:
1.4设定一个权重系数阈值ThresholdMin,仅当权重系数aij′不小于阈值ThresholdMin时,认为aij′对应的客户端具有参考价值,则将该客户端作为服务器通过节点选择方案选择出的客户端。
进一步地,所述客户端上设置数据输入接口,用于获取需要推荐的目标用户的文本信息;本地数据集中的一条样本信息包含A、B两部分,其中:A是目标用户的输入的文本信息,也就是目标用户的用户特征信息;B是用户特征信息经过esim模型的文本匹配,找到匹配度最高的样本信息,如果该样本信息对应的推荐信息不被用户采纳或者匹配度达不到阈值,则收集用户重新选择的信息,记录该用户重新选择的信息作为新的推荐信息,与A组成一条样本信息。
进一步地,所述计算本地数据集的平均数据误差度davg,i,包括:
客户端在被目标用户使用的过程中,用户输入的文本信息与esim模型匹配出的目标不符或达不到最小置信度时,记录当前esim模型输出的置信度ConfidenceCurrent与预设的最小置信度ConfidenceMin的差值,即数据误差度d:
d=ConfidenceMin-ConfidenceCurrent
在客户端每次收集到新的用户输入的文本信息时,统计当前已有本地数据的数据误差度d,得到第i个客户端的本地数据集的平均数据误差度davg:
其中,dj表示第j次的数据误差度,n表示客户端上计算数据误差度的总次数。
进一步地,客户端的esim模型训练前,将原始数据集与本地数据集构成样本信息库,并对样本信息库进行预处理操作;原始数据集中的样本信息为经过生产厂家调研得出,由样本用户的用户特征信息与对应的推荐信息组成;
对样本信息库的样本信息进行混乱,将混乱后的样本信息使用k折交叉验证划分为训练集和测试集,结合接收到的模型参数wi对客户端的esim模型进行训练,并计算梯度gi;当模型未收敛时,用梯度gi继续训练;如已收敛,得到训练后的模型参数
进一步地,所述预处理操作包括分词、去掉停用词、过滤无效符号;所述样本信息进行混乱采用random方法。
3.1计算第i个客户端对应的最终权重系数pi,计算公式为:
其中,n为服务器经过选择方案选择的客户端的数量;
其中,n为服务器经过选择方案选择的客户端的数量。
进一步地,样本信息对传入esim模型中以后,通过Embedding层获得目标用户的用户特征信息的向量化表示,然后使用BiLSTM获得用户特征信息的语义特征,并保存此时隐藏状态的值;利用SoftAttention得到注意力矩阵,求出权重并计算文本的语义注意力向量、语义差向量、语义积向量,使用concat连接得到综合语义向量;使用BiLSTM获得向量的语义特征,并作平均池化和最大池化;使用多层感知机和softmax对结果进行分类,得到分类结果与对应的置信度,即实现文本匹配。
与现有技术相比,本发明具有以下技术特点:
本发明解决当前算法难以满足数量众多客户端处于多种目标领域的情况下,维护客户端系统对信息目标匹配的准确性的问题,同时解决了过程中用户隐私保护的问题。而且,该方法不止局限于作问答系统中目标领域分类与输入矫正,还可以作为推荐系统使用,可扩展性很高。
附图说明
图1为bm25+esim的模型结构图;
图2为本发明中客户端训练模型所用的k折交叉验证示意图;
图3为本发明的横向联邦学习的结构图;
图4为基于图神经网络的节点选择方案;
图5为多头注意力机制的结构图;
图6为本发明实施案例1中的流程结构图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明属于分布式机器学习技术研究方向,利用联邦学习对不同客户端的模型进行优化,以达到词向量化、双向LSTM、多层感知机分类三大模块对文本信息进行目标信息文本匹配的目的。与本地模型匹配相比,横向联邦学习能够有效地通过模型更新提高模型的鲁棒性,与云端匹配相比,横向联邦学习各客户端上传仅有模型的参数,而不涉及用户的个人信息,保障了用户的隐私需求。
参见附图,本发明提供的一种面向多任务联邦学习的文本匹配方法,包括初始化过程、更新过程以及应用过程,其中:
1.初始化过程
在服务器以及各客户端上构建由bm25算法以及esim模型构成的bm25+esim模型,如图1所示;所述bm25算法用于对样本信息库进行处理,从样本信息库中召回相似度最高的k条样本信息;需要推荐的目标用户所输入的文本信息(用户特征信息)与召回的k条样本信息构成样本信息对;其中,所述样本信息包括用户特征信息以及对应的推荐信息,本实施例中为推荐菜品。
所述esim模型用于对样本信息对进行处理,输出目标用户的用户特征信息在k条样本信息中的分类,就得到了文本匹配(菜品推荐)结果。
样本信息对传入esim模型中以后,通过Embedding层获得目标用户的用户特征信息的向量化表示,然后使用BiLSTM获得用户特征信息的语义特征,并保存此时隐藏状态的值;利用SoftAttention得到注意力矩阵,求出权重并计算文本的语义注意力向量、语义差向量、语义积向量,使用concat连接得到综合语义向量;使用BiLSTM获得向量的语义特征,并作平均池化和最大池化;使用多层感知机和softmax对结果进行分类,得到分类结果与对应的置信度,即实现文本匹配。
本实施例中,以将该方案应用到菜品推荐系统中实现菜品推荐为例进行说明;原始数据集中的样本信息为经过生产厂家调研得出的由样本用户的用户特征信息与推荐菜品组成。例如:某样本用户的用户特征信息为:“张三,男,21岁,户籍广东潮州,在XXX大学就读,曾到XX地和XX地旅游,喜好鱼肉,爱好川菜”,针对的推荐菜品为“鱼香肉丝”。
2.更新过程
步骤1,服务器通过节点选择方案选择部分客户端,发送最新的bm25+esim模型参数w(即服务器经过上一次更新后的参数)作为所选择的客户端本地的bm25+esim模型参数wi;服务器通过使用选择的客户端进行自身更新,最新的模型参数指的就是服务器上一次更新后得到的参数。其中模型参数是指模型的计算参数,例如权重、偏置等。
图4为本发明提出的基于图神经网络的节点选择方案,服务器发送工作请求信息前,对客户端的选择加入注意力机制,具体步骤如下:
其中a为注意力机制计算函数,可以采用相似度函数,W表示注意力机制,即esim模型提取特征(提取模型参数中用于计算在目标任务中的所用到的参数)的转置矩阵,是可训练的参数,由选定的目标任务(推荐菜品)和模型参数的维度数决定。注意力机制针对模型参数进行降维操作,其中esim模型根据其不同的使用领域可能存在多个参数,所述注意力机制只选择当前任务领域相关的参数,得到了模型参数中当前任务领域相关的部分参数。
1.2为了更好的分配权重,采用softmax函数重新计算权重系数,更新后的系数为aij,计算公式为:
其中Ni为由全部客户端组成的集合,eik为第k个客户端的权重系数,softmaxj表示将softmax函数应用于第j个客户端。
1.3为让注意力机制的表达能力更加丰富,引入多头(Multi-Head)机制,图5为本发明多头注意力机制的结构图。
通过多次训练得到多个矩阵W并计算多个系数aij,通过以下公式的计算得到的结果aij′,即为客户端(即当前服务器正在进行评估是否选择的客户端)在多头注意力机制下的权重系数:
1.4设定一个权重系数阈值ThresholdMin,仅当权重系数aij′不小于阈值ThresholdMin时,认为aij′对应的客户端具有参考价值,则将该客户端作为服务器通过节点选择方案选择出的客户端。
步骤2,被服务器选择出的各客户端根据接收到的模型参数wi,训练本地模型esim,计算出梯度gi,利用梯度gi更新模型参数wi,并计算本地数据集的平均数据误差度davg,i。
2.1构建本地数据集
本发明需要在客户端上设置一个数据输入接口,用于获取需要推荐的目标用户(即使用本方案的用户)的文本信息,即用户特征信息。
本地数据集中的一条样本信息包含A、B两部分,其中:A是目标用户的输入的文本信息,也即该目标用户的用户特征信息;B是用户特征信息经过esim模型的文本匹配,找到匹配度最高的样本信息,如果该样本信息对应的推荐菜品不被用户采纳或者匹配度达不到阈值,则收集用户重新选择的菜品,记录该用户重新选择的菜品作为新的推荐菜品,与A组成一条样本信息。
2.2本地数据集的平均数据误差度
客户端在被目标用户使用的过程中,用户输入的文本信息(用户特征信息)与esim模型匹配出的目标不符或达不到最小置信度时,记录当前esim模型输出的置信度ConfidenceCurrent与预设的最小置信度ConfidenceMin的差值(即数据误差度d):
d=ConfidenceMin-ConfidenceCurrent
其中,最小置信度为预设参数,根据实际需求设置。
在客户端每次收集到新的用户输入的文本信息时,统计当前已有本地数据的数据误差度d,得到第i个客户端的本地数据集的平均数据误差度davg:
其中,dj表示第j次的数据误差度,n表示客户端上计算数据误差度的总次数。
2.3客户端的esim模型训练
客户端的esim模型训练前,将原始数据集与本地数据集构成样本信息库,并对样本信息库进行预处理操作,包括:分词、去掉停用词、过滤无效符号等。比如数据集中,如“张三,男21岁,户籍广东#潮州,在XXX大学就读,曾到XX地和XX地旅游,喜好鱼肉,爱好川菜”,预处理可以将“男21岁”处理为“男,21岁”,“户籍广东#潮州”处理为“户籍广东潮州”。
利用random等方法对样本信息库的样本信息进行混乱,将混乱后的样本信息使用k折交叉验证划分为训练集和测试集,结合接收到的模型参数wi对客户端的esim模型进行训练,并计算梯度gi;当模型未收敛时,用梯度gi继续训练;如已收敛,得到训练后的模型参数到步骤3。
图2为本发明中客户端训练模型所用的k折交叉验证。k折交叉验证是一种切分训练集和测试集的方法,相比于传统的模型评估的方式,交叉验证的优势在于:避免由于数据集划分不合理而导致的问题,比如模型在训练集上过拟合,这种过拟合不是模型导致的,而是因为数据集划分不合理造成的。这种情况在用小规模数据集训练模型时很容易出现,所以在小规模数据集上用交叉验证的方法评估模型更有优势。
除上述优势,客户端的模型训练使用k折交叉验证作为训练集和测试集的分配方法,还可以使各客户端具有相似数量的训练数据集,以确保各客户端的训练结束时间接近,避免因持续等待某个仍在训练中的客户端,导致服务器资源的浪费。
3.1计算第i个客户端对应的最终权重系数pi,计算公式为:
其中,n为服务器经过选择方案选择的客户端的数量。
其中,n为服务器经过选择方案选择的客户端的数量。
本算法区别于联邦平均算法(Federated Averaging Algorithm),联邦平均算法每次客户端与服务器上传下载的仅为模型参数w,且联邦平均算法中服务器更新自身模型参数w时,采用的计算方法为平均数,即:
其中,n为客户端的数量。
而本算法更加贴近面向多任务的设计初衷,采用了加权计算,以独有的多头注意力系数aij′衡量每个客户端上传的参数对服务器的参考价值,仅当不小于阈值时进行选择,而后使用平均数据误差度davg,i重新计算最终权重参数,经过此操作,可以让有文本匹配准确率较低的客户端模型得到重视,同时避免了拜占庭将军问题(Byzantine failures),防止服务器受到恶意攻击。
本算法区别于并行梯度下降(Parallel Gradient Descent),联邦平均算法每次客户端向服务器上传的参数为梯度g,而梯度g经过实验验证,可以使用逆向工程技术,推出用户的部分信息,存在用户隐私泄露的风险。而本算法在训练过程中使用了k折交叉验证,训练集来自于本地数据集和原始数据集的混合,且上传的参数为模型参数w,能更好地保护用户的隐私。
在实际使用中,利用文本匹配自身独有的机制,客户端有两种使用方式可作为选择,一是作为推荐系统使用,基于由原始数据集和本地数据集组成的样本信息库,对目标用户输入的文本信息使用esim模型进行文本匹配,将目标用户的用户特征信息匹配样本信息库中相似度最高的样本信息,将对应推荐菜品反馈给用户,实现菜品推荐;二是将用户输入的文本信息与系统的语句信息库进行文本匹配,得到与用户输入最相似的语句信息,进而实现替换,可作为问答系统中目标领域分类的分类器与输入矫正。
步骤4,服务器将自身参数w发送给各客户端,各客户端利用参数w对本地模型参数进行更新,整个联邦学习过程如图3所示。
3.应用过程
步骤1,通过本地客户端提供的数据输入接口,获取包含用户特征信息的文本信息。
步骤2,对数据进行预处理操作,包括:分词、去掉停用词、过滤无效符号等。
步骤3,通过bm25算法从样本信息库中召回相似度最高的k条样本信息。
步骤4,通过esim模型实现文本匹配。
实施案例1:
通过对使用服务产品的用户特征进行目标匹配,如配置有推荐菜品的厨具产品,建立用户与服务的模型,为用户提供方便快捷的服务推荐。请参考图6,图6为本发明实施案例中的流程结构图,该方法包括初始化、更新和应用三个过程:
初始化过程主要包括以下步骤:
新建目标客户端构建bm25+esim模型,并保构建原始数据集。
更新过程主要包括以下步骤:
(1)参考客户端的选择:服务器通过节点选择方案选择部分客户端,发送最新的模型参数w(即服务器经过上一次更新后的参数),作为客户端本地的模型参数wi。
(2)参考客户端模型的训练:各客户端根据当前参数wi,训练本地模型,计算出梯度gi,利用梯度gi更新自身的模型参数wi,并计算本地数据集的平均数据误差度davg,i。
(4)完成目标客户端的更新:服务器将自身参数w发送给客户端,各客户端利用参数w对本地模型参数进行更新。
应用过程主要包括以下步骤:
通过本地客户端的机器提供的数据输入接口,获取用户的文本信息输入;如“27岁居住于广州的男性,喜好鱼类与肉类”;对数据进行预处理操作,包括:分词、去掉停用词、过滤无效符号等;通过bm25算法从样本信息库中召回相即相似度最高的k条样本信息;构建样本信息对传入到esim模型中,模型会输出与当前用户特征信息相似度最高的样本信息,返回该样本信息对应的推荐菜品,通过客户端展现给用户。
实施案例2
本发明适用于问答产品对用户发言进行文本匹配,找到符合用户提问的目标领域,同时唤醒对应领域的问答系统,从而实现更高的用户体验。如,智能书桌问答系统,在系统暂未被唤醒时,使用本地数据集和原始数据集组成的数据集,对本地模型进行更新训练,将当前模型参数和平均数据误差度上传至服务器。在唤醒时,当用户输入“请问阿尔法符号是哪一个”,智能书桌的文本匹配过程主要包括以下步骤:
步骤1,启动输入矫正功能。
1.1通过数据输入接口,获取了用户输入的文本信息“请问阿尔法符号是哪一个”。
1.2数据进行预处理操作,包括:分词、去掉停用词、过滤无效符号等。
1.3通过bm25+esim模型实现文本匹配:“阿尔法符号”文本匹配到的最相似的结果,为“alpha符号”。
步骤2,启动目标领域分类的分类器。
2.1通过客户端的数据输入接口,获取了用户输入的文本信息“请问alpha符号是哪一个”。
2.2数据进行预处理操作,包括:分词、去掉停用词、过滤无效符号等。
2.3通过bm25+esim模型实现文本匹配。“alpha符号”文本匹配到的目标领域,为数学领域。
2.4唤醒数学领域的问答系统。
以上实施例仅用于说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行同等替换;而这些修改或替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (6)
1.一种面向多任务联邦学习的文本匹配方法,其特征在于,包括以下步骤:
在服务器以及各客户端上构建由bm25算法以及esim模型构成的bm25+esim模型;所述bm25算法用于对样本信息库进行处理,从样本信息库中召回相似度最高的k条样本信息;所述样本信息包括用户特征信息以及对应的推荐信息;需要推荐的目标用户所输入的文本信息与召回的k条样本信息构成样本信息对;所述esim模型用于对样本信息对进行处理,输出目标用户的用户特征信息在k条样本信息中的分类,就得到了文本匹配结果;
服务器通过节点选择方案选择部分客户端,发送最新的bm25+esim模型参数w作为所选择的客户端本地的bm25+esim模型参数wi;被服务器选择出的各客户端根据接收到的模型参数wi,训练本地模型esim,计算出梯度gi,利用梯度gi更新模型参数wi,并计算本地数据集的平均数据误差度davg,i;各被选择出的客户端向服务器发送训练后的本地模型参数和平均数据误差度davg,i;服务器根据收到的所有本地模型参数更新自身参数w;服务器将自身参数w发送给各客户端,各客户端利用参数w对本地模型参数进行更新;
所述服务器通过节点选择方案选择部分客户端,包括:
其中a为注意力机制计算函数,采用相似度函数;W表示注意力机制,表示为esim模型提取特征的转置矩阵;
1.2采用softmax函数重新计算权重系数,更新后的系数为aij,计算公式为:
其中Ni为由全部客户端组成的集合,eik为第k个客户端的权重系数,softmaxj表示将softmax函数应用于第j个客户端;
1.3引入多头机制,通过多次训练得到多个注意力机制W并计算多个系数aij,通过以下公式的计算得到的结果aij′,即为客户端在多头注意力机制下的权重系数:
1.4设定一个权重系数阈值ThreholdMin,仅当权重系数aij′不小于阈值ThreholdMin时,认为aij′对应的客户端具有参考价值,则将该客户端作为服务器通过节点选择方案选择出的客户端;
3.1计算第i个客户端对应的最终权重系数pi,计算公式为:
其中,n为服务器经过选择方案选择的客户端的数量;
3.2服务器利用客户端向服务器上传的参数wi 0和平均数据误差度davg,i,更新自身参数w,所采用的计算公式为:
其中,n为服务器经过选择方案选择的客户端的数量。
2.根据权利要求1所述的面向多任务联邦学习的文本匹配方法,其特征在于,所述客户端上设置数据输入接口,用于获取需要推荐的目标用户的文本信息;本地数据集中的一条样本信息包含A、B两部分,其中:A是目标用户的输入的文本信息,也就是目标用户的用户特征信息;B是用户特征信息经过esim模型的文本匹配,找到匹配度最高的样本信息,如果该样本信息对应的推荐信息不被用户采纳或者匹配度达不到阈值,则收集用户重新选择的信息,记录该用户重新选择的信息作为新的推荐信息,与A组成一条样本信息。
3.根据权利要求1所述的面向多任务联邦学习的文本匹配方法,其特征在于,所述计算本地数据集的平均数据误差度davg,i,包括:
客户端在被目标用户使用的过程中,用户输入的文本信息与esim模型匹配出的目标不符或达不到最小置信度时,记录当前esim模型输出的置信度ConfidenceCurrent与预设的最小置信度ConfidenceMin的差值,即数据误差度d:
d=ConfidenceMin-ConfidenceCurrent
在客户端每次收集到新的用户输入的文本信息时,统计当前已有本地数据的数据误差度d,得到第i个客户端的本地数据集的平均数据误差度davg:
其中,dj表示第j次的数据误差度,n表示客户端上计算数据误差度的总次数。
5.根据权利要求4所述的面向多任务联邦学习的文本匹配方法,其特征在于,所述预处理操作包括分词、去掉停用词、过滤无效符号;所述样本信息进行混乱采用random方法。
6.根据权利要求1所述的面向多任务联邦学习的文本匹配方法,其特征在于,样本信息对传入esim模型中以后,通过Embedding层获得目标用户的用户特征信息的向量化表示,然后使用BiLSTM获得用户特征信息的语义特征,并保存此时隐藏状态的值;利用SoftAttention得到注意力矩阵,求出权重并计算文本的语义注意力向量、语义差向量、语义积向量,使用concat连接得到综合语义向量;使用BiLSTM获得向量的语义特征,并作平均池化和最大池化;使用多层感知机和softmax对结果进行分类,得到分类结果与对应的置信度,即实现文本匹配。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210401729.4A CN114860927B (zh) | 2022-04-18 | 2022-04-18 | 面向多任务联邦学习的文本匹配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210401729.4A CN114860927B (zh) | 2022-04-18 | 2022-04-18 | 面向多任务联邦学习的文本匹配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114860927A CN114860927A (zh) | 2022-08-05 |
CN114860927B true CN114860927B (zh) | 2023-04-25 |
Family
ID=82631841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210401729.4A Active CN114860927B (zh) | 2022-04-18 | 2022-04-18 | 面向多任务联邦学习的文本匹配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114860927B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112836130A (zh) * | 2021-02-20 | 2021-05-25 | 四川省人工智能研究院(宜宾) | 一种基于联邦学习的上下文感知推荐系统及方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111275207B (zh) * | 2020-02-10 | 2024-04-30 | 深圳前海微众银行股份有限公司 | 基于半监督的横向联邦学习优化方法、设备及存储介质 |
CN112256874B (zh) * | 2020-10-21 | 2023-08-08 | 平安科技(深圳)有限公司 | 模型训练方法、文本分类方法、装置、计算机设备和介质 |
-
2022
- 2022-04-18 CN CN202210401729.4A patent/CN114860927B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112836130A (zh) * | 2021-02-20 | 2021-05-25 | 四川省人工智能研究院(宜宾) | 一种基于联邦学习的上下文感知推荐系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114860927A (zh) | 2022-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109788079B (zh) | Dga域名实时检测方法和装置 | |
CN111414461B (zh) | 一种融合知识库与用户建模的智能问答方法及系统 | |
CN107169504B (zh) | 一种基于扩展非线性核残差网络的手写字符识别方法 | |
CN107545897A (zh) | 对话行为推定方法、对话行为推定装置以及程序 | |
CN112231562A (zh) | 一种网络谣言识别方法及系统 | |
CN111368926B (zh) | 图像筛选方法、装置和计算机可读存储介质 | |
CN111966904A (zh) | 基于多用户画像模型的信息推荐方法和相关装置 | |
CN109886021A (zh) | 一种基于api全局词向量和分层循环神经网络的恶意代码检测方法 | |
CN109726747A (zh) | 基于社交网络推荐平台的数据融合排序方法 | |
CN111641608A (zh) | 异常用户识别方法、装置、电子设备及存储介质 | |
CN115544873B (zh) | 个性化联邦学习的训练效率与个性化效果量化评估方法 | |
CN112418059A (zh) | 一种情绪识别的方法、装置、计算机设备及存储介质 | |
CN108268470A (zh) | 一种基于演化聚类的评论文本分类提取方法 | |
CN111062511B (zh) | 基于决策树与神经网络的水产养殖病害预测方法及系统 | |
CN117036760A (zh) | 一种基于图对比学习的多视图聚类模型实现方法 | |
CN108596205B (zh) | 基于地域相关因子与稀疏表示的微博转发行为预测方法 | |
CN108121912B (zh) | 一种基于神经网络的恶意云租户识别方法和装置 | |
CN114860927B (zh) | 面向多任务联邦学习的文本匹配方法 | |
Yang et al. | An academic social network friend recommendation algorithm based on decision tree | |
CN111966829B (zh) | 一种基于深度生存分析的网络话题爆发时间预测方法 | |
Henri et al. | A deep transfer learning model for the identification of bird songs: A case study for Mauritius | |
CN111950615B (zh) | 一种基于树种优化算法的网络故障特征选择方法 | |
Li et al. | [Retracted] Application of Multilayer Perceptron Genetic Algorithm Neural Network in Chinese‐English Parallel Corpus Noise Processing | |
CN108733824B (zh) | 考虑专家知识的交互式主题建模方法及装置 | |
Li et al. | Research on voiceprint recognition technology based on deep neural network |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |