一种翻译方法、可读存储介质和电子设备转让专利

申请号 : CN202210382485.X

文献号 : CN115545049B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈贵龙詹长静

申请人 : 荣耀终端有限公司

摘要 :

本申请涉及计算机技术领域,公开了一种翻译方法、可读介质和电子设备,应用于翻译文本的场景。在用户复制文本后,电子设备可以根据用户复制的文本中的各文本序列的文本类型来确定用户复制文本的意图,并在确定出用户复制文本的意图是用于翻译的情况下,获取用户复制的文本的译文并展示给用户。由于判断用户复制的文本中的文本序列的文本类型不需要构建大型的语言模型,也不需要加载覆盖多个语种的词典,可以减小电子设备确定用户复制文本的意图所消耗的硬件资源、提高电子设备确定用户复制文本的意图的速度,从而提高翻译速度,提升用户体验。

权利要求 :

1.一种翻译方法,其特征在于,包括:

第一电子设备显示第一界面,所述第一界面中包括第一文本,所述第一文本包括至少一个文本序列;

所述第一电子设备检测到用户对所述第一文本的第一操作,所述第一操作用于将所述第一文本写入所述第一电子设备的剪贴板;

所述第一电子设备基于所述至少一个文本序列中的样本文本序列所包括的字母或者字母组合的语种概率,确定样本文本序列的文本类型是否满足翻译触发条件,其中所述语种概率用于指示字母或字母组合在通过拆分至少一个语种的单词得到的字母库或字母组合库中出现的概率;

对应于所述样本文本序列的文本类型满足翻译触发条件,显示翻译控件,并且所述第一电子设备在检测到用户对所述翻译控件的第二操作的情况下,显示第一窗口,所述第一窗口包括所述第一文本的译文。

2.根据权利要求1所述的方法,其特征在于:

在所述第一文本包括的文本序列的数量小于预设数量的情况下,所述样本文本序列包括所述第一文本中的全部文本序列;

在所述第一文本包括的文本序列的数量大于或等于所述预设数量的情况下,所述样本文本序列包括所述第一文本中的预设数量个文本序列。

3.根据权利要求1所述的方法,其特征在于,所述对应于所述样本文本序列的文本类型满足翻译触发条件,显示翻译控件,包括:所述第一电子设备在各所述样本文本序列的文本类型满足翻译触发条件的情况下,获取所述第一文本的译文并显示翻译控件。

4.根据权利要求1所述的方法,其特征在于,所述文本类型包括自然语言类型、非自然语言类型。

5.根据权利要求4所述的方法,其特征在于,所述翻译触发条件包括下列中的至少一项:所述样本文本序列中,文本类型为自然语言的样本文本序列的比例大于预设比例;

所述样本文本序列中的第一样本文本序列的序列长度小于预设序列长度,其中,所述第一样本文本序列为文本类型是非自然语言的样本文本序列中,序列长度最长的样本文本序列。

6.根据权利要求4所述的方法,其特征在于,所述第一电子设备通过以下方式确定所述样本文本序列的文本类型:所述第一电子设备将所述样本文本序列按顺序拆分为字母或字母组合,并根据各字母或各字母组合的语种概率,确定所述样本文本序列为自然语言的概率;

所述第一电子设备根据所述样本文本序列是自然语言的概率,确定所述样本文本序列的困惑度;

所述第一电子设备在所述样本文本序列的困惑度小于困惑度阈值,或者所述样本文本序列的困惑度大于或等于所述困惑度阈值并且所述样本文本序列存在于预设的附加词典中的情况下,确定所述样本文本序列为自然语言。

7.根据权利要求1至6中任一项所述的方法,其特征在于,所述第一电子设备在基于所述第一文本的特征参数,确定出所述第一文本不存在异常的情况下,基于所述样本文本序列所包括的字母或者字母组合的语种概率,确定样本文本序列的文本类型是否满足翻译触发条件,其中,所述第一文本的特征参数,包括以下参数中的至少一个:所述第一文本的文本长度、所述第一文本是否以特殊字符开头、所述第一文本中特殊字符的比例、所述第一文本是否以数字开头、所述第一文本中数字的比例。

8.根据权利要求7所述的方法,其特征在于,所述第一电子设备在所述第一文本的特征参数满足以下条件中的至少一个时,确定所述第一文本存在异常:所述第一文本的文本长度大于预设文本长度;

所述第一文本以特殊字符开头;

所述第一文本中特殊字符的比例大于预设特殊字符比例;

所述第一文本以数字开头;

所述第一文本中数字的比例大于预设数字比例。

9.根据权利要求7所述的方法,其特征在于,所述第一电子设备是基于二分类模型来确定第一文本是否存在异常,其中,所述二分类模型包括以下模型中的任意一种:逻辑回归模型、k最近邻模型、决策树模型、支持向量机模型、朴素贝叶斯模型。

10.根据权利要求1所述的方法,其特征在于,所述第一电子设备是基于N‑gram模型确定所述样本文本序列的文本类型。

11.一种可读存储介质,其特征在于,所述可读存储介质上存储有指令,所述指令在电子设备上执行时使所述电子设备实现权利要求1至10中任一项所述的翻译方法。

12.一种电子设备,其特征在于,包括:

存储器,用于存储由电子设备的一个或多个处理器执行的指令;

以及处理器,是所述电子设备的处理器之一,用于执行所述存储器中存储的指令以使电子设备实现权利要求1至10中任一项所述的翻译方法。

说明书 :

一种翻译方法、可读存储介质和电子设备

技术领域

[0001] 本申请涉及计算机技术领域,特别涉及一种翻译方法、可读存储介质和电子设备。

背景技术

[0002] 翻译,尤其是机器翻译,对于经常需要查阅外文文献的用户有很大的需求。电子设备中的翻译应用可以满足这些用户群体的翻译需求,将需要查询的单词或语句翻译成目标语言,从而为用户带来极大的便利。
[0003] 为了避免用户在翻译单词或语句时在阅读文本的应用程序和翻译应用间进行切换,电子设备在用户复制文本后,识别出用户复制文本的意图是用于翻译后,获取用户复制的文本的翻译结果并显示翻译控件,用户通过对翻译控件的操作即可查看用户复制的文本的翻译结果。
[0004] 例如,参考图1,手机在检测到用户选中并复制文本“Patent Law”后,可以识别用户复制文本的意图并显示识别的悬浮窗,在识别出用户复制该文本的意图是用于翻译后,获取该文本的翻译结果并显示翻译控件,并在检测到用户对翻译控件的操作后,在翻译窗口显示文本“Patent Law”的翻译结果“专利法”。
[0005] 然而,由于外文的语种较多、单词/句式多样,而电子设备,尤其是终端设备,硬件计算资源有限,不易通过逻辑复杂、运算量高的算法来识别用户复制文本的意图。因此,如何利用更少的计算资源来快速、准确地识别出用户的翻译意图,是亟需解决的问题。

发明内容

