首页 / 用于名称发音的系统和方法

用于名称发音的系统和方法无效专利 发明

技术领域

[0002] 本申请涉及识别和合成语音,并且更具体地讲,涉及识别和合成名称的发音。

相关背景技术

[0003] 名称识别是语音识别的一个特别困难的方面。名称可包括人员、企业和其他实体的名称。名称的分布具有长尾现象。此外,对名称进行发音的方式可能是主观的,并取决于名称的来源。可能存在少数非常常见的名称,但是存在数量级更高的很罕见的名称。为了使语音识别系统对名称进行识别,通常需要语言学家转录由在其中部署语言识别系统的地区或语言所支持的语音字母表中的所有可能的发音。大多数现有的语音识别和合成系统具有最多至数百或数千个名称,而现今可能存在数百万个实际的独特名称在使用。
[0004] 当前的语音识别系统通常对名称识别建模,以支持任务,诸如基于用户设备的联系人应用程序中的命名条目进行电话拨号、搜索和查询、提醒,以及事件调度。要识别或合成名称,当前系统常使用字典或词典。这些字典或词典包含名称与它们可能的发音的映射。然而,如果名称尚未在语音词典中进行建模,则系统必须猜测发音。出于语音合成的目的,系统还可能需要猜测包含在名称中的各个音节上的重音。
[0005] 对于未在词典中明确建模的名称,语音识别系统通常依赖于使用复杂的字母到声音规则的发音猜测器。然而,因为某些语音单元对于特定语言是特有的,所以相同的名称可能被不同用户不同地发音。因此,现有系统不能够建立足够的发音猜测器来对来自不同语言和文化的名称的发音进行建模。在许多情况下,外国名称发音可能无法被正确地猜测,除非有明确的规则表现在猜测器内。

具体实施方式

