[发明专利]在软件程序中使用强数据类型表示语音识别语法无效
| 申请号: | 200680018504.X | 申请日: | 2006-05-08 |
| 公开(公告)号: | CN101185116A | 公开(公告)日: | 2008-05-21 |
| 发明(设计)人: | J-F·佩洛克斯 | 申请(专利权)人: | 微软公司 |
| 主分类号: | G10L15/18 | 分类号: | G10L15/18;G10L21/06 |
| 代理公司: | 上海专利商标事务所有限公司 | 代理人: | 顾嘉运 |
| 地址: | 美国华*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 软件 程序 使用 数据类型 表示 语音 识别 语法 | ||
背景
下面的讨论仅仅提供广义的背景信息,并不是为了被用作确定所要求的主题的范围的依据。
“自然语言软件应用程序”是指用于接收以人说话的方式表达的语音表述或者文本输入的应用程序。然而,传统的利用语音识别的此类应用程序实现如下:定义该应用程序可能会收到的词、定义这些词可能怎样被组合、以及定义这些词的特定组合的语义含义。
通常,术语“语法”(grammar)是指定义任何给定语言的结构的规则和潜在原则,并且语法可被用作自然语言应用程序执行这些功能的机制。在实现中,自然语言编程器对语法进行编码,该语法之后被语音识别器利用。当用于访问该自然语法程序并且说了一些属于已经被该语法所定义的一组词和规则中的内容时,语法识别器将这些词映射到在该语法中定义的串或者其他类型。语法识别器之后告知应用程序(用户)说了什么,以及任何由语法所定义的相应的语义信息,并通常将映射后的对象提供给该应用程序进行进一步的处理。
这种形式的传统应用程序要求软件开发者编码大量的文本和串文本操作。为了使编码更加有效率,开发者需要对语法从总体上有很好的理解,且对开发者所使用的该具体语法的内部工作原理有很好的理解。不幸的是,这种语法知识(grammatical insight)并不是程序员的知识库的一部分。
为了加快整体的开发周期,开发者通常希望使用一些现存语法的变体,比如对现存的语法进行编译和/或进行增加。然而,对现存的语法进行编译需要开发者花费时间去学习其结构,而这些时间原本是可以用来增强软件实现的。尽管传统的技术允许开发者在另一个语法中参考一个现存的语法,但是该参考语法对于调用程序并不是透明的,因为其是通过返回参考语法的语义的方式而起作用的。
概要
该概要被提供用于以简要的方式介绍一些概念,这些概念在下面的详细说明部分会被描述。该概要不是为了确定所要求的主题的关键特征或者是基本特征,该概要也不是为了被用作确定所要求的主题的范围的依据。
在一实施例中,一种用于向自然语言实现应用程序解释自然语言输入的系统具有语法、源文件、以及语音识别器。该语法具有一组数据类型以及关于该组数据类型的语义编码定义规则。该源文件包括用于通过实例化该组数据类型中所选择的数据类型而访问该语法的计算机可读编码。该语音识别器用于接收自然语言输入并将该自然语言输入映射至所选择的数据类型。
在另一实施例中,一种用于自然语言输入识别的系统具有输入设备、强类型语法、识别组件、以及解释组件。该输入设备用于接收自然语言输入。该强类型语法定义了一组表示自然语言输入的元素的类型。该识别组件用于使用该强类型语法将该自然语言输入转换成文本并基于该文本产生识别输出。该解释组件用于基于该识别输出确定自然语言输入的语义。
在另一实施例中,提供一种用于访问自然语言应用程序的语法的方法。提供一个或多个语法。每个语法具有一组表示自然语言的类型。在一个或多个源编码文件中定义用于在自然语言输入上操作的进程。在运行时,该组类型中被选择的类型从一个或多个语法被实例化。该选择的类型对应于自然语言输入。
附图简述
图1是可以实现本发明的实施例的计算系统环境的示意图;
图2是根据本发明的一实施例用于自然语言语法的编译进程的简化框图;
图3是示出根据本发明的一实施例的自然语言系统的输入组件的简化框图;
图4是根据本发明的一实施例用于编程强类型语法的进程的简化的流程图;
图5是根据本发明的一实施例使用强类型语法编程自然语言程序的编译进程的简化的流程图;
图6是根据本发明的一实施例用于编译自然语言状态机和中间语言编码的编译系统的简化的框图;
图7是示出根据本发明的一实施例用于实例化语法的元素的简化的框图。
详细描述
图1说明了适当的计算系统环境100的一例,其中可以实现本发明。计算系统环境100仅是适当的计算环境的一例并且并非意图限制本发明的使用范围或功能。计算环境100不应被解释为具有与示例性操作环境100中所述的组件的任一或组合有关的从属性或要求。
本发明可以用多种其它通用或专用计算系统环境或配置来操作。可以适合与本发明一起使用的公知计算系统、环境和/或配置的示例包括、但不限于:个人计算机、服务器计算机、手提或便携式设备、多处理器系统、基于微处理器的系统、机顶盒、可编程用户电子设备、网络PC、小型计算机、大型计算机、包括任 上述系统的分布式计算环境等等。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200680018504.X/2.html,转载请声明来源钻瓜专利网。