[0006] 有鉴于此,本申请实施例提供了一种翻译方法、可读存储介质和电子设备。通过用户复制的文本中的各个文本序列的文本类型,来确定用户复制的文本是否为自然语言,从而确定用户复制文本的意图,有利于减小电子设备确定用户复制文本的意图所消耗的硬件资源、提高电子设备确定用户复制文本的意图的速度,从而提高翻译速度,提升用户体验。
[0007] 第一方面,本申请实施例提供了一种翻译方法,该方法包括:第一电子设备显示第一界面,第一界面中包括第一文本,第一文本包括至少一个文本序列;第一电子设备检测到用户对第一文本的第一操作,第一操作用于将第一文本写入第一电子设备的剪贴板;第一电子设备基于上述至少一个文本序列中的样本文本序列所包括的字母或者字母组合的语种概率,确定样本文本序列的文本类型是否满足翻译触发条件,其中语种概率用于指示字母或字母组合在通过拆分至少一个语种的单词得到的字母库或字母组合库中出现的概率;对应于样本文本序列的文本类型满足翻译触发条件,显示翻译控件,并且第一电子设备在检测到用户对翻译控件的第二操作的情况下,显示第一窗口,第一窗口包括第一文本的译文。
[0008] 在本申请实施例中,第一电子设备是通过第一文本中的样本文本序列的文本类型来确定是否满足翻译触发条件(即判断用户复制第一文本的意图是否是用于翻译),而无需运行大型语言模型来判断整个第一文本是否为自然语言来确定用户复制第一文本的意图,也不用通过加载各语种的词典来确定样本文本序列的文本类型,可以减小电子设备确定用户复制文本的意图所消耗的硬件资源、提高电子设备确定用户复制文本的意图的速度,从而提高翻译速度,提升用户体验。
[0009] 示例性地,字母或字母组合的语种概率可以是下文中字母组合的条件概率。
[0010] 在上述第一方面的一种可能实现中,在第一文本包括的文本序列的数量小于预设数量的情况下,样本文本序列包括第一文本中的全部文本序列;在第一文本包括的文本序列的数量大于或等于预设数量的情况下,样本文本序列包括第一文本中的预设数量个文本序列。
[0011] 在本申请实施例中,在第一文本中的文本序列数量小于预设数量时,样本文本序列可以包括第一文本中的所有文本序列,第一电子设备可以基于第一文本中的所有文本序列的文本类型来确定是否满足翻译触发条件,而在第一文本包括的文本序列的数量较多时,可以只基于第一文本中的预设数量的文本序列(即样本文本序列)的文本类型来确定是否满足翻译触发条件,可以提高第一电子设备确定用户复制文本的意图的速度,从而提高翻译速度。
[0012] 在上述第一方面的一种可能实现中,对应于样本文本序列的文本类型满足翻译触发条件,显示翻译控件,包括:第一电子设备在各样本文本序列的文本类型满足翻译触发条件的情况下,获取第一文本的译文并显示翻译控件。
[0013] 在本申请实施例中,第一电子设备在确定出用户复制文本的意图是用于翻译(即样本文本序列的文本类型满足翻译触发条件)时获取第一文本的译文(例如从第一电子设备中的翻译应用或能够提供翻译功能的服务器)并显示翻译控件,以便于在检测到用户对翻译控件的第二操作时即可以显示第一文本的译文,减少了用户的等待时间,提升了用户体验。
[0014] 在上述第一方面的一种可能实现中,上述文本类型包括自然语言类型、非自然语言类型。
[0015] 在上述第一方面的一种可能实现中,上述翻译触发条件包括下列中的至少一项:样本文本序列中,文本类型为自然语言的样本文本序列的比例大于预设比例;样本文本序列中的第一样本文本序列的序列长度小于预设序列长度,其中,第一样本文本序列为文本类型是非自然语言的样本文本序列中,序列长度最长的样本文本序列。
[0016] 在上述第一方面的一种可能实现中,上述第一电子设备通过以下方式确定样本文本序列的文本类型:第一电子设备将样本文本序列按顺序拆分为字母或字母组合,并根据各字母或各字母组合的语种概率,确定样本文本序列为自然语言的概率;第一电子设备根据样本文本序列是自然语言的概率,确定样本文本序列的困惑度;第一电子设备在样本文本序列的困惑度小于困惑度阈值,或者样本文本序列的困惑度大于或等于困惑度阈值并且样本文本序列存在于预设的附加词典中的情况下,确定样本文本序列为自然语言。
[0017] 在本申请实施例中,是基于样本文本序列的困惑度来确定样本文本序列的文本类型,可以避免随着文本序列的数量增加而导致判断不准确的情况下,提升确定样本文本序列的文本类型的准确度,从而提高确定出的用户复制文本的意图的准确性,提升用户体验。
[0018] 此外,对于在确定各字母或字母组合的语种概率时未使用的单词,可以增加到附加词典中,可以避免将该未使用的单词确定为非自然语言,提高样本文本序列的文本类型的准确度,从而提升确定出的用户复制文本的意图的准确性,提升用户体验。
[0019] 在上述第一方面的一种可能实现中,上述第一电子设备在基于第一文本的特征参数,确定出第一文本不存在异常的情况下,基于样本文本序列所包括的字母或者字母组合的语种概率,确定样本文本序列的文本类型是否满足翻译触发条件,其中,第一文本的特征参数,包括以下参数中的至少一个:第一文本的文本长度、第一文本是否以特殊字符开头、第一文本中特殊字符的比例、第一文本是否以数字开头、第一文本中数字的比例。
[0020] 在本申请实施例中,第一电子设备先基于第一文本的特征参数,先对第一文本进行初次筛选,以排除明显不是自然语言的第一文本(即存在异常),从而使得对于存在异常的第一文本,无需再基于样本文本序列所包括的字母或者字母组合的语种概率,确定样本文本序列的文本类型是否满足翻译触发条件,提高第一电子设备确定用户复制文本的意图的速度,提升用户体验。
[0021] 在上述第一方面的一种可能实现中,上述第一电子设备在第一文本的特征参数满足以下条件中的至少一个时,确定第一文本存在异常:第一文本的文本长度大于预设文本长度;
[0022] 第一文本以特殊字符开头;第一文本中特殊字符的比例大于预设特殊字符比例;第一文本以数字开头;第一文本中数字的比例大于预设数字比例。
[0023] 在上述第一方面的一种可能实现中,第一电子设备是基于二分类模型来确定第一文本是否存在异常,其中,二分类模型包括以下模型中的任意一种:逻辑回归模型、k最近邻模型、决策树模型、支持向量机模型、朴素贝叶斯模型。
[0024] 在上述第一方面的一种可能实现中,第一电子设备是基于N‑gram模型确定样本文本序列的文本类型。
[0025] 第二方面,本申请实施例提供了一种可读存储介质,该可读存储介质上存储有指令,指令在电子设备上执行时使电子设备实现上述第一方面及上述第一方面的各种可能实现提供的任意一种翻译方法。
[0026] 第三方面,本申请实施例提供了一种电子设备,该电子设备包括:存储器,用于存储由电子设备的一个或多个处理器执行的指令;以及处理器,是电子设备的处理器之一,用于执行存储器中存储的指令以使电子设备实现上述第一方面及上述第一方面的各种可能实现提供的任意一种翻译方法。

附图说明

[0027] 图1根据本申请的一些实施例,示出了一种翻译界面触发示意图;
[0028] 图2A至图2E根据本申请的一些实施例,示出了开启手机10的复制翻译功能的过程中,手机10显示的界面示意图;
[0029] 图2F根据本申请的一些实施例,示出了手机10提示用户开启复制翻译功能的界面示意图;
[0030] 图3根据本申请的一些实施例,示出了语言模型20的训练过程示意图;
[0031] 图4根据本申请的一些实施例,示出了在语言模型20为2‑gram语言模型的情况下,训练语言模型20的流程示意图;
[0032] 图5根据本申请的一些实施例,示出了一种翻译方法的流程示意图;
[0033] 图6根据本申请的一些实施例,示出了又一种翻译界面触发示意图;
[0034] 图7根据本申请的一些实施例,示出了另一种翻译方法的流程示意图;
[0035] 图8根据本申请的一些实施例,示出了再一种翻译界面触发示意图;
[0036] 图9根据本申请的一些实施例,示出了又一种翻译方法的流程示意图;
[0037] 图10根据本申请的一些实施例,示出了再一种翻译方法的流程示意图;
[0038] 图11根据本申请的一些实施例,示出了一种手机10的软件架构示意图;
[0039] 图12根据本申请的一些实施例,示出了一种手机10的结构示意图。

具体实施方式

