CN113836935A - 服务器及文本纠错方法 - Google Patents
服务器及文本纠错方法 Download PDFInfo
- Publication number
- CN113836935A CN113836935A CN202111057489.2A CN202111057489A CN113836935A CN 113836935 A CN113836935 A CN 113836935A CN 202111057489 A CN202111057489 A CN 202111057489A CN 113836935 A CN113836935 A CN 113836935A
- Authority
- CN
- China
- Prior art keywords
- entity
- corrected
- candidate
- text
- probability
- 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.)
- Pending
Links
- 238000012937 correction Methods 0.000 title claims abstract description 87
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000001514 detection method Methods 0.000 claims abstract description 26
- 239000013598 vector Substances 0.000 claims description 31
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 230000000875 corresponding effect Effects 0.000 description 20
- 230000003993 interaction Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 9
- 230000004044 response Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 238000010276 construction Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000014509 gene expression Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 244000144730 Amygdalus persica Species 0.000 description 2
- 235000006040 Prunus persica var persica Nutrition 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 235000019633 pungent taste Nutrition 0.000 description 2
- 241000196324 Embryophyta Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012015 optical character recognition Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
- 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/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Databases & Information Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Machine Translation (AREA)
Abstract
本申请实施例提供了一种服务器及文本纠错方法,服务器被配置为:对接收到的语音命令进行语音识别,得到待纠错文本;对所述待纠错文本进行检错,得到所述待纠错文本对应的待纠错实体;通过多种召回方法对所述待纠错实体进行候选召回,得到多个候选实;根据所述待纠错实体在多个预设层面的特征计算每个候选实体的概率,根据每个候选实体的概率确定所述待纠错实体对应的纠错后实体。本申请实施例通过多种召回方法对所述待纠错实体进行候选召回,实现了多视角召回,得到的候选实体数量众多且非常全面,根据每个候选实体的概率确定纠错后实体,提高了纠错准确率,能够很好地解决常见文本错误类型的文本错误。
Description
技术领域
本申请涉及自然语言处理技术领域,尤其涉及一种服务器及文本纠错方法。
背景技术
文本纠错是自然语言处理的一项重要任务,尤其是在语音交互过程中,用户说出语音指令后,受到用户口音、语速、音量的影响,以及语音识别设备的硬件能力、软件能力等设备能力影响,识别出的输入文本可能与语音指令不一致。若不对识别出的输入文本进行文本纠错,而是直接根据输入文本进行意图识别,则得到的意图识别结果可能不符合用户真正意图,进而也难以输出符合用户真正意图的响应结果。
相关技术中,一种文本纠错的方法为基于词典的纠错方法。该纠错方法是通过将输入文本在预先建立的离线字典中进行查找,得到该输入文本在离线字典中对应的正确文本,若输入文本与正确文本相同,则不需要纠错,若不同,则输出正确文本作为输入文本的纠错后文本。然而,上述纠错方法的准确率依赖于输入文本与离线字典中正确文本之间的对应关系,纠错原理较为单一,导致实际的纠错准确率难以达到预期水平。
发明内容
为解决纠错准确率低的技术问题,本申请提供了一种服务器及文本纠错方法。
第一方面,本申请提供了一种服务器,该服务器被配置为:
对接收到的语音命令进行语音识别,得到待纠错文本;
对所述待纠错文本进行检错,得到所述待纠错文本对应的待纠错实体;
通过多种召回方法对所述待纠错实体进行候选召回,得到多个候选实体;
根据所述待纠错实体在多个预设层面的特征计算每个候选实体的概率,根据每个候选实体的概率确定所述待纠错实体对应的纠错后实体。
在一些实施例中,通过多种召回方式对所述待纠错实体进行候选召回,得到多个候选实体,包括:
通过混淆集召回方法、ES全量实体召回方法和端到端模型召回方法分别对所述待纠错实体进行候选召回,得到多个候选实体。
在一些实施例中根据所述待纠错实体在多个预设层面的特征计算每个候选实体的概率,包括:
构建每个候选实体在多个预设层面的特征,所述预设层面包括拼音层面、字层面、语义层面和热度层面;
将每个候选实体的特征输入预先训练的分类排序模型,得到每个候选实体的概率。
在一些实施例中,构建每个候选实体在拼音层面、字层面、语义层面和热度层面的特征,包括:
计算所述待纠错实体的拼音与候选实体的拼音之间的第一编辑距离,将所述第一编辑距离设置为所述待纠错实体在拼音层面的特征;
计算所述待纠错实体的文本与候选实体的文本之间的第二编辑距离,将所述第二编辑距离设置为所述待纠错实体在字层面的特征;
将所述待纠错实体和候选实体依次输入预训练的语义向量模型,得到第一语义向量和第二语义向量,将所述第一语义向量和第二语义向量设置为所述待纠错实体在语义层面的特征,其中,所述语义向量模型包括基于BERT的预训练模型,所述第一语义向量和第二语义向量均为64维向量;
获取所述候选实体的实时热度值,将所述实时热度值设置为所述待纠错实体在热度层面的特征。
在一些实施例中,将每个候选实体的特征输入预先训练的分类排序模型,得到每个候选实体的概率,包括:
分别将每个候选实体在多个预设层面的特征进行组合;
将每个候选实体组合后的特征输入预先训练的分类排序模型,通过所述分类排序模型对多个预设层面的特征预测出的概率进行加权求和,得到每个候选实体的概率。
第二方面,本申请实施例提供了一种文本纠错方法,该方法包括:
对接收到的语音命令进行语音识别,得到待纠错文本;
对所述待纠错文本进行检错,得到所述待纠错文本对应的待纠错实体;
对所述待纠错实体进行候选召回,得到多个候选实体;
根据所述待纠错实体在多个预设层面的特征对多个候选实体的概率进行排序,将概率最大的候选实体确定为所述待纠错实体的纠错后实体。
本申请提供的服务器及文本纠错方法的有益效果包括:
本申请实施例通过多种召回方法对所述待纠错实体进行候选召回,实现了多视角召回,得到的候选实体数量众多且非常全面,根据每个候选实体的概率确定纠错后实体,提高了纠错准确率,能够很好地解决常见文本错误类型的文本错误。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1中示例性示出了根据一些实施例的显示设备与控制装置之间操作场景的示意图;
图2中示例性示出了根据一些实施例的显示设备200的硬件配置框图;
图3中示例性示出了根据一些实施例的显示设备200中软件配置示意图;
图4中示例性示出了根据一些实施例的一种语音识别网络架构示意图;
图5中示例性示出了根据一些实施例的文本纠错方法的整体流程示意图;
图6中示例性示出了根据一些实施例的文本纠错方法的流程示意图;
图7中示例性示出了根据一些实施例的文本纠错方法的软件架构示意图;
图8中示例性示出了根据一些实施例的检错示意图;
图9中示例性示出了根据一些实施例的召回示意图;
图10中示例性示出了根据一些实施例的排序示意图。
具体实施方式
为使本申请的目的和实施方式更加清楚,下面将结合本申请示例性实施例中的附图,对本申请示例性实施方式进行清楚、完整地描述,显然,描述的示例性实施例仅是本申请一部分实施例,而不是全部的实施例。
需要说明的是,本申请中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本申请的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
本申请中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换。
术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
本申请实施方式提供的显示设备可以具有多种实施形式,例如,可以是电视、智能电视、激光投影设备、显示器(monitor)、电子白板(electronic bulletin board)、电子桌面(electronic table) 等。图1和图2为本申请的显示设备的一种具体实施方式。
图1为根据实施例中显示设备与控制装置之间操作场景的示意图。如图1所示,用户可通过智能设备300或控制装置100操作显示设备200。
在一些实施例中,控制装置100可以是遥控器,遥控器和显示设备的通信包括红外协议通信或蓝牙协议通信,及其他短距离通信方式,通过无线或有线方式来控制显示设备200。用户可以通过遥控器上按键、语音输入、控制面板输入等输入用户指令,来控制显示设备200。
在一些实施例中,也可以使用智能设备300(如移动终端、平板电脑、计算机、笔记本电脑等)以控制显示设备200。例如,使用在智能设备上运行的应用程序控制显示设备200。
在一些实施例中,显示设备可以不使用上述的智能设备或控制设备接收指令,而是通过触摸或者手势等接收用户的控制。
在一些实施例中,显示设备200还可以采用除了控制装置100和智能设备300之外的方式进行控制,例如,可以通过显示设备200设备内部配置的获取语音指令的模块直接接收用户的语音指令控制,也可以通过显示设备200设备外部设置的语音控制设备来接收用户的语音指令控制。
在一些实施例中,显示设备200还与服务器400进行数据通信。可允许显示设备200通过局域网(LAN)、无线局域网(WLAN)和其他网络进行通信连接。服务器400可以向显示设备200提供各种内容和互动。服务器400可以是一个集群,也可以是多个集群,可以包括一类或多类服务器。
如图2,显示设备200包括调谐解调器210、通信器220、检测器230、外部装置接口240、控制器250、显示器260、音频输出接口270、存储器、供电电源、用户接口中的至少一种。
在一些实施例中控制器包括处理器,视频处理器,音频处理器,图形处理器,RAM,ROM,用于输入/输出的第一接口至第n接口。
显示器260包括用于呈现画面的显示屏组件,以及驱动图像显示的驱动组件,用于接收源自控制器输出的图像信号,进行显示视频内容、图像内容以及菜单操控界面的组件以及用户操控UI界面。
显示器260可为液晶显示器、OLED显示器、以及投影显示器,还可以为一种投影装置和投影屏幕。
通信器220是用于根据各种通信协议类型与外部设备或服务器进行通信的组件。例如:通信器可以包括Wifi模块,蓝牙模块,有线以太网模块等其他网络通信协议芯片或近场通信协议芯片,以及红外接收器中的至少一种。显示设备200可以通过通信器220与外部控制设备100或服务器400建立控制信号和数据信号的发送和接收。
用户接口,可用于接收控制装置100(如:红外遥控器等)的控制信号。
检测器230用于采集外部环境或与外部交互的信号。例如,检测器230包括光接收器,用于采集环境光线强度的传感器;或者,检测器230包括图像采集器,如摄像头,可以用于采集外部环境场景、用户的属性或用户交互手势,再或者,检测器230包括声音采集器,如麦克风等,用于接收外部声音。
外部装置接口240可以包括但不限于如下:高清多媒体接口接口(HDMI)、模拟或数据高清分量输入接口(分量)、复合视频输入接口(CVBS)、USB输入接口(USB)、RGB端口等任一个或多个接口。也可以是上述多个接口形成的复合性的输入/输出接口。
调谐解调器210通过有线或无线接收方式接收广播电视信号,以及从多个无线或有线广播电视信号中解调出音视频信号,如以及EPG数据信号。
在一些实施例中,控制器250和调谐解调器210可以位于不同的分体设备中,即调谐解调器210也可在控制器250所在的主体设备的外置设备中,如外置机顶盒等。
控制器250,通过存储在存储器上中各种软件控制程序,来控制显示设备的工作和响应用户的操作。控制器250控制显示设备200的整体操作。例如:响应于接收到用于选择在显示器260上显示UI对象的用户命令,控制器250便可以执行与由用户命令选择的对象有关的操作。
在一些实施例中控制器包括中央处理器(Central Processing Unit,CPU),视频处理器,音频处理器,图形处理器(Graphics Processing Unit,GPU),RAM Random AccessMemory, RAM),ROM(Read-Only Memory,ROM),用于输入/输出的第一接口至第n接口,通信总线(Bus)等中的至少一种。
用户可在显示器260上显示的图形用户界面(GUI)输入用户命令,则用户输入接口通过图形用户界面(GUI)接收用户输入命令。或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户输入接口通过传感器识别出声音或手势,来接收用户输入命令。
“用户界面”,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面常用的表现形式是图形用户界面(Graphic User Interface,GUI),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的一个图标、窗口、控件等界面元素,其中控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
参见图3,在一些实施例中,将系统分为四层,从上至下分别为应用程序(Applications) 层(简称“应用层”),应用程序框架(Application Framework)层(简称“框架层”),安卓运行时(Android runtime)和系统库层(简称“系统运行库层”),以及内核层。
为清楚说明本申请的实施例,下面结合图4对本申请实施例提供的一种语音识别网络架构进行描述。
参见图4,图4为本申请实施例提供的一种语音识别网络架构示意图。图4中,智能设备用于接收输入的信息以及输出对该信息的处理结果。语音识别服务设备为部署有语音识别服务的电子设备,语义服务设备为部署有语义服务的电子设备,业务服务设备为部署有业务服务的电子设备。这里的电子设备可包括服务器、计算机等,这里的语音识别服务、语义服务(也可称为语义引擎)和业务服务为可部署在电子设备上的web服务,其中,语音识别服务用于将音频识别为文本,语义服务用于对文本进行语义解析,业务服务用于提供具体的服务如墨迹天气的天气查询服务、QQ音乐的音乐查询服务等。在一个实施例中,图4所示架构中可存在部署有不同业务服务的多个实体服务设备,也可以一个或多个实体服务设备中集合一项或多项功能服务。
在一些实施例中,下面对基于图4所示架构处理输入智能设备的信息的过程进行举例描述,以输入智能设备的信息为通过语音输入的查询语句为例,上述过程可包括如下三个过程:
[语音识别]
智能设备可在接收到通过语音输入的查询语句后,将该查询语句的音频上传至语音识别服务设备,以由语音识别服务设备通过语音识别服务将该音频识别为文本后返回至智能设备。在一个实施例中,将查询语句的音频上传至语音识别服务设备前,智能设备可对查询语句的音频进行去噪处理,这里的去噪处理可包括去除回声和环境噪声等步骤。
[语义理解]
智能设备将语音识别服务识别出的查询语句的文本上传至语义服务设备,以由语义服务设备通过语义服务对该文本进行语义解析,得到文本的业务领域、意图等。
[语义响应]
语义服务设备根据对查询语句的文本的语义解析结果,向相应的业务服务设备下发╳查询指令以获取业务服务给出的查询结果。智能设备可从语义服务设备获取该查询结果并输出。作为一个实施例,语义服务设备还可将对查询语句的语义解析结果发送至智能设备,以由智能设备输出该语义解析结果中的反馈语句。
需要说明的是,图4所示架构只是一种示例,并非对本申请保护范围的限定。本申请实施例中,也可采用其他架构来实现类似功能,例如:三个过程全部或部分可以由智能终端来完成,在此不做赘述。
在一些实施例中的硬件或软件架构可以基于上述实施例中的介绍,在一些实施例中可以是基于相近的其他硬件或软件架构,可以实现本申请的技术方案即可。
在一些实施例中,图4所示的智能设备可为显示设备,如智能电视,语音识别服务设备的功能可由显示设备上设置的声音采集器和控制器配合实现,语义服务设备和业务服务设备的功能可由显示设备的控制器实现,或者由显示设备的服务器来实现。
在一些实施例中,图4所示的语音识别服务设备、语义服务设备和业务服务设备可由显示设备的一个服务器或多个服务器来实现。
在一些实施例中,用户通过语音输入显示设备的查询语句或其他交互语句可称为语音命令。
在一些实施例中,显示设备从语义服务设备获取到的是业务服务给出的搜索结果,显示设备可对该搜索结果进行分析,生成语音命令的响应数据,然后根据响应数据控制显示设备执行相应的动作。
在一些实施例中,显示设备从语义服务设备获取到的是语音命令的语义解析结果,显示设备可对该语义解析结果进行分析,生成响应数据,然后根据响应数据控制显示设备执行相应的动作。
在一些实施例中,显示设备的遥控器上可设置有语音控制按键,用户按住遥控器上的语音控制按键后,显示设备的控制器可控制显示设备的显示器显示语音交互界面,并控制声音采集器,如麦克风,采集显示设备周围的声音。此时,用户可向显示设备输入语音命令。
在一些实施例中,显示设备可支持语音唤醒功能,显示设备的声音采集器可处于持续采集声音的状态。用户说出唤醒词后,显示设备对用户输入的语音命令进行语音识别,识别出语音命令为唤醒词后,可控制显示设备的显示器显示语音交互界面,此时,用户可继续向显示设备输入语音命令。
在一些实施例中,在用户输入一个语音命令后,在显示设备获取语音命令的响应数据或显示设备根据响应数据进行响应的过程中,显示设备的声音采集器可保持声音采集的状态,用户可随时按住遥控器上的语音控制按键重新输入语音命令,或者说出唤醒词,此时,显示设备可结束上一次的语音交互进程,根据用户新输入的语音命令,开启新的语音交互进程,从而保障语音交互的实时性。
用户通过与显示设备进行语音交互,可以实现在显示设备上进行媒资搜索以及对显示设备进行设备控制,其中,设备控制可包括调节音量、调节亮度等等。
在一些实施例中,用户可通过向显示设备发出语音命令的方式来唤醒语音助手应用,该语音命令可为一些预设的唤醒词,在语音助手应用唤醒后,用户可与语音助手应用进行交互,对显示设备进行语音控制。智能语音助手在接收到用户的语音命令后,需要对语音命令进行语音识别,得到识别文本,由于很多字符容易混淆,导致识别文本存在一定误差几率。
为解决上述技术问题,本申请实施例提供了一种服务器及文本纠错方法,其中,服务器用于执行该文本纠错方法。
需要说明的是,本申请提供的文本纠错方法,也可由显示设备执行,或者由显示设备执行一部分,再由服务器执行剩余的部分。本申请提供的文本纠错方法,也可进行适应性调整,以实现更多场景下的文本纠错,例如,也可应用于用户输入文本和光学字符识别系统得到的文本进行纠错。
在一些实施例中,本申请实施例提供的文本纠错方法可应用于自然语言处理应用系统之前,用于对输入文本进行文本纠错,提升后续系统性能,其中,自然语言处理应用系统可包括语义理解系统、知识对话系统、机器翻译系统等等。
参见图5,本申请实施例提供的文本纠错方法的整体流程可分为:输入待纠错文本、检错、召回、排序和输出待纠错文本。输入的待纠错文本经检错后,若没有检测出错误,则直接将输入的待纠错文本作为纠错后文本进行输出,若检测出错误,则经过召回和排序处理后得到纠错后文本。
图6为对图5的进一步说明,参见图6,文本纠错方法可包括如下步骤:
步骤S110:对接收到的语音命令进行语音识别,得到待纠错文本。
在一些实施例中,服务器接收到的语音命令来自于显示设备或语音交互设备。对语音命令进行语音识别得到的文本可称为待纠错文本。
在一些实施例中,在一些文本纠错的场景中,执行文本纠错的设备的输入为待纠错文本,而非语音命令,此时,执行文本纠错的设备可不执行该步骤S110,直接从步骤S120开始执行文本纠错。
在一些实施例中,该待纠错文本中可能存在文本错误。常见的文本错误的类型可分为以下几种类型:(1)谐音字词错误:我们的年呆-我们的年代等;(2)混淆音字词错误:播放回家-播放为家等;(3)缺字少字错误:播放三十里桃花-播放三十公里桃花坞等;(4)多字错误:我要看我爱上士兵-我要看爱上士兵等;(5)字词顺序颠倒错误:张某某-某某张等。
步骤S120:对所述待纠错文本进行检错,得到所述待纠错文本对应的待纠错实体。
在一些实施例中,待纠错文本中的实体是指表示人或物的专有名词,例如,影视名实体、音乐名实体、演员名实体、小说名实体等等。对待纠错文本进行检错后,可得到待纠错文本对应的待纠错实体。
步骤S130:通过多种召回方法对所述待纠错实体进行候选召回,得到多个候选实体。
在一些实施例中,可采用多种召回方式进行候选召回,如混淆集召回、ES全量实体召回、端到端模型召回等,得到待纠错实体对应的多个候选实体。
步骤S140:根据所述待纠错实体在多个预设层面的特征计算每个候选实体的概率,根据每个候选实体的概率确定所述待纠错实体对应的纠错后实体。
在一些实施例中,预设层面可包括拼音层面、字层面、语义层面和热度层面等层面。对于一个候选实体,可构建待纠错实体在上述多个层面的特征,然后将这些特征输入基于 XGBoost(extreme Gradient Boosting,极端梯度提升)算法的分类排序模型,计算出该候选实体是纠错后实体的概率。
在一些实施例中,在计算出多个候选实体的概率后,可按照概率将多个实体进行排序,将概率最大的候选实体确定为纠错后实体,实现文本纠错。
为对本申请的文本纠错方法做进一步说明,图7-图10依次示出了根据一些实施例的文本纠错方法的软件架构、检错、召回、排序的示意图。
参见图7,示例性的,待纠错文本为“XXXXXA”。待纠错文本依次经过基于纠错规则与深度学习的检错模型进行检错、多模型单实体多路召回、多层面特征的排序学习后,最终可得到纠错后文本“XXXXXB”。
在一些实施例中,基于纠错规则与深度学习的检错模型可设置纠错规则、语言模型以及端到端检错的程序代码。基于纠错规则与深度学习的检错模型的检错方法可参见图8,为根据一些实施例的检错方法的流程示意图。
如图8所示,该检错方法可包括如下步骤:
步骤S201:通过纠错规则判定是否需要纠错。
纠错规则可为一些人工预设的判断是否需要对待纠错文本进行纠错的规则,若不需要则不进行纠错,能够防止文本误纠而造成系统性能下降的问题,若需要纠错,则可设置检错标志位ERROR_STATE为True(真),并设置待纠错实体为待纠错文本。
在一些实施例中,预设的纠错规则可包括:若待纠错文本中含有数字,如中文零到九,阿拉伯数字0-9,则不进行纠错,避免纠错后不符合用户意图。
在一些实施例中,预设的纠错规则可包括:若待纠错文本中含有指令,如控制指令:快进、后退、暂停、播放等词也不进行纠错,避免纠错后不符合用户意图。
上述两个纠错规则仅为示例,实际实施中,纠错规则可根据实际业务情况确定。
以待纠错文本为“XXXXXA”为例,将该待纠错文本输入基于纠错规则与深度学习的检错模型后,该模型首先通过纠错规则判定该待纠错文本是否需要纠错。若需要纠错,则继续执行步骤S202,若不需要,则结束检错,将待纠错文本输出至召回模型进行候选召回。根据上述纠错规则,“XXXXXA”需要纠错,因此可设置“XXXXXA”为待纠错实体,设置检错标志位ERROR_STATE为True,将待纠错实体输入语言模型进行处理。
步骤S202:若需要,通过语言模型判定是否为实体。
在一些实施例中,语言模型用于对待纠错文本进行实体判定。其中,实体的含义可指专有名词,如人物、动物、植物、影视剧名称等等,因此,若判定是实体,则可根据预设的实体数据库进行纠错,其中,实体数据库包括多种实体的名称。若判定不是实体,则需要结合人工预设的实体判断规则以及端到端模型做进一步实体判定。
在一些实施例中,语言模型可为BERT(Bidirectional Encoder Representationsfrom Transformers,中文含义)模型。BERT模型可通过困惑度来衡量一个句子出现的概率,困惑度越小,则句子出现的概率越大。可预先设置BERT模型的困惑度阈值,将待纠错文本输入该语言模型,若输出的该纠错文本的困惑度小于该困惑度阈值,则判定该待纠错文本为一个句子,若大于该困惑度阈值,则判定该待纠错文本不是一个句子,为词语,可能是一个纯实体。由于BERT模型只能对词语进行判断,因此在判断待纠错文本为一个句子时,将待纠错文本输入端到端模型进行实体识别,在判断待纠错文本为词语时,则可转向步骤S204,将待纠错文本确定为实体。
在一些实施例中,通过语言模型判定待纠错文本为句子后,可通过一些人工设定的规则来进行是否为纯实体的判断。示例性的,该规则包括:若待纠错文本中包括“我想看”、“我想听”、“打开”等词,则认为该待纠错文本为非纯实体,此时,可将待纠错文本再传递至端到端模型进行实体识别;若待纠错文本中不包含我想看”、“我想听”、“打开”等词,则认为该待纠错文本为纯实体,则可转向步骤S204,将待纠错文本确定为实体。
步骤S203:若判定为非实体,通过端到端模型识别实体。
在一些实施例中,对待纠错文本进行实体识别的端到端模型为Transformer+CRF模型。该模型预先训练有数据集,数据集中包含大量错误实体,使模型再次遇到该错误实体时,可准确识别出该错误实体。若从待纠错文本中识别出错误实体,则该模型的检错部分返回识别得到的实体,并设置系统状态ERROR_STATE为需要进行纠错。端到端模型将系统状态ERROR_STATE的待纠错文本进行纠错。相比于常见的采用Bi-LSTM+CRF对待纠错文本进行实体识别,不同的是,本实施例采用Transformer模型的encoder部分对待纠错文本输入序列X=x_0x_1…x_T,T为输入文本长度进行特征提取,得到隐藏层特征h_i,h_i表示第i字的隐藏特征,进而通过CRF(英文全拼,中文含义)模型识别出影视名实体、音乐名实体、演员名实体、小说名实体等,其中,encoder的层数设置为6。
步骤S204:获得待纠错实体。
在一些实施例中,该步骤获得的实体可以为步骤S201中判定的不需要纠错的待纠错文本,可以为步骤S202判定的实体,还可以为步骤S203识别的实体。
在一些实施例中,可将该步骤获得的实体称为待纠错实体,以区别于在候选召回步骤获得的实体。
在获得待纠错文本对应的待纠错实体后,可对待纠错实体进行候选召回。
参见图9,召回方法可包括混淆集召回、ES全量实体召回、端到端模型召回等多种方法,经过多种召回方法对待纠错实体进行召回后,得到的候选实体可包括候选实体1、候选实体2、候选实体3、候选实体4……。
需要说明的是,图9中,各召回方法之间互不影响,能够并行执行,以提高召回效率。实际实施中,召回方法对应的召回模型可通过配置文件进行方便的增删,可用于后续召回部分模型优化。
在一些实施例中,混淆集是预先通过对用户日志大数据分析得到的,形式为source–> target,source(源)表示错误实体,target(目标)表示该错误实体对应的目标实体。例如,混淆集中的数据包括:AAAAB–>XXXXXB,表示错误的实体为AAAAB,AAAAB对应的目标实体为XXXXXB。
通过相似度计算,可计算出检错部分得到的实体与混淆集中多个错误实体的相似度,得到相似度超过相似度阈值的错误实体,然后召回该错误实体对应的目标实体。
示例性的,对于待纠错实体“XXXXXA”,计算出该待纠错实体与混淆集中的错误实体AAAAB、AAAAC的相似度超过阈值,而AAAAB–>XXXXXB,AAAAC–>XXXXXC,因此,通过混淆集召回的候选实体为:“XXXXXB”和“XXXXXC”。
在一些实施例中,ElasticSearch(全文搜索引擎)存储纠错所支持领域的全部实体,如影视名实体、音乐名实体、演员名实体、小说名实体等。在进行ES全量实体召回时,将待纠错实体输入到ElasticSearch后,ElasticSearch可计算待纠错实体与全部实体的相似度,得到相似度符合预设条件的实体,将得到的相似度符合预设条件的实体作为候选召回实体输出。
示例性的,对于待纠错实体“XXXXXA”,通过ES全量实体召回得到的候选实体可为:“XXXXXD”、“XXXXXE”。
在一些实施例中,端到端模型召回是基于ALBERT(阿尔伯特)的端到端纠错模型,该模型存在输入与输出字数相同的限制,可只在用户查询的待纠错文本为非实体时进行召回,若判定待纠错文本为纯实体,可不输出召回结果,若有召回结果,可只输出一个召回实体,其中,当前实体的位置也由Transformer+CRF确定得到。
还是以待纠错实体为“XXXXXA”为例,经过端到端模型召回后,得到的候选实体可为: XXXXXF”。
在一些实施例中,端到端模型是通过计算相似度得到候选实体的。与其他采用编辑距离计算相似度不同的是,端到端模型召回使用基于夹角的余弦进行相似度度量。实际实施中,端到端模型可使用预训练模型BERT对检错部分确定的实体和各个模块所召回的实体进行编码,得到待纠错实体和召回实体的向量表达,分别计算余弦相似度,计算公式如下:
上式中,向量a表示待纠错实体经过预训练模型BERT的向量表达,向量b表示由召回子模型确定召回实体经预训练模型BERT的向量表达。
在一些实施例中,当一个实体满足设定余弦相似度阈值后,确定子模型召回的实体可以作为召回部分的输出。通过预训练模型BERT得到实体的向量表达,可以更好的理解待纠错实体和召回实体之间的语义表达,提升纠错性能。
在得到多个候选实体后,可对多个候选实体进行排序,排序方法可参见图10。
如图10所示,在一些实施例中,对多个候选实体可分别进行实体特征的构建。实体特征构建是对候选实体和待纠错实体进行特征构建,所构建的特征至少包括拼音层面特征、字层面特征、语义层面特征、热度层面特征等。
分类排序模型的计算方式如下是以实体特征构建模块所构建的特征作为输入,以机器学习方法XGBoost(extreme Gradient Boosting,极端梯度提升)作为分类排序模型,模型的输出为各个候选实体的概率,并设定实体排序输出概率阈值,若小于该阈值,则认为检错部分识别的实体无需进行纠错,0若大于该阈值,则从中选取概率最大的实体作为纠错后实体。
示例性的,拼音层面特征、字层面特征、语义层面特征、热度层面特征的构建方式如下:
拼音层面特征:将待纠错实体和召回实体全部转化成拼音形式,然后计算出两组拼音之间的编辑距离,将该编辑距离作为召回实体的拼音层面特征。若设定最多召回10个实体,则拼音层面共有10维特征。
字层面特征:计算待纠错实体和召回实体之间的编辑距离,将该编辑距离作为字层面特征。若设定最多召回10个实体,则拼音层面共有10维特征。该编辑距离的计算公式如下:
上式中,lev表示标记距离,a表示待纠错实体,b表示召回实体,i表示计算编辑距离时 a的长度,j表示计算编辑距离时b的长度,otherwise表示其他。
语义层面特征:将待纠错实体和召回实体通过基于BERT的预训练模型分别计算出的向量,其中,基于BERT的预训练模型可称为语义向量模型,待纠错实体对应的语义向量可称为第一语义向量,召回实体对应的语义向量可称为第二语义向量。将这两组向量作为该召回实体的语义层面特征。其中,该向量可为64维向量,单个实体的语义层面为64维向量,若设定召回10个实体,则共有704维特征。
热度层面特征:属于业务层面特征。预先配置热度数据,例如,在运动会期间,设置体育运动员、体育赛事等实体为热度数据,在待纠错实体为热度数据时,则优先召回该热度数据,然后设置热度编码,设置方法:热度编码表示:。若设定最多召回10个实体,则热度层面特征共有10维。
在构建好实体的特征后,可通过分类排序模型进行排序。
XGBoost是一套提升树可扩展的机器学习系统,其基于集成学习思想,将多个弱学习器进行加权求和,得到最终模型结构,此方法相比于单一模型(即弱学习器)而言,具有更好的预测性能。在排序步骤,本发明将待纠错实体和召回实体在字层面特征、拼音层面特征、语义层面特征和热度值进行特征组合,进而作为XGBoost的输入,进行多分类任务,即根据上述特征,将待纠错实体分到正确实体类别。
由上述实施例可见,本申请实施例通过多种召回方法对所述待纠错实体进行候选召回,实现了多视角召回,得到的候选实体数量众多且非常全面,根据每个候选实体的概率确定纠错后实体,提高了纠错准确率,能够很好地解决常见文本错误类型的文本错误。
由于以上实施方式均是在其他方式之上引用结合进行说明,不同实施例之间均具有相同的部分,本说明书中各个实施例之间相同、相似的部分互相参见即可。在此不再详细阐述。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
为了方便解释,已经结合具体的实施方式进行了上述说明。但是,上述示例性的讨论不是意图穷尽或者将实施方式限定到上述公开的具体形式。根据上述的教导,可以得到多种修改和变形。上述实施方式的选择和描述是为了更好的解释原理以及实际的应用,从而使得本领域技术人员更好的使用所述实施方式以及适于具体使用考虑的各种不同的变形的实施方式。
Claims (10)
1.一种服务器,其特征在于,所述服务器被配置为:
对接收到的语音命令进行语音识别,得到待纠错文本;
对所述待纠错文本进行检错,得到所述待纠错文本对应的待纠错实体;
通过多种召回方法对所述待纠错实体进行候选召回,得到多个候选实体;
根据所述待纠错实体在多个预设层面的特征计算每个候选实体的概率,根据每个候选实体的概率确定所述待纠错实体对应的纠错后实体。
2.根据权利要求1所述的服务器,其特征在于,通过多种召回方式对所述待纠错实体进行候选召回,得到多个候选实体,包括:
通过混淆集召回方法、ES全量实体召回方法和端到端模型召回方法分别对所述待纠错实体进行候选召回,得到多个候选实体。
3.根据权利要求1所述的服务器,其特征在于,根据所述待纠错实体在多个预设层面的特征计算每个候选实体的概率,包括:
构建每个候选实体在多个预设层面的特征,所述预设层面包括拼音层面、字层面、语义层面和热度层面;
将每个候选实体的特征输入预先训练的分类排序模型,得到每个候选实体的概率。
4.根据权利要求3所述的服务器,其特征在于,构建每个候选实体在拼音层面、字层面、语义层面和热度层面的特征,包括:
计算所述待纠错实体的拼音与候选实体的拼音之间的第一编辑距离,将所述第一编辑距离设置为所述待纠错实体在拼音层面的特征;
计算所述待纠错实体的文本与候选实体的文本之间的第二编辑距离,将所述第二编辑距离设置为所述待纠错实体在字层面的特征;
将所述待纠错实体和候选实体依次输入预训练的语义向量模型,得到第一语义向量和第二语义向量,将所述第一语义向量和第二语义向量设置为所述待纠错实体在语义层面的特征;
获取所述候选实体的实时热度值,将所述实时热度值设置为所述待纠错实体在热度层面的特征。
5.根据权利要求3所述的服务器,其特征在于,将每个候选实体的特征输入预先训练的分类排序模型,得到每个候选实体的概率,包括:
分别将每个候选实体在多个预设层面的特征进行组合;
将每个候选实体组合后的特征输入预先训练的分类排序模型,通过所述分类排序模型对多个预设层面的特征预测出的概率进行加权求和,得到每个候选实体的概率。
6.根据权利要求3所述的服务器,其特征在于,所述分类排序模型为XGBoost模型。
7.根据权利要求1所述的服务器,其特征在于,根据每个候选实体的概率确定所述待纠错实体对应的纠错后实体,包括:
根据每个候选实体的概率将候选实体进行排序,将概率最大的候选实体确定为所述待纠错实体的纠错后实体。
8.根据权利要求1所述的服务器,其特征在于,根据每个候选实体的概率确定所述待纠错实体对应的纠错后实体,包括:
判断每个候选实体的概率是否超过预设的概率阈值;
若每个候选实体的概率均未超过所述概率阈值,则将所述待纠错实体确定为纠错后实体;
若存在候选实体的概率超过所述概率阈值,则将概率超过所述概率阈值的候选实体中选择概率最大的候选实体确定为纠错后实体。
9.根据权利要求1所述的服务器,其特征在于,对所述待纠错文本进行检错,得到所述待纠错文本对应的待纠错实体,包括:
通过BERT模型识别所述待纠错文本对应的待纠错实体;
若所述BERT模型识别不到所述待纠错实体,通过端到端模型识别所述待纠错文本对应的待纠错实体。
10.一种文本纠错方法,其特征在于,包括:
对接收到的语音命令进行语音识别,得到待纠错文本;
对所述待纠错文本进行检错,得到所述待纠错文本对应的待纠错实体;
对所述待纠错实体进行候选召回,得到多个候选实体;
根据所述待纠错实体在多个预设层面的特征对多个候选实体的概率进行排序,将概率最大的候选实体确定为所述待纠错实体的纠错后实体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111057489.2A CN113836935A (zh) | 2021-09-09 | 2021-09-09 | 服务器及文本纠错方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111057489.2A CN113836935A (zh) | 2021-09-09 | 2021-09-09 | 服务器及文本纠错方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113836935A true CN113836935A (zh) | 2021-12-24 |
Family
ID=78958893
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111057489.2A Pending CN113836935A (zh) | 2021-09-09 | 2021-09-09 | 服务器及文本纠错方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113836935A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116341524A (zh) * | 2023-03-23 | 2023-06-27 | 四川省特种设备检验研究院 | 一种应用于特种设备检测的文本纠错方法 |
WO2023173533A1 (zh) * | 2022-03-17 | 2023-09-21 | 平安科技(深圳)有限公司 | 文本纠错方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8402032B1 (en) * | 2010-03-25 | 2013-03-19 | Google Inc. | Generating context-based spell corrections of entity names |
US20190180741A1 (en) * | 2017-12-07 | 2019-06-13 | Hyundai Motor Company | Apparatus for correcting utterance error of user and method thereof |
CN110782892A (zh) * | 2019-10-25 | 2020-02-11 | 四川长虹电器股份有限公司 | 语音文本纠错方法 |
CN112989806A (zh) * | 2021-04-07 | 2021-06-18 | 广州伟宏智能科技有限公司 | 一种智能化文本纠错模型训练方法 |
CN113343671A (zh) * | 2021-06-07 | 2021-09-03 | 佳都科技集团股份有限公司 | 一种语音识别后的语句纠错方法、装置、设备及存储介质 |
-
2021
- 2021-09-09 CN CN202111057489.2A patent/CN113836935A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8402032B1 (en) * | 2010-03-25 | 2013-03-19 | Google Inc. | Generating context-based spell corrections of entity names |
US20190180741A1 (en) * | 2017-12-07 | 2019-06-13 | Hyundai Motor Company | Apparatus for correcting utterance error of user and method thereof |
CN110782892A (zh) * | 2019-10-25 | 2020-02-11 | 四川长虹电器股份有限公司 | 语音文本纠错方法 |
CN112989806A (zh) * | 2021-04-07 | 2021-06-18 | 广州伟宏智能科技有限公司 | 一种智能化文本纠错模型训练方法 |
CN113343671A (zh) * | 2021-06-07 | 2021-09-03 | 佳都科技集团股份有限公司 | 一种语音识别后的语句纠错方法、装置、设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023173533A1 (zh) * | 2022-03-17 | 2023-09-21 | 平安科技(深圳)有限公司 | 文本纠错方法、装置、设备及存储介质 |
CN116341524A (zh) * | 2023-03-23 | 2023-06-27 | 四川省特种设备检验研究院 | 一种应用于特种设备检测的文本纠错方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111968649B (zh) | 一种字幕纠正方法、字幕显示方法、装置、设备及介质 | |
WO2018157703A1 (zh) | 自然语言的语义提取方法及装置和计算机存储介质 | |
US10650811B2 (en) | Correction of speech recognition on repetitive queries | |
WO2018045646A1 (zh) | 基于人工智能的人机交互方法和装置 | |
CN113836935A (zh) | 服务器及文本纠错方法 | |
CN107155121B (zh) | 语音控制文本的显示方法及装置 | |
US11393455B2 (en) | Methods for natural language model training in natural language understanding (NLU) systems | |
CN111797216B (zh) | 检索项改写方法、装置、设备以及存储介质 | |
US11626103B2 (en) | Methods for natural language model training in natural language understanding (NLU) systems | |
CN113850162A (zh) | 一种视频审核方法、装置及电子设备 | |
CN114118064A (zh) | 显示设备、文本纠错方法及服务器 | |
US11574127B2 (en) | Methods for natural language model training in natural language understanding (NLU) systems | |
US11392771B2 (en) | Methods for natural language model training in natural language understanding (NLU) systems | |
WO2022100283A1 (zh) | 显示设备、控件触发方法及滚动文本检测方法 | |
CN115273840A (zh) | 语音交互设备和语音交互方法 | |
CN113642536A (zh) | 数据处理方法、计算机设备以及可读存储介质 | |
US20210158801A1 (en) | Electronic device and method for controlling the same, and storage medium | |
US20220375473A1 (en) | Electronic device and control method therefor | |
CN117812323A (zh) | 显示设备、语音识别方法、装置及存储介质 | |
CN113850235B (zh) | 一种文本处理方法、装置、设备及介质 | |
CN117807110A (zh) | 电子设备及电子设备的查询改写方法 | |
CN117809687A (zh) | 电子设备和合法性检测方法 | |
CN117809633A (zh) | 显示设备和意图识别方法 | |
KR20210019930A (ko) | 디바이스의 음성 인식을 지원하는 서버 및 그의 동작 방법 | |
CN118170940A (zh) | 电子设备及电子设备的语音处理方法 |
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 |