完整语言序列的语言建模的制作方法_2

文档序号:9476312阅读:来源:国知局
询(例如,作为用户的话语输入到设备的查询)。在一些实现方式中,话音查询是由 诸如移动设备(例如,电话、智能电话或者其它手持式设备)的特定设备类别或类目中的设 备检测到的查询。话音查询可W是在一个或多个特定厂商所生产的设备处输入的查询,或 者在一个或多个特定型号的设备处输入的查询。
[0031] 在一些实现方式中,训练数据114被标准化。例如,查询的文本可被调整为常见的 格式,拼写错误可被校正,复数可被改变为单数,反之亦然,等等。 阳0巧在阶段做期间,计算系统110确定各种语言序列,例如,查询116在训练数据114 中出现的频率。在所图示的示例中,计算系统110确定表示各查询116被提交的次数的计 数118。例如,计算系统110标识训练数据114所指示的不同查询116,并且对训练数据114 中的每个查询116的实例的数量进行计数。
[0033] 查询116被图示为包括序列开始标志"<S>"和序列结束标志"</S〉"。运些指示符 表明查询116是每个都表示用户的整个查询串的整个查询,并且不表示查询的子串部分。 计算系统110可解析训练数据110来确定序列开始和结束的适当位置。例如,计算系统110 可指明开始和结束标志W使得语言序列每个都涵盖单独的日志条目、记录或消息的整个文 本。此外,或者作为替换,计算系统110可指定与预定标点符号(例如,句号、逗号或其它分 隔符)、元数据、格式化特性等等的位置相对应的开始和结束标记。也可使用用于解析训练 数据114的其它技术。
[0034] 每个计数118表示用户已完整提交相应查询的次数。例如,每个计数118指示用户 提交W下语言序列的次数:该语言序列按词语在相应查询116中显现的顺序包括相应查询 116的所有词语,但不包括未被包括在相应查询116中的任何词语(例如,在相应查询116 的词语之前、之后或之间没有任何额外的词语)。
[0035] 在所图示的示例中,计算系统110为查询"<S〉weather toda^/S〉"确定计数 758,从而表明训练数据114指示此查询被提交758次。类似地,计算系统110确定查询 "<S〉great vacation spots</S>"被提交676次,等等。
[0036] 计算系统110还确定训练数据114所指示的查询提交的数量的总计数119(所有 查询116的实例的组合数量)。总计数119等于所有计数118之和。
[0037] 为了确定计数118,计算系统110可对训练数据114中不重叠的文本片段进行计 数。不同的查询116可包括相同词语中的一些,但训练数据114中的每个特定文本片段仅为 单个查询116贡献计数118。也就是说,当训练数据114中的文本片段被作为查询116的实 例计数时,则该特定文本片段的一部分,例如,子串不被用来针对任意其它查询116增加计 数118。例如,训练数据114的特定片段可包括包含四个词语W1W2W3W4的查询串。计算系统 110在评价训练数据114的此部分时,针对包括运四个词语的相应查询116增加计数118。 计算系统110然后继续评价训练数据114中出现的下一文本片段,基于该特定文本片段不 针对诸如W1W2W3或者W2W3W4的其他查询增加计数。运与通常为n元词串模型确定n元词串 计数的方式不同。一般而言,为确定n元词串计数,滑动窗口在文本片段上通过,并且n元 词串被认为出现在滑动窗口的多个重叠位置处。针对n元词串计数,训练数据中的词语的 单个实例可为多个不同的n元词串贡献计数。
[00測在阶段似期间,计算系统110从训练数据114所指示的语言序列当中选择语言 序列集合。计算系统110可基于一个或多个标准来选择语言序列。在一些实现方式中,计 算系统110基于语言序列的出现频率来选择语言序列。例如,计算系统110可选择最频繁 出现的语言序列(例如,通过选择具有最高计数118的查询116)。此外,或者作为替换,可 基于长度(例如,语言序列中词语或词的数量)、与语言序列相关联的地理位置或者其它因 子来选择语言序列。
[0039] 在所图示的示例中,计算系统110基于计数118来选择查询116的集合122,其中 该集合122是查询116的真子集。被选集合122包括在训练数据114中W最高频率出现的 查询116。
[0040] 在一些实现方式中,计算系统110选择预定数量的查询116。例如,计算系统110 可选择具有最高计数118的N个查询116,其中N是预定整数。
[0041] 在一些实现方式中,计算系统110选择具有满足计数阔值126的计数118的查询 116。例如,计算系统110可选择具有满足或者超过最小阔值的计数118的查询116。最小 阔值例如可W是二、五、十或另外的值。不满足计数阔值126的查询116,诸如在集合124中 示出的查询116,被从被选集合122中排除。在一些实现方式中,任意长度的查询116在相 应计数满足计数阔值的情况下可被选择。结果,集合122中的查询116具有不同的长度,并 且集合122中的查询116中的一些可具有五个、六个、屯个或更多个词语的长度。
[0042] 在一些实现方式中,基于查询116的长度(例如,每个查询中词语的数量)和/或 其它标准来选择被选集合122。例如,计算系统110可选择包括不多于最大数量的词语(例 如,20个词语、15个词语、10个词语,等等)的查询。作为示例,计算系统110可选择出现在 训练数据114中最少最小次数并且每个包括不多于最大数量的词语的查询116。
[0043] 在一些实现方式中,计算系统110针对包括不同数量的词语的查询116使用不同 的计数阔值。例如,计算系统110可选择包括两个词语并具有至少五十的计数的查询,计 算系统110可选择包括=个词语并具有至少四十的计数118的查询,并且计算系统110可 选择包括四个词语并具有至少=十的计数118的查询。对于包括五个或更多个词语的查询 116,计算系统110可选择具有至少十五的计数118的查询。计数阔值可被设定为使得具有 较高数量词语的查询具有较低的计数阔值,从而增大较长查询被选择的可能性。
[0044] 在阶段值)期间,计算系统110生成语言模型120的第一组件150。为生成第一 组件150,计算系统110确定各种语言序列中的每一个的评分130。评分130可W是语言序 列在训练数据中出现的相对频率。评分130指示各种语言序列的出现概率。语言序列的评 分130可W基于语言序列作为分立的、完整的用户输入序列整体出现在训练数据114中的 频率,而不基于语言序列的各种子集(例如,n元词串)出现的条件概率。
[0045] 在所图示的示例中,计算系统110基于语言序列作为完整查询出现在训练数据中 的相对频率来生成评分130。例如,评分130基于指示各个查询116被提交的次数的计数 118来生成。查询116出现的相对频率可按照查询116的计数118除W总计数119来确定。 作为示例,针对查询"<S〉weathe;rtoday</S〉",相对频率可按照相应计数118 (例如,758) 除W所有查询的总计数119 (例如,126333)来确定。相对频率(例如,758/126333 = 0. 006) 表示从查询116当中选择的随机查询将是查询"<S〉weathe;rtoda^/S〉"的概率。
[0046] 结果,查询116的相对频率形成概率分布,其中可能结果的范围受限于对出现在 训练数据114中的查询116之一的选择。每个相对频率是源自所有查询116的集合的相应 查询的出现概率。所有查询116的相对频率或概率的总和是1,从而指出评分130指示在查 询116上的适当分布。在所图示的示例中,评分130是查询116的相对频率或概率,然而, 其它技术也可用来生成指示概率分布的评分。
[0047] 计算系统110生成第一组件150W包括仅针对查询116的真子集的评分130。对 于许多训练数据集合,包括针对每个语言序列的数据将导致不切实际地大语言模型。为高 效地存储针对可能再次出现的查询的数据,计算系统110存储仅针对集合122中的被选查 询116的评分130。如W上所论述的,集合122中的查询116可W是最频繁出现的查询116, 或者可根据其它标准来选择。第一组件150不包括集合122之外的查询116的评分。 W48] 在所图示的示例中,图示了集合124中的查询116的评分130,从而指示出运些查 询116在第一组件150的概率分布中被分配了非零出现概率。然而,计算系统110不需要 计算或者存储针对集合124中的查询116的评分。为节省存储空间和减少计算成本,第一 组件150可省略标识集合124中的查询116的数据并且包括针对集合124中的查询116的 评分130。 W例第一组件150包括指示集合122中的查询116的序列数据152,例如,训练数据114 中的高频率查询116的列表。第一组件150还包括指示在训练数据中出现的查询116的概 率分布的一部分的概率数据154。如W上所指出的,概率数据154包括针对集合122中的查 询116而非针对集合122之外的查询的评分130。结果,第一组件150仅用于集合122中的 查询116。
[0050] 当第一组件150被用来评价在预定集合中出现的语言序列时,第一组件150可提 供指示作为完整的用户输入序列或提交,例如非作为更大语言序列的一部分或真子集的语 言序列的出现概率的评分。作为示例,用户所提交的查询的整个查询串可W是完整的用户 提交。完整的用户提交的另一示例是诸如短消息服务(SM巧文本消息、电子邮件消息或者 社交网络发帖或状态更新的消息的整体。因为用户提交经常包括不同数量的词语,所W预 定集合中的语言序列可包括不同数量的词语。
[0051] 此外,或者作为替换,每个语言序列可W是完整的句子,或者其它定义的自然语言 片段。例如,语言序列例如可W是训练数据内的句子片段、完整的短语、完整的句子或者完 整的段落。完整语言序列的边界例如可通过标点、语法、格式化、元数据和/或其它因子来 指示。例如,句号、问号、感叹号或者其它标点可指示语言序列的结束W及语言序列的结束 和/或新的语言序列的开始。类似地,文档的开始和结束或者文档内的章节的开始和结束 可指示语言序列的开始和结束。对于从话语转录的语言序列,完整语言序列可通过至少最 小持续时间的沉默或噪音(例如,口述中的暂停)的时段来划界。从而,在口述设定下,针 对在预定持续时间的沉默之间出现的话语的转录可被认为是完整语言序列。 阳0巧在阶段似期间,计算系统110生成语言模型120的第二组件160。第二组件160 的可能结果的范围,例如,具有非零出现概率的不同语言序列不局限于集合122中的查询 116,或者在一些实现方式中,不局限于任何预定集合。结果,第二组件160可被用来向比第 一组件150更大的语言序列集合指派评分。第二组件160可被配置成将评分指派给任意语 言序列,包括集合122中的查询116、集合124中的查询116和在训练数据114中未出现的 查询。
[0053] 因为第一组件150仅包括集合122中的查询116的评分130,所W需要第二组件 160来使得语言模型120可向其它语言序列指派评分。例如,为了高效使用语音识别,语言 模型120可能需要能够向任意查询116、查询116中的词语的真子集和在训练数据中未曾出 现的语言序列指派评分。第二组件160提供了允许语言模型120向比存储在第一组件150 中的语言序列集合更大的语言序列集合指派评分的灵活性。如下面所论述的,第二组件160 可向全部集合122中的查询116及其它查询指派评分。此能力可如下面进一步论述地用于 校准语言模型120。
[0054] 第二组件160可W是n元词串模型,例如,一元词串模型、二元词串模型、S元词串 模型,等等。例如,第二组件160可包括标识在训练数据114内出现的n元词串132的集合 的n元词串数据162。第二组件160还包括可用于向由一个或多个n元词串组成的语言序 列指派评分的概率数据164。例如,概率数据164可指示条件概率,该条件概率指示在给定 序列中的一个或多个其它词语的在先出现的情况下特定词语的出现概率。 阳化5] 在所图示的示例中,计算系统110基于查询116来生成二元词串模型。n元词串 132中的每一个是二元词串(例如,其中n为2的n元词串)。在一些实现方式中,第二组 件160可包括关于针对n的多个值的n元词串的数据,例如,包括关于针对一元词串、二元 词串和=元词串的概率的数据。
[0056] 计算系统110标识查询116内的各个二元词串。例如,查询"newmovietrailers" 包括二元词串"newmovie"和"movietrailers"。计算系统110然后确定各二元词串出现 在训练数据114中的次数的n元词串计数166。
[0057] 与计数118不同,n元词串计数166不是必须仅指示相应n元词串132作为完整查 询116出现的次数。更确切地说,每个计数166指示相应n元词串
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1