本发明涉及自然语言处理、计算语言学以及对话系统领域,是基于跨语言表示学习的语义理解方法及装置。
背景技术:
1、在对话系统变得日益普及和电商行业快速增长的当下,每日大量的查询请求涌入,超出了传统人工处理的能力范围。面对这种情况,电商平台急需自动化和智能化处理。随着技术的进步,这些系统正成为电商领域提升服务效率和质量的关键。智能对话系统通过自然语言处理技术能够理解和回应用户的查询,提供自然且流畅的互动体验。鉴于电商行业日益增长的查询量,更高效和智能的处理方法已成为必然选择。因此,智能化的电商平台应运而生,它们提供个性化、迅速且精准的服务,不仅极大地优化了用户体验,也在激烈的市场竞争中为企业赢得了优势,推动了整个行业向智能化转型。
2、在当前全球化的背景下,电子商务已经超越了单纯的经济活动,成为推动国际贸易发展的核心动力。电商平台的广泛应用,让商品和服务的跨国流通变得更加便捷,使得全球消费者在数字化时代中更频繁地接触到国际市场。然而,伴随而来的语言多样性,对电商平台的智能客服系统提出了新的挑战。面对各种语言的咨询和购物需求,如何提供一个既高效又能满足用户需求的智能服务系统,成为了一项复杂的任务。
3、在此背景下,跨语言语义搜索技术的应用显得尤其重要。它不仅克服了语言障碍,还为用户提供了无缝的体验。利用跨语言语义搜索,电商平台的智能客服可以实现多语言的即时支持,确保用户无论使用何种语言都能顺畅地与平台交流。这不仅极大地丰富了用户的选择,提升了购物体验,也促进了不同文化间的交流和理解。
4、在电子商务的场景中,跨语言语义搜索的价值远不止于技术上的创新。此技术反映了电商领域的全球化趋势,使得全球用户能够共享信息和资源,推动了国际贸易的进一步发展,并为商家开拓更加广阔的市场。通过提高智能客服的能力,这项技术不仅满足了多语言服务的需求,还提升了用户体验,增强了消费者对电商平台的信任。
5、总之,跨语言语义搜索技术关键地提升了电商平台智能客服的效能,并成为了促进全球商务合作和文化多样性融合的重要工具。随着电商领域的持续扩展和对话系统技术的进步,这项技术将帮助构建一个更开放、更包容的电商生态系统,为全球用户和企业创造更多机遇。
6、语义检索技术,旨在基于语义信息检索相关内容,已成为信息检索领域的关键技术之一。这种技术包括多种方法:基于关键词的检索、词嵌入、主题模型、深度学习模型、图模型和迁移学习等。
7、基于关键词的检索根据用户输入的关键词在文档集中查找匹配项。优点是简单、直观,易于实现。缺点在于它依赖于文字的字面匹配,不能有效处理同义词和上下文含义,导致检索结果可能不够准确。
8、词嵌入通过将词汇映射到向量空间中来捕捉词汇之间的语义关系。优点是能够理解词汇间的相似性和关联性。缺点是可能忽略词序和句法结构,有时不能充分理解整个句子或段落的意义。
9、主题模型通过分析文档集来识别隐藏的主题结构。优点是能从大量文本中提取关键主题,有助于组织和概括信息。缺点是对大数据集的处理效率可能较低,且对文本的细微语义理解有限。
10、深度学习模型如bert和gpt等,通过预训练和微调来处理复杂的语义关系,有点是能够学习和理解复杂的语义结构,适用于各种nlp任务,缺点是需要大量的数据和计算资源,并且模型的解释性可能较弱。
11、图模型特别是在知识图谱的应用中,通过映射实体和它们之间的关系。优点是能结构化地表示和处理复杂的关系。缺点是构建和维护知识图谱需要大量的专业知识和人力。
12、迁移学习将一个领域的学习成果应用到另一个领域。优点是能提高模型的泛化能力和效率。缺点是领域间的差异可能导致性能下降,需要精心设计以确保迁移的有效性。
13、在这些方法中,对已经训练好的预训练语言模型进行微调,是进行语义检索的一种高效策略。常见的微调方法有两种:一是使用特定数据进行持续预训练,使模型学习特定领域的语言知识,然后针对具体的语义检索任务进行微调;二是直接对预训练语言模型进行微调。在这两种方法中,模型在预训练阶段并不了解具体的下游任务,仅仅是在学习通用的语言知识。
14、跨语言语义检索的目的是处理来自不同国家、使用不同语言的客户群体的查询请求。为了实现这一目标,系统必须具备跨语言的处理能力。混合编码,一种机器翻译领域中的策略,专注于克服语言差异和提升翻译性能。然而,目前尚未有人将混合编码应用于跨语言环境下的语义检索任务,这一领域的潜力有待进一步探索和开发。
技术实现思路
1、本发明目的在于,提供一种基于跨语言表示学习的语义理解方法及装置,该方法从商业数据集中选择语言,选择的语言有阿拉伯语(ar)、英语(en)、中文(zh)、印度尼西亚语(id)、马来语(ms)、菲律宾语(fil)、泰语(th)、乌尔都语(ur)、孟加拉语(bn)、尼泊尔语(ne)和僧伽罗语(si);训练数据集来源于aliexpress语料库,lazada语料库,和daraz语料库,为了测试模型鲁棒性,还用了bucc2018语料库和tatoeba语料库的语言对。;用双语词典conceptnet5.7.0和muse生成混合编码知识;将用户问询和对应的标签以混合编码方式替换某些词为其他语言的对应词,然后利用遮蔽技术将混合编码后的结果用于语言模型的持续训练,使得模型拥有多语言的理解能力,在损失函数中引入查询和标签的混合编码相似度,以提前赋予模型语义检索的能力。
2、本发明所述的一种基于跨语言表示学习的语义理解方法,按下列步骤进行:
3、构建数据集并进行预处理:
4、a、收集单语查询语料,从aliexpress、lazada和daraz语料库中精心挑选了训练数据集,这些数据集覆盖了多种语言,包括阿拉伯语、英语、中文、印度尼西亚语、马来语、菲律宾语、泰语、乌尔都语、孟加拉语、尼泊尔语和僧伽罗语,其中从aliexpress语料库中选取了阿拉伯语、英语和中文;从lazada语料库中选取了印度尼西亚语、马来语、菲律宾语和泰语;从daraz语料库中选取了乌尔都语、孟加拉语、尼泊尔语和僧伽罗语,lazada语料库作为一个混合编码数据集;
5、b、将步骤a选择的数据集中单语数据进行数据处理,利用niutrans提供的预处理工具清洗数据,消除非法字符,所有实验数据的目标语言被统一为英语,以便于实现有效的跨语言学习;
6、c、使用python语言将步骤b处理后的数据进行二次预处理,再次清洗数据、消除空行、消除非法字符和目标端的非英文字符;
7、d、建立全面准确的双语词典,准备查询序列语料及其相应的标签序列语料,确保标签序列与查询序列一一对应;
8、e、从查询序列中挑选部分词汇,在双语词典中找到对应词汇进行替换,生成混合编码的查询序列。同样,在标签序列中选择一些词汇进行替换,得到混合编码的标签序列;
9、f、利用生成的混合编码的查询标签对对预训练语言模型进行持续训练,在训练过程中,考虑询问序列和标签序列的相似程度,以优化模型在后续的跨语言语义检索任、务中的性能;
10、g、进行最终模型的训练,确保模型在混合编码的数据上取得良好的性能。
11、步骤d中利用双语词典conceptnet5.7.0和muse生成混合编码知识,将用户问询和对应的标签以混合编码方式替换某些词为其他语言的对应词,然后利用遮蔽技术将混合编码后的结果用于语言模型的持续训练,使得模型拥有多语言的理解能力。
12、一种基于所述基于跨语言表示学习的语义理解方法的装置,该装置是由预训练掩码语言模型、多语言的预训练模型、多语言句子嵌入模型、语义检索预训练模型组成,其中:
13、预训练掩码语言模型:在训练过程中,考虑询问序列和标签序列的相似程度,以优化模型在后续的跨语言语义检索任务中的性能,进行最终预训练语言模型的训练,确保预训练语言模型在混合编码的数据上取得良好的性能;
14、旨在更好地理解语言的上下文含义。在mlm中,输入文本的一部分单词会被随机替换为一个特殊的掩码符号例如,[mask],然后,掩码语言模型是预测这些被掩码的单词,使掩码语言模型能够学习到一个词的上下文,从而更好地理解和生成语言;
15、多语言的预训练模型:旨在提高自然语言处理任务中的跨语言理解和表达能力,采用了类似于bert的架构,进行了针对性的优化以处理多语言数据;
16、多语言句子嵌入模型:它基于bert架构,专门优化以生成语言不可知的句子表示。labse在大量不同语言的文本数据上进行预训练,使其能够有效处理跨语言的语义相似性和检索任务;
17、语义检索预训练模型:包括关键词检索法,基于词嵌入的方法,深度学习模型,和知识图谱方法。
18、本发明所述的基于跨语言表示学习的语义理解方法及装置,该方法具体步骤:
19、从商业数据集中选择语言,选择的语言有阿拉伯语(ar)、英语(en)、中文(zh)、印度尼西亚语(id)、马来语(ms)、菲律宾语(fil)、泰语(th)、乌尔都语(ur)、孟加拉语(bn)、尼泊尔语(ne)和僧伽罗语(si);
20、训练数据集来源于aliexpress语料库,lazada语料库,和daraz语料库,为了测试模型鲁棒性,还用了bucc2018语料库和tatoeba语料库的语言对;
21、建立全面准确的双语词典,包含广泛的领域知识,选择双语词典,包括双语词典规模、词典的准确程度;选择单语语料,包括语料的质量为清洗过的、无噪声的、有标注的、有代表性的语料,确保数据来源于公开数据集或人工准备的数据;语料的规模:选择足够大的语料,以覆盖不同的语义场景和语言现象,以提高模型的表达能力和语义理解能力;语料的领域:选择与目标任务和需求相关的语料,以提高模型的精确度和可用性;语料的多样性:选择包含不同的文本类型、风格、话题、观点的语料,利用双语词典conceptnet5.7.0和muse生成混合编码知识;
22、用户输入的问询将拥有单语的知识(问询-标签对)双语词典将用户问询和对应的标签以混合编码方式替换某些词为其他语言的对应词,然后利用遮蔽技术将混合编码后的结果用于语言模型的持续训练,使得模型拥有多语言的理解能力,在损失函数中引入查询和标签的混合编码相似度,以提前赋予模型语义检索的能力。
23、本发明所述的基于跨语言表示学习的语义理解方法及装置,是第一次利用混合编码方法进行跨语言语义检索(sr)的。此外,引入了混合编码的持续预训练方法,而不是直接在sr任务上使用预训练语言模型(ptm)。实验结果表明,该方法在三个业务语料库和四个开放数据集的超过20种语言的sr和sts任务上,始终优于先前的sota方法。
24、在持续预训练的过程中就向模型提供了一些与下游任务sr有关的信号。语义检索是一种基于语义理解进行的信息检索方法,旨在提高检索系统对用户查询意图的理解和搜索结果的相关性。通过利用自然语言处理和知识检索方法,语义检索能够更准确地匹配用户查询与文档内容之间的语义关联,从而提供更精准和有针对性的搜索结果。语义检索的实现方式比较多,有基于知识图谱的,也有基于深度神经网络的。随着预训练语言模型的出现,前人提出了许多用预训练模型作语义检索的方法,有的人拿开源的预训练模型直接用,有人为了更好地适应自己的需要,用自己的数据对预训练语言模型进行持续的预训练再进行下游任务的微调。但他们都没有考虑到跨语言场景,因此在本发明中,将跨语言的混合编码引入到语言模型的持续预训练过程中。并且在预训练过程中提前给模型一些下游任务的信号,让语言模型可以更好地适应下游的语义检索任务。获得更好地效果。
25、旨在解决的核心技术问题是如何构建一个高效且高质量的跨语言语义检索模型。尽管预训练语言模型的应用已经在语义检索领域带来了显著的进展,并且这些模型可以通过直接微调或使用特定数据进行持续预训练后的再微调来适应各种下游的语义识别任务,但当前单语种的语义检索模型尽管表现出色,却在处理多语种环境时面临挑战。特别是在跨国电子商务的智能客服平台这样的多语种场景中,由于语言的多样性和语法的复杂性,现有的语义检索模型往往难以达到预期的效果。因此,本发明聚焦于开发一个能够有效处理多语言环境的高效语义检索模型,从而解决现有技术中存在的局限性。
26、本发明所述的基于跨语言表示学习的语义理解方法及装置,从三个主要数据源——aliexpress、lazada和daraz语料库中精心挑选了训练数据集。这些数据集覆盖了多种语言,包括阿拉伯语、英语、中文、印度尼西亚语、马来语、菲律宾语、泰语、乌尔都语、孟加拉语、尼泊尔语和僧伽罗语。
27、具体来说,从aliexpress语料库中选取了阿拉伯语、英语和中文;从lazada语料库中选取了印度尼西亚语、马来语、菲律宾语和泰语;从daraz语料库中选取了乌尔都语、孟加拉语、尼泊尔语和僧伽罗语。特别地,lazada语料库作为一个混合编码数据集,提供了更丰富的语言环境。
28、在数据预处理阶段,所选数据集进行了细致的处理,使用niutrans提供的预处理工具来清洗数据集,去除其中的非法字符;所有实验数据的目标语言被统一为英语,以便于实现有效的跨语言学习。
29、此外,利用python预处理工具,用于进一步优化数据处理流程,这些工具不仅用于二次数据清洗,还包括去除空行、消除非法字符等操作。
30、使用quora重复问题数据集来探索语义相关性(semantic relevance)任务,并运用faiss工具包来评估模型的性能。此外,为了全面评估不同方法的有效性,采用了平均倒数排名(mean reciprocal rank)这一标准度量。利用senteval工具包对语义文本相似性(sts)任务进行了深入的实验评估。
31、本发明使用了跨语言掩码语言模型进行持续训练,掩码语言模型是一种自然语言处理方法,用于训练双向语言模型。该方法首次被大规模预训练语言模型(bidirectionalencoder representations from transformers,bert)广泛采用,旨在更好地理解语言的上下文含义;在mlm中,输入文本的一部分单词会被随机替换为一个特殊的掩码符号(例如,[mask])。然后,模型的任务是预测这些被掩码的单词。这种方法使模型能够学习到一个词的上下文,从而更好地理解和生成语言。
32、假设x1,x2,…,xn是一个长度为n的句子,mlm的目标是最大化被掩码单词的对数似然:
33、其中,mi是一个指示变量,当第i个单词被掩码时为1,否则为0;x-i表示除了第i个单词外的所有单词。p(xi|x-i)是在给定上下文的情况下,第i个单词是xi的条件概率。
34、跨语言掩码语言模型是一种用于自然语言处理的方法,特别用于处理多语言或跨语言的场景;xmlm旨在通过训练模型以理解和生成多种语言,进而改善语言之间的信息传递和理解;xmlm类似于掩码语言模型(mlm),但它针对的是多种语言。在xmlm中,输入文本可以是多种语言,模型会在这些语言之间进行学习和转换。这通常涉及将一个语言的文本掩码并要求模型用另一种语言填充掩码部分,从而实现跨语言的语义理解;
35、
36、其中,mi是一个指示变量,表示第i个词是否被掩码(如果被掩码,则为1;否则为0;x-i表示除了第i个单词之外的所有单词;p(xi∣x-i,l1,l2)是在给定上下文x-i和涉及的语言l1和l2的情况下,第i个单词是xi的条件概率。
37、xmlm在多种多语言nlp任务中表现出色,例如多语言文本分类、跨语言信息检索和机器翻译,通过理解和生成多种语言,xmlm促进了不同语言用户之间的交流与理解。
38、准备查询序列语料及其相应的标签序列语料,确保标签序列与查询序列一一对应;其中询问序列query是指q={q1,…,qi,…,qi};
39、询问序列q和标签序列l是一一对应的关系
40、从查询序列中挑选部分词汇,在双语词典中找到对应词汇进行替换,生成混合编码的查询序列,同样,在标签序列中选择一些词汇进行替换,得到混合编码的标签序列;其中双语字典
41、利用生成的混合编码的查询标签对对预训练语言模型进行持续训练,在训练过程中,考虑询问序列和标签序列的相似程度,以优化模型在后续的跨语言语义检索任务中的性能,标签序列l={l1,…,lj,…,lj};
42、进行最终模型的训练,确保模型在混合编码的数据上取得良好的性能。
43、询问序列q和标签序列l是一一对应的关系
44、对询问序列和标签序列进行混合编码,假设序列是x={x1,x2,…xn},从下标序列s={1,2,…n}中随机选择一个子集,然后就将子集中下标所对应的元素xi用双语字典中的对应词yi替换得到z={z1,z2,…zn},其中
45、
46、运用混合编码,原始的询问序列和标签序列分别为:
47、q={q1,...,qi,...,qi},
48、l={l1,...,lj,...,lj},
49、其中,i和j分别表示查询和标签的序列长度,将查询和标签中的令牌替换为在阿里巴巴海外跨境电商平台中常用的语言,新构建的数据应该如下:
50、q′={q′1,...,q′i,...,q′i},
51、l′={l′1,...,l′j,...,l′j},
52、其中,q'i和l'j代表替换之后的token,最后一步,结合生成的q'和l'来建立混合编码的单语语料数据(i.e.,<q',l'>);
53、将得到的混合编码的问询序列标签序列对通过embedding层得到vq和vl,然后计算问询嵌入序列vq和标签词嵌入序列vl的余弦相似度;
54、
55、最后,检索出在集合k中与查询q最相似的句子x*。
56、
57、然后,根据句子的相似性分数对检索到的句子进行排名,以回顾与原始输入查询在语义上相近的前k个相似问题,提出的模型的总目标函数包括两部分,即跨语言掩码语言模型(xmlm)和相似性损失,可以表达如下:
58、
59、其中λ>0,λ是控制xmlm权重的超参数。
60、直观地说,由于xmlm与单语mlm高度相似,掩码标记预测任务可以扩展到跨语言环境。通常,单语mlm损失如下:
61、
62、其中,qm和qo分别是输入查询的掩码部分和观察到的部分;实际上,输入标签的掩码版本也与查询相似,通过使用相同的查询掩码策略对标签进行掩码;
63、具体而言,将带有混合编码的<query,label>对进行合并,并将其视为mlm的输入,xmlm的表达式如下:
64、
65、其中,lm和lo分别是标签的掩码部分和观察到的部分。此外,在持续的预训练过程中,我们提供与下游任务相关的额外训练信号。具体而言,希望查询q的嵌入表示接近其相应的标签l,但远离任何不正确的标签l'≠l。为实现这一目标,定义相似性损失如下:
66、
67、本发明中提出的方法与本领域本任务相关的方法具体信息如下:
68、mbert:mbert(多语言bert)是谷歌开发的bert(双向编码器表示)模型的多语言版本。mbert在104种语言的维基百科文本语料库上进行了训练,使其能够理解和处理多种语言。不同于只在单一语言文本上训练的单语言bert模型,mbert的多语言训练使其能够用于不同语言间的各种自然语言处理任务。这使得mbert在缺乏特定语言模型的情况下或需要跨语言理解和迁移学习的应用中特别有用。
69、unicoder:unicoder是一个多语言的预训练模型,旨在提高自然语言处理(nlp)任务中的跨语言理解和表达能力。该模型采用了类似于bert的架构,但进行了针对性的优化以处理多语言数据。unicoder在多个语言的大规模语料库上进行训练,这使得它能够理解和处理多种语言的语义信息。它在各种nlp任务,如机器翻译、文本分类和问答系统中,表现出色。unicoder的开发是为了解决单语言模型在跨语言应用中的局限性,通过提供一个更为通用和灵活的多语言模型。
70、simcse:simcse(supervised and unsupervised information maximizationfor sentence embedding compression)是一个用于句子嵌入表示的模型。它专注于通过最大化信息来改善句子级别的表示,旨在提高句子嵌入的质量。simcse通过监督和非监督的方式实现,能够更有效地捕捉句子的语义信息;在监督模式下,它利用标签数据来训练模型;而在非监督模式下,它通过比较不同句子的嵌入来提升模型性能;simcse在自然语言处理的多个领域,如语义相似性判断和句子分类任务中,都显示出优异的效果。
71、infoxlm:infoxlm是一个先进的多语言预训练模型,旨在处理自然语言处理中的跨语言理解任务,它基于跨语言预训练模型xlm-r的架构,通过融合跨语言的对比学习(cross-lingual contrastive learning)和信息最大化(information maximization)技术来提升模型的性能。infoxlm能够有效地捕捉和理解不同语言之间的语义信息,对于多语言文本的理解和翻译等任务表现出色。该模型通过在多种语言的大量文本数据上进行预训练,提高了跨语言任务的准确性和效率。
72、veco:veco是一个基于transformer架构的多语言预训练模型,专注于改进跨语言理解和生成任务的性能。它通过融合了跨语言的编码器和解码器来实现高效的语义信息处理。veco不仅能理解不同语言的文本,还能生成特定语言的输出,使其在机器翻译、文本摘要等领域表现出色。该模型通过在多种语言的大规模数据集上进行预训练,从而提高了跨语言任务的准确性和自然性。veco的创新之处在于它结合了编码和解码功能,提供了一种有效的方法来处理复杂的跨语言nlp任务。
73、cmlm:cmlm(conditional masked language model)是一种自然语言处理中的预训练模型。它在bert的基础上进行了改进,用于解决序列到序列(seq2seq)的任务,如机器翻译;cmlm的核心特点是在训练过程中使用条件掩码机制,这种机制允许模型在预测缺失的单词时考虑上下文信息。这使得cmlm在处理诸如文本摘要、文本生成等任务时,能够更准确地预测和生成文本。cmlm的创新之处在于其能有效结合bert架构的强大语义理解能力与序列生成任务的需求。
74、labse:labse(language-agnostic bert sentence embedding)是一个先进的多语言句子嵌入模型。它基于bert架构,专门优化以生成语言不可知的句子表示。labse在大量不同语言的文本数据上进行预训练,使其能够有效处理跨语言的语义相似性和检索任务。这一模型特别适用于多语言环境,例如在多种语言间进行文本相似度比较或信息检索。labse的关键优势在于其对不同语言的高度兼容性和在多语言nlp任务中的高效性能。
75、实验结果表明,提出的方法在三个商业语料库和四个开放数据集的20多种语言上的sr和语义文本相似性(sts)任务上,始终优于先前的最佳方法。
76、与现有技术相比,本发明提出了一种基于跨语言表示学习的语义理解方法及装置,可以很好的促进跨国电商平台的发展。
77、本发明将混合编码引入到了多语言预训练模型,使得模型拥有了跨语言能力。
78、本发明在对多语言预训练模型进行持续预训练时,将询问序列和标签序列的相似度加入到模型预训练的loss计算过程中,从而使得模型在预训练过程中就拥有了一定的语义检索能力。
79、实验结果表明,本发明在三个商业语料库和四个开放数据集的20多种语言上的sr和语义文本相似性(semantic textual similarity,sts)任务中,始终优于先前的最先进(state of the art,sota)方法。
80、本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
1.一种基于跨语言表示学习的语义理解方法,其特征在于按下列步骤进行:
2.一种如权利要求1所述的一种基于跨语言表示学习的语义理解方法,其特征在于步骤d中利用双语词典conceptnet5.7.0和muse生成混合编码知识,将用户问询和对应的标签以混合编码方式替换某些词为其他语言的对应词,然后利用遮蔽技术将混合编码后的结果用于语言模型的持续训练,使得模型拥有多语言的理解能力。
3.一种基于权利要求1所述基于跨语言表示学习的语义理解方法的装置,其特征在于,该装置是由预训练掩码语言模型、多语言预训练模型、多语言句子嵌入模型、语义检索模型组成,其中: