具体实施方式
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
在上下文中所称“计算机设备”,也称为“电脑”,是指可以通过运行预定程序或指令来执行数值计算和/或逻辑计算等预定处理过程的智能电子设备,其可以包括处理器与存储器,由处理器执行在存储器中预存的存续指令来执行预定处理过程,或是由ASIC、FPGA、DSP等硬件执行预定处理过程,或是由上述二者组合来实现。计算机设备包括但不限于服务器、个人电脑、笔记本电脑、平板电脑、智能手机等。
所述计算机设备包括用户设备与网络设备。其中,所述用户设备包括但不限于电脑、智能手机、PDA等;所述网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Computing)的由大量计算机或网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。其中,所述计算机设备可单独运行来实现本发明,也可接入网络并通过与网络中的其他计算机设备的交互操作来实现本发明。其中,所述计算机设备所处的网络包括但不限于互联网、广域网、城域网、局域网、VPN网络等。
需要说明的是,所述用户设备、网络设备和网络等仅为举例,其他现有的或今后可能出现的计算机设备或网络如可适用于本发明,也应包含在本发明保护范围以内,并以引用方式包含于此。
后面所讨论的方法(其中一些通过流程图示出)可以通过硬件、软件、固件、中间件、微代码、硬件描述语言或者其任意组合来实施。当用软件、固件、中间件或微代码来实施时,用以实施必要任务的程序代码或代码段可以被存储在机器或计算机可读介质(比如存储介质)中。(一个或多个)处理器可以实施必要的任务。
这里所公开的具体结构和功能细节仅仅是代表性的,并且是用于描述本发明的示例性实施例的目的。但是本发明可以通过许多替换形式来具体实现,并且不应当被解释成仅仅受限于这里所阐述的实施例。
应当理解的是,虽然在这里可能使用了术语“第一”、“第二”等等来描述各个单元,但是这些单元不应当受这些术语限制。使用这些术语仅仅是为了将一个单元与另一个单元进行区分。举例来说,在不背离示例性实施例的范围的情况下,第一单元可以被称为第二单元,并且类似地第二单元可以被称为第一单元。这里所使用的术语“和/或”包括其中一个或更多所列出的相关联项目的任意和所有组合。
应当理解的是,当一个单元被称为“连接”或“耦合”到另一单元时,其可以直接连接或耦合到所述另一单元,或者可以存在中间单元。与此相对,当一个单元被称为“直接连接”或“直接耦合”到另一单元时,则不存在中间单元。应当按照类似的方式来解释被用于描述单元之间的关系的其他词语(例如“处于...之间”相比于“直接处于...之间”,“与...邻近”相比于“与...直接邻近”等等)。
这里所使用的术语仅仅是为了描述具体实施例而不意图限制示例性实施例。除非上下文明确地另有所指,否则这里所使用的单数形式“一个”、“一项”还意图包括复数。还应当理解的是,这里所使用的术语“包括”和/或“包含”规定所陈述的特征、整数、步骤、操作、单元和/或组件的存在,而不排除存在或添加一个或更多其他特征、整数、步骤、操作、单元、组件和/或其组合。
还应当提到的是,在一些替换实现方式中,所提到的功能/动作可以按照不同于附图中标示的顺序发生。举例来说,取决于所涉及的功能/动作,相继示出的两幅图实际上可以基本上同时执行或者有时可以按照相反的顺序来执行。
下面结合附图对本发明作进一步详细描述。
图1为根据本发明一个实施例的指示描述信息的歧义的方法1的流程图。
描述信息泛指描述对象的文本,例如用于描述一个计算机任务、操作、函数,或业务需求的文本等等,这些描述信息可以呈现在诸如网页等交互界面,可以呈现在文档类应用中,可以呈现在诸如app(应用程序)的终端应用等等。
本实施例中的歧义主要指描述信息中的句子不符合语法、同一词具有多种词性和/或同一词作为不同的语法成分出现等等。
所谓句子不符合语法,主要指句子缺乏基础语法成分,更具体而言,主要指句子缺乏诸如主语、谓语、宾语中的至少之一。
所谓同一词具有多种词性,主要指同一词在一段描述信息里具有两种以上的词性,例如对于一段描述信息“登录用户当前为未激活状态。如果用户登录。提示用户账户未激活”,在该段描述信息中,第一次出现的“登录”的词性为形容词,而第二次出现的“登录”的词性为动词,因而对于“登录”一词而言,其在该段描述信息具有两种词性,也即该词“登录”具有多种词性。
所谓同一词作为不同的语法成分出现,主要指同一词在一段描述信息里作为两种以上的语法成分出现。例如对于一段描述信息“用户登录成功。如果当前用户是管理员。可以锁定任何用户”,则在这一段描述信息中,第一次出现的“用户”的语法成分为主语,第二次出现的“用户”的语法成分为宾语,也即对于“用户”一词,其在这段描述信息中作为不同的语法成分出现。
对于上文所述的“一段描述信息”,可以指语法意义上的自然段、自然句等。更特别地,上文所述的“一段描述信息”是指由至少一个以句号结尾的自然句组成的信息,可选地,所述自然句组成的信息可以包含双引号、单引号等标点符号。例如,由三个句号结尾的自然句组成的自然段“管理员设置用户为未激活状态。用户登录。提示用户“账号未激活”。”为一段描述信息的示例。
在一个实施例,所述指示描述信息的歧义的方法由诸如安装在计算机设备的应用程序执行,在另一个实施例中,所述指示描述信息的歧义的方法通过嵌入在计算机设备的应用程序中的子程序执行,例如嵌入在文档应用程序中的子程序。在还一个实施例中,所述指示描述信息的歧义的方法由与计算机设备通信的服务器执行等。
在步骤S101,接收输入的描述信息。
所述输入可以为用户输入,也可以为计算机设备的输入。
步骤S101可以通过键盘、鼠标、遥控器、触摸板或手写设备等,基于浏览器软件、应用程序或客户端软件等与用户设备进行交互来实现,例如,通过一次或多次调用该用户设备提供的应用程序接口(API)或其他约定的通信方式,获取该用户输入的描述信息;或者,通过ASP、JSP或PHP等页面技术,获取用户在输入界面输入的查询序列;又或者,通过与搜索引擎等第三方设备的交互,获取该用户输入的描述信息等等。
可选地,为了提升后续操作步骤的效率和准确率,对所述输入信息进行约束,例如,约束所输入的描述信息中的中文标点符号只能有句号、引号等,如此,在后续操作步骤中对描述信息进行句子划分时,可以仅依据句号进行划分,如此提升了句子划分的效率和准确率。因而步骤S101还可以包括:
-基于预定的约束条件,过滤掉违反约束条件的所述描述信息。
此处的约束条件可以包括诸如描述信息中不能出现空格、中文标点符号只能包括句号和引号等等。由此,过滤掉的违反约束条件的所述描述信息不再进入后续步骤。
例如,对于一段描述信息“用户登录成功,如果当前用户是管理员,可以锁定任何用户”,由于该段描述信息中出现了约束条件规定的中文标点符号以外的符号——逗号“,”,则可以过滤掉该段描述信息,使其不再进入步骤S102。
在此,所述过滤掉的描述信息可以返回给用户,并可以提示用户进行修改,例如对于上述描述信息“用户登录成功,如果当前用户是管理员,可以锁定任何用户。”,可以将该描述信息返回给用户,并提示用户将其中的标点符号——逗号“,”全部修改成句号。如果接收到修改后的描述信息符合预定的约束条件,则可以进入步骤S102对该描述信息进行后续处理。
在步骤S102,将所述描述信息分为句子。
所述描述信息可以体现为一句或多句话、一段或多段话或一篇或多篇文章等等。所述句子可以指具有特定语法结构的语言基本单位,如包括完整主谓宾结构的语言基本单元,也可以指以特定标点符号划分的语言基本单元,例如以句号或问号等划分的语言基本单位。优选地,本实施例的句子尤其指以句号划分的语言基本单位。如此,仅依据句号进行句子的划分,可以有效提升句子划分的效率和准确率。
可选地,基于描述信息中的标点符号(比如句号,逗号等)将所述描述信息分为句子。典型地,对于一段描述信息“登录用户当前为正常状态。如果用户转岗。达到转岗生效日期。提示用户账号已锁定。”则基于该段描述信息中的标点符号——句号将该段描述信息分为以下四个句子:
-登录用户当前为正常状态。
-如果用户转岗。
-达到转岗生效日期。
-提示用户账号已锁定。
另一典型地,对于另一描述信息“用户登录成功,如果当前用户是管理员,可以锁定任何用户”则可以基于该描述信息中的标点符号——逗号将其分为以下三个句子:
-用户登录成功,
-信息“用户登录成功,如果当前用户是管理员,
-可以锁定任何用户
可选地,当基于预定的约束条件对所述描述信息进行过滤,则步骤S102包括:
-将过滤后的描述信息分为句子。
由于基于预定的约束条件对描述信息进行过滤,例如基于所输入的描述信息中的中文标点符号只能有句号、引号的约束条件对描述信息进行过滤,因而将过滤后的描述信息进行句子划分的过程中可以仅依据句号进行划分,相对更容易、更准确。
在步骤S103,将句子分成词意基本单位。
此处的词意基本单位包括词、词组等。例如,“登录”、“用户”都是词,而“登录用户”则是由前两个词组成的词组。
在此,词意基本单位划分的方法可以基于现有技术实现。例如,基于法国语言学家L.Tesniere于1959年提出中文依存句法技术来将句子分成词意基本单位。
可选地,在将句子划分成词意基本单位的过程中,可以参考通用词意基本单位库、专业词意基本单位库等。通用词意基本单位库可以指基于各领域的词意基本单位而构建的;而专业词意基本单位库可以指某专业领域收集的词意基本单位的数据库,包括诸如计算机专业词库、通信专业词库、生物专业词库、化学专业词库、特定游戏用语词库等。
例如,对于一句描述信息“用户激活账户。”进行词意基本单位划分时,可以同时参考通用词意基本单位库和计算机专业词库进行分词得到:用户/名词、激活/动词、账户/名词。
可选地,当描述信息中的词意基本单位同时存在于专业词意基本单位库和通用词意基本单位库,则优先基于专业词意基本单位库对该词意基本单位进行分词,例如,对于一句描述信息“登录用户激活账户。”同时参考通用词意基本单位库和计算机专业词库进行分词,其中的词组“登录用户”作为一个词组存在于计算机专业词库,而其中的词“登录”和“用户”作为单独的两个词存在于通用词意基本单位库,则优先基于计算机专业词库将“登录用户”作为一个名词进行划分,由此将该描述信息划分为:登录用户/名词、激活/动词、账户/名词。
可选地,所述通用词意基本单位库包含通用词和通用词组,专业词意基本单位库包含专业词和专业词组,其中通用词组是响应于用户的输入而添加到通用词意基本单位库的,专业词组是响应于用户的输入而添加到专业词意基本单位库的。例如,计算机专业词库原本没有“登录用户”专业词组,则在响应于用户对该词组的输入,则在该计算机专业词库中添加该词组。如此,对词库进行灵活地添加,有利于基于该添加的词库对描述信息进行灵活地分词。例如,当计算机专业词库中添加了“登录用户”后,针对描述信息中连续相邻出现的词“登录”和“用户”,则将这两个词作为一个词组“登录用户”进行划分,以更贴切用户的实际分词需求。
在步骤S104,基于对句子的语法分析,获得第一判断结果。其中,所述第一判断结果包括句子的语法分析的结果。
在此,所述语法分析可以指对句子进行语法成分进行分析,语法成分主要包括主语、谓语、宾语等。例如,对句子“登录用户激活。”进行语法分析得到:登录用户——主语,激活——谓语。
对句子进行语法分析的方法同样可以采用法国语言学家L.Tesniere于1959年提出中文依存句法技术或现有的其他语法分析技术实现。
此处的第一判断结果主要对应句子的语法分析得到的结果,主要针对句子的基本语法成分是否完整而言,例如第一判断结果包括诸如句子的语法完整、句子缺乏主语、句子缺乏基本语法成分(主语、谓语、宾语中的至少之一)等等。
由于在某些情况下,虽然句子缺乏基本语法成分之一,但是人机交互或用户交互中并不会因此产生歧义,例如对于句子“用户登录。”,虽然经过语法分析,得到该句子具有不完整的基本语法成分,即缺乏宾语,但是,如果人机交互或用户交互过程中都不会因此产生歧义,而是默认缺乏的宾语为“账户”,因而没有必要将句子缺乏宾语予以指示。
由此可选地,在一个实施例中,除基于对句子进行语法分析外,还基于句子的句型是否匹配于白名单句型库中的句型,来获得第一判断结果。
由此,此处的第一判断结果除包括上文所述的句子的语法分析得到的结果外,还包括句子的句型是否匹配于白名单句型库中的句型的判断结果,例如第一判断结果包括诸如句子缺乏基本语法成分但是句子的句型匹配于白名单句型库中的句型等。
所述白名单句型库可以是预先设置的,也可以由用户随时建立,并且所述白名单句型库配置为存储有虽不符合语法但无歧义的句型。所述句型即句子的结构类型,例如主谓句、主谓宾句等等。
此处的不符合语法但无歧义的句型可以指句子具有虽然缺乏主语、谓语、宾语中的之一但是在人机交互或用户交互过程中不会因此产生歧义的句型,例如前文所述的句子“用户登录。”所具有的主谓句的句型,虽然该句型缺乏宾语,但是在人机交互或用户交互过程中不会因此产生歧义。
可选地,所述白名单句型库中的句型可以是预先设置的,例如所述白名单句型库中预先设置并存储了一定量的句型,也可以是后续补充的,例如由用户自主补充新的句型到白名单句型库。
在步骤S105,基于所述描述信息中是否含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位,获得第二判断结果。其中,所述第二判断结果为所述描述信息中是否含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位的判断结果。
在此,所述描述信息中含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位主要是指:在由至少一句话组成的至少一段描述信息中,至少存在一个词意基本单位以不同的词性至少出现两次和/或作为不同的语法成分至少出现两次。
例如,对于一段由四句话组成的描述信息“登录用户当前为未激活状态。如果用户登录。提示用户账户未激活。引导用户自主激活流程。”,该段描述信息中的词意基本单位“登录”,第一次作为形容词出现,第二次作为动词出现,因而词意基本单位“登录”在该段描述信息中以多种词性多次出现。
又如,对于一段由三句话组成的描述信息“用户登录成功。如果当前用户是管理员。可以锁定任何用户。”,该段描述信息中的词意基本单位“用户”,第一次作为语法成分主语出现,第二次仍作为主语出现,第三次则作为宾语出现,因而词意基本单位“用户”在该段描述信息中作为不同的语法成分多次出现。
此处第二判断结果主要包括诸如所述描述信息中含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位、XX词以名词和形容词各出现一次、XX词组分别作为不同的语法成分多次出现等等。
在有些情况下,虽然描述信息中含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位,但是这并不影响人机交互或用户交互的顺利进行,例如对于描述信息“登录用户当前为未激活状态。如果用户登录。”,虽然所述词意基本单位登录分别以形容词和动词出现,但是如果并不影响人机交互或用户交互的顺利进行,因而也没有必要将所述描述信息含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位予以指示,提升界面友好性和整洁性。
由此可选地,在一个实施例中,除基于所述描述信息中是否含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位外,还基于该多次出现的词意基本单位是否在白名单词意基本单位库中,来获得第二判断结果。
由此,此处的第二判断结果除包括上文所述的诸如所述描述信息中含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位、XX词以名词和形容词各出现一次、XX词组分别作为不同的语法成分多次出现等等以外,还包括该多次出现的词意基本单位是否在白名单词意基本单位库中出现的判断结果。
所述白名单词意基本单位库可以是预先设置的,也可以由用户随时建立,并且所述白名单词意基本单位库配置为存储有虽在描述信息中以多种词性和/或作为不同的语法成分多次出现、但无歧义的词意基本单位,例如所述白名单词意基本单位库存储有上述描述信息中以形容词和动词分别出现的词“登录”等等。
可选地,所述白名单词库中的词意基本单位可以是预先设置的,例如所述白名单词库中预先设置并存储了一定量的词意基本单位,也可以是后续补充的,例如由用户自主补充新的词或词组,例如,补充前的白名单词库仅包括词“登录”、“用户”,则用户将词组“登录用户”补充到白名单词库后,所述白名单词库则增加新的词意基本单位“登录用户”。
在步骤S106,基于第一判断结果和第二判断结果,指示描述信息的歧义。
如上文,第一判断结果可以仅包括所述描述信息中的句子的语法分析得到的结果(此处暂定为第一判断结果类型一),也可以不仅包括所述描述信息中的句子的语法分析得到的结果,还包括所述描述信息中的句子的句型是否匹配于白名单句型库中的句型(此处暂定为第一判断结果类型二)。
如上文,第二判断结果可以仅包括诸如所述描述信息中含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位、XX词以名词和形容词各出现一次、XX词组分别作为不同的语法成分多次出现等(此处暂定为第二判断结果类型一),也可以不仅包括前者还可以包括该多次出现的词意基本单位是否在白名单词意基本单位库的判断结果(此处暂定为第二判断结果类型二)。
因而第一判断结果和第二判断结果可以组合成表1中的以下四种情况:
表1
实践中,可以根据具体的需求采用表1的其中一种情况来指示描述信息的歧义。
所述指示可以指将所述描述信息中存在歧义的词、词组以突出的样式标出,例如以不同于描述信息其他文本的颜色、字体、标识符等标出,所述指示也可以将所述描述信息中所缺乏的具体语法成分在对应的位置标出,例如对于缺宾语的描述信息“用户登录。”指示为“用户登录【宾语】。”
为了更有针对性地为用户指示描述信息的歧义,本实施例的所述方法还可以包括:接收用户的反馈。例如,在一种情况下,尽管指示出描述信息中缺乏宾语,但是交互各方已经习惯这种表达方式的描述信息,因而无需针对这种情况下的交互各方指示该描述信息缺乏宾语。而对于这种情形,可以通过用户的反馈,将对应句型加入白名单句型库来解决。
因而可选地,请参考图2,所述指示描述信息的歧义的方法还可以包括:
步骤S107,响应于接收到用户对指示的描述信息的歧义是句子不符合语法的错判纠正反馈,从错判纠正反馈所针对的句子提取出句型。
步骤S108,将提取出的句型放入所述白名单句型库。
由上文可知,句子不符合语法主要指句子缺乏基础语法成分,更具体而言,主要指句子缺乏诸如主语、谓语、宾语中的至少之一。
在一种情况下,如上文所述,交互的双方已经默认某种不符合语法的描述信息,例如,对于缺宾语的描述信息“用户登录。”,交互的双方已默认这种缺乏宾语的描述方式并能顺畅交互,因而可以基于所接收到的用户对指示的描述信息的歧义是句子不符合语法的错判纠正反馈,从错判纠正反馈所针对的句子提取出句型,例如从所述描述信息“用户登录。”提起出句型——主谓句。进一步地,将所提取出的句型放入白名单句型库中,从而对于描述信息中与所述白名单句型库中的句型相同的句子虽然不符合语法,但是根据交互各方的交互习惯,也不予指示歧义。
请参考图3,同理,所述方法也可以包括:
-步骤S109,接收用户对指示的描述信息的歧义是所述描述信息中含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位进行的错判纠正反馈,将错判纠正反馈所针对的所述词意基本单位放入白名单词意基本单位库。
所述错判纠正反馈可以以诸如以下的方式进行:响应于用户对描述信息中指示为歧义的词或词组的诸如点击、触摸等操作,以下拉框等形式提供对应的反馈选项,接收用户对下拉框中任一反馈选项的选择。其中,所述反馈选项可以包括自动修改、手动修改、取消指示等等。
需要说明的是,此处仅以单个用户的反馈来举例,而实际上为了提升描述信息歧义的指示的准确性,还可以对大量用户的反馈进行统计,以优化反馈样本,从而为描述信息的歧义的指示提供更多的数据支撑。
可选地,请参考图4,为了更好地自动消除歧义,本实施例的方法还包括:
-步骤S110,如果指示的描述信息的歧义是句子不符合语法,根据历史上在指示的描述信息的歧义是同一句子不符合语法的情况下接收到的对提示的修改建议的接受或选择的次数与预定阈值的比较,确定是否采用该修改建议。
例如,对于指示的描述信息中的句子“用户登录。”不符合语法,根据历史上在指示该句子不符合语法所接收到的对该提示的修改建议“请添加宾语“账户””的接受的次数与预定阈值的比较,如果该接收的次数大于或等于预定阈值,则确定采用该修改建议,即自动在该描述信息中添加宾语“账户”,从而将该描述信息自动修改为“用户登录账户。”。
在有些情况下,修改的建议可以包括多个选项,则基于对各选项选择的次数与预定阈值的比较,确定是否采用该修改建议。仍以上述描述信息中的句子“用户登录。”为例,给出的修改选项包括:1.请添加宾语“账户”;2.请添加宾语“电脑”;3.拒绝修改。则通过统计,得到用户就该描述信息选择修改选项1的次数为5次,选择修改选项2的次数为1次,选择修改选项3的次数为0次,并且预定阈值为4,则确定采用选项1的修改建议。
当然,对于同一描述信息中的同一句子的指示,也可以不将选项的选择次数与预定阈值比较,而是将各选项的选择次数进行比较,将选择次数最多的选项确定为所采用的修改建议。另外,也可以结合选项的选择次数之间的比较并将最高的选择次数与预定阈值进行比较,来确定是否采用该修改建议等等。
可选地,请参考图5,为了提升页面的整洁,本实施例的方法还包括:
-步骤S111,如果指示的描述信息的歧义是句子不符合语法,提示对应的修改建议。
-步骤S112,响应于接收到对所述修改建议的接受或选择,消除所述修改建议的提示。
例如,对于指示缺乏主语的描述信息,提示对应的一个或多个主语选项,以便于用户对所述一个或多个主语选项进行接受或选择,并响应于用户对所述提供的主语选项的接受或选择,消除所述修改建议的提示,以提升页面的清洁和美观。
图6为根据本发明一个实施例的指示描述信息的歧义的装置2的框图。
装置2可以可采用专用集成电路(ASIC)或任何其他类似硬件设备来实现。
描述信息泛指描述对象的文本,例如用于描述一个计算机任务、操作、函数,或业务需求的文本等等,这些描述信息可以呈现在诸如网页等交互界面,可以呈现在文档类应用中,可以呈现在诸如app(应用程序)的终端应用等等。
本实施例中的歧义主要指描述信息中的句子不符合语法、同一词具有多种词性和/或同一词作为不同的语法成分出现等等。
所谓句子不符合语法,主要指句子缺乏基础语法成分,更具体而言,主要指句子缺乏诸如主语、谓语、宾语中的至少之一。
所谓同一词具有多种词性,主要指同一词在一段描述信息里具有两种以上的词性,例如对于一段描述信息“登录用户当前为未激活状态。如果用户登录。提示用户账户未激活”,在该段描述信息中,第一次出现的“登录”的词性为形容词,而第二次出现的“登录”的词性为动词,因而对于“登录”一词而言,其在该段描述信息具有两种词性,也即该词“登录”具有多种词性。
所谓同一词作为不同的语法成分出现,主要指同一词在一段描述信息里作为两种以上的语法成分出现。例如对于一段描述信息“用户登录成功。如果当前用户是管理员。可以锁定任何用户”,则在这一段描述信息中,第一次出现的“用户”的语法成分为主语,第二次出现的“用户”的语法成分为宾语,也即对于“用户”一词,其在这段描述信息中作为不同的语法成分出现。
对于上文所述的“一段描述信息”,可以指语法意义上的自然段、自然句等。更特别地,上文所述的“一段描述信息”是指由至少一个以句号结尾的自然句组成的信息,可选地,所述自然句组成的信息可以包含双引号、单引号等标点符号。例如,由三个句号结尾的自然句组成的自然段“管理员设置用户为未激活状态。用户登录。提示用户“账号未激活”。”为一段描述信息的示例。
信息接收单元201接收输入的描述信息。
所述输入可以为用户输入,也可以为计算机设备的输入。
信息接收单元201可以通过键盘、鼠标、遥控器、触摸板或手写设备等,基于浏览器软件、应用程序或客户端软件等与用户设备进行交互来实现,例如,通过一次或多次调用该用户设备提供的应用程序接口(API)或其他约定的通信方式,获取该用户输入的描述信息;或者,通过ASP、JSP或PHP等页面技术,获取用户在输入界面输入的查询序列;又或者,通过与搜索引擎等第三方设备的交互,获取该用户输入的描述信息等等。
可选地,为了提升后续操作步骤的效率和准确率,所述信息接收单元201对所述输入信息进行约束,例如,约束所输入的描述信息中的中文标点符号只能有句号、引号等,如此,在后续操作步骤中对描述信息进行句子划分时,可以仅依据句号进行划分,如此提升了句子划分的效率和准确率。因而所述信息接收单元201还可以被配置为:
-基于预定的约束条件,过滤掉违反约束条件的所述描述信息;
此处的约束条件可以包括诸如描述信息中不能出现空格、中文标点符号只能包括句号和引号等等。由此,过滤掉的违反约束条件的所述描述信息不再进入后续步骤。
句子划分单元202将所述描述信息分为句子。
所述描述信息可以体现为一句或多句话、一段或多段话或一篇或多篇文章等等。
基于描述信息中的标点符号将所述描述信息分为句子,例如,以句号作为句子划分的依据。典型地,对于一段描述信息“登录用户当前为正常状态。如果用户转岗。达到转岗生效日期。提示用户账号已锁定。”则基于该段描述信息中的句号将该段描述信息分为以下四个句子:
-登录用户当前为正常状态。
-如果用户转岗。
-达到转岗生效日期。
-提示用户账号已锁定。
可选地,当信息接收单元201基于预定的约束条件对所述描述信息进行过滤,则句子划分单元202可以被配置为:
-将过滤后的描述信息分为句子。
由于基于预定的约束条件对描述信息进行过滤,例如基于所输入的描述信息中的中文标点符号只能有句号、引号的约束条件对描述信息进行过滤,因而将过滤后的描述信息进行句子划分的过程中可以仅依据句号进行划分,相对更容易、更准确。
分词单元203将句子分成词意基本单位。
此处的词意基本单位包括词、词组等。例如,“登录”、“用户”都是词,而“登录用户”则是由前两个词组成的词组。
在此,分词单元203可以基于现有技术实现对句子的词意基本单位的划分。例如,基于法国语言学家L.Tesniere于1959年提出中文依存句法技术来将句子分成词意基本单位。
可选地,分词单元203在将句子划分成词意基本单位的过程中,可以参考通用词意基本单位库、专业词意基本单位库等。通用词意基本单位库可以指基于各领域的词意基本单位而构建的;而专业词意基本单位库可以指某专业领域收集的词意基本单位的数据库,包括诸如计算机专业词库、通信专业词库、生物专业词库、化学专业词库、特定游戏用语词库等。
例如,对于一句描述信息“用户激活账户。”进行词意基本单位划分时,分词单元203可以同时参考通用词意基本单位库和计算机专业词库进行分词得到:用户/名词、激活/动词、账户/名词。
可选地,当描述信息中的词意基本单位同时存在于专业词意基本单位库和通用词意基本单位库,则分词单元203优先基于专业词意基本单位库对该词意基本单位进行分词,例如,对于一句描述信息“登录用户激活账户。”同时参考通用词意基本单位库和计算机专业词库进行分词,其中的词组“登录用户”作为一个词组存在于计算机专业词库,而其中的词“登录”和“用户”作为单独的两个词存在于通用词意基本单位库,则优先基于计算机专业词库将“登录用户”作为一个名词进行划分,由此将该描述信息划分为:登录用户/名词、激活/动词、账户/名词。
可选地,所述通用词意基本单位库包含通用词和通用词组,专业词意基本单位库包含专业词和专业词组,其中通用词组是响应于用户的输入而添加到通用词意基本单位库的,专业词组是响应于用户的输入而添加到专业词意基本单位库的。例如,计算机专业词库原本没有“登录用户”专业词组,则在响应于用户对该词组的输入,则在该计算机专业词库中添加该词组。如此,对词库进行灵活地添加,有利于基于该添加的词库对描述信息进行灵活地分词。例如,当计算机专业词库中添加了“登录用户”后,针对描述信息中连续相邻出现的词“登录”和“用户”,则分词单元203将这两个词作为一个词组“登录用户”进行划分。
第一判断单元204基于对句子的语法分析,获得第一判断结果。
在此,第一判断单元204的所述语法分析可以指对句子进行语法成分进行分析,语法成分主要包括主语、谓语、宾语等。例如,对句子“登录用户激活。”进行语法分析得到:登录用户——主语,激活——谓语。
第一判断单元204同样可以采用法国语言学家L.Tesniere于1959年提出中文依存句法技术或现有的其他语法分析技术实现对句子的语法分析。
此处的第一判断结果主要对应句子的语法分析得到的结果,主要针对句子的基本语法成分是否完整而言,例如第一判断结果包括诸如句子的语法完整、句子缺乏主语、句子缺乏基本语法成分(主语、谓语、宾语中的至少之一)等等。
由于在某些情况下,虽然句子缺乏基本语法成分之一,但是人机交互或用户交互中并不会因此产生歧义,例如对于句子“用户登录。”,虽然经过语法分析,得到该句子具有不完整的基本语法成分,即缺乏宾语,但是,如果人机交互或用户交互过程中都不会因此产生歧义,而是默认缺乏的宾语为“账户”,因而没有必要将句子缺乏宾语予以指示。
由此可选地,在一个实施例中,所述第一判断单元204被配置为:
-基于对句子的语法分析、以及句子的句型是否匹配于白名单句型库中的句型,获得第一判断结果,其中白名单句型库配置为存储有虽不符合语法但无歧义的句型。
由此,此处的第一判断结果除包括上文所述的句子的语法分析得到的结果外,还包括句子的句型是否匹配于白名单句型库中的句型的判断结果,例如第一判断结果包括诸如句子缺乏基本语法成分但是句子的句型匹配于白名单句型库中的句型等。
其中所述白名单句型库可以是预先设置的,也可以由用户随时建立,并且所述白名单句型库配置为存储有虽不符合语法但无歧义的句型。所述句型即句子的结构类型,例如主谓句、主谓宾句等等。
此处的不符合语法但无歧义的句型可以指句子具有虽然缺乏主语、谓语、宾语中的之一但是在人机交互或用户交互过程中不会因此产生歧义的句型,例如前文所述的句子“用户登录。”所具有的主谓句的句型,虽然该句型缺乏宾语,但是在人机交互或用户交互过程中不会因此产生歧义。
可选地,所述白名单句型库中的句型可以是预先设置的,例如所述白名单句型库中预先设置并存储了一定量的句型,也可以是后续补充的,例如由用户自主补充新的句型到白名单句型库。
第二判断单元205基于所述描述信息中是否含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位,获得第二判断结果。
在此,所述描述信息中含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位主要是指:在由至少一句话组成的至少一段描述信息中,至少存在一个词意基本单位以不同的词性至少出现两次和/或作为不同的语法成分至少出现两次。
例如,对于一段由四句话组成的描述信息“登录用户当前为未激活状态。如果用户登录。提示用户账户未激活。引导用户自主激活流程。”,该段描述信息中的词意基本单位“登录”,第一次作为形容词出现,第二次作为动词出现,因而词意基本单位“登录”在该段描述信息中以多种词性多次出现。
又如,对于一段由三句话组成的描述信息“用户登录成功。如果当前用户是管理员。可以锁定任何用户。”,该段描述信息中的词意基本单位“用户”,第一次作为语法成分主语出现,第二次仍作为主语出现,第三次则作为宾语出现,因而词意基本单位“用户”在该段描述信息中作为不同的语法成分多次出现。
此处第二判断结果主要包括诸如所述描述信息中含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位、XX词以名词和形容词各出现一次、XX词组分别作为不同的语法成分多次出现等等。
在有些情况下,虽然描述信息中含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位,但是这并不影响人机交互或用户交互的顺利进行,例如对于描述信息“登录用户当前为未激活状态。如果用户登录。”,虽然所述词意基本单位登录分别以形容词和动词出现,但是如果并不影响人机交互或用户交互的顺利进行,因而也没有必要将所述描述信息含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位予以指示。
由此可选地,在一个实施例中,所述第二判断单元205被配置为:
-基于所述描述信息中是否含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位、以及该多次出现的词意基本单位是否在白名单词意基本单位库中,获得第二判断结果。
由此,此处的第二判断结果除包括上文所述的诸如所述描述信息中含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位、XX词以名词和形容词各出现一次、XX词组分别作为不同的语法成分多次出现等等以外,还包括该多次出现的词意基本单位是否在白名单词意基本单位库中出现的判断结果。
其中所述白名单词意基本单位库可以是预先设置的,也可以由用户随时建立,并且所述白名单词意基本单位库配置为存储有虽在描述信息中以多种词性和/或作为不同的语法成分多次出现、但无歧义的词意基本单位,例如所述白名单词意基本单位库存储有上述描述信息中以形容词和动词分别出现的词“登录”等等。
可选地,所述白名单词库中的词意基本单位可以是预先设置的,例如所述白名单词库中预先设置并存储了一定量的词意基本单位,也可以是后续补充的,例如由用户自主补充新的词或词组,例如,补充前的白名单词库仅包括词“登录”、“用户”,则用户将词组“登录用户”补充到白名单词库后,所述白名单词库则增加新的词意基本单位“登录用户”。
指示单元206基于第一判断结果和第二判断结果,指示描述信息的歧义。
如上文,第一判断结果可以仅包括所述描述信息中的句子的语法分析得到的结果(此处暂定为第一判断结果类型一),也可以不仅包括所述描述信息中的句子的语法分析得到的结果,还包括所述描述信息中的句子的句型是否匹配于白名单句型库中的句型(此处暂定为第一判断结果类型二)。
如上文,第二判断结果可以仅包括诸如所述描述信息中含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位、XX词以名词和形容词各出现一次、XX词组分别作为不同的语法成分多次出现等(此处暂定为第二判断结果类型一),也可以不仅包括前者还可以包括该多次出现的词意基本单位是否在白名单词意基本单位库的判断结果(此处暂定为第二判断结果类型二)。
因而第一判断结果和第二判断结果可以组合成上文表1所示的四种情况。
实践中,指示单元206可以根据具体的需求采用表1的其中一种情况来指示描述信息的歧义。
所述指示可以指将所述描述信息中存在歧义的词、词组以突出的样式标出,例如以不同于描述信息其他文本的颜色、字体、标识符等标出,所述指示也可以将所述描述信息中所缺乏的具体语法成分在对应的位置标出,例如对于缺宾语的描述信息“用户登录。”指示为“用户登录【宾语】。”
为了更有针对性地为用户指示描述信息的歧义,针对某些情况下即时描述信息中存在某种不符合语法的句子,但是交互各方已经习惯这种表达方式的描述信息,因而无需针对这种情况下的交互各方指示该描述信息的该句子不符合语法,由此,请参考图7,本实施例的所述装置2还可以包括:
-句型提取单元207,被配置为响应于接收到用户对指示的描述信息的歧义是句子不符合语法的错判纠正反馈,从错判纠正反馈所针对的句子提取出句型;
-句型添加单元208,被配置为将提取出的句型放入所述白名单句型库。
由此,通过用户的反馈,将对应句型加入白名单句型库,从而避免将一些虽然不符合语法但符合交互各方交互习惯的句子的歧义指示,从而提升交互的友好度。
由上文可知,句子不符合语法主要指句子缺乏基础语法成分,更具体而言,主要指句子缺乏诸如主语、谓语、宾语中的至少之一。
在一种情况下,如上文所述,交互的双方已经默认某种不符合语法的描述信息,例如,对于缺宾语的描述信息“用户登录。”,交互的双方已默认这种缺乏宾语的描述方式并能顺畅交互,因而句型提取单元207可以基于所接收到的用户对指示的描述信息的歧义是句子不符合语法的错判纠正反馈,从错判纠正反馈所针对的句子提取出句型,例如从所述描述信息“用户登录。”提起出句型——主谓句。进一步地,句型添加单元208将所提取出的句型放入白名单句型库中,从而对于描述信息中与所述白名单句型库中的句型相同的句子虽然不符合语法,但是根据交互各方的交互习惯,也不予指示歧义。
同理,可选地,请参考图8,所述装置2还可以包括:
-白名单词意基本单位添加单元209,被配置为响应于接收到用户对指示的描述信息的歧义是所述描述信息中含有以多种词性和/或作为不同的语法成分多次出现的词意基本单位的错判纠正反馈,将错判纠正反馈所针对的所述词意基本单位放入白名单词意基本单位库。
所述错判纠正反馈可以以诸如以下的方式进行:响应于用户对描述信息中指示为歧义的词或词组的诸如点击、触摸等操作,以下拉框等形式提供对应的反馈选项,接收用户对下拉框中任一反馈选项的选择。其中,所述反馈选项可以包括自动修改、手动修改、取消指示等等。
需要说明的是,此处仅以单个用户的反馈来举例,而实际上为了提升描述信息歧义的指示的准确性,还可以对大量用户的反馈进行统计,以优化反馈样本,从而为描述信息的歧义的指示提供更多的数据支撑。
可选地,请参考图9,为了更好地自动消除歧义,本实施例的装置2还包括:
-修改建议采用单元210,被配置为如果指示的描述信息的歧义是句子不符合语法,根据历史上在指示的描述信息的歧义是同一句子不符合语法的情况下接收到的对提示的修改建议的接受或选择的次数与预定阈值的比较,确定是否采用该修改建议。
例如,对于指示的描述信息中的句子“用户登录。”不符合语法,根据历史上在指示该句子不符合语法所接收到的对该提示的修改建议“请添加宾语“账户””的接受的次数与预定阈值的比较,如果该接收的次数大于或等于预定阈值,则确定采用该修改建议,即自动在该描述信息中添加宾语“账户”,从而将该描述信息自动修改为“用户登录账户。”。
在有些情况下,修改的建议可以包括多个选项,则基于对各选项选择的次数与预定阈值的比较,确定是否采用该修改建议。仍以上述描述信息中的句子“用户登录。”为例,给出的修改选项包括:1.请添加宾语“账户”;2.请添加宾语“电脑”;3.拒绝修改。则通过统计,得到用户就该描述信息选择修改选项1的次数为5次,选择修改选项2的次数为1次,选择修改选项3的次数为0次,并且预定阈值为4,则确定采用选项1的修改建议。
当然,对于同一描述信息中的同一句子的指示,也可以不将选项的选择次数与预定阈值比较,而是将各选项的选择次数进行比较,将选择次数最多的选项确定为所采用的修改建议。另外,也可以结合选项的选择次数之间的比较并将最高的选择次数与预定阈值进行比较,来确定是否采用该修改建议等等。
可选地,请参考图10,为了提升页面的整洁,本实施例的装,2还包括:
-修改建议提示单元211,被配置为如果指示的描述信息的歧义是句子不符合语法,提示对应的修改建议;
-提示消除单元212,被配置为响应于接收到对所述修改建议的接受或选择,消除所述修改建议的提示。
例如,对于指示缺乏主语的描述信息,提示对应的一个或多个主语选项,以便于用户对所述一个或多个主语选项进行接受或选择,并响应于用户对所述提供的主语选项的接受或选择,消除所述修改建议的提示,以提升页面的清洁和美观。
需要注意的是,本发明可在软件和/或软件与硬件的组合体中被实施,例如,本发明的各个装置可采用专用集成电路(ASIC)或任何其他类似硬件设备来实现。在一个实施例中,本发明的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本发明的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
虽然前面特别示出并且描述了示例性实施例,但是本领域技术人员将会理解的是,在不背离权利要求书的精神和范围的情况下,在其形式和细节方面可以有所变化。这里所寻求的保护在所附权利要求书中做了阐述。