[0040] 本申请的说明性实施例包括但不限于翻译方法、可读存储介质和电子设备。
[0041] 为了便于理解,首先对本申请实施例涉及的术语进行介绍。
[0042] (1)自然语言
[0043] 自然语言通常是指一种自然地随文化演化的语言,例如汉语、英语、法语、德语、西班牙语、意大利语、葡萄牙语、俄语等。自然语言通常可以由一种语言翻译为另一种语言,例如由英语翻译为汉语、由俄语翻译为英语等。
[0044] (2)非自然语言
[0045] 非自然语言是区别于自然语言而设定的,例如网址、动态口令(例如淘口令、抖口令等)、邮箱地址、机器语言等。
[0046] (3)文本序列
[0047] 文本序列由多个连续的字符组成,组成文本序列的字符可以包括各种自然语言中的文字或字母、数字、特殊字符、标点符号等。文本序列间可以用空格作为间隔。例如,文本“abc123 lkjlkf jkl#$$%&($^(*&”中包括四个文本序列,即“abc123”、“lkjlkf”、“jkl#$$%”和“&($^(*&”。
[0048] 其中,特殊字符是相对于传统或常用的符号外,使用频率较少且难以直接输入的符号,例如可以包括以下字符:"[—_‑`~@$%^()\[\]+#¥%%&*=/|\\<>《》(){}【】·~{};;.、→←↑↓::\'\"‘“”’]。
[0049] 下面结合附图进行说明本申请实施例的技术方案。
[0050] 如前所述,电子设备可以提供在用户复制文本后,识别用户的翻译意图(例如在检测出用户复制的文本为自然语言的情况下,确定用户复制文本是用于翻译),在后台生成用户复制的文本的翻译结果并显示翻译控件,并在检测到用户对翻译控件的操作后显示用户复制的文本的翻译结果的功能,例如“复制翻译”功能。在电子设备中开启该功能后,即可在检测到用户复制文本的意图用于翻译后,显示用户复制的文本的翻译结果。
[0051] 例如,参考图2A至图2E,用户可以通过如下方式开启手机10的“复制翻译”功能:用户通过点击图2A所示的手机10的主界面中的“设置”应用21,进行图2B所示的设置界面;然后通过点击设置界面中的“智慧助手”控件22,进入图2C所示的智慧助手界面;其次通过点击智慧助手界面中的“YOYO建议”控件23,进入图2D所示的YOYO建议界面;再通过点击YOYO建议界面中的“复制直达”控件24,进入图2E所示的服务管理界面;最后,通过点击服务管理界面中的“复制翻译”功能开关25,开启手机10的“复制翻译”功能。
[0052] 可以理解,在另一些实施例中,手机10还可以在检测到用户预设次数使用翻译功能后,例如检测到用户预设次数复制文本后,打开手机10中的翻译软件,或访问翻译网站,或搜索复制的文本的翻译结果的操作,提示用户开启“复制翻译”功能。参考图2F,手机10可以显示图2F所示的提示框26,并在检测到用户对“是”控件261的操作后,开启手机10的复制翻译功能。
[0053] 在手机10的“复制翻译”功能开启后,手机10即可检测到用户复制文本的意图是用于翻译后,并显示用户复制的文本的翻译结果。
[0054] 下面以手机10检测到用户在阅读应用中复制文本的操作后显示用户复制的文本的翻译结果为例介绍“复制翻译”功能。
[0055] 例如,参考图1,以阅读应用为例,用户打开阅读应用中的某个阅读页面,显示一段英文。显示界面1a中,在需要翻译的场景下,用户选中文本“Patent Law”后,手机10显示选项栏11,该选项栏11至少包括例如“复制”控件111和“搜索”控件。手机10在监听到用户点击“复制”控件111后,显示如显示界面2b中所示的悬浮球控件12,用于指示手机10正在识别用户的意图。当手机10识别出用户复制文本的意图是用于翻译时为自然语言时,显示如显示界面1c中的“翻译”控件23,用于向用户提供一个显示翻译结果的入口。响应于用户对“翻译”控件23的点击或者触摸操作,在显示界面2d中显示悬浮窗14并在悬浮窗14内展示文本“Patent Law”的翻译结果“专利法”。
[0056] 由于电子设备,例如手机10,硬件计算资源有限,不易通过逻辑复杂、运算量高的算法来识别用户的翻译意图。
[0057] 例如,在一些实施例中,可以通过在手机10中预置包括不同语言的单词的词库,并在词典中搜索到与用户复制的文本匹配的单词后,确定用户复制文本的操作是用于翻译。但是,由于语种较多、各语种的单词量也较大,从词库中搜索用户复制的文本会占用大量存储空间、时长也较长,并不能快速得到查询结果,也就不能快速确定用户复制文本的意图是否是用于翻译,降低了用户体验。
[0058] 又例如,在一些实施例中,可以通过训练一个较大的语言模型,将用户复制的文本作为句子输入到语言模型中,得到用户复制的文本的是自然语言的概率,在该概率大于预设概率值的情况下,确定用户复制的文本是用于翻译。但是,由于语种较多、各语种的单词量也较大(例如仅英语的单词常用单词约4万个,英语单词总量约40万个),单词组合为句子的组合方式的数量会很大,从而导致语言模型较大,电子设备,尤其是终端设备,运行该类语言模型的速度较慢,使得电子设备确定出用户复制文件的意图的时间较长,影响用户体验。并且,对整个文本(即句子)计算用户复制的文本的是自然语言的概率会随文本中包含单词的数量的增加而减小,从而在文本中包括的单词数量较多时,即便用户复制的文本是自然语言,也会得到低于预设概率值的概率,导致错误的判断,影响用户体验。
[0059] 为了解决上述问题,本申请实施例提供了一种翻译方法,该翻译方法中,基于一个语言模型来判断用户复制文本的意图是否为用于翻译,该语言模型是基于多个语种所包括的单词和字母训练得到,能够基于各语种的单词中的字母或字母组合的分布情况来确定输入的文本序列是自然语言的可能性,从而确定输入到该语言模型的文本序列是否为自然语言。由于多个语种所包括的字母或字母组合的数量较少(例如英语仅包括26个字母,2个字母的字母组合的数量为 而常用的英语单词有4万个,2个单词的组合达到16亿种),因此该语言模型较小,占用硬件资源较小,有利于电子设备,尤其是终端设备的运行。
[0060] 具体地,电子设备在检测到用户复制文本的操作后,确定出用户复制的文本(以下称为目标文本)中预设数量的样本文本序列,利用该语言模型确定各个样本文本序列的文本类型(自然语言或非自然语言),并在各样本文本序列的文本类型满足翻译触发条件(例如文本类型为自然语言的样本文本序列的比例大于预设值)的情况下,确定目标文本是自然语言、用户复制目标文本的意图是用于翻译。然后,电子设备获取目标文本的翻译结果并显示翻译控件(例如前述翻译控件13),并在检测到用户对翻译控件的操作后,显示目标文本的翻译结果。如此,手机10不需要运行识别句子是否为自然语言的大型语言模型,也不需要存储和加载各语种的单词库,提高了手机10确定用户复制文本的意图的速度,也即提高了翻译的速度,降低了手机10实现上述“复制翻译”功能占用的硬件资源,提升用户体验。
[0061] 例如,在一些实施例中,在训练上述语言模型的过程中,上述语言模型可以将各语种的所有或者常用单词拆分为字母(例如将patent拆分为p,a,t,e,n和t)得到字母库,统计得到字母库中的各字母的概率,并将各字母的概率记录在语言模型中。
[0062] 在将记录有各字母的概率的语言模型部署到手机10中后,若将一个文本序列输入到该语言模型时,该语言模型可以将输入到的文本序列拆分为字母(例如将law拆分为l、a和w),然后根据在先统计得到的各字母的概率确定出文本序列为自然语言的概率,例如假设统计得到字母库中字母l的概率为0.05,字母a的概率为0.06,字母w的概率为0.02,则文本序列law为自然语言的概率为0.05×0.06×0.02=0.00006,再基于该概率来确定输入的文本序列是否为自然语言,例如在该概率大于预设值或基于该概率得到的困惑度(具体计算方式将在下文本进行描述,在此不做赘述)小于困惑度阈值时,确定文本序列law为自然语言。
[0063] 可以理解,目标文本中可以包括至少一个文本序列。在目标文本中包括的文本序列的数量小于或等于预设数量时,样本文本序列可以是目标文本中的所有文本序列;在目标文本中包括的文本序列的数量大于预设数量时,样本文本序列可以是目标文本中在前的预设数量个文本序列。如此,可以避免在目标文本中包括的文本序列的数量太多时,对所有文本序列都利用语言模型得到文本类型,从而提高确定用户复制目标文本的意图的速度。在另一些实施例中,也可以通过其他方式来确定样本文本序列,在此不做限定。
[0064] 可以理解,翻译触发条件可以包括以下条件中的任意一项:
[0065] a.在目标文本中的文本序列数量是一个的情况下,该一个文本序列的文本类型为自然语言;
[0066] b.在目标文本中的文本序列数量是多个的情况下,样本文本序列中文本类型为自然语言的样本文本序列与样本文本序列的数量比值大于预设比值,和/或样本文本序列中文本类型为非自然语言的样本文本序列中,序列长度最长的样本文本序列的序列长度小于预设序列长度。
[0067] 可以理解,文本序列的序列长度是指文本序列所包括的字符的数量,例如文本序列“abc123”的序列长度为6,文本序列“#*&$*($&abcd123”的序列长度为15。
[0068] 可以理解,在另一些实施例中,翻译触发条件也可以包括其他条件,在此不做限定。
[0069] 可以理解,上述语言模型可以是任意的统计语言模型(Statistical Language Model),例如N‑gram(N元)语言模型(N=1,2,3…),或神经网络语言模型(Neural Network Language Model),例如循环神经网络语言模型等。
[0070] 为便于理解,首先以语言模型为N‑gram语言模型为例,介绍语言模型的训练过程。
[0071] 图3根据本申请的一些实施例,示出了语言模型20的训练过程示意图。
[0072] 如图3所示,训练语言模型20的输入数据为多个语种的词库,该词库中包括了多个语种的单词,例如英语单词、法语单词、俄语单词等,在将词库输入到语言模型20后,语言模型20会将各单词拆分为N个字母的字母组合/字母(例如假设N=2,则将单词patent拆分为字母组合pa、字母组合at、字母组合te、字母组合en和字母组合nt;假设N=1,则将单词patent拆分为字母:p、a、t、e、n、t),得到字母组合库,然后统计各个字母组合的数量来得到各字母组合的分布情况,然后基于如下公式(1)来确定词库中的各单词是自然语言的概率。
[0073] 假设一个单词W是由n个字符组成,即W=w1w2…wn,则该单词是自然语言的概率P可以表示为如下公式(1)。
[0074]
[0075] 公式(1)中P(w1,w2,...,wn)表示单词W为自然语言的概率。P(wi)表示训练上述语言模型20得到的字母wi的概率;P(wi|wi‑1)表示训练上述语言模型20得到的在第i‑1个字符为wi‑1的情况下,第i个字母为wi的概率;P(wi|wi‑N+1wi‑N+2···wi‑1)训练上述语言模型20得到的在第1个字母至第i‑1个字母为wi‑N+1wi‑N+2···wi‑1的情况下,第i个字母为wi的概率。并且P(wi)、P(wi|wi‑2wi‑1)、P(wi|wi‑N+1wi‑N+2···wi‑1)可以由统计得到的各字母组合的数量来确定。假设多个语种中共有m个字母,记为Xm,在N=1的情况下,字母组合库中字母Xi(i=1,2,……,m)的数量与字母的总量的比值即为P(wi);在N=2的情况下,字母组合XiXj(第一个字母为Xi,第二个字母为Xj)的数量与字母组合XiXk(k=1,2,……,m)(第一个字母为Xi,第二个字母为Xk)的数量的比值即为P(Xj|Xi)。
[0076] 例如对于单词“patent”,在N=2的情况下,单词“patent”为自然语言的概率P(patent)可以表示为:
[0077] P(patent)=P(a|p)×P(t|a)×P(e|t)×P(n|e)×P(t|n)。
[0078] 其中,P(a|p)为第一个字母为p的字母组合中,第二个字母为a的字母组合的概率;P(t|a)为第一个字母为a的字母组合中,第二个字母为t的字母组合的概率;P(e|t)为第一个字母为t的字母组合中,第二个字母为e的字母的概率;P(n|e)为第一个字母为e的字母组合中,第二个字母为n的字母组合的概率;P(t|n)为第一个字母为n的字母组合中,第二个字母为t的字母组合的概率。
[0079] 假设语言模型20统计得到字母组合pXi的数量为2000,字母组合pa的数量为500,字母组合aXi的数量为1000,字母组合at的数量为60,字母组合tXi的数量为3000,字母组合te的数量为600,字母组合eXi的数量为1000,字母组合en的数量为100,字母组合nXi的数量为2000,字母组合nt的数量为500。则可以得到:
[0080] P(patent)=500/2000×60/1000×600/3000×100/1000×500/2000=0.000075。
[0081] 可以理解,以公式(1)来计算各单词是自然语言的概率只是一种示例,在另一些实施例中也可以通过其他方式来计算,例如根据链式法则进行计算等,在此不做限定。
[0082] 进而,语言模型20可以根据以下公式来计算各单词的困惑度:
[0083]
[0084] 公式(2)中,PP(W)为单词W的困惑度,P(w1,w2,...,wn)表示由单词W=w1w2…wn为自然语言的概率。从公式(2)可知,单词W的困惑度随单词是自然语言的概率的增加而减小,也即是说,通过公式(1)和公式(2)来确定输入到语言模型20的文本序列的困惑度时,得到的困惑度越大,该文本序列是自然语言的可能性就越低。
[0085] 例如,对于前述单词“patent”,根据公式(2)可以得到
[0086]
[0087] 可以理解,公式(2)来计算单词W或输入到语言模型20的文本序列的困惑度只是一种示例,在另一些实施例中,也可以通过其他方式来计算,在此不做限定。
[0088] 进一步,在一些实施例中,通过对词库中的所有单词的困惑度进行计算,可以得到词库中的单词的困惑度最大值,从而可以基于该困惑度最大值,得到困惑度阈值,例如以大于或等于困惑度最大值的数值为困惑度阈值,从而确保词库中的所有单词都会被确定为自然语言。在将一个文本序列输入到语言模型20得到该文本序列的困惑度后,将文本序列的困惑度与困惑度阈值进行比较,在文本序列的困惑度大于困惑度阈值时,确定文本序列为非自然语言。
[0089] 可以理解,在一些实施例中,也可以通过其他方式来设置困惑度阈值,例如将困惑度阈值设置为比困惑度最大值小的值,以降低误判的概率,在此不做限定。
[0090] 由上述训练语言模型20的过程可知,由词库中的各单词拆分的字母组合的概率是通过统计的方法得到,对于长度过短或过长的字母组合,以及单词量较少的部分语种,会导致字母组合概率较低,从而影响单词的困惑度的计算。因此,在一些实施例中,可以将用于训练语言模型20的词库中,长度过长或过短的单词、以及单词量较少的语种中的单词重复添加到词库中,使得各长度的单词、各语种的单词的数量得到平衡,可以提高统计各字母组合的概率的准确度,从而提高计算各单词的困惑度的准确度,进而提高判断文本序列是否为自然语言的准确度。
[0091] 进一步,图4根据本申请的一些实施例,示出了在语言模型20为2‑gram语言模型的情况下,训练语言模型20的流程示意图。该流程的执行主体为电子设备(例如服务器),如图4所示,该流程包括如下步骤。
[0092] S401:获取各语种的单词,得到词库。
[0093] 即是电子设备获取将各语种的单词,形成词库。
[0094] 在一些实施例中,语种可以是在形成句子时,以一个特定符号(例如空格)来分开单词的任意自然语言,包括但不限于英语、法语、德语、西班牙语、意大利语、葡萄牙语、俄语等。
[0095] 在一些实施例中,对于长度较短的单词(例如少于3个字母的单词)、长度较短的单词(例如多于10个字母的单词)、单词量较少的语种所包括的单词,可重复加入到词库中,从而提高不同长度单词数量的均衡性、各语种所包括的单词数量的均衡性,从而提高语言模型20计算的各单词的困惑度,以及困惑度阈值的准确性,进而提升利用语言模型20来判断用户复制文本的意图的准确性。
[0096] S402:将词库中的单词拆分为包括2个字母的字母组合,得到字母组合库。
[0097] 电子设备将词库中的各个单词拆分为包括2个字母的组合,得到字母组合库。例如,对于单词patent,则将patent拆分为pa、at、te、en和nt。
[0098] 可以,在另一些实施例中,电子设备可以根据N‑gram模型中N的取值,将词库中的单词拆分为包括N个字母的字母组合,得到字母组合库。
[0099] S403:统计字母组合库中各字母组合的数量,得到各字母组合的条件概率。
[0100] 电子设备统计各字母组合的数量,得到各字母组合的条件概率。其中字母组合wiwj的条件概率可以表示为P(wj|wi),用于指示字母组合中,在第一个字母为wi的情况下,第二个字母为wj的概率。
[0101] 在一些实施例中,P(wj|wi)可以通过如下公式(3)进行计算。
[0102]
[0103] 公式(3)中c(wiwj)表示字母组合库中,第一字母为wi且第二个字母wj的字母组合数量,c(wiwk)表示字母组合库中,第一个字母为wi的字母组合的数量。
[0104] 可以理解,在另一些实施例中,也可以通过其他方式来计算各字母组合的条件概率,在此不做限定。
[0105] S404:基于各字母组合的条件概率,得到各单词的困惑度。
[0106] 电子设备基于各字母组合的条件概率,得到各单词的困惑度。例如,在一些实施例中,电子设备可以基于前述公式(1)得到各单词是自然语言的概率,再基于前述公式(2)得到各单词的困惑度。
[0107] 可以理解,在另一些实施例中,也可以通过其他方式来计算各单词的困惑度,在此不做限定。
[0108] S405:根据各单词的困惑度,得到困惑度阈值
[0109] 电子设备在得到各单词的困惑度后,根据各单词的困惑度,得到困惑度阈值。
[0110] 例如,在一些实施例中,可以根据各单词的困惑度,得到各单词的困惑度最大值,并以一个大于或等于该困惑度最大值的数值作为困惑度阈值,从而可以确保将任意一个词库中的单词输入到语言模型20中,得到的困惑度都小于该困惑度阈值,将该单词确定为自然语言。
[0111] 又例如,在另一些实施例中,也可以采用其他方式来确定困惑度阈值,例如将困惑度阈值设置为一个小于困惑度最大值的数值,在此不做限定。
[0112] 下面结合上述语言模型20,介绍本申请实施例提供的翻译方法。
[0113] 首先介绍用户复制的文本为单个文本序列的情况下,本申请实施例提供的翻译方法的技术方案。
[0114] 具体地,图5根据本申请的一些实施例,示出了一种翻译方法的流程示意图。该流程的执行主体为手机10,如图5所示,该流程包括如下步骤。
[0115] S501:检测到复制事件中的目标文本中只包括1个文本序列。
[0116] 手机10在检测到用户触发复制事件后,例如检测到手机10的剪贴板的内容发生变化后,在检测到用户复制的文本(目标文本)中只包括1个文本序列的情况下,触发本实施例提供的翻译方法。
[0117] 例如,在一些实施例中,手机10可以在检测到用户复制的文本中不包括空格的情况下,确定该复制事件中的文本中只包括1个文本序列。
[0118] 又例如,在一些实施例中,手机10可以在检测到用户复制的文本中,除了文本首部和尾部的空格外,不包括其他空格的情况下,确定目标文本中只包括一个文本序列。
[0119] 具体地,参考图6,手机10在检测到用户选择单词Patent后,显示选项栏61,并在检测到用户点击复制控件611后,显示悬浮球62并判断出用户复制的文本中只包括一个文本序列Patent,触发本实施例提供的翻译方法。
[0120] S502:对文本序列进行预处理,得到样本文本序列。
[0121] 手机10对文本序列进行预处理,得到样本文本序列。例如,在文本序列的开头或结尾包括预设标点符号时,将文本序列开头和/或结尾的标点符号删除得到样本文本序列。
[0122] 具体的,假设用户复制的文本序列为“,patent”,则将文本序列开头的逗号删除,得到样本文本序列“patent”,又例如,用户复制的文本序列为“patent.”时,将文本序列结尾的点号和后引号删除,得到样本文本序列“patent”。
[0123] 可以理解,在文本序列的开头和结尾都不存在标识符号的情况下,样本文本序列即是文本序列本身。
[0124] 可以理解,预设标点符号可以预设于手机10中,例如引号、逗号、句号等。通过对文本序列开关和/或结尾的标点符号进行预处理,可以在用户复制文本时将文本之前和/或之后的标点符号一同复制的情况下,更为准确地确定用户复制的文本为自然言语,提高手机10确定用户复制文本的意图的准确性。
[0125] S503:利用语言模型20计算样本文本序列的困惑度。
[0126] 手机10利用语言模型20计算样本文本序列的困惑度。
[0127] 例如,手机10可以将样本文本序列按顺序拆分为多个子序列,例如将文本序列“patent”拆分为子序列pa、at、te、en和nt,并根据语言模型20中记录的各子序列的条件概率,基于前述公式(1)得到样本文本序列“patent”为自然语言的概率,再基于前述公式(2)得到样本文本序列“patent”的困惑度。
[0128] 可以理解,在一些实施例中,在样本文本序列的子序列中包括语言模型20未统计的字母组合时,样本文本序列为自然语言的概率为0。例如,对于文本序列“ab2c”,包括的子序列有“ab”、“b2”和“2c”,语言模型20中未统计有子序列“b2”和“2c”的条件概率,则子序列“b2”和“2c”的条件概率为0,从而文本序列“ab2c”为自然语言的概率为0。
[0129] 可以理解,在一些实施例中,在样本文本序列是自然语言的概率为0的情况下,该样本文本序列的困惑度可以是一个大于困惑度阈值的固定数值。
[0130] S504:判断样本文本序列的困惑度是否大于困惑度阈值。
[0131] 手机10判断样本文本序列的困惑度是否大于困惑度阈值,如果样本文本序列的困惑度大于困惑度阈值,则说明样本文本序列可能不是自然语言,转至步骤S505进一步判断;否则,说明样本文本序列是自然语言,转至步骤S507。
[0132] 可以理解,困惑度阈值可以是在训练语言模型20时确定,也可以是开发人员根本使用场景进行确定,在此不做限定。
[0133] S505:判断样本文本序列是否存在于附加词典中。
[0134] 手机10在确定出样本文本序列的困惑度大于困惑度阈值的情况下,判断样本文本序列是否存在于附加词典中,如果是,说明样本文本序列是自然语言,转至步骤S507;否则,说明样本文本序列是非自然语言,转至步骤S506。
[0135] 可以理解,在训练语言模型20时,所采用的词库可能没有包括各语种的所有单词,也可能在训练完语言模型20后,部分语种有新增的单词。为提高判断文本序列是否为自然语言的准确性,将训练语言模型20时未使用的单词和部分语种新增的单词设置于附加词典中,在样本文本序列的困惑度大于困惑度阈值时,可以将样本文本序列和附加词典中的单词进行比较,并在确定出样本文本序列存在于附加词典中时,确定样本文本序列为自然语言。从而可以提高手机10确定用户复制文本的意图的准确性。
[0136] 可以理解,在一些实施例中,手机10还可以从服务器中获取附加词典的更新,以便于确保附加词典的有效性。
[0137] S506:确定目标文本为非自然语言,不显示翻译控件。
[0138] 手机10确定目标文本为非自然语言,并且不显示翻译控件。
[0139] S507:确定目标文本为自然语言,获取目标文本的翻译结果并显示翻译控件。
[0140] 手机10确定样本文本序列为自然语言,从手机10中的翻译应用,或能够提供翻译的服务器中获取目标文本的翻译结果,并显示翻译控件。例如,手机10可以显示如图1所示的翻译控件13,用于向用户提供显示目标文本的翻译结果的入口。
[0141] 可以理解,在另一些实施例中,手机10也可以通过其他方式获取目标文本的翻译结果,本申请实施例对目标文本的翻译结果的获取方式不做限定。
[0142] 例如,参考图6,在手机10确定出Patent为自然语言时,获取单词Patent的翻译结果,并显示翻译控件63。
[0143] S508:检测到用户对翻译控件的触发操作,在翻译窗口中显示目标文本的翻译结果。
[0144] 手机10在显示翻译控件后,在检测到用户对翻译控件的触发操作后,在翻译窗口中显示目标文本的翻译结果。
[0145] 可以理解,用户对翻译控件的触发操作,包括但不限于用户对翻译控件所在区域的触摸操作、点击操作、滑动操作或长按操作等。
[0146] 例如,手机10在检测到用户对图6所示的翻译控件63的点击操作后,可以显示翻译窗口64,并在翻译窗口64中显示单词Patent的翻译结果:专利。
[0147] 可以理解,前述步骤S501至步骤S508的执行顺序只是一种示例,在另一些实施例中可以调整部分步骤的执行顺序,也可以合并或拆分部分步骤,例如手机10可以显示翻译窗口后,再获取并显示目标文本的翻译结果,在此不做限定。
[0148] 通过本申请实施例提供的翻译方法,手机10可以通过语言模型20快速确定用户复制的文本是否为自然语言,并在确定用户复制的文本为自然语言的情况下,确定用户复制文本的意图是用于翻译,然后获取用户复制的文本的翻译结果并展示给用户。由于语言模型20占用硬件资源较少,可以提高手机10确定出用户复制文本的意图的速度,提高从用户复制文本到显示翻译结果的速度,提升用户体验。
[0149] 以上介绍了在用户复制的文本只包括一个文本序列的情况下,手机10根据用户复制的本文显示翻译结果的过程,但在多数情况下,用户复制的文本通常包括多个文本序列,以下介绍在用户复制的文本中包括多个文本序列下,本申请实施例的技术方案。
[0150] 具体地,图7根据本申请的一些实施例,示出了另一种翻译方法的流程示意图。如图7所示,该方法的执行主体为手机10,包括如下步骤。
[0151] S701:检测到复制事件中的目标文本中包括多个文本序列。
[0152] 手机10在检测复制事件中的目标文本中包括多个文本序列时,触发本申请实施例提供的翻译方法。例如,手机10可以监听剪贴板的变化,在剪贴板的内容变化为文本,并且该文本中包括空格时,可以检测到复制事件中的目标文本中包括多个文本序列。
[0153] 具体地,参考图8,手机10在检测到用户选择文本“hello world 3abc123 other,apple”后,显示选项栏81,并在检测到用户点击复制控件811后,显示悬浮球82并在该文本中存在空格的情况下,判断出用户复制的文本中包括多个文本序列。
[0154] 在一些实施例中,手机10可以在目标文本中,除去文本首尾的空格外,还包括其他空格的情况下,确定目标文本中包括多个文本序列。例如对于目标文本“︺︺abcd”(︺表示空格)的首部有两个空格,但没有其他的空格,则目标文本“︺︺abcd”只包括一个文本序列;而目标文本“︺abcd︺efgh”的首部有一个空格,此外在abcd和efgh间还有一个空格,则目标文本“︺abcd︺efgh”包括多个文本序列,即文本序列abcd和文本序列efgh。
[0155] 可以理解,在另一些实施例中,手机10也可能通过其他方式来确定目标文本中是否包括多个文本序列,在此不做限定。
[0156] S702:判断目标文本是否有异常。
[0157] 手机10判断目标文本是否有异常,如果是,说明目标文本不是自然语言,转至步骤S706,否则转至步骤S703进行进一步判断。
[0158] 也即是本申请实施例中,手机10可以根据预设的规则,对明显不是自然语言的目标文本进行初步筛选,从而可以快速确定用户复制该明显不是自然语言的目标文本的意图不是用于翻译,提高判断速度。
[0159] 例如,在一些实施例中,可以利用明显不是自然语言的文本(例如网址、编程语言、口令链接等)和自然语言文本来训练一个二分类模型,例如逻辑回归(Logistic Regression)模型、k最近邻(k‑Nearest Neighbors)模型、决策树(Decision Trees)模型、支持向量机(Support Vector Machine)模型、朴素贝叶斯(Naive Bayes)模型等,来判断目标文本是否有异常。该二分类模型可以基于目标文本的特征参数来确定一个目标文本是否有异常。
[0160] 可以理解,上述特征参数可以包括:
[0161] 目标文本的长度(Length),例如目标文本“abc23*45”的长度Length=8;
[0162] 目标文本中数字所占的比例(NoRatio),例如目标文本“abc23*45”中数字所占的比例为NoRatio=4/8=0.5;
[0163] 目标文本是否以数字开头(IsNostar),例如目标文本“1avc”以数字开头,则IsNostar=1,又例如目标文本“abc23*45”不是以数字开头,则IsNostar=0;
[0164] 目标文本中特殊字符所占的比例(SpecialTokenRatio),例如目标文本“abc23*45”中特殊字符所占的比例为SpecialTokenRatio=1/8=0.25;
[0165] 目标文本是否以特殊字符开头(IsSpecialTokenStar),例如目标文本“¥abcd”以特殊字符“¥”IsSpecialTokenStar=1,又例如目标文本“abc23*45”不是以特征字符开头,则IsSpecialTokenStar=0。
[0166] 可以理解,在一些实施例中,特殊字符可以包括前述"[—_‑`~@$%^()\[\]+#¥%%&*=/|\\<>《》(){}【】·~{};;.、→←↑↓::\'\"‘“”’]等字符,也可以包括其他的字符,在此不做限定。
[0167] 例如,在一些实施例中,二分类模型可以在目标文本的特征参数满足以下异常条件中的至少一个的情况下,确定目标文本有异常:
[0168] 目标文本的长度(Length)大于预设文本长度(例如500);
[0169] 目标文本中数字所占的比例(NoRatio)大于预设数字占比(例如0.5);
[0170] 目标文本以数字开头(IsNostar=1);
[0171] 目标文本中特殊字符所占的比例(SpecialTokenRatio)大于预设特殊字符占比(例如0.3);
[0172] 目标文本以特殊字符开头(IsSpecialTokenStar=1)。
[0173] 可以理解,在一些实施例中,上述特征参数还可以包括其他参数,在此不做限定。
[0174] 由于二分类模型占用的硬件资源比语言模型小,可以更快地确定出有异常的目标文本,从而更快地确定用户复制目标文本的意图是否是用于翻译,提升了用户体验。
[0175] 可以理解,在一些实施例中,上述异常条件也可以包括其他条件,在此不做限定。
[0176] 例如,对于目标文本“hello world 3abc123 other,apple”,不是以数字或特殊字符开头、不存在特殊字符、长度为32(小于预设文本长度500)、数字占比为0.125(小于预设数字占比),可以确定目标文本“hello world 3abc123 other,apple”不存在异常。
[0177] S703:对多个文本序列进行预处理,得到预设数量的样本文本序列
[0178] 手机10在确定目标文本不存在异常的情况下,对目标文本中的多个文本序列进行预处理,得到预设数量的样本文本序列。
[0179] 在一些实施例中,手机10可以根据目标文本中的空格和标点符号,将目标文本拆分为多个文本序列,去除得到的多个文本序列中全为数字的文本序列。在去除全为数字的文本序列后的文本序列的数量大于预设数量时,取前预设数量个文本序列作为样本文本序列;在去除全为数字的文本序列后的文本序列的数量小于或等于预设数量时,将去除全为数字的文本序列后的全部文本序列作为样本文本序列。
[0180] 例如,对于前述目标文本“hello world 3abc123 other,apple”,可以拆分为6个文本序列“hello”、文本序列“world”、文本序列“3”、文本序列“abc123”、文本序列“other”和文本序列“apple”,其中,文本序列“3”为全为数字的文本序列。假设预设数量为20,由于删除文本序列“3”后,目标文本“hello world 3abc123 other,apple”对应的文本序列的数量为5,小于预设数量20,则以文本序列“hello”、文本序列“world”、文本序列“abc123”、文本序列“other”和文本序列“apple”为样本文本序列。
[0181] 可以理解,预设数量可以手机10的硬件资源进行设置,在手机10的计算能力、存储能力较好时,可以将预设数量设置为较大值,例如100,在手机10的计算能力、存储能力较差时,可以将预设数量设置为较小值。
[0182] S704:利用语言模型20计算样本文本序列的困惑度,并基于各样本文本序列的困惑度确定各样本文本序列的文本类型。
[0183] 手机10利用语言模型20计算各样本文本序列的困惑度,并基于各样本文本序列的困惑度确定各样本文本序列的文本类型。具体的确定过程可以参考前述步骤S503至步骤S507的相关描述,在此不做赘述。
[0184] 例如,在一些实施例中,手机10可以确定出文本序列“hello”、文本序列“world”、文本序列“other”和文本序列“apple”的文本类型为自然语言,文本序列“abc123”的文本类型为非自然语言。
[0185] S705:基于各样本文本序列的文本类型,确定样本文本序列是否满足翻译触发条件。
[0186] 手机10基于各样本文本序列的文本类型,确定样本文本序列是否满足翻译触发条件,如果满足,说明目标文本是自然语言,转至步骤S707,否则,说明目标文本是非自然语言,转至步骤S706。
[0187] 可以理解,翻译触发条件可以包括以下条件中的至少一个:
[0188] 样本文本序列中文本类型为自然语言的样本文本序列的比例大于预设比例;
[0189] 文本类型为非自然语言的样本文本序列中,序列长度最长的文本类型的序列长度小预设序列长度。
[0190] 例如,假设预设比例为0.4,预设序列长度为20,对于前述目标文本“hello world 3abc123 other,apple”,样本文本序列中文本类型为自然语言的样本文本序列的比例为4/
5=0.8,大于预设比例;文本类型为非自然语言的样本文本序列中,序列长度最长的文本序列为“abc123”,序列长度为6,小于预设序列长度,目标文本“hello world 3abc123other,apple”的样本文本序列满足翻译触发条件,转至步骤S707。
[0191] 可以理解,在另一些实施例中,翻译触发条件也可以包括其他条件,在此不做限定。
[0192] S706:确定目标文本为非自然语言,不显示翻译控件。
[0193] 手机10在目标文本的样本文本序列不满足翻译触发条件的情况下,确定目标文本为非自然语言,不显示翻译控件。
[0194] S707:确定目标文本是自然语言,获取目标文本的翻译结果并显示翻译控件。
[0195] 手机10在目标文本的样本文本序列满足翻译触发条件的情况下,确定目标文本为自然语言,获取目标文本的翻译结果并显示翻译控件。例如,手机10可以显示图1所示的翻译控件13。
[0196] 例如,参考图8,手机10在确定出目标文本“hello world 3abc123 other,apple”的样本文本序列满足翻译触发条件后,显示翻译控件83。
[0197] 手机10获取目标文本的翻译结果的方式可以参考前述步骤S507的相关描述,在此不做赘述。
[0198] S708:检测到用户对翻译控件的触发操作,在翻译窗口中显示目标文本的翻译结果。
[0199] 手机10在获取目标文本的翻译结果并显示翻译控件后,若检测到用户对翻译控件的触发操作,则在翻译窗口中显示目标文本的翻译结果。
[0200] 例如,参考图8,手机10在检测到用户对翻译控件83的点击操作后,可以显示翻译窗口84,并在翻译窗口84中显示目标文本“hello world 3abc123 other,apple”的翻译结果:你好世界3abc123其他,苹果。
[0201] 可以理解,前述步骤S701至步骤S708的执行顺序只是一种示例,在另一些实施例中可以调整部分步骤的执行顺序,也可以合并或拆分部分步骤,例如手机10可以显示翻译窗口后,再获取并显示目标文本的翻译结果,在此不做限定。
[0202] 通过本申请实施例提供的方法,手机10可以利用语言模型20,基于各语种的单词中的字母或字母组合的分布情况来确定目标文本中的样本文本序列的文本类型,然后根据各样本文本序列的文本类型来判断目标文本是否为自然语言,并在确定出目标文本是自然语言时获取并向用户展示目标文本的翻译结果。由于手机10是通过目标文本中的样本文本序列的文本类型来确定目标文本是否为自然语言,不需要查询大量的词典或运行大型的语言模型,提高了手机10确定出用户复制目标文本的意图的速度,进而提高翻译的速度,提升了用户体验。
[0203] 以上分别介绍了目标文本包括一个文本序列和多个文本序列的情况下,本申请实施例提供的翻译方法的技术方案。结合图5至图8所示的实施例,本申请实施例还提供了又一种翻译方法。
[0204] 具体地,图9根据本申请的一些实施例,示出了又一种翻译方法的流程示意图。该流程的执行主体为手机10,如图7所示,该流程包括步骤S901至步骤S913,其中,步骤S903至步骤S908可以参考前述步骤S502至步骤S507,步骤S909至步骤S912可以参考步骤S702至步骤S705,步骤S913可以参考前述步骤S508或步骤S708。下面对与前述实施例不同的步骤S901至步骤S902进行介绍。
[0205] S901:检测到文本复制事件。
[0206] 手机10在检测到文本复制事件的情况下,触发本申请实施例提供的翻译方法。
[0207] 例如,在一些实施例中,手机10可以监听手机10的剪贴板中的内容,在监听到手机10的剪贴板中的内容发生变化,并且剪贴板中的内容为文本的情况下,确定检测到文本复制事件。又例如,在一些实施例中,参考图1,用户在应用程序的界面中选中文本并点击复制控件111时,手机10可以检测到文本复制事件。
[0208] 可以理解,在另一些实施例中,手机10也可以通过其他方式来检测文本复制事件,在此不做限定。
[0209] S902:确定复制的目标文本包括的文本序列的数量。
[0210] 手机10在检测到文本复制事件后,可以获取文本复制事件中的目标文本,例如从剪贴板中获取目标文本,并确定复制的目标文本包括的文本序列的数量。在确定出目标文本只包括一个文本序列的情况下,转至步骤S903,执行步骤S903至步骤S908、步骤S913的流程;在确定出目标文本包括多个文本序列的情况下,转至步骤S909,执行步骤S909至步骤S912、步骤S907、步骤S913的流程。
[0211] 在一些实施例中,手机10可以在目标文本中,除去文本首尾的空格外,不包括其他空格的情况下,确定目标文本中只包括一个文本序列;在目标文本中,除去文本首尾的空格外,还包括其他空格的情况下,确定目标文本中包括多个文本序列。
[0212] 例如对于目标文本“︺︺abcd”(︺表示空格)的首部有两个空格,但没有其他的空格,则目标文本“︺︺abcd”只包括一个文本序列;又例如目标文本“︺abcd︺efgh”的首部有一个空格,此外在abcd和efgh间还有一个空格,则目标文本“︺abcd︺efgh”包括多个文本序列。
[0213] 可以理解,在另一些实施例中,手机10也可以通过其他方式来确定目标文中所包括的文本序列的数量,在此不做限定。
[0214] 通过本申请实施例提供的方法,手机10可以利用语言模型20,基于各语种的单词中的字母或字母组合的分布情况来确定目标文本中的样本文本序列的文本类型,然后根据各样本文本序列的文本类型来判断目标文本是否为自然语言,并在确定出目标文本是自然语言时获取并向用户展示目标文本的翻译结果。由于手机10是通过目标文本中的样本文本序列的文本类型来确定目标文本是否为自然语言,不需要查询大量的词典或运行大型的语言模型,提高了手机10确定出用户复制目标文本的意图的速度,进而提升翻译速度,提升了用户体验。
[0215] 进一步,结合图5至图9所示的实施例,本申请实施例还提供了再一种翻译方法。
[0216] 具体地,图10根据本申请的一些实施例,示出了再一种翻译方法的流程示意图。该流程的执行主体为手机10,如图10所示,该流程包括步骤S1001至S1008,其中步骤S1001可以参考前述步骤S901,步骤S1005至步骤S1007可以参考前述步骤S506至步骤S508,在此不做赘述。下面对与前述实施例不同的步骤S1002至步骤S1004进行介绍。
[0217] S1002:确定出目标文本中的样本文本序列。
[0218] 手机10在检测到文本复制操作后,确定出目标文本中的样本文本序列。
[0219] 例如,在一些实施例中,在目标文本中包括的文本序列的数量小于预设数量时,样本文本序列可以是目标文本中所有不是全数字的文本序列。
[0220] 又例如,在一些实施例中,在目标文本中包括的文本序列的数量大于或等于预设数量时,样本文本序列可以是目标文本中,不是全数字的文本序列中的前预设数量个文本序列。
[0221] 可以理解,在另一些实施例中,也可以通过其他方式来确定目标文本中的样本文本序列,例如目标文本中,不是全数字的文本序列中的后预设数量个或中间预设数量个文本序列,在此不做限定。
[0222] S1003:利用语言模型20确定出各样本文本序列的文本类型。
[0223] 手机10利用语言模型20确定出各样本文本序列的文本类型,具体的确定方式可以参考前述步骤S502至步骤S507的相关描述,在此不做赘述。
[0224] S1004:基于各样本文本序列的文本类型,确定样本文本序列是否满足翻译触发条件
[0225] 手机10基于各样本文本序列的文本类型,确定样本文本序列是否满足翻译触发条件,如果确定出满足翻译触发条件,说明目标文本是自然语言,转至步骤S1006;否则说明目标文本为非自然语言,转至步骤S1005。
[0226] 可以理解,翻译触发条件可以包括以下条件中的至少一个:样本文本序列中文本类型为自然语言的样本文本序列的比例大于预设比例;文本类型为非自然语言的样本文本序列中,序列长度最长的文本序列的序列长度小预设序列长度。具体可以参考前述步骤S705,在此不做赘述。
[0227] 通过本申请实施例提供的方法,手机10可以利用语言模型20,基于各语种的单词中的字母或字母组合的分布情况来确定目标文本中的样本文本序列的文本类型,然后根据各样本文本序列的文本类型来判断目标文本是否为自然语言,并在确定出目标文本是自然语言时,获取并向用户展示目标文本的翻译结果。由于手机10是通过目标文本中的样本文本序列的文本类型来确定目标文本是否为自然语言,不需要查询大量的词典或运行大型的语言模型,提高了手机10确定出用户复制目标文本的意图的速度,进而提高翻译速度,提升了用户体验。
[0228] 进一步,图11根据本申请的一些实施例,示出了一种手机10的软件架构示意图。
[0229] 如图11所示,手机10的软件架构包括应用程序层01和应用程序框架层02。
[0230] 应用程序层01包括情景感知模块011、业务逻辑处理模块012和业务呈现模块013。
[0231] 其中,情境感知模块011,可以常驻运行或以低功耗形式运行,具有感知外部事实或者环境的能力。情境感知模块011可以通过API(应用程序接口)从应用程序层01的其他应用程序或应用程序框架层02来检测相关事件和获取事件的状态,比如检测蓝牙连接、网络连接、监测用户短信、定制定时器等。在一些实施例中,情境感知模块011主要作用是监听剪贴板是否有复制事件,当监听到剪贴板有复制事件,将复制事件通知给业务逻辑处理模块012。情境感知模块011还可以用于获取剪贴板中的剪贴内容的来源应用。也就是说,剪贴板内容通过情境感知模块011识别该剪贴的内容是从某个具体的应用中复制的。另外,情境感知模块011还可以检测是否有退出当前页面的操作,当检测到退出当前页面的操作,通知业务逻辑处理模块012。
[0232] 在一些实施例中,情境感知模块011还可以用于执行前述各实施例的部分步骤,例如前述步骤S901和步骤S1001的相关操作。
[0233] 业务逻辑处理模块012具有业务逻辑处理能力,用于实现各种悬浮球(例如前述翻译控件13)或悬浮窗(例如前述翻译窗口64)的展示,消失的逻辑。例如,业务逻辑处理模块012接收到用户触发的复制事件及情境感知模块011发送的剪贴板内容,确定剪贴板内容是否满足触发翻译的条件,并在确定出剪贴板内容满足触发翻译条件的情况下,向业务呈现模块013发送显示悬浮球的指令、以及获取剪贴板内容的翻译结果内容。
[0234] 在一些实施例中,业务逻辑处理模块012还可以用于执行前述各实施例中的部分步骤。例如,可以执行前述步骤S501至步骤S507的相关操作、执行前述步骤S701至步骤S707的相关操作、执行前述步骤S902至步骤S908的操作、执行前述步骤S1002至步骤S1006的操作等。
[0235] 业务呈现模块013(如:YOYO建议),用于将悬浮球或悬浮窗显示或者消失在手机的屏幕上。例如,业务呈现模块013接收到业务逻辑处理模块012发送的判断结果时,通知窗口管理器022将悬浮球或悬浮窗显示在手机10上。同时,业务呈现模块013还可以在悬浮窗内呈现用户复制的文本及其对应的翻译结果。另外,业务呈现模块013还可以用户根据用户触发的悬浮球或悬浮窗消失的事件,通知窗口管理器022将手机10显示的悬浮球或悬浮窗展示或者消失。
[0236] 可以理解,在另一些实施例中,应用程序层01还可以包括更多或更少的模块,例如用于实现特定功能的应用程序,如系统应用、第三方应用等,在此不做限定。
[0237] 应用程序框架层02可以包括剪贴板管理器021、窗口管理器022等,其中,窗口管理器022可以包括悬浮窗管理器022A和悬浮球管理器内022B。
[0238] 剪贴板管理器021用于对剪贴板进行管理。剪贴板是用于临时存放交换信息的临时存储区域。
[0239] 窗口管理器022用于管理窗口程序,窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
[0240] 悬浮窗管理器022A,用于管理悬浮窗口的显示和消失等,例如显示前述翻译窗口64。
[0241] 悬浮球管理器022B,用于管理悬浮球的显示和消失等,例如显示前述翻译控件13。
[0242] 可以理解,在另一些实施例中,应用程序框架层02可以包括更多或更少的模块,例如内容提供器、视图系统、资源管理器、通知管理器、活动管理器等,在此不做限定。
[0243] 可以理解,在另一些实施例中,手机10的软件架构还可以包括更多的层,例如系统库、核心层等,在此不做限定。
[0244] 进一步,图12根据本申请的一些实施例,示出了一种手机10的结构示意图。
[0245] 如图12所示,手机10可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器
180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器
180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等等。
[0246] 处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural‑network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
[0247] 处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。在一些实施例中,处理器
110可以调用并执行存储器中存储的本申请各实施例提供的翻译方法的指令,以实现本申请实施例所提供的翻译方法。
[0248] 又例如,在一些实施例中,NPU可以用于运行前述语言模型20,从而提高语言模型20的运行速度。
[0249] 在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter‑integrated circuit,I2C)接口,集成电路内置音频(inter‑integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general‑purpose input/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
[0250] I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。
[0251] I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过I2S接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
[0252] PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM总线接口耦合。在一些实施例中,音频模块170也可以通过PCM接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。
[0253] UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过UART接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
[0254] MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(display serial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现手机10的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现手机10的显示功能。
[0255] GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
[0256] USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为手机10充电,也可以用于手机10与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
[0257] 充电管理模块140用于从充电器接收充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
[0258] 电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。
[0259] 手机10的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
[0260] 天线1和天线2用于发射和接收电磁波信号。
[0261] 移动通信模块150可以提供应用在手机10上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
[0262] 无线通信模块160可以提供应用在手机10上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi‑Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),NFC,红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
[0263] 手机10通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
[0264] 显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light‑emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active‑matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light‑emitting diode,FLED),Mini‑LED,Micro‑LED,Micro‑OLED,量子点发光二极管(quantum dot light emitting diodes,QLED)等。在一些实施例中,手机10可以包括1个或N个显示屏194,N为大于1的正整数。
[0265] 摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal‑oxide‑semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,手机10可以包括1个或N个摄像头193,N为大于1的正整数。
[0266] 外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展手机10的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
[0267] 内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令,例如前述存储器103。内部存储器121可以包括程序存储区和数据存储区。其中,程序存储区可存储操作系统,至少一个功能所需的应用程序等。数据存储区可存储手机10使用过程中所创建的数据(比如前述目标文本、样本文本序列、样本文本序列的困惑度等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器110中的存储器的指令,执行手机10的各种功能应用。
[0268] 手机10可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
[0269] 音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。
[0270] 扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。例如,在一些实施例中,扬声器170A可以用于向用户播放刷卡成功/失败的提示音。
[0271] 受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。
[0272] 麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。
[0273] 耳机接口170D用于连接有线耳机。
[0274] 压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。手机10根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,手机10根据压力传感器180A检测所述触摸操作强度。手机10也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如,在一些实施例中,用户可以通过对压力传感器的操作来选择文本、复制文本以及对翻译控件的触发操作。
[0275] 加速度传感器180E可检测手机10在各个方向上(一般为三轴)加速度的大小。当手机10静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
[0276] 环境光传感器180L用于感知环境光亮度。手机10可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测手机10是否在口袋里,以防误触。
[0277] 指纹传感器180H用于采集指纹。手机10可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。在本申请实施例中,主空间和隐私空间可以采用不同的解锁指纹进行验证登录,以保障隐私空间内隐私数据的安全性。用户可以在手机10上验证不同的指纹分别进入主空间和隐私空间。
[0278] 触摸传感器180K,也称“触控器件”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于手机10的表面,与显示屏194所处的位置不同。例如,在一些实施例中,用户可以通过触摸传感器180K来实现对目标文本的选择、复制,对翻译控件触发操作等。
[0279] 骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。
[0280] 按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。手机10可以接收按键输入,产生与手机10的用户设置以及功能控制有关的键信号输入。
[0281] 马达191可以产生振动提示。例如,在一些实施例中,手机10可以在用户刷卡成功/失败时,通过振动来提示用户。
[0282] 指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。例如,例如,在一些实施例中,手机10可以在用户刷卡成功/失败时,通过将指示灯设置不同的颜色来提示用户。
[0283] SIM卡接口195用于连接SIM卡。
[0284] 可以理解,本申请实施例示出的手机10的结构并不构成对手机10的具体限定。在本申请另一些实施例中,手机10可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
[0285] 可以理解,以上以手机10为例介绍本申请实施例的技术方案只是一种示例,在另一些实施例中,本申请实施例提供的技术方案也适用于其他任意电子设备,包括但不限于:膝上型计算机、智能电视、智能音箱、平板计算机、服务器、可穿戴设备、头戴式显示器、移动电子邮件设备、便携式游戏机、便携式音乐播放器、阅读器设备等,本申请实施例不做限定。
[0286] 本申请公开的机制的各实施例可以被实现在硬件、软件、固件或这些实现方法的组合中。本申请的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程系统包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。
[0287] 可将程序代码应用于输入指令,以执行本申请描述的各功能并生成输出信息。可以按已知方式将输出信息应用于一个或多个输出设备。为了本申请的目的,处理系统包括具有诸如例如数字信号处理器(DSP)、微控制器、专用集成电路(ASIC)或微处理器之类的处理器的任何系统。
[0288] 程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理系统通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本申请中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
[0289] 在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合来实现。所公开的实施例还可以被实现为由一个或多个暂时或非暂时性机器可读(例如,计算机可读)存储介质承载或存储在其上的指令,其可以由一个或多个处理器读取和执行。例如,指令可以通过网络或通过其他计算机可读存储介质分发。因此,机器可读存储介质可以包括用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制,包括但不限于,软盘、光盘、光碟、只读存储器(CD‑ROMs)、磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁卡或光卡、闪存、或用于利用因特网以电、光、声或其他形式的传播信号来传输信息(例如,载波、红外信号数字信号等)的有形的机器可读存储器。因此,机器可读存储介质包括适合于以机器(例如,计算机)可读的形式存储或传输电子指令或信息的任何类型的机器可读存储介质。
[0290] 在附图中,可以以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可能不需要这样的特定布置和/或排序。而是,在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包括结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
[0291] 需要说明的是,本申请各设备实施例中提到的各单元/模块都是逻辑单元/模块,在物理上,一个逻辑单元/模块可以是一个物理单元/模块,也可以是一个物理单元/模块的一部分,还可以以多个物理单元/模块的组合实现,这些逻辑单元/模块本身的物理实现方式并不是最重要的,这些逻辑单元/模块所实现的功能的组合才是解决本申请所提出的技术问题的关键。此外,为了突出本申请的创新部分,本申请上述各设备实施例并没有将与解决本申请所提出的技术问题关系不太密切的单元/模块引入,这并不表明上述设备实施例并不存在其它的单元/模块。
[0292] 需要说明的是,在本专利的示例和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0293] 虽然通过参照本申请的某些优选实施例,已经对本申请进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本申请的精神和范围。