CN114997140B - 校验语义的方法和装置 - Google Patents
校验语义的方法和装置 Download PDFInfo
- Publication number
- CN114997140B CN114997140B CN202111096654.5A CN202111096654A CN114997140B CN 114997140 B CN114997140 B CN 114997140B CN 202111096654 A CN202111096654 A CN 202111096654A CN 114997140 B CN114997140 B CN 114997140B
- Authority
- CN
- China
- Prior art keywords
- sentence
- word
- phrase
- neural network
- semantic classification
- 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
Images
Classifications
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- 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/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Machine Translation (AREA)
Abstract
本申请涉及终端人工智能领域,提供了一种校验语义的方法和装置。提供了一种校验语义的方法,包括:获取第一语句和第二语句,所述第一语句为基准语句,所述第二语句为所述第一语句的翻译结果;通过翻译模块将所述第二语句翻译为第三语句,所述第三语句与所述第一语句的语言相同;通过语义分类神经网络处理所述第一语句和所述第三语句,确定所述第一语句和所述第三语句的语义是否相同。上述方法无需依赖反义词词表即可确定第一语句与第二语句的语义是否相同,解决了因反义词词表不完整导致的校验结果不准确的问题。
Description
技术领域
本申请涉及终端人工智能领域,具体涉及一种校验语义的方法和装置。
背景技术
终端设备是面向用户的设备,由于不同用户具有不同的语言习惯,厂商需要在交付过程中生产不同语言版本的终端设备。厂商将终端设备交付给用户前,需要对不同语言版本的语义进行校验,确保不同语言版本的终端设备具有相同的操作体验,即,厂商需要确保不同的语言版本的语义相同。
一种校验语义的方法是提取不同语言的句子中的反义词和否定词,根据不同语言的句子中的反义词和否定词的个数是否相同来校验不同语言的句子的含义是否相同。例如,当校验“Please press the screen hard”和“请轻按屏幕”的含义是否相同时,可以先根据反义词词表从这两个句子中提取反义词“hard”和“轻”,再判断“hard”和“轻”周围是否存在否定词(如,“no”或者“不要”);当这两个反义词周围不存在否定词时,可以判定这两个句子的含义不同。
然而,当反义词词表缺少“hard”和“轻”时,上述方法的校验结果是“Please pressthe screen hard”和“请轻按屏幕”的含义相同,从而产生了错误的校验结果。如何提高语句校验的准确度是当前需要解决的问题。
发明内容
本申请提供了一种校验语义的方法和装置,能够解决反义词词表不完整导致的校验结果不准确的问题。
第一方面,提供了一种校验语义的方法,包括:获取第一语句和第二语句,第一语句为基准语句,第二语句为第一语句的翻译结果;通过翻译模块将第二语句翻译为第三语句,第三语句与第一语句的语言相同;通过语义分类神经网络处理第一语句和第三语句,确定第一语句和第三语句的语义是否相同。
语义分类神经网络处理的语句通常是语言相同的语句,第二语句的语言与第一语句的语言不同,无法直接对第一语句和第二语句进行分类处理。通过翻译模块将第二语句翻译为与第一语句的语言相同的语句(即,第三语句)后,可以使用语义分类神经网络确定第一语句与第三语句的语义是否相同。若第一语句与第三语句的语义相同,说明第一语句与第二语句的语义相同;若第一语句与第三语句的语义不同,说明第一语句与第二语句的语义不同;从而无需依赖反义词词表即可确定第一语句与第二语句的语义是否相同,解决了因反义词词表不完整导致的校验结果不准确的问题。
在一种实现方式中,通过语义分类神经网络处理第一语句和第三语句之前,校验语义的方法还包括:获取第四语句,第四语句的语言与第一语句的语言相同;确定第四语句中的目标短语的反义词;将目标短语替换为反义词,生成第五语句;使用第四语句和第五语句训练语义分类神经网络。
第四语句和第五语句的语义可能相同,也可能不同。例如,在不考虑否定词的情况下,当第四语句和第五语句的反义词数量为偶数时,第四语句和第五语句的含义相同;当第四语句和第五语句的反义词数量为奇数时,第四语句和第五语句的含义不同。利用第四语句和第五语句作为训练样本能够使得语义分类神经网络具备语义分类功能。
在一种实现方式中,确定第四语句中的目标短语的反义词,包括:当目标短语存在多个候选反义词时,通过高斯分布采样从多个候选反义词中确定反义词。
相比于随机采样,高斯分布采样提高了常用反义词被采样的概率,使得反义词替换后的语句更符合常用语法。
在一种实现方式中,确定第四语句中的目标短语的反义词之前,还包括:根据短语结构树确定第四语句中各个短语的词性;根据基于转移的依存句法分析和第四语句中各个短语的词性确定第四语句中各个短语的依存关系;根据第四语句中各个短语的依存关系确定目标短语,目标短语为各个短语中的从属词。
在依存句法分析的理论中,句子中的词与词之间存在一种二元不等价关系,即,主从关系。在句子中,如果一个词修饰另一个词,则称修饰词为从属词(dependent),称被修饰词为支配词(head),从属词和支配词之间的语法关系就是依存关系(dependencyrelation)。确定依存关系后,可以根据依存关系从英文语句中确定目标短语,目标短语即各个短语中的修饰词。自然语言的翻译错误通常出现在修饰词部分,将修饰词替换为反义词,和/或,在修饰词前后添加否定词,能够生成更接近自然语言的训练样本,提高语义分类神经网络的训练效果。
在一种实现方式中,在确定第四语句中各个短语的词性之后,并且,在生成第五语句之前,校验语义的方法还包括:在各个短语中的动词短语附近随机添加否定词。
添加否定词与反义词替换一样能够改变句子的含义,在第四语句中添加否定词生成第五语句,再使用第四语句和第五语句训练语义分类神经网络,能够使语义分类神经网络具备更强的鲁棒性。
在一种实现方式中,在使用第四语句和第五语句训练语义分类神经网络之前,校验语义的方法还包括:根据第四语句的反义词替换次数和否定词添加次数确定第四语句和第五语句的标签,其中,当反义词替换次数和否定词添加次数的和为奇数时,第四语句和第五语句的标签为反义语句;当反义词替换次数和否定词添加次数的和为偶数时,第四语句和第五语句的标签为同义语句。
在一种实现方式中,获取第四语句,包括:从翻译模块的训练集中获取第六语句;对第六语句进行删除、替换和反向翻译中的一种或多种处理,生成第四语句。
当翻译模块为神经网络时,并且,当翻译模块与语义分类神经网络使用相同的训练集时,通过删除、替换和反向翻译中的一种或多种处理生成第四语句,能够避免翻译模块与语义分类神经网络的训练数据发生交叉,提高语义分类神经网络的训练效果。
在一种实现方式中,使用第四语句和第五语句训练语义分类神经网络之前,校验语义的方法还包括:通过MultiNLI数据集对语义分类神经网络进行预训练,相关性数据集用于使语义分类神经网络获取同义和反义分类能力。
MultiNLI数据集能够使语义分类神经网络获取同义、反义和中性的分类能力,此外,预训练能够使得语义分类神经网络获得良好的初始化权重,提高正式训练的训练效果。
第二方面,提供了一种校验语义的装置,包括用于执行第一方面中任一种方法的单元。该装置可以是终端设备,也可以是终端设备内的芯片。该装置可以包括输入单元和处理单元。
当该装置是终端设备时,该处理单元可以是处理器,该输入单元可以是通信接口;该终端设备还可以包括存储器,该存储器用于存储计算机程序代码,当该处理器执行该存储器所存储的计算机程序代码时,使得该终端设备执行第一方面中的任一种方法。
当该装置是终端设备内的芯片时,该处理单元可以是芯片内部的处理单元,该输入单元可以是输出接口、管脚或电路等;该芯片还可以包括存储器,该存储器可以是该芯片内的存储器(例如,寄存器、缓存等),也可以是位于该芯片外部的存储器(例如,只读存储器、随机存取存储器等);该存储器用于存储计算机程序代码,当该处理器执行该存储器所存储的计算机程序代码时,使得该芯片执行第一方面中的任一种方法。
第三方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序代码,当所述计算机程序代码被校验语义的装置运行时,使得该装置执行第一方面中的任一种方法。
第四方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被校验语义的装置运行时,使得该装置执行第一方面中的任一种方法。
附图说明
图1是一种适用于本申请的装置的硬件系统的示意图;
图2是一种适用于本申请的装置的软件系统的示意图;
图3是本申请提供的两种锁屏界面的示意图;
图4是本申请提供的一种校验语义的方法的示意图;
图5是本申请提供的另一种校验语义的方法的示意图;
图6是本申请提供的一种语义分类神经网络的示意图;
图7是本申请提供的一种训练语义分类神经网络的方法的示意图;
图8是本申请提供的一种英文短语结构树的示意图;
图9是本申请提供的一种依存关系的示意图。
具体实施方式
下面将结合附图,对本申请实施例中的技术方案进行描述。
图1示出了一种适用于本申请的装置的硬件系统。
装置100可以是手机、智慧屏、平板电脑、可穿戴电子设备、车载电子设备、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、投影仪等等,本申请实施例对装置100的具体类型不作任何限制。
装置100可以包括处理器110,内部存储器121,传感器模块180,显示屏194等。其中传感器模块180可以包括触摸传感器180K等。
需要说明的是,图1所示的结构并不构成对装置100的具体限定。在本申请另一些实施例中,装置100可以包括比图1所示的部件更多或更少的部件,或者,装置100可以包括图1所示的部件中某些部件的组合,或者,装置100可以包括图1所示的部件中某些部件的子部件。图1示的部件可以以硬件、软件、或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元。例如,处理器110可以包括以下处理单元中的至少一个:应用处理器(application processor,AP)、调制解调处理器、图形处理器(graphics processing unit,GPU)、图像信号处理器(image signal processor,ISP)、控制器、视频编解码器、数字信号处理器(digital signal processor,DSP)、基带处理器、神经网络处理器(neural-network processing unit,NPU)。其中,不同的处理单元可以是独立的器件,也可以是集成的器件。
NPU是一种借鉴生物神经网络结构的处理器,例如借鉴人脑神经元之间传递模式对输入信息快速处理,还可以不断地自学习。通过NPU可以实现装置100的智能认知等功能,例如:图像识别、人脸识别、语音识别和文本理解。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。例如,处理器110可以包括以下接口中的至少一个:内部集成电路(inter-integrated circuit,I2C)接口、移动产业处理器接口(mobile industry processor interface,MIPI)、通用输入输出(general-purpose input/output,GPIO)接口。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现装置100的触摸功能。
MIPI接口可以被用于连接处理器110与显示屏194等外围器件。MIPI接口包括显示屏串行接口(display serial interface,DSI)等。在一些实施例中,处理器110和显示屏194通过DSI接口通信,实现装置100的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号接口,也可被配置为数据信号接口。在一些实施例中,GPIO接口可以用于连接处理器110与显示屏194和传感器模块180。GPIO接口还可以被配置为I2C接口或MIPI接口。
图1所示的各模块间的连接关系只是示意性说明,并不构成对装置100的各模块间的连接关系的限定。可选地,装置100的各模块也可以采用上述实施例中多种连接方式的组合。
装置100可以通过GPU、显示屏194以及应用处理器实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194可以用于显示图像或视频。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)、有源矩阵有机发光二极体(active-matrix organic light-emitting diode,AMOLED)、柔性发光二极管(flex light-emitting diode,FLED)、迷你发光二极管(mini light-emitting diode,Mini LED)、微型发光二极管(micro light-emitting diode,Micro LED)、微型OLED(Micro OLED)或量子点发光二极管(quantum dotlight emitting diodes,QLED)。在一些实施例中,装置100可以包括1个或N个显示屏194,N为大于1的正整数。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能(例如,声音播放功能和图像播放功能)所需的应用程序。存储数据区可存储装置100使用过程中所创建的数据(例如,音频数据和电话本)。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如:至少一个磁盘存储器件、闪存器件和通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令和/或存储在设置于处理器中的存储器的指令,执行装置100的各种处理方法。
触摸传感器180K,也称为触控器件。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,触摸屏也称为触控屏。触摸传感器180K用于检测作用于其上或其附近的触摸操作。触摸传感器180K可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于装置100的表面,并且与显示屏194设置于不同的位置。
上文详细描述了装置100的硬件系统,下面介绍装置100的软件系统。软件系统可以采用分层架构、事件驱动架构、微核架构、微服务架构或云架构,本申请实施例以分层架构为例,示例性地描述装置100的软件系统。
如图2所示,采用分层架构的软件系统分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,软件系统可以分为四层,从上至下分别为应用程序层、应用程序框架层、安卓运行时(Android Runtime)和系统库、以及内核层。
应用程序层可以包括相机、图库、日历、通话、地图、导航、WLAN、蓝牙、音乐、视频、短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用程序编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层可以包括一些预定义的函数。
例如,应用程序框架层包括窗口管理器、内容提供器、视图系统、电话管理器、资源管理器和通知管理器。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏、锁定屏幕和截取屏幕。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频、图像、音频、拨打和接听的电话、浏览历史和书签、以及电话簿。
视图系统包括可视控件,例如显示文字的控件和显示图片的控件。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成,例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供装置100的通信功能,例如通话状态(接通或挂断)的管理。
资源管理器为应用程序提供各种资源,比如本地化字符串、图标、图片、布局文件和视频文件。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于下载完成告知和消息提醒。通知管理器还可以管理以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知。通知管理器还可以管理以对话窗口形式出现在屏幕上的通知,例如在状态栏提示文本信息、发出提示音、电子设备振动以及指示灯闪烁。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理、堆栈管理、线程管理、安全和异常的管理、以及垃圾回收等功能。
系统库可以包括多个功能模块,例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:针对嵌入式系统的开放图形库(opengraphics library for embedded systems,OpenGL ES)和2D图形引擎(例如:skia图形库(skia graphics library,SGL))。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D图层和3D图层的融合。
媒体库支持多种音频格式的回放和录制、多种视频格式回放和录制以及静态图像文件。媒体库可以支持多种音视频编码格式,例如:MPEG4、H.264、动态图像专家组音频层面3(moving picture experts group audio layer III,MP3)、高级音频编码(advancedaudio coding,AAC)、自适应多码率(adaptive multi-rate,AMR)、联合图像专家组(jointphotographic experts group,JPG)和便携式网络图形(portable network graphics,PNG)。
三维图形处理库可以用于实现三维图形绘图、图像渲染、合成和图层处理。
二维图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层可以包括显示驱动、摄像头驱动、音频驱动和传感器驱动等驱动模块。
下面结合显示界面场景,示例性说明装置100的软件系统和硬件系统的工作流程。
当用户在触摸传感器180K上进行触摸操作时,相应的硬件中断被发送至内核层,内核层将触摸操作加工成原始输入事件,原始输入事件例如包括触摸坐标和触摸操作的时间戳等信息。原始输入事件被存储在内核层,应用程序框架层从内核层获取原始输入事件,识别出原始输入事件对应的控件,并通知该控件对应的应用程序(application,APP)。例如,上述触摸操作为单击操作,上述控件对应的APP为锁屏APP,锁屏APP被单击操作唤醒后,可以通过API调用内核层的显示驱动,通过显示驱动控制显示屏194显示锁屏APP的锁屏界面。
装置100在锁屏界面完成面部识别后,可以显示图3所示的用户界面。若装置100是中文版本的终端设备,用户界面显示的内容包括“上滑进入”;若装置100是英文版本的终端设备,用户界面显示的内容包括“slide up to open”。在翻译无误的情况下,无论装置100显示哪种用户界面,用户均可以根据用户界面显示的内容执行正确的解锁操作。
终端设备是面向用户的设备,由于不同用户具有不同的语言习惯,厂商需要在交付过程中生产不同语言版本的终端设备。厂商将终端设备交付给用户前,需要对不同语言版本的语义进行校验,确保不同语言版本的终端设备具有相同的操作体验,即,厂商需要确保不同的语言版本的语义相同。
下面以具备图1和图2所示结构的终端设备为例,介绍本申请提供的校验语义的方法。
一种校验语义的方法如图4所示。终端设备首先获取两个不同语言的语句,该两个不同语言的语句例如是英文语句和中文语句。随后,终端设备利用翻译器的双向编码表示(bidirectional encoder representation from transformers,BERT)模型处理英文语句和中文语句,得到英文语句和中文语句中具有关联关系的单词对。获取单词对后,终端设备基于反义词词表确定上述单词对是否为反义词,随后,终端设备基于否定词表确定上述单词对前后是否存在否定词,并基于反义词和否定词的处理结果确定英文语句和中文语句的语义是否相同。
例如,待检测的语句为“请轻按屏幕”和“Please don't press the screenhard”,其中,英文语句为基准语句,中文语句为机器翻译或者人工翻译的语句;终端设备利用BERT模型检测出这两个语句中“hard”和“轻”是具有关联关系的单词对,随后,终端设备查找反义词词表,确定“hard”和“轻”为反义词;终端设备接下来检查“hard”和“轻”前后是否有额外的否定词,否定词的检查结果为“hard”之前存在否定词“don't”,终端设备确定“请轻按屏幕”无否定词缺失,即,“请轻按屏幕”和“Please don't press the screenhard”的语义是相同的。
上述方法的准确性依赖于反义词词表的完整度,若反义词词表不完整,则会导致判断结果出错。
例如,当反义词词表缺少“hard”和“轻”时,终端设备确定“Please don't pressthe screen hard”和“请轻按屏幕”不存在反义词匹配,随后判断这两个语句是否存在否定词;由于“Please don't press the screen hard”包含否定词“don't”,终端设备需要确定两个语句的否定词的数量是否相同;“请轻按屏幕”不包含否定词,因此,终端设备确定“请轻按屏幕”存在否定词缺失,从而确定“Please press the screen hard”和“请轻按屏幕”二者的语义不同,最终得到错误的判断结果。
下面结合图5介绍本申请提供的校验语义的方法。
图5所示的方法可以由终端设备执行,终端设备的存储器(如内部存储器121)存储有不同版本的交互界面的语句,如图5所示的英文语句1和中文语句。测试人员启动校验流程后,终端设备的处理器(如处理器110)从存储器读取英文语句1和中文语句,其中,英文语句1是基准语句,中文语句是英文语句1的翻译结果。
终端设备的处理器读取并运行存储器中存储的翻译模型的代码,执行翻译处理,例如,终端设备的处理器运行翻译模型的代码,对中文语句进行翻译处理,得到英文语句2。该翻译模型例如是多语言模型鲁棒优化的BERT方法(X language modeling robustlyoptimized BERT approach,XML-RoBERTa),本申请对翻译模型的具体内容不做限定。
随后,终端设备的处理器读取并运行存储器中存储的语义分类神经网络的代码,执行语义分类处理,例如,终端设备的处理器运行语义分类神经网络的代码,对英文语句1和英文语句2进行语义分类处理,得到语义分类结果。上述语义分类神经网络是经过训练的神经网络,例如是RoBERTa。
语义分类神经网络的一种可选的结构如图6所示,语义分类神经网络通过词向量嵌入处理将英文语句1和英文语句2转化为词向量,随后通过位置编码标记英文语句1和英文语句2中具有关联关系的单词;随后,语义分类神经网络通过12层网络结构处理英文语句1和英文语句2的词向量,输出英文语句1和英文语句2的语义相同的置信分数。若该置信分数大于或等于分数阈值,终端设备确定英文语句1和英文语句2的语义相同;若该置信分数小于分数阈值,终端设备确定英文语句1和英文语句2的语义不同。
由此可见,图5所示的方法无需依赖反义词词表和否定词词表即可确定不同语言的语句的语义是否相同,从而提高了语义校验的准确度。
图5所示的方法通常在终端设备出厂前实施,因此,图5所示的方法还可以由其他电子设备(如服务器)执行,本申请对执行图5所示的方法的设备不做限定。
语义分类神经网络需要经过训练才能具备语义分类功能。当翻译模型为神经网络时,也需要经过训练才能具备翻译功能。下面介绍本申请提供的翻译模型和语义分类神经网络的训练方法。
可以将各个语言版本的字符串作为训练集离线训练翻译模型。可以采用反向传播训练方法训练翻译模型,在此不再赘述。
图7是本申请提供的一种训练语义分类神经网络的示意性流程图。
在正式训练语义分类神经网络前,可以采用多类型自然语言推理(multi-genrenatural language inference,MultiNLI)数据集作为训练集进行预训练,MultiNLI数据集能够使语义分类神经网络获取同义、反义和中性的分类能力,此外,预训练能够使得语义分类神经网络获得良好的初始化权重,提高正式训练的训练效果。
在正式训练语义分类神经网络时,需要准备语义分类神经网络的训练集。可以基于翻译模型的训练集生成语义分类神经网络的训练集。
例如,可以对“I have an apple”进行随机破坏处理,得到“I ave a apple”或者“I have an banana”,即,将have和an中的部分字母删除,或者,将apple替换为banana。随机破坏不考虑语法的正确性,目的是为了避免翻译模块与语义分类神经网络的训练数据发生交叉,提高语义分类神经网络的鲁棒性。
又例如,可以对“I have an apple”进行反向翻译处理,即,将“I have an apple”翻译为中文,再将翻译后的中文翻译为英文。经过反向翻译得到的语句通常会与原始语句在形式上有所差别,能够避免翻译模块与语义分类神经网络的训练数据发生交叉,提高语义分类神经网络的鲁棒性。
对翻译模型的训练集进行随机破坏或反向翻译后,还需要对目标语句(经过随机破坏或反向翻译后的语句)进行进一步处理,生成反义语句或同义语句,包含目标语句和目标语句的同义语句(或反义语句)的语句集合可以作为语义分类神经网络的训练集。
下面以目标语句为英文语句为例,介绍生成目标语句的同义语句或反义语句的方法。
首先,训练设备可以根据英文短语结构树确定目标语句中各个短语(如,单词)的词性。图8是本申请提供的一种英文短语结构树,S表示主语(subject),NP表示名词短语(noun phrase),VP表示动词短语(verb phrase),DET表示限定词(determiner),VERB表示动词,PP表示前置词短语(prepositional phrase),ADVP表示副词短语(adverb phrase),NOUN表示名词,ADP表示介词短语(adpositional phrase),ADV表示副词(adverb),PRON表示代词(pronoun)。
根据图8所示的英文短语结构树可以确定英文语句中各个短语的词性,例如,通过图8所示的英文短语结构树分析“The above information will be stored on Honorservers”,可以确定该句话中各个单词的词性如下:
The(DET)above(ADJ)information(NOUN)will(AUX)be(AUX)stored(VERB)on(ADP)Honor(PROPN)servers(NOUN)。
其中,AUX表示助动词(auxiliary),PROPN表示专有名词(proper noun)。AUX和PROPN是基于英文短语结构树添加额外词性,能够使词性分析结果更精确。例如,will be是修饰动词stored的词,因此,按照英文语法,will和be是AUX;Honor是名词,并且是首字母大写的非句首单词,按照英文语法,可以进一步细分Honor的词性,将Honor划分为PROPN。
随后,训练设备可以根据基于转移的依存句法分析(transition-baseddependency parser)和上述语句中各个单词的词性确定各个单词的依存关系。在依存句法分析的理论中,句子中的词与词之间存在一种二元不等价关系,即,主从关系。在句子中,如果一个词修饰另一个词,则称修饰词为从属词(dependent),称被修饰词为支配词(head),从属词和支配词之间的语法关系就是依存关系(dependency relation)。
根据基于转移的依存句法分析确定的依存关系如图9所示。图9中,箭头表示两个单词之间的依存关系,箭头由支配词指向从属词。例如,箭头从information指向The,information为支配词(head),The为从属词(dependent),其中,支配词也可以称为核心词,从属词也可称为修饰词。
图9中,The是information的限定词(det),above是information的形容词修饰语(adjectival modifier,amod),information是stored的被动名词主语(passive nominalsubject,nsubjpass),will是stored的助动词(aux),be是stored的助动词(passiveauxiliary,auxpass),on是stored的介词(preposition,prep),servers是on的介词宾语(object of a preposition,pobj),Honor是servers的复合标识符(compound)。
确定依存关系后,训练设备可以根据依存关系从英文语句中确定目标短语,目标短语即各个短语中的修饰词。自然语言的翻译错误通常出现在修饰词部分,将修饰词替换为反义词,和/或,在修饰词前后添加否定词,能够生成更接近自然语言的训练样本,提高语义分类神经网络的训练效果。
训练设备可以根据反义词词表(如wordnet)对初始语句“The above informationwill be stored on Honor servers”进行处理。若反义词词表包含above和on的反义词,则可以得到反义词替换后的语句“The below information will be stored without Honorservers”。训练设备还可以继续对反义词替换后的语句添加否定词,根据英文语法,否定词通常添加在动词后面,可以得到最终语句“The below information won't be storedwithout Honor servers”。
上述初始语句有两个单词被替换为反义词,并且,有一个单词被添加了否定词,则上述初始语句的反义词替换次数和否定词添加次数的和为奇数,训练设备可以确定最终语句与初始语句的语义相反。训练设备将初始语句和最终语句添加上反义语句标签后,即可利用这两个语句训练语义分类神经网络。
在一种可选的实现方式中,若初始语句的反义词替换次数和否定词添加次数的和为偶数,训练设备可以最终语句的含义与初始语句的语义相同。训练设备将初始语句和最终语句添加上同义语句标签后,即可利用这两个语句训练语义分类神经网络。
在反义词替换过程中,若一个单词对应多个反义词,则训练设备可以从多个反义词中选择一个反义词替换初始语句中的单词。例如,训练设备可以通过高斯分布采样从多个反义词中随机选取一个反义词;相比于随机采样,高斯分布采样提高了常用反义词被采样的概率,使得反义词替换后的语句更符合常用语法。本申请对从多个反义词中选择反义词的规则不做限定。
在添加否定词的过程中,训练设备可以根据均匀分布概率添加英文否定词,例如,可以在did后添加not,也可以在like前添加not,否定词的添加位置位于动词前或动词后的概率是均匀分布的。
生成足够的训练样本后,训练设备可以对语义分类神经网络进行训练。预训练采用的是MultiNLI数据集,MultiNLI数据集能够使语义分类神经网络获取同义、反义和中性的分类能力,由于厂商最终需要的语义分类神经网络无需具备中性分类能力,可以在正式训练前删除三分类模型(经过预训练的语义分类神经网络)的最后一层分类器,将三分类模型修改为二分类模型。
在正式训练过程中,可以先固定二分类模型的最后一层神经元外的全部神经元,训练5个周期;之后开放所有的变量神经元,训练10个周期,直到二分类模型收敛,得到最终的语义分类神经网络。
上述训练方法是示例而非限定,本申请对语义分类神经网络的训练方法不做限定。此外,上述训练设备可以是图1所示的装置,也可以是服务器或其他电子设备,本申请对训练设备的具体类型不做限定。
本申请还提供了一种计算机程序产品,该计算机程序产品被处理器执行时实现本申请中任一方法实施例所述的方法。
该计算机程序产品可以存储在存储器中,经过预处理、编译、汇编和链接等处理过程最终被转换为能够被处理器执行的可执行目标文件。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机执行时实现本申请中任一方法实施例所述的方法。该计算机程序可以是高级语言程序,也可以是可执行目标程序。
该计算机可读存储介质可以是易失性存储器或非易失性存储器,或者,可以同时包括易失性存储器和非易失性存储器。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。
本领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和设备的具体工作过程以及产生的技术效果,可以参考前述方法实施例中对应的过程和技术效果,在此不再赘述。
在本申请所提供的几个实施例中,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的方法实施例的一些特征可以忽略,或不执行。以上所描述的装置实施例仅仅是示意性的,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,多个单元或组件可以结合或者可以集成到另一个系统。另外,各单元之间的耦合或各个组件之间的耦合可以是直接耦合,也可以是间接耦合,上述耦合包括电的、机械的或其它形式的连接。
应理解,在本申请的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请的实施例的实施过程构成任何限定。
另外,本文中术语“系统”和“网络”在本文中常被可互换使用。本文中的术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
总之,以上所述仅为本申请技术方案的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (9)
1.一种校验语义的方法,其特征在于,包括:
获取第一语句和第二语句,所述第一语句为基准语句,所述第二语句为所述第一语句的翻译结果;
通过翻译模块将所述第二语句翻译为第三语句,所述第三语句与所述第一语句的语言相同;
通过语义分类神经网络处理所述第一语句和所述第三语句,确定所述第一语句和所述第三语句的语义是否相同;
所述通过语义分类神经网络处理所述第一语句和所述第三语句之前,所述方法还包括:
获取第四语句,所述第四语句的语言与所述第一语句的语言相同;根据短语结构树确定所述第四语句中各个短语的词性;根据基于转移的依存句法分析和所述第四语句中各个短语的词性确定所述第四语句中各个短语的主从关系;根据各个短语的主从关系,将从属词作为目标短语,将所述目标短语替换为反义词,生成第五语句;使用所述第四语句和所述第五语句训练所述语义分类神经网络;其中,主从关系表示从属词和支配词之间的关系,从属词修饰支配词。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述目标短语存在多个候选反义词时,通过高斯分布采样从所述多个候选反义词中确定所述反义词。
3.根据权利要求1所述的方法,其特征在于,在所述确定所述第四语句中各个短语的词性之后,并且,在所述生成第五语句之前,所述方法还包括:
在所述各个短语中的动词短语附近随机添加否定词。
4.根据权利要求1所述的方法,其特征在于,在所述使用所述第四语句和所述第五语句训练所述语义分类神经网络之前,所述方法还包括:
根据所述第四语句的反义词替换次数和否定词添加次数确定所述第四语句和所述第五语句的标签,其中,当所述反义词替换次数和所述否定词添加次数的和为奇数时,所述第四语句和所述第五语句的标签为反义语句;当所述反义词替换次数和所述否定词添加次数的和为偶数时,所述第四语句和所述第五语句的标签为同义语句。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述获取第四语句,包括:
从所述翻译模块的训练集中获取第六语句;
对所述第六语句进行删除、替换和反向翻译中的一种或多种处理,生成所述第四语句。
6.根据权利要求1至4中任一项所述的方法,其特征在于,所述使用所述第四语句和所述第五语句训练所述语义分类神经网络之前,所述方法还包括:
通过MultiNLI数据集对所述语义分类神经网络进行预训练。
7.一种校验语义的装置,其特征在于,所述装置包括处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于从所述存储器中调用并运行所述计算机程序,使得所述装置执行权利要求1至6中任一项所述的方法。
8.一种芯片,其特征在于,包括处理器,当所述处理器执行指令时,所述处理器执行如权利要求1至6中任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储了计算机程序,当所述计算机程序被处理器执行时,使得处理器执行权利要求1至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111096654.5A CN114997140B (zh) | 2021-09-17 | 2021-09-17 | 校验语义的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111096654.5A CN114997140B (zh) | 2021-09-17 | 2021-09-17 | 校验语义的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114997140A CN114997140A (zh) | 2022-09-02 |
CN114997140B true CN114997140B (zh) | 2023-04-28 |
Family
ID=83018476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111096654.5A Active CN114997140B (zh) | 2021-09-17 | 2021-09-17 | 校验语义的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114997140B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111832318A (zh) * | 2020-07-16 | 2020-10-27 | 平安科技(深圳)有限公司 | 单语句自然语言处理方法、装置、计算机设备及可读存储介质 |
CN112733547A (zh) * | 2020-12-28 | 2021-04-30 | 北京计算机技术及应用研究所 | 一种利用语义依存分析的中文问句语义理解方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10453456B2 (en) * | 2017-10-03 | 2019-10-22 | Google Llc | Tailoring an interactive dialog application based on creator provided content |
CN110555205B (zh) * | 2018-05-31 | 2024-04-19 | 北京京东尚科信息技术有限公司 | 否定语义识别方法及装置、电子设备、存储介质 |
CN111414767A (zh) * | 2019-01-04 | 2020-07-14 | 永德利硅橡胶科技(深圳)有限公司 | 游戏设备的语言即时传译方法及相关产品 |
CN112784003A (zh) * | 2019-11-01 | 2021-05-11 | 华为技术有限公司 | 训练语句复述模型的方法、语句复述方法及其装置 |
CN111027331B (zh) * | 2019-12-05 | 2022-04-05 | 百度在线网络技术(北京)有限公司 | 用于评估翻译质量的方法和装置 |
CN112528683B (zh) * | 2020-12-23 | 2021-07-13 | 深圳市爱科云通科技有限公司 | 文本翻译校正方法、装置、系统、服务器及可读存储介质 |
CN112861545A (zh) * | 2021-02-23 | 2021-05-28 | 杭州微洱网络科技有限公司 | 语义分析模型评价方法 |
CN113378970B (zh) * | 2021-06-28 | 2023-08-22 | 山东浪潮成方数字服务有限公司 | 语句相似性检测方法、装置、电子设备及存储介质 |
-
2021
- 2021-09-17 CN CN202111096654.5A patent/CN114997140B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111832318A (zh) * | 2020-07-16 | 2020-10-27 | 平安科技(深圳)有限公司 | 单语句自然语言处理方法、装置、计算机设备及可读存储介质 |
CN112733547A (zh) * | 2020-12-28 | 2021-04-30 | 北京计算机技术及应用研究所 | 一种利用语义依存分析的中文问句语义理解方法 |
Non-Patent Citations (1)
Title |
---|
汉语复句关系词的依存树特征 分 析;杨进才 等;《计算机与数字工程》(第8期);第1569-1573页 * |
Also Published As
Publication number | Publication date |
---|---|
CN114997140A (zh) | 2022-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102504699B1 (ko) | 엔티티 링킹 방법, 장치, 기기, 저장 매체 및 컴퓨터 프로그램 | |
US10699080B2 (en) | Capturing rich response relationships with small-data neural networks | |
US11250842B2 (en) | Multi-dimensional parsing method and system for natural language processing | |
US10936821B2 (en) | Testing and training a question-answering system | |
CN110888966B (zh) | 自然语言问答 | |
US9805718B2 (en) | Clarifying natural language input using targeted questions | |
US20200125482A1 (en) | Code examples sandbox | |
US10140272B2 (en) | Dynamic context aware abbreviation detection and annotation | |
US11010284B1 (en) | System for understanding navigational semantics via hypothesis generation and contextual analysis | |
US20150051900A1 (en) | Unsupervised learning of deep patterns for semantic parsing | |
AU2019200437A1 (en) | A method to build an enterprise-specific knowledge graph | |
US10977155B1 (en) | System for providing autonomous discovery of field or navigation constraints | |
US11709893B2 (en) | Search method, electronic device and storage medium | |
GB2570751A (en) | Predicting style breaches within textual content | |
US20120158742A1 (en) | Managing documents using weighted prevalence data for statements | |
CN111507086A (zh) | 本地化应用程序中翻译文本位置的自动发现 | |
US20220414463A1 (en) | Automated troubleshooter | |
US11532387B2 (en) | Identifying information in plain text narratives EMRs | |
CN111656453A (zh) | 用于信息提取的层次实体识别和语义建模框架 | |
US11222165B1 (en) | Sliding window to detect entities in corpus using natural language processing | |
CN114997140B (zh) | 校验语义的方法和装置 | |
TWM594733U (zh) | 人工智慧輔助擴增實境系統 | |
US11928437B2 (en) | Machine reading between the lines | |
US11531822B1 (en) | Training models and using the trained models to indicate staleness of content items | |
US11605006B2 (en) | Deep-learning model catalog creation |
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 |