[0038] 在各种具体实施中,本申请提供了系统、方法和设备,所述系统、方法和设备提供用户接口以有效和方便地配置名称的语音发音。在某些配置中,该接口使用处理器,该处理器实现一种用于将来自用户联系人的任意名称映射到多个单音节名称以构建该名称的正确发音的应用程序。可首先将名称分音节成多个单音节词,所述多个单音节词易于被用户以转录意图的语言来发音。音节可被认为是口头语言的单个元素,其包括由元音、双元音或音节辅音形成的单个不间断的声音。该声音可在之前有单个辅音或多个辅音,在之后有单个辅音或多个辅音,或者被单个辅音或多个辅音包围。
[0039] 在某些配置中,一种接口允许用户输入他们自己的单音节词以准确地呈现名称的发音。该接口可向用户呈现单音节词的序列,并且使用户能够选择各种单音节词以形成名称的总体发音。在某些具体实施中,该接口向用户提供与所选择的发音相关联的音频作为反馈,以使用户能够改善发音。
[0040] 该接口可允许用户选择一个或多个单音节词,和/或选择单音节词的特定序列,它们最佳地近似于用户的联系人列表中的名称的基础发音。该接口可包括触摸屏,以使用户能够高效地选择这些单音节词中的一个或多个。该接口可向用户提供发音的最佳猜测。在一个具体实施中,改善的发音被转录成由语音识别功能支持的语音字母表,并且被合并为用户的动态词汇的词典的一部分。
[0041] 该词典可被用作一种用于根据来自多个用户的输入对发音进行众包的过程的一部分。通过从多个用户采集与例如所使用的单音节词的类型、以及某些单音节词被使用的频率相关的发音数据,雇用语言学家的潜在显著成本可减小或消除,同时形成语音名称的更完备和相关的词典。名称发音系统还允许用户利用被更准确发音的名称来识别和合成日常任务,这与依赖于不合格的发音猜测器形成对照。
[0042] 图1为包括一种用户驱动的名称发音系统100的部件的图示。系统100包括用户接口102、处理器104、和数据存储装置106。用户接口102可包括被设置为提供用于供一个或多个用户与系统100通信的接口的硬件、软件、或其组合。处理器104可包括被设置用于处理系统100的数据、功能和/或应用程序的不止一个处理器。数据存储装置106可包括不止一个存储设备。
[0043] 在某些具体实施中,用户接口102允许用户与系统100进行交互。例如,用户接口102可包括用户输入设备,该用户输入设备可采用多种形式,诸如按钮、小键盘、拨号盘、点击式转盘、麦克风和/或触摸屏。用户接口102可包括输出设备,该输出设备可采用多种形式,诸如但不限于显示器、扬声器、换能器、耳机和/或振动发生器。在某些具体实施中,用户接口102被设置用于从用户接收口头输入和/或命令。用户接口102可通过一个或多个扬声器和/或耳机向用户输出音频信息。
[0044] 在某些具体实施中,处理器104包括被设置在用户设备内的一个或多个处理器。在其他具体实施中,处理器104可在多个设备中包括多个处理器。关于这种具体实施的另外细节在本文中稍后结合图3进行讨论。处理器104可控制各种功能(诸如本文稍后结合图2所讨论的功能)以及包括在系统100中的其他电路的操作。处理器104可驱动用户接口102的显示,并且可从用户接口102接收用户输入。在系统100的操作过程中,处理器104可接收、检索和/或发送数据,包括例如到和/或来自数据存储装置106的可执行代码。处理器104可包括编码器/解码器(编解码器)处理器以将数字音频信号转换成模拟信号来驱动用户接口102的扬声器,从而产生包括名称发音、语音、音乐和其他类似音频的声音。编解码器还可将来自用户接口102的麦克风的音频输入转换成数字音频信号。处理器可将数字音频信号作为数据文件存储在数据存储装置106中。编解码器可包括用于处理数字和/或模拟视频信号的视频编解码器。在一些配置中,处理器104包括在一个或多个用户设备、个人计算机和/或服务器中操作的一个或多个中央处理单元(CPU)。
[0045] 在某些具体实施中,数据存储装置106可存储媒体(例如,音乐和视频文件)、联系人信息(例如,联系人名称)、与联系人名称相关联的语音数据(例如,单音节词)、软件(例如,用于植入系统100的功能)、偏好信息(例如,媒体回放偏好)、交易信息(例如诸如信用卡信息这样的信息)、连接信息(例如,可以使得系统100的部件能够与另一系统建立通信的信息)、订阅信息(例如,保持对用户订阅的播客、电视节目或其他媒体的跟踪的信息),以及任何其他合适的数据。数据存储装置106可包括不止一个存储介质,其包括但不限于硬盘驱动器、永久性存储器(诸如ROM)、半永久性存储器(诸如RAM)、固态存储器、可移动存储器、CD-ROM、CD-RW、磁盘、固件、高速缓存,以及能够存储电子数据的其他类似设备。数据存储装置106可包括数据库。数据库可包括关系数据库管理系统(RDBMS)和/或结构化查询语言(SQL)数据库等等。
[0046] 图2为包括在用户驱动的发音系统(诸如例如图1的系统100)内运行的各种功能、应用程序和/或例程202-210的一种计算机处理环境200的图示。计算机处理环境200可包括发音猜测器202、语音识别器204、语音合成器206、联系人应用程序208、和其他应用程序210。
[0047] 在某些具体实施中,发音猜测器202对用于由词(诸如名称)的相关联的文本拼写来对该词进行发音的规则进行建模。发音猜测器可包括学习算法和/或技术,诸如但不限于隐马尔可夫模型、决策树分类器、和/或其他统计模型,其中音素或音素序列可与字母、字母序列、和/或词相关联以产生名称的发音。发音猜测器可利用与一种或多种语言相关联的数据和/或库来预测发音,所述数据和/或库包括来自例如数据存储装置106和/或312内的数据库的数据。
[0048] 在某些具体实施中,语音识别器204将用户说出的词转换为电子文本和/或数据。语音识别器204可被配置为识别来自特定用户的语音和/或识别普遍性地来自任何用户的语音。语音识别器204可与其他应用程序210结合使用,诸如例如用于发起电话呼叫(例如,“呼叫Bill”)的嗓音激活的拨号应用程序。其他应用程序210可包括设备控制(例如“挂断”)应用程序、搜索(例如“查找情歌”)应用程序、数据输入(例如“缅因街10号”)应用程序、语音到文本处理(例如输入电子邮件内容)应用程序、以及使用用户口头输入的任何类似的应用程序。语音识别器204可利用多个模型中的任一个,所述多个模型包括但不限于隐马尔可夫模型(HMM)、基于动态时间规整(DTW)的语音识别模型、和/或统计语音识别模型。语音识别器204可使用音素的上下文依赖关系、声道长度归一化(VTLN)、最大似然回归(MLLR)、异方差线性判别分析(HLDA)、贝叶斯网络、维特比算法、和/或用于语音识别的类似技术。
[0049] 在某些具体实施中,语音合成器206以电子方式生成人类语音。语音合成器206可以软件、硬件或它们的组合来实现。在一种配置中,合成器206将电子数据、电子文本、和/或符号性语言表示(诸如语音转录)转换成语音。合成器206可通过将来自诸如数据存储装置106和/或312内的数据库的所记录声音的部分连接在一起而生成口头词,诸如名称。语音合成器206可访问音子、双音子、词、词的单音节组成部分、和/或句子,以生成合成的音频输出和/或音频文件。合成器206可使用任何一种或多种技术来产生自然且可听懂的声音。所述技术可包括但不限于拼接合成、单元选择合成、双音子合成、单音节组成部分合成、域特定的合成、格式合成、发音合成、隐马尔可夫模型(EIMM)合成、和/或正弦波合成。合成器206可与一个或多个应用程序(诸如联系人应用程序208和其他应用程序210)一起使用。 是使用名称识别的一类应用程序,其由Cupertino,California的Apple Inc.提供。例如,用户可以说“查找来自Steve的电子邮件”或“打电话到Peter家”。
[0050] 在某些具体实施中,联系人应用程序208包括可存储于列表和/或数据库中的与用户相关联的一个或多个联系人。每个联系人可包括联系人名称、地址、电话号码、电子邮件(电邮)地址、和/或其他信息。每个联系人可包括“语音姓”和/或“语音名”字段。联系人应用程序208可以是与其他应用程序210交互的独立应用程序。例如,另一应用程序210可包括无线电话呼叫应用程序。联系人应用程序210可与呼叫应用程序交互,以发起打电话给从联系人应用程序208中选择的联系人。联系人应用程序208可与其他应用程序210集成。例如,所述其他应用程序210可包括电子邮件应用程序,电子邮件应用程序使用户能够发送和接收电子邮件和/或访问邮件服务器。联系人应用程序208可以是邮件应用程序的功能,其使用户能够将一个或多个联系人存储为具有相关联的信息,诸如联系人名称、地址、电话号码、电子邮件(电邮)地址、和/或其他信息。联系人应用程序和/或电子邮件应用程序可包括例如在由Cupertino,California的Apple Inc.制造销售的 和iPod 上实现的联系人和/或邮件应用程序。
[0051] 图3为包括一种用户驱动的名称发音系统300的一种网络的图示。系统300包括用户设备302、304和/或306,网络308,服务器310,和/或数据存储装置312。
[0052] 用户设备302、304和/或306可包括个人计算机(PC)、个人数字助理(PDA)、便携式计算设备、蜂窝电话、卫星电话、无绳电话、寻呼机、或能够实现图2的环境200的一个或多个功能的任何其他电子设备。用户设备302、304、和/或306可集成在其他设备或结构(诸如车辆、视频游戏系统、家电、衣服、头盔、眼镜、可穿戴服装、立体声系统、娱乐系统、或其他便携式设备)的封装内。用户设备302、304、和/或306的类型可包括例如由Cupertino,California的Apple Inc.制造销售的MacBook  和MacBook  等等,以及能够以有线和/或无线方式通信的任何其他设
备。
[0053] 用户设备302、304、和/或306可与例如远程计算系统或服务器310同步,以接收媒体和/或与用户发音相关的数据(使用无线或有线通信路径)。媒体可包括但不限于流格式和/或离散(例如,文件和数据包)格式的声音或音频文件、音乐、视频、多媒体、和数字数据。
[0054] 用户设备302、304、和/或306可包括用于有线和/或无线通信(例如,短距离通信和/或长距离通信)的通信电路。例如,无线通信电路可为Wi-FiTM使能电路,其允许根据802.11标准之一进行无线通信。作为所识别的协议的替代或除了所识别的协议之外,还可以使用其他无线网络协议标准。其他网络标准可包括蓝牙协议、全球移动通信系统(GSM)协议、码分多址(CDMA)协议、长期演进(LTE)协议、和/或基于4G的无线协议。
[0055] 可使用可操作地创建通信网络的任何合适的电路、设备、系统、或这些的组合(例如,无线通信基础设施,包括通信塔和电信服务器)来创建网络308。网络308可以能够使用任何合适的通信协议来提供通信。在一些实施例中,网络308、用户设备302、304、和/或306、以及服务器310可以支持例如传统的电话线路协议、有线电视协议、Wi-FiTM协议、以太网协议、蓝牙TM协议、高频系统(例如,900MHz、2.4GHz和5.6GHz通信系统)协议、红外线协议、传输控制协议/互联网协议(“TCP/IP”)(例如,在TCP/IP层中的每一个中使用的协议中的任一TM个)、超文本传输协议(“HTTP”)、BitTorrent 协议、文件传输协议(“FTP”)、实时传输协议(“RTP”)、实时流式传输协议(“RTSP”)、安全外壳协议(“SSH”)、任何其他通信协议、或它们的任意组合。
[0056] 在某些具体实施中,服务器310包括LINUX、UNIX、 或MAC OS操作系统中的一个或多个。服务器310可在一个计算机设备或多个计算机设备上实现。数据存储装置
312可包括一个或多个磁盘驱动器、固态存储器、易失性和/或非易失性存储器、存储盘阵列、和/或多个冗余存储元件。服务器310可包括在多个硬件服务器元件中分布和/或复制的虚拟服务器。
[0057] 在一个具体实施中,用户设备302、304、和/或306包括图1的部件102、104、和106中的一个或多个,以及图2的功能202、204、206、208、和210中的一个或多个。例如,用户设备302可包括作为独立的用户发音系统操作的便携式计算设备,其包括图1的部件102、104、和
106以及图2的功能202、204、206、208、和210中的全部。在一种配置中,用户设备302周期性地或在其他情况下访问数据存储装置312以获得与用户发音相关的数据,包括联系人名称、联系人信息(例如,地址、电子邮件地址、电话号码,等等)以及与联系人名称相关联的单音节组成部分。用户设备302可将与用户发音相关的数据本地地存储在数据存储装置106内和/或远程地存储在数据存储装置312内。
[0058] 在另一具体实施中,用户设备302和服务器312可协同地操作以实现图2的功能202、204、206、208、和210中的一个或多个。在一种配置中,用户设备302作为实现图2的环境
200的功能的客户端和/或服务器310的终端来操作。在另一种配置中,用户设备302和服务器310均执行图2的环境200的一个或多个功能。在又一种配置中,用户设备302执行图2的功能202、204、206、208、和210的一部分,而服务器310和/或数据存储装置312执行图2的功能
202、204、206、208、和210的另一部分。
[0059] 图4为一种用于生成来自联系人列表或用户输入的名称的语音发音的过程400的流程图。过程400的步骤中的一个或多个可由用户驱动的名称发音系统(诸如图1和图3的系统100和300)使用例如图2的功能202、204、206、208、和210中的一个或多个来实现。
[0060] 在一个具体实施中,用户设备(诸如用户设备302)包括联系人应用程序208,该联系人应用程序208包括一个或多个联系人名称。用户可访问联系人应用程序208以确定与所存储的联系人名称的文本相关联的语音发音。联系人名称可包括名和/或姓。某些设备(诸如 )提供语音名和语音姓字段供用户手动地插入语音拼写,从而确定联系人名称应当被如何发音。手动输入可能是耗时的,同时不能确保正确的发音被最终合成。
因此,将有利的是利用用户对他们的联系人的名称的熟悉度以及用户打算如何对此类名称进行发音来向用户提供有效且便利地呈现和清晰发出名称发音的一种方式。
[0061] 在某些具体实施中,用户可通过用户接口102在联系人应用程序208或其他应用程序210中选择名称,以为该名称分配正确的语音发音。发音猜测器202接收该名称(步骤402)。可替代地或除此之外,用户设备(诸如用户设备302)可包括用于接收口头名称和/或其他词的用户接口102。用户接口102可包括麦克风来接收用户提供的名称,该名称随后被提供给语音识别器204以将口头名称转换为文本。用户可说出名称(诸如例如“Philippe”),其随后被转换为电子数据和/或文本。“Philippe”的电子数据和/或文本然后可被发音猜测器202接收以进行进一步处理。所接收的名称可为联系人中的条目,例如用户设备302(诸如例如 )中联系人应用程序208的“姓”和/或“名”字段。所接收的名称可为与联系人应用程序208中的名称条目相关联的名称的记录。例如,可以具有显示在和/或位于名称旁边的图标,其允许用户将发音与该名称相关联。
[0062] 发音猜测器202然后过度生成一组与该名称相关联的可能的语音发音(步骤404)。例如,图4的特征414示出了词语“Hafs”的多个可能的发音。在一种配置中,发音猜测器202将一个或多个单音节组成部分映射到名称。映射可包括由包括在例如数据存储装置106和/或312中的数据库生成、关联和/或获得所述一个或多个单音节组成部分。数据库可包括关系数据库,该关系数据库存储一个或多个联系人名称、以及与每个联系人名称相关联和/或映射到每个联系人名称的一个或多个单音节组成部分和/或词。在某些配置中,发音猜测器
202可基于一个或多个地区和/或语言映射和/或生成可能的语音发音。例如,发音猜测器
202可以访问数据存储装置106和/或312中的数据库,该数据库包括多种语言(诸如英语、德语、法语等)中的语音发音词典。该词典可包括一种或多种语言中与名称相关联的单音节组成部分。例如,参见图5,名称“Philippe”可具有英语组成部分508“fill”和法语组成部分
506“leap”。
[0063] 接下来,所生成的可能语音发音的列表和/或集合被提供给例如识别器204,识别器执行对这些可能的语音发音的识别并选出正确语音翻译的最接近的可用的猜测(步骤406)。在一种配置中,识别器204使用受约束的语音识别。可基于有限的资源诸如有限的处理能力、对较快识别的需求、存储容量的可用性、语音发音词典的大小、和/或其他系统约束,采用受约束的识别。识别器204在确定最接近的可用的猜测过程中可考虑诸如用户位置这样的因素。例如,如果用户和/或用户设备302源自和/或基本上驻留在与特定语音或地区相关联的特定地理区域内,则识别器204在选择最接近的可用的猜测时可考虑位置。识别器
204还可在确定语言和/或地区以便选择名称的最接近的可用猜测时考虑用户对其他名称的语音发音的选择。
[0064] 在另一具体实施中,所生成的可能语音发音的列表和/或集合通过用户接口102被提供给用户。在一种配置中,用户接口102呈现语音发音的所述列表和/或集合,其包括一组单音节组成部分和/或词。
[0065] 图5为包括其单音节组成部分504、506、508、510、512、514、516、和518的名称502(例如“Philippe”)的显示500。音节可被认为是口头语言的单个元素,其包括由元音、双元音或音节辅音形成的单个不间断的声音。该声音可在之前有单个辅音或多个辅音、在之后有单个辅音或多个辅音、或者被单个辅音或多个辅音包围。名称502可为联系人应用程序208的联系人列表中的名。显示500可通过例如用户设备302的用户接口102提供。显示500可包括能够接收用于选择一个或多个单音节组成部分的用户输入的触摸屏。在这种情况下,名称502“Philippe”可包括单音节组成部分504“fee”、506“leap”、508“fill”、510“eap”、
512“philly”、和514“pay”。用户可选择单音节组成部分504“fee”和506“leap”以构建名称
502“Philippe”的语音发音。
[0066] 或者,用户可选择单音节组成部分508“till”和506“eap”以构建名称502“Philippe”的另一语音发音。作为另一个选项,用户可选择单音节组成部分512“play”和514“pay”以构建名称502“Philippe”的另一种语音发音。在一些具体实施中,显示500包括单音节组成部分516和518作为能够接收用户输入以限定单音节组成部分或词的用户可限定字段。可能存在发音猜测器不提供足以发出名称组成部分的音的单音节组成部分的情况。在这种情况下,用户接口102经由显示500可通过提供名称一部分的单音节发音的组成部分516和/或518来接收用户输入的词。在一些具体实施中,用户能够选择组成部分502-
518的任意组合来构建名称502“Philippe”的语音发音。
[0067] 如前所述,显示500可接收与一个或多个语言或地区相关联的单音节组成部分。通过呈现与一种或多种语言相关联的单音节组成部分,用户接口102经由显示500有效地向用户提供对于名称一部分的多种可能的可供选择的发音。所述一个或多个单音节组成部分可由发音猜测器202基于存储在数据存储装置106和/或312内的与一种或多种语言相关联的一个或多个词典和/或数据库生成。
[0068] 在某些配置中,用户接口102经由显示500基于所预测的用户偏好显示按次序和/或序列布置的单音节组成部分和/或其他词。例如,在图5中,单音节组成部分504“fee”可能基于用户对法语发音的偏好、基于用户地区、基于与用户相关联的语言、和/或基于由用户作出的对单音节组成部分的选择的先前类型而显示在组成部分508“fill”上方。在一些配置中,用户接口102经由显示500可以基于在一段时间内和/或特定位置中一组用户之间使用某些单音节组成部分的普遍性和/或频率来以特定序列和/或次序呈现单音节组成部分。
[0069] 在某些具体实施中,显示500可包括可与单音节词结合以形成语音发音的从数据存储装置106和/或312中的字典查找到的一个或多个多音节词。例如,组成部分620“money”(图6)和组成部分512“Philly”可被认为是可存在于也可以使用的预先存在的字典中的多音节(即,双音节)词。因此,可能不被认为是字典中的合法单音节词、但是可由合法单音节词构成的某些词可被包括并且呈现给用户以用于构建语音发音,其中用户可以能够基于类似的上下文来合理地发出单音节词的音。例如,词“Tim”可能是字典中的合法词,而词“nim”可能不是合法词,但是可基于辅音“t”已被辅音“n”替代的事实对“nim”如何发音做出合理的猜测。
[0070] 图6是关于另一名称602“Belyamani”的显示600的另一个例子,包括其单音节组成部分604-626。用户接口102经由显示600可显示名称602“Belyamani”和其单音节组成部分604-626中的一些或全部。名称602可为联系人应用程序208的联系人列表中的姓。在一种配置中,用户接口102接收用户对与名称602“Belyamani”的部分相关联的单音节组成部分
604-626中的一个或多个的选择。单音节组成部分604-626可基于用户的特性和/或一组用户的特性来布置。用户接口102可包括能够接收用户对这些单音节组成部分中的一个或多个的选择的触摸屏。用户接口102可包括能够接收用户输入的其他设备,诸如但不限于鼠标、小键盘、点击式转盘、麦克风等等。
[0071] 在一个具体实施中,用户接口102经由显示600可呈现这些单音节组成部分的一部分,而不呈现单音节组成部分的另一部分,除非或直到所述另一部分变得与用户选择相关。例如,显示600可最初仅显示组成部分604“bell”、610“bail”、616“bale”、和622。根据用户选择哪个组成部分,用户接口102经由显示600然后可显示其他组成部分606、608、612、614、
618、620、624、和626中的一个或多个。例如,如果用户选择组成部分604“bell”,那么用户接口可仅示出组成部分606“ya”、608“mani”、和620“money”,而不示出组成部分614“any”,因为用户接口102和/或发音猜测器202可能不认为组成部分614与组成部分604“bell”和/或组成部分606“ya”足够相关。
[0072] 在一些配置中,组成部分604-626中的任意一个或多个行或列可经由显示600来显示。例如,包括组成部分604、610、616、和622的第一列可被最初显示。一旦用户选择第一列的组成部分中的一个,包括组成部分606、612、618、和624的第二列便可以显示。第一列可从显示600中移除。一旦用户选择第二列的一组成部分,包括组成部分608、614、620、和626的第三列便可以显示,同时第二列的组成部分可从显示600中移除。单音节组成部分的另外的列可以以类似的方式呈现,以此类推。
[0073] 用户接口102可以使用类似的方式来显示行,诸如例如包括组成部分604、606、和608的行。单音节组成部分的其他部分和/或组可基于对一个或多个其他单音节组成部分的选择而动态地显示。在一些配置中,用户接口102经由显示600提供一个或多个单音节输入字段622、624、和626,以接收用户输入的单音节组成部分和/或词。在一种配置中,用户接口
102在数据存储装置(诸如数据存储装置106和/或数据存储装置312)中存储用户输入的单音节组成部分,以供用户通过用户接口102进行后续使用和/或供与其他用户设备(诸如用户设备304和306)相关联的其他用户进行后续使用。
[0074] 图7为包括其单音节组成部分704-720的又一个名称702“Hafsteinsson”的显示700。用户接口102经由显示700可以提供上文对于显示500和600如述的特征。在一些具体实施中,用户接口102经由显示700向用户提供包括名称的一个或多个构建的语音发音的列表以供选择。代替例如提供一组用户能选择的单音节组成部分704、706、和708,用户接口102提供包括组成部分704、706和708的构建语音发音,其为“yaf-stein-son”。
[0075] 同样,用户接口102经由显示700基于组成部分710、712和714提供其他构建的语音发音,诸如“Half-steen-sown”,依此类推。元件414提供了对于名称“Hafs”的多个发音的显示的例示。因此,用户接口102经由显示500、600或700可以提供其中名称可被发音的方式的列表,其包括单音节组成部分的各种组合。用户接口102经由显示700可以提供一个或多个单音节输入字段716、718、和720,以接收用户输入的单音节组成部分和/或词。
[0076] 返回到图4,一旦在步骤406中完成了名称发音选择和/或猜测,无论是通过使用受约束的识别来自动地识别和选择最接近的可用猜测,还是通过使用用户接口102向用户提供对用于构建名称的语音发音的可选单音节组成部分的显示,合成器206均接收和合成所选择的单音节组成部分以生成和/或构建名称的语音发音(步骤408)。名称的所构建的语音发音可为电子数据(诸如音频文件)的形式。在一种配置中,合成器202向用户接口102提供语音发音以进行音频展示和/或通过例如用户接口102的一个或多个扬声器回放给用户。
[0077] 响应于听到发音的名称,用户可以接受或拒绝所构建的语音发音(步骤410)。例如,用户接口102可以接收用户输入“同意”以接受名称的所提供的语音发音,或者接收用户输入“否定”以拒绝名称的所提供的语音发音。用户输入可通过用户输入设备(诸如触摸屏、鼠标、小键盘和/或音频输入)来提供。
[0078] 如果用户接受了语音发音,则用户驱动的发音系统(诸如系统100和/或300)将用户所选择的名称语音发音存储在例如数据存储装置106和/或312中以供后续使用和/或回放给用户(步骤412)。如果用户拒绝了与名称相关联的语音发音,则用户驱动的发音系统100和/或300返回到过程400的步骤406,以确定下一个可用的最接近猜测或者允许用户选择名称的单音节组成部分的新布置。因此,在某些具体实施中,可迭代地执行步骤406至
410,直到用户对名称的特定语音发音感到满意。
[0079] 一般来讲,本文的系统和方法启用用户驱动的名称发音。多种技术允许用户说出可被电子设备识别和合成为名称的更准确且合适的发音的名称。这些技术还允许设备向用户提供名称可被发音的方式的列表,使得用户可以选择更准确的发音。此外,本文的系统和方法提供用户接口,所述用户接口允许用户选择与名称相关联的一个或映射的单音节组成部分,以通过电子设备构建名称的更准确发音。
[0080] 图8为一种用于确定名称的语音发音的系统800的图示。系统800包括发音猜测器802、语音映射器804、和受约束识别器806。发音猜测器802还包括多个发音猜测器808、810、和812。发音猜测器中的每一个与特定语言和/或地区相关联。例如,猜测器808可与法语相关联并且采用法语语音字母表来猜测发音。猜测器810可与德语相关联并且采用德语语音字母表来猜测发音。猜测器812例如可与英语相关联并且采用英语语音字母表来猜测发音。
[0081] 在某些具体实施中,发音猜测器802包括图2的发音猜测器202。受约束识别器806可包括图2的识别器204。另外,语音映射器804可被包括图2的部件202-210的任意一者或多者中。此外,部件802-812的功能和/或操作中的任何一者可通过一个或多个处理器(诸如例如图1的处理器104)来实现。
[0082] 在某些具体实施中,用户经由接口102可以说出和/或提供以某种方式发音的名称的音频表示(例如,记录)。接口102可以接收名称和对用户选择的名称发音方式的记录。接口102可以接收被传送通过所述一个或多个猜测器808、810、和812的名称的文本输入。对名称发音方式的记录然后可从由所述一个或多个猜测器808、810、和812猜测的发音和/或地区(在语音映射到目标地区之后)的受约束列表中识别。系统800然后可识别最佳地与用户说出名称的方式匹配的发音。
[0083] 更具体地讲,受约束识别器806可以选择最佳匹配和/或基本上接近被说出和/或被提供名称的匹配。可通过多个发音猜测器808、810、和812来生成发音猜测的受约束列表。虽然图8示出了三个猜测器,但猜测器的数量可以从一个猜测器变化到可有效地被系统800支持的任意数量的猜测器。
[0084] 在某些具体实施中,名称被传送通过多个猜测器808、810、和812,所述多个猜测器支持特定语言或地区的字符集(例如,英文名称在日文地区中可能得不到好的表达,但在法文地区中将得到较好的表达)。来自与不同语言和/或地区相关联的每个发音猜测器810和812的发音猜测然后被映射器804映射到目标地区的语音字母表,诸如例如与发音猜测器
808相关联的语音字母表。该映射算法和/或过程由映射器804单元完成,该映射器单元将来自每个猜测器810和812的语音字母表的声音单元和/或音素映射到目标猜测器808的语音字母表及其相关联的语音字母表。映射器804可以映射多种语音组成部分,诸如但不限于声音单元、音素、单音节组成部分、具有重音类型的音节组成部分、词的部分,等等。受约束识别器806然后可以执行受约束识别,以从这些过度生成的发音中选出最佳匹配。
[0085] 在另一方面,由例如合成器206使用名称发音来进行识别以及语音合成。在进行语音合成的情况下,要被映射到的语音字母表可能与识别字母表不同。对于语音合成,语音字母表是被用于呈现口头发音的语音合成器支持的字母表。在一种配置中,合成器206和/或图2的其他部件中的任一个在基于语音合成字典合成名称时猜测音节重音。音节重音可源于特定于语言和/或地区的一组规则。例如,名称“Obama”包括声音单元“o”、“bam”、和“a”。第一个声音单元“o”可被重读,使得该名称被发音为“Ohh-bam-a”。或者,该名称的最后一个单元可被重读,使得该名称被发音为“O-bam-Ahh”。在某些配置中,系统800和/或100包括被重读或不被重读的多个声音单元。这多个声音单元可作为可供选择的能选择的组成部分(如同例如图5-7中示出的组成部分)而呈现给用户。在一些具体实施中,系统800可将多个发音呈现给用户,包括具有用户可选择的被重读和不被重读的声音单元的发音。
[0086] 在又一个方面,处理器(诸如处理器104)可以约束猜测器808、810、和/或812的数目和/或列表,以通过使用删减和/或减少猜测器808、810、和/或812的数目的语言识别过程和/或功能来传递名称。语言识别过程和/或功能可提供对与名称最佳匹配的语言和/或地区进行评估的分数和/或将该分数排序。处理器104然后可以删减和/或缩小猜测器的列表以约束猜测器的数目。这在系统800和/或100具有的使系统800和/或100能够更快速且有效地向用户提供名称发音的能力受限(例如处理能力、存储器和其他资源)的情况下可能是有利的。
[0087] 图9为一种用于生成名称的语音发音的过程900的流程图。系统(诸如系统800)可包括和/或设有多个发音猜测器808、810、和/或812,其中发音猜测器808、810、和/或812中的每一个与语言或地区的特定语音字母表相关联(步骤902)。处理器(诸如处理器104)确定与用户相关联的语言或地区(步骤904),并且将第一语音字母表与同用户相关联的语言或地区相关联(步骤906)。可以通过制造商输入、服务提供方输入、用户输入、对与系统800和/或100的位置相关联的地理区域的检测、对由用户输入的名称和/或其他词的类型的分析等等来确定语言和/或地区。
[0088] 发音猜测器808、810、和/或812中的每一个接收名称的表示(步骤908)。该表示可为正字表示。这多个发音猜测器808、810、和/或812中的每一个猜测名称的一个或多个组成部分的语音发音(步骤910)。然后,语音映射器804将由这多个发音猜测器808、810、和812中的每一个所猜测的名称的一个或多个组成部分的语音发音映射到第一语音字母表,以生成所猜测的发音的列表(步骤912)。在某些配置中,映射器804和/或处理器104可以接收在与第一语音字母表和/或另一语音字母表相关联的词典中由语言学家转录的语音发音,其可被包括在所猜测的发音的列表中。识别器(诸如识别器806)可接收名称的音频发音(步骤914),然后从所猜测的发音的列表中选择在发音时基本上和/或最佳地匹配名称的音频发音的组成部分的组合(步骤916)。
[0089] 名称的这一个或多个组成部分中的每一个可包括声音单元、音素、单音节组成部分、具有特定类型重音的单音节组成部分、以及词的一部分中的至少一者。处理器102可识别与用户相关联的语言或地区。发音猜测器808、810、和/或812的数量可基于与用户相关联的语言或地区来确定。多个发音猜测器808、810、和/或812中的每一个的类型可根据与用户相关联的语言或地区来确定。发音猜测器的类型可包括与发音猜测器相关联的语言或地区的类型。
[0090] 图10为用于根据用户对名称的单音节组成部分的选择而生成名称的语音发音的另一过程1000的流程图。系统(诸如图1的系统100)可将语音发音与名称相关联。系统100可包括被设置用于接收名称的用户接口102(步骤1002)。该系统还可包括被设置用于将名称映射到多个单音节组成部分的处理器104,所述多个单音节组成部分能够组合以构建名称的语音发音(步骤1004)。用户接口102还可被设置用于接收用户输入以选择这多个单音节组成部分中的一个或多个(步骤1006)。此外,处理器104可被设置用于组合这多个单音节组成部分中的所选择的一个或多个以构建名称的语音发音(步骤1008)。
[0091] 在一种配置中,用户接口102被设置用于向用户提供语音发音。用户接口102可被设置用于接收第二用户输入以选择或拒绝该语音发音。用户接口102还可被设置用于向用户显示这多个单音节组成部分的第一部分。用户接口102还可被设置用于响应于用户对这多个单音节组成部分的第一部分之一的选择来显示单音节组成部分的第二部分。
[0092] 处理器104可被设置用于接收来自联系人应用程序208的联系人列表和/或与用户相关联的其他应用程序210的名称。该名称可为文本格式的。处理器104可被设置用于查询数据存储装置106和312,所述数据存储装置包括与名称相关联的单音节组成部分中的一个或多个。单音节组成部分可包括与一种或多种语言和/或地区相关联的组成部分。对名称的语音发音的构建可包括生成音频文件。
[0093] 图11为一种用于确定与名称的语音发音相关联的使用信息的过程1100的流程图。一种用于确定名称的语音发音的使用的系统(诸如图3的系统300)可包括被设置用于接收名称的服务器310(步骤1102)。系统300可包括被设置用于存储与名称相关联的一个或多个语音发音的数据存储装置312(步骤1104)。服务器310可被设置用于从一个或多个用户设备
302、304、和306接收与名称相关联的所述一个或多个语音发音的指示(步骤1106),并确定与同名称相关联的所述一个或多个语音发音相关联的使用数据(步骤1108)。
[0094] 该指示可包括所述一个或多个语音发音。该指示可包括来自所述一个或多个用户设备302、304、和306的对所述一个或多个语音发音的选择。使用数据可包括所述指示在一段时间期间被接收的实例的量。服务器310可被设置用于根据使用数据向第一用户设备302提供与名称相关联的语音发音中的至少一个。
[0095] 根据一些实施例,图12示出了根据如上所述的本发明的原理配置的一种电子设备1200的功能框图。该设备的功能块可由硬件、软件或硬件软件组合来实现,用于执行本发明的原理。本领域的技术人员将理解,图12中所描述的功能块可被组合或分割成子块,以实现如上所述的本发明的原理。因此,本文的描述可支持本文所述功能块的任何可能的组合或分割或进一步限定。
[0096] 如图12中所示,电子设备1200包括输入接收单元1202和输出单元1203,它们每一个均耦接到处理单元1206。在一些具体实施中,处理单元1202包括名称接收单元1208、映射单元1210、组合单元1212、数据存储装置查询单元1214、以及音频文件生成单元1216。在一些具体实施中,输出单元1203包括视觉输出单元1205和音频输出单元1207。
[0097] 处理单元1206被配置为:接收名称(例如,使用名称接收单元1208);以及将名称映射到多个单音节组成部分(例如,使用映射单元1210),其中这多个单音节组成部分的至少一子集能够组合以构建名称的语音发音。输入接收单元1202被配置为接收选择这多个单音节组成部分中的一个或多个的用户输入。处理单元1206被进一步配置为将这多个单音节组成部分中所选择的一个或多个进行组合,以构建名称的语音发音(例如,使用组合单元1212)。在一些具体实施中,构建语音发音包括生成音频文件(例如,使用音频文件生成单元
1216)。
[0098] 在一些具体实施中,名称接收单元1208被配置为接收来自与用户相关联的联系人列表的名称。在一些具体实施中,名称包括姓和名中的至少一者。
[0099] 在一些具体实施中,输出单元1203被配置为输出语音发音(例如,使用音频输出单元1207)。在一些具体实施中,输入接收单元1202被配置为接收第二用户输入以选择或拒绝所述语音发音。在一些具体实施中,输出单元1203被进一步配置为显示这多个单音节组成部分的第一部分(例如,使用视觉输出单元1205)。在一些具体实施中,输出单元1203被进一步配置为响应于用户对这多个单音节组成部分的第一部分之一的选择(例如,由输入接收单元1202所接收的)而显示这多个单音节组成部分的第二部分。
[0100] 在一些具体实施中,处理单元1206被进一步配置为查询包括所述单音节组成部分中的一个或多个的数据存储装置(例如,使用数据存储装置查询单元1214)。在一些具体实施中,单音节组成部分包括与一种或多种语言或地区相关联的组成部分。在一些具体实施中,处理单元1206被进一步配置为
[0101] 根据一些实施例,图13示出了根据如上所述的本发明的原理配置的一种电子设备1300的功能框图。该设备的功能块可由硬件、软件或硬件软件组合来实现,用于执行本发明的原理。本领域的技术人员将理解,图13中所描述的功能块可被组合或分割成子块,以实现如上所述的本发明的原理。因此,本文的描述可支持本文所述的功能块的任何可能的组合或分割或进一步限定。
[0102] 如图13中所示,电子设备1300包括耦接到处理单元1306的输入接收单元1302。在一些具体实施中,处理单元包括发音猜测单元1307-n、语言/地区确定单元1308、语言/地区关联单元1310、映射单元1312、以及发音选择单元1314。在一些具体实施中,发音猜测单元1307-n中的每一个与语言或地区的相应语音字母表相关联。
[0103] 输入接收单元1302被配置为接收名称的音频发音。处理单元1306被配置为:确定用户语言或用户地区(例如,使用语言/地区确定单元1308);将第一语音字母表与用户语言或用户地区相关联(例如,使用语言/地区关联单元1310);在每个发音猜测单元1307-n处接收名称的表示;在每个发音猜测单元1307-n处猜测名称的一个或多个组成部分的语音发音;以及将由这多个发音猜测单元中的每一个所猜测的名称的这一个或多个组成部分的语音发音映射到第一语音字母表以生成所猜测的发音的列表(例如,使用映射单元1312)。处理单元1306被进一步配置为从所猜测的发音的列表选择在发音时基本上匹配名称的音频发音的组成部分的组合(例如,使用发音选择单元1314)。
[0104] 在一些具体实施中,名称的所述一个或多个组成部分包括声音单元、音素、单音节组成部分、具有特定类型重音的单音节组成部分、以及词的一部分中的至少一者。在一些具体实施中,确定用户语言或用户地区包括接收识别用户语言或用户地区的输入(例如,使用输入接收单元1302)。在一些具体实施中,这多个发音猜测单元1307-n由处理单元1306基于用户语言或用户地区来选择。
[0105] 根据一些实施例,图14示出了根据如上所述的本发明的原理配置的一种电子设备1400的功能框图。该设备的功能块可由硬件、软件或硬件软件组合来实现,用于执行本发明的原理。本领域的技术人员将理解,图14中所描述的功能块可被组合或分割成子块,以实现如上所述的本发明的原理。因此,本文的描述可支持本文所述的功能块的任何可能的组合或分割或进一步限定。
[0106] 如图14中所示,电子设备1400包括处理单元1406、耦接到处理单元1406的存储单元1402、以及耦接到处理单元1406的指示接收单元1403。在一些具体实施中,电子设备1400还包括耦接到处理单元1406的数据输出单元1405。在一些具体实施中,处理单元1406包括名称接收单元1408、使用数据确定单元1410、映射单元1412、以及发音选择单元1414。
[0107] 存储单元1402被配置为存储与名称相关联的一个或多个语音发音。指示接收单元1403被配置为接收来自一个或多个用户设备的与名称相关联的所述一个或多个语音发音的指示。在一些具体实施中,指示包括所述一个或多个语音发音中的至少一个。在一些具体实施中,指示包括来自所述一个或多个用户设备的对所述一个或多个语音发音中的至少一个的选择。
[0108] 处理单元1406被配置为接收名称(例如,使用名称接收单元1408),并确定与同名称相关联的一个或多个语音发音相关联的使用数据(例如,利用使用数据确定单元1410)。在一些具体实施中,使用数据包括所述指示在一段时间期间被接收的实例的量。
[0109] 在一些具体实施中,数据输出单元1405被配置为根据使用数据向远离电子设备的第一用户设备提供与名称相关联的语音发音中的至少一个。
[0110] 对于本领域的普通技术人员将显而易见的是,本申请中所涉及的系统和方法可实现在计算机程序产品中,所述计算机程序产品包括计算机可用的、非暂态、和/或可读介质。例如,这样的计算机可用介质可由具有存储在其上的计算机可读程序代码的只读存储器设备(诸如CD ROM盘或常规ROM设备)、或者随机存取存储器(诸如硬盘驱动器或计算机磁盘)、或者闪存存储器设备组成。
[0111] 应当理解,前述附图和说明的各种特征、元素或过程是可互换或可组合的,用于实现或实践本文所述的具体实施。本领域的技术人员将会知道,本申请的各方面可通过除所介绍的具体实施之外的具体实施来实践,所介绍的具体实施被呈现的目的在于说明而非限制,并且所述方面仅由以下权利要求限制。

当前第1页 第1页 第2页 第3页