苹果在其机器学习日记中分享了关于如何通过融合用户地理位置信息来改进语音识别系统的内容。这篇日记主要关注技术产品开发过程中如何平衡技术和用户体验的问题,类似于产品经理记录AI应用开发过程的日记。在最新一期中,苹果讨论了如何让Siri根据用户所在的地理位置准确识别用户提到的周边地点名称。
近年来,随着深度学习技术的应用,自动语音识别(ASR)系统在通用语音识别方面的准确性得到了显著提高。然而,准确识别具体命名实体(如小型本地商户)仍然是一个挑战。这是因为实体名称可能只在训练数据中出现一次,或者根本没有出现,这使得现有的通用语言模型难以准确识别这些实体。
为了应对这一挑战,苹果提出了一种解决方案,即通过融合用户地理位置信息来提高Siri对本地兴趣点(POI)名称的识别能力。这种方法引入了一种称为基于地理位置的语言模型(Geo-LMs)的技术,该模型不仅可以利用传统的声学模型和通用语言模型提供的信息,还可以利用用户周围的环境信息,从而更准确地估计用户想要表达的单词序列。
引言
虚拟助手通常可以准确识别知名品牌和连锁店的名称,但对于数百万小型本地商户的名称识别则面临较大挑战。这是因为这些名称在训练数据中很少出现,导致通用语言模型无法准确识别它们。为了解决这个问题,苹果提出了将用户地理位置信息融合到语音识别系统中的方法,以提高对本地POI名称的识别准确率。
Siri如何使用基于地理位置的语言模型
苹果定义了一系列地理区域,并为每个区域构建了基于地理位置的语言模型(Geo-LMs)。当用户提出查询请求时,系统会根据用户的当前位置选择合适的Geo-LM。如果用户不在定义的地理区域内或无法访问定位服务,则系统将使用默认的全局Geo-LM。随后,选择的Geo-LM与声学模型结合,用于语音识别。
地理区域
苹果根据美国人口普查局的综合统计区域(CSAs)定义了地理区域,并为每个区域构建了Geo-LMs。这些模型不仅涵盖了所有CSA,还包含了一个覆盖所有未定义区域的全局Geo-LM。为了高效地搜索用户所在的CSA,苹果使用了一个基于栅格化地图边界的查找表,使得查找地理地位的计算复杂度为O(1)。
算法
Siri的语音识别系统采用了基于加权有限状态机(WFST)的解码器。该解码器使用了一种类语言模型,其中包含多个基于地理位置的槽语言模型(Slot LMs)。这些模型通过动态交换类非终结符来实现,提高了对特定地理区域内的实体名称的识别能力。
构建基于地理位置的语言模型
苹果通过将特定地理位置的训练文本插入通用语言模型来构建基于地理位置的语言模型(Geo-LMs)。这种方法避免了生成过大的模型,因为特定地理位置的模型通常较小。通过使用类语言模型框架,苹果能够快速构建和更新这些模型,使其适应不断变化的POI名称。
实验和结果
苹果在实验中展示了基于地理位置的语言模型的效果。结果显示,Geo-LMs在不降低通用测试集准确率的情况下,显著降低了本地POI名称的识别错误率。此外,实验还表明,Geo-LMs在处理更难识别的本地POI时表现出色,平均降低了超过40%的错误率。
结论
通过融合用户地理位置信息,苹果成功提高了Siri对本地POI名称的识别准确率。这种方法不仅提升了用户体验,还展示了技术产品开发过程中如何平衡技术能力和用户需求的重要性。