首页 / 专利库 / 电脑编程 / 算法 / 基于滑动输入来确定输入字符的系统和方法

基于滑动输入来确定输入字符的系统和方法

阅读:955发布:2020-05-08

专利汇可以提供基于滑动输入来确定输入字符的系统和方法专利检索,专利查询,专利分析的服务。并且提供了一种 人工智能 (AI)系统及其应用,该人工智能系统通过使用诸如 深度学习 的 机器学习 算法 来模拟人脑的功能,诸如识别和确定。由设备基于训练处理 键盘 输入 的方法可以包括:在设备的屏幕上显示键盘;接收用户的滑动输入,所述滑动输入连接所显示的键盘上的多个键;提取连接多个键的轨迹;基于所述轨迹,将指示轨迹的形状和轨迹相对于键盘的相对 位置 的轨迹信息应用到键盘输入的经过训练的模型。,下面是基于滑动输入来确定输入字符的系统和方法专利的具体信息内容。

1.基于训练处理键盘输入的设备,所述设备包括:
屏幕;
存储器,存储至少一条指令;以及
处理器,配置为执行所述至少一条指令以:
在所述设备的屏幕上显示键盘;
接收用户的滑动输入,所述滑动输入连接所显示的键盘上的多个键;
基于所述滑动输入提取连接所述多个键的轨迹;
基于所述轨迹,将指示所述轨迹的形状、和所述轨迹相对于所述键盘的相对位置的轨迹信息应用到所述键盘输入的经过训练的模型;以及
基于应用所述轨迹信息的结果,确定与所述轨迹对应的至少一个字符。
2.根据权利要求1所述的设备,其中,所述处理器还配置为执行所述至少一条指令以:
归一化所述轨迹;以及
将与经归一化的轨迹的形状和所述经归一化的轨迹的位置相关的归一化轨迹信息应用到所述经过训练的模型。
3.根据权利要求2所述的设备,其中,所述处理器还配置为执行所述至少一条指令,以将所述键盘和所述键盘上的轨迹调整到预定大小和预定形状。
4.根据权利要求1所述的设备,其中,基于所述用户相对于多种类型键盘的滑动输入来训练所述经过训练的模型。
5.根据权利要求1所述的设备,其中,通过使用控递归单元(GRU)算法来训练所述经过训练的模型,所述门控递归单元算法用于通过使用多个门来调整信息量。
6.根据权利要求5所述的设备,其中,通过使用连接时间分类(CTC)算法来训练所述经过训练的模型。
7.根据权利要求1所述的设备,其中,所述处理器还配置为执行所述至少一条指令,以将指示所述轨迹的形成方向的信息应用到所述经过训练的模型。
8.根据权利要求1所述的设备,其中,所述处理器还配置为执行所述至少一条指令以:
获取所述用户的字符输入历史,以及
基于所述字符输入历史完善所述经过训练的模型。
9.根据权利要求1所述的设备,其中,所述处理器还配置为执行所述至少一条指令以:
从所述用户的用户数据提取至少一个专有名词,以及
基于所提取的专有名词完善所述经过训练的模型。
10.根据权利要求9所述的设备,其中,所述用户数据包括所述用户的联系人信息、所述用户写入的消息和所述用户的社交网络服务(SNS)数据中的至少一种。
11.通过设备基于训练处理键盘输入的方法,所述方法包括:
在所述设备的屏幕上显示键盘;
接收用户的滑动输入,所述滑动输入连接所显示的键盘上的多个键;
基于所述滑动输入提取连接所述多个键的轨迹;
基于所述轨迹,将指示所述轨迹的形状、和所述轨迹相对于所述键盘的相对位置的轨迹信息应用到所述键盘输入的经过训练的模型;以及
基于应用所述轨迹信息的结果,确定与所述轨迹对应的至少一个字符。
12.根据权利要求11所述的方法,其中,将所述轨迹信息应用到所述经过训练的模型包括:
归一化所述轨迹;以及
将与经归一化的轨迹的形状和所述经归一化的轨迹的位置有关的归一化轨迹信息应用到所述经过训练的模型。
13.根据权利要求12所述的方法,其中,归一化所述轨迹包括:将所述键盘和所述键盘上的轨迹调整到预定大小和预定形状。
14.根据权利要求11所述的方法,其中,基于所述用户相对于多种类型的键盘的滑动输入来训练所述经过训练的模型。
15.根据权利要求11所述的方法,其中,通过使用门控递归单元(GRU)算法来训练所述经过训练的模型,所述门控递归单元用于通过使用多个门来调整信息量。
16.根据权利要求15所述的方法,其中,通过使用连接时间分类(CTC)算法来训练所述经过训练的模型。
17.根据权利要求11所述的方法,其中,将所述轨迹信息应用到所述经过训练的模型包括:将指示所述轨迹的形成方向的信息应用到所述经过训练的模型。
18.根据权利要求11所述的方法,还包括:
获取所述用户的字符输入历史,
其中,基于所述字符输入历史完善所述经过训练的模型。
19.根据权利要求11所述的方法,还包括:
从所述用户的用户数据提取至少一个专有名词,
其中,基于所提取的专有名词完善所述经过训练的模型。
20.非暂时性计算机可读记录介质,存储有指令,所述指令当被处理器执行时使所述处理器执行操作,所述操作包括:
在设备的屏幕上显示键盘;
接收用户的滑动输入,所述滑动输入连接所显示的键盘上的多个键;
基于所述滑动输入提取连接所述多个键的轨迹;
基于所述轨迹,将指示所述轨迹的形状和所述轨迹相对于所述键盘的相对位置的轨迹信息应用到键盘输入的经过训练的模型;以及
基于应用所述轨迹信息的结果,确定与所述轨迹对应的至少一个字符。

说明书全文

基于滑动输入来确定输入字符的系统和方法

技术领域

[0001] 本公开涉及基于滑动输入来确定输入字符的系统和方法,更具体地,涉及基于经过键盘上的多个键的滑动输入来确定输入字符的系统和方法。

背景技术

[0002] 人工智能(AI)系统是能够展现人类平或接近人类水平的智能的计算机系统。不同于现有的基于规则的智能系统,AI系统是机器自我训练、决定并变得更加智能的系统。通过包括AI系统,可以提高识别速度,并且可以更准确地估计用户偏好,因此,现有的基于规则的智能系统被基于深度学习的AI系统逐渐取代。
[0003] AI技术包括机器学习和使用机器学习的元素(element)技术。机器学习是对输入数据的特征进行自我分类和学习的算法技术。元素技术是通过使用机器学习算法(例如深度学习)来模拟人脑的例如识别和确定的功能的技术,并且包括语言理解、视觉理解、推断/预测、知识表示和操作控制的技术领域。
[0004] 应用AI技术的各个领域如下。语言理解是识别人的语言/字符并应用/处理语言/字符的技术,并且包括自然语言处理机器翻译对话系统、问答或语音识别/合成。视觉理解是像人类视觉一样识别物体的技术,并且包括物体识别、物体跟踪、图像搜索、人识别、场景理解、空间理解或图像改进。推断/预测是通过确定信息来逻辑推断和预测信息的技术,并且包括基于知识/概率的推断、优化预测、基于偏好的计划或推荐。知识表示是将经验信息自动化为知识数据的技术,并且包括知识构建(数据生成/分类)或知识管理(数据应用)。操作控制是控制车辆的自动驾驶或机器人的运动的技术,并且包括运动控制(例如,导航、碰撞避免、驾驶)或操纵控制(例如,行为控制)。
[0005] 同时,随着网络技术的发展,用户现在能够通过使用设备在任何时间和任何地点方便地使用期望的服务,因此,极大地强调通过设备提供的用户界面的重要性。
[0006] 特别地,该设备提供了基于触摸的软键盘,且用户现在能够通过相对于基于触摸的软键盘的滑动输入来方便地输入字符。
[0007] 然而,由于用户输入的滑动输入的轨迹可能不一致,所以当用户通过滑动输入向设备输入字符时,用户不希望的字符可能被输入到设备。发明内容
[0008] 技术方案
[0009] 提供了一种基于滑动输入通过分析在键盘上形成的轨迹来确定输入字符的系统和方法。
[0010] 提供了一种确定输入字符的系统和方法,该系统和方法通过归一化键盘和键盘上的轨迹有效地使用经过训练的模型来根据滑动输入确定输入字符。
[0011] 提供了一种通过使用能够调整信息量的经过训练的模型来确定输入字符的系统和方法。
[0012] 额外的方面将部分地在下面的描述中阐述,并且部分地将根据该描述中显而易见,或者可以通过实践所呈现的实施方式而被习得。附图说明
[0013] 从下面结合附图的描述中,本公开的某些实施方式的上述和其他方面、特征和优点将变得更加明显,其中:
[0014] 图1是用于描述根据实施方式的确定与用户在键盘上的滑动对应的字符的设备的示例的图;
[0015] 图2是根据实施方式的由设备基于用户的滑动输入来确定字符的方法的流程图
[0016] 图3是用于描述根据实施方式的通过归一化从滑动输入提取的轨迹来确定与滑动输入对应的字符的设备的示例的图;
[0017] 图4是根据实施方式的由设备归一化从滑动输入提取的轨迹并基于归一化的轨迹确定与滑动输入对应的字符的方法的流程图;
[0018] 图5是用于描述根据实施方式的归一化不同关键词上的滑动输入和根据滑动输入的轨迹的示例的图;
[0019] 图6是用于描述根据实施方式的设备推荐与用户的滑动输入对应的字符并基于用户针对推荐的字符的选择生成用于完善经过训练的模型的数据的示例的图;
[0020] 图7是用于描述根据实施方式的对应于某些字符的多个轨迹的示例的图;
[0021] 图8是根据实施方式的由设备通过使用与用户相关的信息确定与滑动输入对应的字符并完善经过训练的模型的方法的流程图;
[0022] 图9是用于描述根据实施方式的通过另外考虑用户数据来对关键词键盘输入执行训练的设备的示例的图;
[0023] 图10和图11是根据实施方式的设备的框图
[0024] 图12是根据实施方式的处理器的框图;
[0025] 图13是根据实施方式的数据学习器的框图;
[0026] 图14是根据实施方式的数据识别器;以及
[0027] 图15是用于描述根据实施方式的设备和服务器一起交互工作以学习和识别数据的示例的图。

具体实施方式

[0028] 最佳实施方式
[0029] 根据本公开的一个方面,基于训练来处理键盘输入的设备可以包括:屏幕、存储器和处理器,存储器存储至少一条指令,处理器配置为执行所述至少一条指令以:在设备的屏幕上显示键盘;接收用户的、连接所显示的键盘上的多个键的滑动输入;基于滑动输入提取连接多个键的轨迹;基于轨迹将指示轨迹的形状和轨迹相对于键盘的相对位置的轨迹信息应用到键盘输入的经过训练的模型;以及基于应用轨迹输入的结果,确定与轨迹对应的至少一个字符。
[0030] 根据本公开的另一方面,由设备基于训练来处理键盘输入的方法可以包括:在设备的屏幕上显示键盘;接收用户的、连接所显示的键盘上的多个键的滑动输入;基于滑动输入提取连接多个键的轨迹;基于轨迹将指示轨迹的形状和轨迹相对于键盘的相对位置的轨迹信息应用到键盘输入的经过训练的模型;以及基于应用轨迹信息的结果,确定与轨迹对应的至少一个字符。
[0031] 根据本公开的另一方面,提供了一种上面记录有指令的非暂时性计算机可读记录介质,当由处理器执行时,所述指令使得处理器执行上述方法。
[0032] 本发明的实施方式
[0033] 现在将详细参考其示例在附图中示出的实施方式。在这点上,本实施方式可以具有不同的形式,并且不应该被解释为限于本文阐述的描述。因此,下面通过参考附图仅描述所述实施方式,以解释各方面。在附图中,为了更清楚的描述,没有示出与描述无关的元件,并且在整个说明书中,相同的元件表示相同的附图标记。
[0034] 在说明书中,当一个区域“连接”到另一个区域时,这些区域不仅可以“直接连接”,还可以经由其间的另一个设备“电连接”。此外,当一个区域“包括”一个元件时,除非另有说明,否则该区域还可以包括另一个元件,而不是排除另一个元件。
[0035] 如本文所使用的,术语“和/或”包括一个或多个相关列出项目的任何和所有组合。诸如“……中的至少一个”的表达在元件列表之前使用时修饰整个元件列表,而不是修饰列表中的单个元件。
[0036] 在下文中,将参考附图详细描述一个或多个实施方式。
[0037] 图1是用于描述根据实施方式的确定与用户在键盘上的滑动对应的字符的设备1000的示例的图。
[0038] 参考图1,设备1000可以通过使用经过训练的模型来确定与用户输入至键盘的滑动输入对应的至少一个字符,其中该经过训练的模型已经基于与特定字符对应的轨迹进行了训练。经过训练的模型可以是用于确定与经过键盘上多个键的轨迹对应的至少一个字符的数据确定模型。数据确定模型可以是基于例如神经网络的模型。诸如深度神经网络(DNN)、递归神经网络(RNN)或双向递归深度神经网络(BRDNN)的模型可以用作数据确定模型,但是数据确定模型不限于此。此外,至少一个字符可以形成例如单词或表情,但不限于此。
[0039] 设备100可以基于用户相对于显示在设备1000的屏幕上的键盘的滑动输入来检测经过键盘上的多个键的轨迹,并且将关于检测到的轨迹的信息应用到经过训练的模型。
[0040] 此外,设备1000可以通过对经过键盘上的多个键的轨迹进行归一化来将形成在以各种形式显示的键盘上的轨迹应用到经过训练的模型,并将归一化轨迹应用到经过训练的模型。
[0041] 经过训练的模型可以存储在设备1000中,但不限于此。经过训练的模型可以存储在服务器2000中,并且在这种情况下,设备1000可以向服务器2000提供关于检测到的轨迹的信息,并且服务器2000可以将从设备1000接收的关于检测到的轨迹的信息应用到经过训练的模型。
[0042] 此外,设备1000可以通过经过训练的模型确定与检测到的轨迹对应的至少一个字符,并且在设备1000的屏幕上显示该至少一个字符。设备1000可以通过将用户的滑动输入和与滑动输入的轨迹对应的至少一个字符应用到经过训练的模型来完善(refine)经过训练的模型。
[0043] 图2是根据实施方式的由设备1000基于用户的滑动输入来确定字符的方法的流程图。
[0044] 在操作S210中,设备1000可以在设备1000的屏幕上显示键盘。当设备1000的用户要向设备1000输入字符时,设备1000可以在设备1000的屏幕上显示软键盘。
[0045] 键盘可以具有各种语言中的任何一种的布局,所述语言例如韩语、英语、中文和日语。此外,键盘可以是例如QWERTY键盘、QWERTZ键盘、AZERTY键盘、QZERTY键盘、DVORAK键盘或COLEMAK键盘。此外,键盘可以具有任何形状。在这种情况下,键盘上的键的形状、大小、间隔和排列可能会有所不同。
[0046] 在操作S220中,设备1000可以接收用户的、连接键盘上的多个键的滑动输入。
[0047] 例如,为了输入单词,用户可以通过触摸-拖-放输入来选择多个字符。例如,为了输入包括三个字符的单词,用户可以用手指触摸第一个键,将手指拖动到第二个键和第三个键,然后在第三个键上抬起手指。
[0048] 在操作S230中,设备1000可以基于滑动输入提取连接多个键的轨迹。设备1000可以基于滑动输入来检测触摸键盘的手指的轨迹。
[0049] 在操作S240中,设备1000可以生成指示轨迹的形状和轨迹相对于键盘的相对位置的轨迹信息。
[0050] 设备1000可以生成例如键盘的坐标信息和轨迹的坐标信息。键盘的坐标信息可以指示键盘的形状和大小,例如,可以是指示围绕键盘和每个单独的键的边界的坐标值。此外,轨迹的坐标信息可以指示形成在键盘中的轨迹的形状和大小,例如可以是形成轨迹的点的坐标值。
[0051] 此外,设备1000可以生成捕捉了键盘和形成在键盘上的轨迹的图像。在这种情况下,捕捉的图像可以指示键盘的形状和大小以及轨迹的形状和大小。
[0052] 此外,轨迹信息可以包括指示轨迹的形成方向的信息。例如,当用户的滑动输入依次经过“b”、“o”和“y”时,轨迹信息可以包括指示滑动输入的轨迹形成在从“b”经过“o”到“y”的方向上的信息。
[0053] 然而,设备1000生成的轨迹信息不限于此,并且设备1000可以生成和处理各种类型的信息以指示轨迹的形状和轨迹相对于键盘的相对位置。
[0054] 在操作S250中,设备1000可以将所生成的轨迹信息应用到用于基于轨迹的键盘输入的经过训练的模型。
[0055] 经过训练的模型可以被预设(即,预先确定)并存储在设备1000中。在这种情况下,生成和操作经过训练的模型的服务器2000可以向设备1000提供经过训练的模型,并且设备1000可以存储和管理从服务器2000接收的经过训练的模型。
[0056] 此外,预设的经过训练的模型可以存储在服务器2000中。在这种情况下,设备1000可以向服务器2000提供轨迹信息,并且从服务器2000接收基于轨迹信息确定的单词信息。此外,在这种情况下,经过训练的模型可以根据用户由服务器2000来管理。
[0057] 预设的经过训练的模型可以通过使用对应于各种轨迹的单词信息来预先训练。例如,可以生成与词典中包括的各种单词对应的轨迹,并且可以通过使用所生成轨迹的轨迹信息和与所生成的轨迹对应的单词信息来训练预设的经过训练的模型。
[0058] 此外,可以预先生成对应于词典中某个单词的各种轨迹。在这种情况下,可以通过各种算法生成各种轨迹。例如,可使用直边、曲线边、弗格森曲线、贝塞尔曲线、B样条曲线来生成轨迹。
[0059] 此外,可以通过使用例控递归单元(GRU)算法来训练经过训练的模型,在该算法中通过使用多个门来调整信息量。此外,可以通过使用例如门控递归单元(GRU)来训练经过训练的模型,并且可以通过使用连接时间分类(CTC)算法来补偿形成单词的字符的误排列(例如,打字错误)和遗漏。然而,用于训练经过训练的模型的算法不限于此,并且可以使用各种类型的算法中的任何一种。
[0060] 在操作S260中,设备1000可以基于操作S250的结果来确定与所提取的轨迹对应的至少一个字符。设备1000可以通过将轨迹信息应用到经过训练的模型来从经过训练的模型获取对应于轨迹的单词。此外,设备1000可以在设备1000的屏幕上显示所获取的单词。此外,可以基于所应用的轨迹信息和应用结果来完善经过训练的模型。
[0061] 操作S210到操作S260中的至少一个可以由安装在设备1000中的键盘应用或者由与键盘应用交互工作的单独应用来执行,但不限于此。
[0062] 图3是用于描述根据实施方式的设备1000通过对从滑动输入提取的轨迹进行归一化来确定与滑动输入对应的字符的示例的图。
[0063] 如附图标记310所示,用户可以用手指触摸显示在设备1000的屏幕上的键盘上的“t”,并且依次将手指拖动到“h”、“i”和“s”。在这种情况下,设备1000可以提取手指的轨迹30。
[0064] 如附图标记320所示,设备1000可以从轨迹30生成轨迹信息,并归一化轨迹30。设备1000可以通过将显示在设备1000的屏幕上的键盘的大小放大或缩小到预设大小来归一化轨迹30。此时,轨迹30的大小也可以相对于键盘以相同的比例放大或缩小。例如,如果键盘的大小将被缩放0.8倍,那么轨迹30的整体大小和尺寸也可以被缩放0.8倍。水平缩放和垂直缩放可以具有不同的比例。例如,键盘和/或轨迹可以水平缩放0.9倍(例如,缩小),而垂直缩放1.2倍(例如,放大)。
[0065] 如附图标记330和340所示,设备100可以通过将归一化轨迹的轨迹信息应用到经过训练的模型来确定对应于轨迹30的单词是“this”。在这种情况下,例如,轨迹信息可以应用于基于GRU的经过训练的模型,并且从基于GRU的经过训练的模型输出的结果值可以应用于基于CTC的经过训练的模型。
[0066] 图4是根据实施方式的由设备1000归一化从滑动输入提取的轨迹并基于归一化的轨迹确定与滑动输入对应的字符的方法的流程图。
[0067] 在操作S410中,设备1000可以接收用户的、连接键盘上的多个键的滑动输入,并且在操作S420中,设备1000可以基于滑动输入提取跨越多个键的轨迹。
[0068] 由于图2的操作S410和S420分别对应于图2的操作S220和S230,因此不再提供其细节。
[0069] 在操作S430中,设备1000可以基于键盘的形状和大小来归一化所提取的轨迹。设备1000可以通过将显示在设备1000的屏幕上的键盘的大小放大或缩小到预设大小来归一化轨迹。此时,轨迹的大小也可以按与键盘相同的比例放大或缩小。
[0070] 例如,当设备1000生成键盘的坐标信息和轨迹的坐标信息作为轨迹信息时,指示键盘的边界的坐标值和指示键盘上的轨迹的坐标值可以以相同的比例(例如,在水平和/或垂直方向上)放大或缩小。此时,可以保持轨迹相对于键盘的相对位置。
[0071] 此外,例如,当设备1000捕捉键盘和在键盘上形成的轨迹的图像时,设备1000可以(例如,在水平和/或垂直方向上)放大或缩小图像。此时,可以保持轨迹相对于键盘的相对位置。
[0072] 在操作S440中,设备1000可以生成关于归一化轨迹的形状和归一化轨迹的相对位置的轨迹信息(例如,归一化轨迹信息)。设备1000可以归一化键盘和键盘上的轨迹,以获取指示归一化轨迹的形状和归一化轨迹相对于归一化键盘的相对位置的轨迹信息。
[0073] 在操作S450中,设备1000可以将轨迹信息应用到经过训练的模型。设备1000可以将关于归一化轨迹的轨迹信息应用到经过训练的模型。例如,设备1000可以将关于归一化轨迹的形状和归一化轨迹相对于归一化键盘的相对位置的轨迹信息应用到经过训练的模型。
[0074] 在操作S460中,设备1000可以基于应用结果来确定与所提取的轨迹对应的至少一个字符。设备1000可以获取从经过训练的模型输出的单词,并且在设备1000的屏幕上显示获取的单词。
[0075] 图5是用于描述根据实施方式的归一化不同关键词上的滑动输入和根据滑动输入的轨迹的示例的图。
[0076] 图5示出了当设备1000处于垂直模式和水平模式时,根据键盘上的滑动输入来归一化轨迹的示例。
[0077] 如附图标记510所示,当设备1000处于垂直取向时,键盘A显示在设备1000的屏幕上,并且用户可以通过滑动输入在键盘A上形成轨迹50。
[0078] 如附图标记520所示,设备1000可以将键盘A的大小归一化为预设大小,并且相应地,还将轨迹50归一化为归一化轨迹52。轨迹50的大小可以以与键盘A相同的比例缩放(例如,放大或缩小)。
[0079] 因此,归一化键盘A和归一化轨迹52可以如附图标记530所示那样进行配置。此外,设备1000可以获取关于归一化轨迹52的形状和大小以及归一化轨迹52在归一化键盘A上的位置的信息。
[0080] 如附图标记540所示,当设备1000处于水平取向时,键盘B显示在设备1000的屏幕上,并且用户可以通过滑动输入在键盘B上形成轨迹54。键盘B可以具有与键盘A不同的设计。键盘A和B的键之间的间隔以及键的大小、形状和排列可以彼此不同。
[0081] 如附图标记550所示,设备1000可以将键盘B的大小归一化为预设大小(例如,与键盘520相同的统一形状和大小),并且相应地,还将轨迹54归一化为归一化轨迹56。轨迹54的大小可以以与键盘B相同的比例(例如,水平地和/或垂直地)放大或缩小。
[0082] 因此,归一化键盘B和归一化轨迹56可以如附图标记560所示那样进行配置。此外,设备1000可以获取关于归一化轨迹56的形状和大小以及归一化轨迹56在归一化键盘B上的位置的信息。
[0083] 如图5所示,无论键盘的类型如何,键盘和键盘上的轨迹均可以被归一化,并且归一化轨迹的轨迹信息可以涉及各种键盘和各种输入模式。此外,无论键盘的类型和大小如何,设备1000均可以自主学习用于确定与相对于键盘的滑动输入的轨迹对应的字符的标准和准则。
[0084] 图6是用于描述根据实施方式的设备1000推荐与用户的滑动输入对应的字符并基于用户相对于所推荐的字符的选择来生成用于完善经过训练的模型的数据的示例的图。
[0085] 如附图标记610所示,例如,当希望输入“boy”的用户输入了错误的滑动输入并且因此以“b”、“p”和“y”的顺序形成轨迹625时,设备1000可以在键输入窗口上显示“bpy”640。此外,设备1000可以在区域630中显示被确定为用户想要的输入的推荐单词“boy”、“biy”和“buy”。此外,当用户从推荐单词中选择“boy”时,设备1000可以将“boy”确定为用户输入的单词。
[0086] 如附图标记620所示,设备1000可以将轨迹625归一化为归一化轨迹650,并将关于归一化轨迹650和归一化键盘660的信息与输入单词“boy”670匹配。此外,设备1000可以通过将输入单词“boy”670与关于归一化轨迹650和归一化键盘660的信息一起应用于经过训练的模型来完善经过训练的模型。
[0087] 因此,当用户稍后输入按照“b”、“p”和“y”的顺序形成轨迹的滑动输入时,设备1000可以通过使用被完善的经过训练的模型来确定用户要输入的单词是“boy”。
[0088] 图7是用于描述根据实施方式的对应于某些字符的多个轨迹的示例的图。
[0089] 如附图标记710所示,希望输入“boy”的用户可以输入按照“b”、“o”和“y”的顺序形成轨迹72的滑动输入。
[0090] 此时,希望输入“boy”的用户可能会输入错误的滑动输入并且因此错误滑动输入的轨迹可能不会准确地经过“b”、“o”和“y”。例如,如附图标记720所示,用户可能输入按照“b”、“p”和“y”的顺序形成轨迹74的滑动输入。替代地,例如,如附图标记730所示,用户可能输入按照“b”、“i”和“y”的顺序形成轨迹76的滑动输入。
[0091] 由于根据实施方式的设备1000可以通过将错误滑动输入的轨迹与用户想要的单词匹配来完善经过训练的模型,所以设备1000能够确定出与由附图标记720和730指示的错误滑动输入对应的单词是“boy”。
[0092] 图8是根据实施方式由设备通过使用与用户相关的信息来确定与滑动输入对应的字符并完善经过训练的模型的方法的流程图。
[0093] 在操作S810中,设备1000可以基于用户的连接键盘上的多个键的滑动输入来提取连接多个键的轨迹。
[0094] 在操作S820中,设备1000可以调用先前存储在设备1000中的经过训练的模型。先前存储在设备1000中的经过训练的模型可以由服务器2000生成,并且先前被提供给设备1000。此外,可以基于各种用户的滑动输入和对应于滑动输入的单词来生成和完善先前存储的经过训练的模型。
[0095] 在操作S830中,设备1000可以生成关于所提取轨迹的轨迹信息。此外,设备1000可以归一化所提取的轨迹。
[0096] 在操作S840中,设备1000可以获取用户数据。
[0097] 用户数据可以包括例如用户经由社交网络服务(SNS)上传的文本、存储在设备1000中的联系人信息、通过设备1000发送或接收的文本消息(例如,用户写的消息)、关于用户的文本输入历史的信息、以及存储在设备1000中的备忘录信息,但不限于此。
[0098] 设备1000可以获取经由用户输入通过设备1000中的各种应用输入的文本。在这种情况下,用于确定滑动输入的轨迹和对应于轨迹的单词的应用(例如,键盘应用)可以被预先授权以从其他应用获取输入文本。
[0099] 当在键盘应用被安装在设备1000中之后,另一个应用被安装在设备1000中时,设备1000可以在设备1000的屏幕上显示图形用户界面(GUI),用于从该另一个应用接收这样的用户输入,该用户输入选择是否授予从键盘应用获取输入文本的许可。此外,可以基于用户的选择输入来确定是否向键盘应用分配从其他应用获取文本的许可。
[0100] 在操作S850中,设备1000可以从用户数据中提取专有名词。专有名词的示例包括个人姓名、企业名称、产品名称或地名,但不限于此。此外,设备1000可以为重复提取的专有名词分配更大的权重。
[0101] 在操作S860中,设备1000可以将轨迹信息、用户数据和专有名词应用到所调用的经过训练的模型,并且在操作S870中,设备1000可以基于应用结果来确定与所提取的轨迹对应的至少一个字符。
[0102] 在操作S880中,设备1000可以通过使用关于所提取的轨迹的信息和所确定的至少一个字符来完善所调用的经过训练的模型。
[0103] 图9是用于描述根据实施方式的设备1000通过另外考虑用户数据来对关键词输入执行训练的示例的图。
[0104] 参考图9,可以通过使用关于用户通过使用键盘输入的轨迹和与轨迹对应的单词的信息910来完善经过训练的模型。此外,用户数据,诸如关于用户通过SNS上传的文本的信息920、包括在存储在设备1000中的地址簿中的联系人信息830、关于通过设备1000发送或接收的消息的信息940、以及关于通过由设备1000执行的备忘录应用输入的文本的信息950可以被输入到经过训练的模型,并且可以通过进一步考虑输入的用户数据来完善经过训练的模型。
[0105] 图10和图11是根据实施方式的设备1000的框图。
[0106] 如图10所示,根据实施方式的设备1000可以包括用户输入接口1100、显示器1210、处理器1300和通信器1500。然而,图10所示的组件并不都是设备1000的必要组件。设备1000可以包括比图10所示的组件更多或更少的组件。
[0107] 例如,如图11所示,除了用户输入接口1100、输出接口1200、处理器1300和通信器1500之外,根据实施方式的设备1000可以包括传感器1400、音频/视频(A/V)输入接口1600和存储器1700。
[0108] 用户输入接口1100是供用户输入用于控制设备1000的数据的单元。用户输入接口1100的示例包括键区、弹片开关触摸板(例如,触摸电容型、压电阻膜型、红外光检测型、表面超声传导型、整体张力测量型或压电效应型)、滚轮和微动开关,但不限于此。
[0109] 用户输入接口1100可以接收用户选择软键盘上的多个键的滑动输入。
[0110] 输出接口1200可以输出音频信号视频信号或振动信号,并且可以包括显示器1210、声音接口1220和振动电机1230。
[0111] 显示器1210可以显示由设备1000处理的信息,并将其呈现给用户。例如,显示器1210可以显示软键盘(也称为虚拟键盘)。此外,显示器1210可以显示用于基于软键盘上的滑动输入来确定输入字符的用户界面(UI)以及用于训练与滑动输入相关的经过训练的模型的UI。
[0112] 另一方面,当显示器1210通过与触摸板形成层结构而配置为触摸屏时,显示器1210也可以用作输入设备以及输出设备。显示器1210可以包括液晶显示器(LCD)、薄膜晶体管液晶显示器(TFT-LCD)、有机发光二极管(OLED)、柔性显示器、三维(3D)显示器和电泳显示器中的至少一种。此外,根据设备1000的实施方式,设备1000可以包括至少两个显示器
1210。
[0113] 声音接口1220输出从通信器1500接收的或者存储在存储器1700中的音频数据。
[0114] 振动电机1230可以输出振动信号。此外,当触摸屏被触摸时,振动电机1230可以输出振动信号。
[0115] 处理器1300总体上控制设备1000的整体操作。例如,处理器1300可以执行存储在存储器1700中的程序,以总体上控制用户输入接口1100、输出接口1200、传感器1400、通信器1500和A/V输入接口1600。
[0116] 具体地,处理器1300可以在设备1000的屏幕上显示键盘。当用户希望向设备1000输入至少一个字符时,设备1000可以在设备1000的屏幕上显示软键盘。键盘可以具有各种语言中的任何一种的布局,所述语言例如韩语、英语、中文和日语。此外,键盘可以是例如QWERTY键盘、QWERTZ键盘、AZERTY键盘、QZERTY键盘、DVORAK键盘或COLEMAK键盘。
[0117] 处理器1300可以接收用户的连接键盘上的多个键的滑动输入,并且可以基于滑动输入提取连接多个键的轨迹。
[0118] 处理器1300可以生成指示轨迹形状和轨迹相对于键盘的相对位置的轨迹信息。处理器1300可以生成例如键盘的坐标信息和轨迹的坐标信息。键盘的坐标信息可以指示键盘的形状和大小,并且例如可以是指示键盘和/或其组成键的边界的坐标值。此外,轨迹的坐标信息可以指示轨迹的形状和大小,并且例如可以是形成轨迹的点的坐标值。
[0119] 此外,处理器1300可以例如通过捕捉键盘和在键盘上形成的轨迹来生成图像。在这种情况下,图像可以指示键盘的形状和大小以及轨迹的形状和大小。
[0120] 然而,由处理器1300生成的轨迹信息不限于此,并且处理器1300可以生成和处理各种类型的信息,以指示轨迹的形状和轨迹相对于键盘的相对位置。
[0121] 此外,处理器1300可以基于键盘的形状和大小来归一化所提取的轨迹。处理器1300可以通过将显示在设备1000的屏幕上的键盘的大小放大或缩小到预设大小来归一化轨迹信息。此时,轨迹的大小可以相对于键盘以相同的比例缩放(例如,放大或缩小)。
[0122] 处理器1300可以生成指示归一化轨迹的形状和归一化轨迹的相对位置的轨迹信息。处理器1300可以归一化键盘和轨迹以获取轨迹信息,该轨迹信息指示归一化轨迹相对于归一化键盘的相对位置和归一化轨迹的形状。
[0123] 处理器1300可以针对基于轨迹的键盘输入将轨迹信息应用到经过训练的模型。应用于经过训练的模型的轨迹信息可以是关于归一化轨迹的信息,但不限于此。可以将归一化之前的轨迹信息应用到经过训练的模型。
[0124] 经过训练的模型可以被预设并存储在设备1000中。在这种情况下,生成和操作经过训练的模型的服务器2000可以向设备1000提供经过训练的模型,并且处理器1300可以在设备1000中存储和管理从服务器2000接收的经过训练的模型。
[0125] 此外,预设的经过训练的模型可以存储在服务器2000中。在这种情况下,处理器1300可以向服务器2000提供轨迹信息,并且从服务器2000接收基于轨迹信息确定的单词信息。此外,在这种情况下,服务器2000可以根据用户来管理经过训练的模型。
[0126] 处理器1300可以确定与所提取的轨迹对应的至少一个字符。处理器1300可以将轨迹信息应用到经过训练的模型,以从经过训练的模型获取对应于轨迹的单词。此外,处理器1300可以在设备1000的屏幕上显示所获取的单词。此外,可以基于轨迹信息和应用结果来完善经过训练的模型。
[0127] 处理器1300可以通过执行安装在设备1000中的键盘应用来执行上述操作。替代地,处理器1300可以执行与键盘应用交互工作的单独应用,以执行上述操作。然而,实施方式不限于此。
[0128] 另一方面,处理器1300可以获取用户数据。用户数据可以包括例如用户通过SNS上传的文本、存储在设备1000中的联系人信息、通过设备1000发送或接收的文本消息以及存储在设备1000中的备忘录信息,但不限于此。
[0129] 处理器1300可以获取经由用户输入通过设备1000中的各种应用输入的文本。在这种情况下,用于确定滑动输入的轨迹和对应于轨迹的单词的应用(例如,键盘应用)可以被预先授权(例如,先前被给予许可)以从其他应用获取输入文本。与应用的功能相关的权限可以由处理器1300管理。
[0130] 当在键盘应用被安装在设备1000中之后另一个应用被安装在设备1000中时,处理器1300可以在设备1000的屏幕上显示用于从该另一个应用接收这样的用户输入的GUI,该用户输入用于选择是否向键盘应用授予获取输入文本的许可。此外,可以基于用户的选择输入来确定是否向键盘应用授予从其他应用获取文本的许可。
[0131] 处理器1300可以从用户数据提取专有名词。专有名词的示例包括个人姓名、企业名称、产品名称或地名,但不限于此。此外,处理器1300可以为重复提取的专有名词分配更大的权重。
[0132] 处理器1300可以将轨迹信息应用到经过训练的模型、用户数据和专有名词,并且可以基于应用结果来确定与轨迹对应的至少一个字符。
[0133] 处理器1300可以通过使用关于轨迹和所确定的至少一个字符的信息来完善经过训练的模型。
[0134] 传感器1400可以检测设备1000的状态或设备1000周围的状态,并将检测到的状态发送到处理器1300。
[0135] 传感器1400可以包括磁传感器1410、加速度传感器1420、温度/湿度传感器1430、红外传感器1440、陀螺仪传感器1450、位置传感器1460(例如全球定位系统(GPS))、大气传感器1470、接近传感器1480和红-绿-蓝(RGB)传感器1490(例如照度传感器)中的至少一种,但不限于此。
[0136] 通信器1500可以包括使设备1000能够与服务器2000或外部装置通信的至少一个组件。例如,通信器1500可以包括短程无线接口1510、移动接口1520和广播调谐器1530。
[0137] 短程无线接口1510可以包括蓝牙接口、蓝牙低能量(BLE)接口、近场通信(NFC)接口、无线局域网(WLAN)(Wi-Fi)接口、Zigbee接口、红外数据协会(IrDA)接口、Wi-Fi直连(WFD)接口、超宽带(UWB)接口和Ant+接口,但是不限于此。
[0138] 移动接口1520可以在移动通信网络上向基站、外部终端和服务器中的至少一个发送无线信号以及从其接收无线信号。这里,无线信号可以根据语音呼叫信号、视频电话呼叫信号或文本/多媒体消息的发送和接收而包括具有各种格式的数据。
[0139] 广播调谐器1530可以通过广播信道从外部源接收广播信号和/或广播相关信息。广播信道可以包括卫星信道或地面广播信道。根据实施方式,设备1000可以不包括广播调谐器1530。
[0140] 此外,通信器1500可以向服务器2000和外部设备发送或从服务器2000和外部设备接收用于确定与键盘上的滑动输入相对应的用户输入字符所需的信息。
[0141] A/V输入接口1600可以接收音频信号或视频信号,并且可以包括相机1610和麦克1620。相机1610可以在视频电话模式或拍摄模式下经由图像传感器获取静止图像或运动图像的图像。经由图像传感器捕捉的图像可以由处理器1300或单独的图像处理器处理。
[0142] 麦克风1620可以接收外部声音信号并处理该外部声音信号以生成电子语音数据。例如,麦克风1620可以从外部设备或说话人接收声音信号。
[0143] 存储器1700可以存储用于处理器1300的处理和控制的程序,并且可以存储输入到设备1000或从设备1000输出的数据。存储器1700可以存储用于确定对应于滑动输入的输入字符的经过训练的模型。此外,存储器1700可以存储用于训练和完善经过训练的模型的各种类型的用户数据。
[0144] 存储器1700可以包括闪存、硬盘、多媒体卡微型存储器、卡型存储器(例如,安全数字(SD)卡或极限数字(XD)卡)、随机存取存储器(RAM)、静态随机存取存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁存储器、磁盘和光盘中的至少一种类型的存储介质。
[0145] 存储在存储器1700中的程序可以基于功能被分类为多个模,并且可以被分类为UI模块1710、触摸屏模块1720和通知模块1730。图11和其他图中所示的这些和其他模块可以用软件(例如,指令、命令、数据、代码、固件、程序、应用等)、硬件(例如,电路、微芯片、处理器等)或者两者的组合来实现。
[0146] UI模块1710可以根据应用提供链接到设备1000的专用UI或GUI。触摸屏模块1720可以检测用户在触摸屏上的触摸手势,并将关于该触摸手势的信息发送到处理器1300。根据实施方式的触摸屏模块1720可以识别和分析触摸代码。触摸屏模块1720可以配置为包括控制器的单独硬件。
[0147] 各种传感器可以布置在触摸屏内部或周围,以检测触摸屏上的触摸或接近触摸。用于检测触摸屏上的触摸的传感器的示例包括触觉传感器。触觉传感器检测人在特定物体上能感觉到的接触。触觉传感器可以检测各种类型的信息,例如接触表面的粗糙度、接触物体的刚性和触摸点的温度。
[0148] 用户的触摸手势的示例包括轻击、触摸并保持、双击、拖动、平移、轻弹、拖放和滑动。
[0149] 通知模块1730可以生成用于通知设备1000中的事件生成的信号。
[0150] 图12是根据实施方式的处理器1300的框图。
[0151] 参考图12,根据实施方式的处理器1300可以包括数据训练器1310和数据识别器1320。图11和其他图中所示的这些和其他组件可以用软件(例如,指令、命令、数据、代码、固件、程序、应用等)、硬件(例如,电路、微芯片、处理器等)或者两者的组合来实现。
[0152] 数据训练器1310可以学习用于确定与滑动输入的轨迹对应的至少一个字符的标准(例如,准则、规则、参数、阈值等)。数据训练器1310可以学习关于使用哪些数据来确定通过滑动输入而输入到键盘的字符以及如何通过使用数据来确定输入字符的标准。数据训练器1310可以通过获取用于学习的数据并将所获取的数据应用到下面描述的数据确定模型,来学习用于确定情境的标准。
[0153] 数据识别器1320可以基于数据确定输入字符。数据识别器1320可以通过使用数据确定模型从某些数据中识别输入字符。数据识别器1320可以通过根据经由学习而预设(即,预先确定)的标准获取特定数据并使用数据确定模型,来基于特定数据确定输入字符,其中所获取的特定数据被用作输入值。此外,从数据确定模型输出的结果值本身可以用于完善数据确定模型。
[0154] 数据训练器1310和数据识别器1320中的至少一个可以以至少一个硬件芯片的形式制造,并且可包括在电子装置中。例如,数据训练器1310和数据识别器1320中的至少一个可以以专用人工智能(AI)硬件芯片(例如,AI加速器、AI芯片等)的形式制造,或可被制造为现有通用处理器(例如,中央处理单元(CPU)或应用处理器(AP))或专用图形处理器(例如,图形处理单元(GPU))的一部分,并包括在任何电子装置中。
[0155] 在这种情况下,数据训练器1310和数据识别器1320可以包括在一个电子装置或不同的电子装置中。例如,数据训练器1310和数据识别器1320中的一个可以包括在电子装置中,而另一个可以包括在服务器中。替代地,在数据训练器1310和数据识别器1320中,由数据训练器1310构建的模型信息可以通过有线或无线方式被提供给数据识别器1320,或者输入到数据识别器1320的数据可以作为附加训练数据通过有线或无线方式被提供给数据训练器1310。
[0156] 另一方面,数据训练器1310和数据识别器1320中的至少一个可以在软件模块中实现。当数据训练器1310和数据识别器1320中的至少一个在软件模块(或包括指令的程序模块)中实现时,软件模块可以存储在非暂时性计算机可读记录介质中。软件模块可以由操作系统(OS)或某个应用提供。替代地,软件模块的一部分可以由OS提供,而软件模块的其余部分可以由某个应用提供。
[0157] 图13是根据实施方式的数据训练器1310的框图。
[0158] 参考图13,根据实施方式的数据训练器1310可以包括数据获取器1310-1、预处理器1310-2、训练数据选择器1310-3、模型训练器1310-4和模型评估器1310-5。
[0159] 数据获取器1310-1可以获取基于滑动输入来确定输入字符所需的数据。数据获取器1310-1可以获取基于滑动输入学习对输入字符的确定所需的数据。
[0160] 数据获取器1310-1可以获取对应于若干轨迹的单词信息。例如,可以生成对应于词典中所包括的各单词的轨迹,并且数据获取器1310-1可以获取关于所生成轨迹的轨迹信息和对应于所生成的轨迹的单词信息。
[0161] 此外,可以预先生成对应于词典中某个单词的各种轨迹。在这种情况下,可以通过各种算法生成各种轨迹。例如,可使用直边、曲线边、弗格森曲线、贝塞尔曲线、B样条曲线来生成轨迹。此时,可以相对于各种类型的键盘生成轨迹。
[0162] 此外,数据获取器1310-1可以获取各种类型的用户数据。用户数据可以包括例如用户通过SNS上传的文本、存储在设备1000中的联系人信息、通过设备1000发送或接收的文本消息以及存储在设备1000中的备忘录信息,但不限于此。
[0163] 预处理器1310-2可以预处理所获取的数据,使得所获取的数据用于学习对输入字符的确定。预处理器1310-2可以将所获取的数据处理成预设格式,使得模型训练器1310-4使用所获取的数据来学习情境确定。预处理器1310-2可以基于键盘的形状和大小来归一化轨迹。预处理器1310-2可以将键盘的大小放大或缩小到预设的大小,以归一化与键盘上的轨迹有关的轨迹信息。在这种情况下,轨迹的大小也可以以与键盘相同的比例放大或缩小。
[0164] 例如,当轨迹信息是键盘的坐标信息和轨迹的坐标信息时,预处理器1310-2可以以相同的比例放大或缩小指示键盘边界的坐标值和指示键盘上的轨迹的坐标值。在这种情况下,可以保持轨迹相对于键盘的相对位置。
[0165] 此外,例如,当轨迹信息是通过捕捉键盘上的轨迹而获取的图像时,预处理器1310-2可以放大或缩小所捕捉的图像。在这种情况下,可以保持轨迹相对于键盘的相对位置。此外,预处理器1310-2可以将用户数据预处理成预设格式。
[0166] 训练数据选择器1310-1可以从预处理数据中选择学习所需的数据。所选择的数据可以被提供给模型训练器1310-4。训练数据选择器1310-3可以基于为确定输入字符而预设的标准,从预处理数据中选择学习所需的数据。此外,训练数据选择器1310-3可以基于通过学习下面描述的模型训练器1310-4预设的标准来选择数据。
[0167] 模型训练器1310-4可以学习如何基于训练数据、根据滑动输入来确定输入字符的标准(例如,准则、规则、参数、阈值等)。此外,模型训练器1310-4可以学习使用哪些训练数据来确定输入字符的标准。
[0168] 此外,模型训练器1310-4可以通过使用训练数据来训练用于确定输入字符的数据确定模型。在这种情况下,数据确定模型可以是预先构建的(例如,预加载的、制造商制造的等)模型。例如,数据确定模型可以是通过接收基本训练数据预先构建的模型。
[0169] 可以考虑数据确定模型的应用领域、训练目的或装置的计算机性能来构建数据确定模型。数据确定模型可以是例如基于神经网络的模型。例如,深度神经网络(DNN)、递归神经网络(RNN)或双向递归深度神经网络(BRDNN)可以用作数据确定模型,但是实施方式不限于此。
[0170] 根据实施方式,当存在多个预先构建的数据确定模型时,模型训练器1310-4可以将输入训练数据和基本训练数据之间具有高相关性的数据确定模型确定为待训练的数据确定模型。在这种情况下,基本训练数据可以根据数据类型预先分类,并且数据确定模型可以根据数据类型被预先构建。
[0171] 此外,模型训练器1310-4可以例如通过使用包括误差反向传播或梯度下降的训练算法来训练数据确定模型。
[0172] 此外,模型训练器1310-4可以通过例如使用训练数据作为输入值的监督学习来训练数据确定模型。此外,模型训练器1310-4可以通过无监督学习来训练数据确定模型,在该无监督学习中,用于确定情境的标准是通过在没有单独监督的情况下自学习用于确定情境所需的数据类型来找到的。此外,模型训练器1310-4可以通过例如强化学习来训练数据确定模型,其中该强化学习使用关于通过学习确定情境的结果是否正确的反馈。
[0173] 此外,可以通过使用例如GRU算法来训练数据确定模型,在该GRU算法中通过使用多个门来调整信息量。此外,可以通过使用例如GRU算法来训练数据确定模型,并且可以通过使用CTC算法来补偿形成单词的字符的误排列(例如,打字错误)和遗漏。然而,用于训练数据确定模型的算法不限于此,并且可以使用各种类型的算法中的任何一种。
[0174] 此外,在数据确定模型被训练之后,模型训练器1310-4可以存储经过训练的数据确定模型。此时,模型训练器1310-4可以将数据确定模型存储在包括数据识别器1320的设备1000的存储器中。替代地,模型训练器1310-4可以将经过训练的数据确定模型存储在通过有线网络或无线网络连接到设备1000的服务器2000的存储器中。
[0175] 这里,存储经过训练的数据确定模型的存储器还可以存储例如与设备1000的另外至少一个组件相关的命令或数据。此外,存储器可以存储软件和/或程序。程序可以包括例如内核中间件、应用编程接口(API)和/或应用程序(或“应用”)。
[0176] 模型评估器1310-5可以将评估数据输入到数据确定模型中,并且当根据评估数据输出的识别结果不满足特定标准时,使模型训练器1310-4能够再次训练数据确定模型。这里,评估数据可以是预设成用于评估数据确定模型的数据。
[0177] 例如,当针对评估数据的经过训练的数据确定模型的识别结果之中的、其识别结果不准确的评估数据的条数的数量或比例超过预设阈值时,模型评估器1310-5可以确定出该识别结果不满足特定标准。例如,当特定标准为2%并且针对1000条评估数据之中超过20条评估数据而言经过训练的数据确定模型输出不正确的识别结果时,模型评估器1310-5可以确定经过训练的数据确定模型不合适。
[0178] 另一方面,当存在多个经过训练的数据确定模型时,模型评估器1310-5可以评估每个经过训练的数据确定模型是否满足特定标准,并将满足特定标准的经过训练的数据确定模型确定为最终数据确定模型。这里,当存在满足特定标准的多个数据确定模型时,模型评估器1310-5可以按照高评估分数的顺序确定一个或预设数量的数据确定模型作为最终数据确定模型。
[0179] 另一方面,数据训练器1310中的数据获取器1310-1、预处理器1310-2、训练数据选择器1310-3、模型训练器1310-4和模型评估器1310-5中的至少一个可以制造成至少一个硬件芯片的形式,并且包括在电子装置中。例如,数据获取器1310-1、预处理器1310-2、训练数据选择器1310-3、模型训练器1310-4和模型评估器1310-5中的至少一个可以被制造成在专用AI硬件芯片中,或者可以被制造成现有通用处理器(例如,CPU或应用处理器)或专用图形处理器(例如,GPU)的一部分,并且包括在上述任何电子装置中。
[0180] 此外,数据获取器1310-1、预处理器1310-2、训练数据选择器1310-3、模型训练器1310-4和模型评估器1310-5可以包括在一个电子装置或不同的电子装置中。例如,数据获取器1310-1、预处理器1310-2、训练数据选择器1310-3、模型训练器1310-4和模型评估器
1310-5中的一些可以包括在电子装置中,而其余的可以包括在服务器中。
[0181] 此外,数据获取器1310-1、预处理器1310-2、训练数据选择器1310-3、模型训练器1310-4和模型评估器1310-5中的至少一个可以在软件模块中实现。当数据获取器1310-1、预处理器1310-2、训练数据选择器1310-3、模型训练器1310-4和模型评估器1310-5中的至少一个在软件模块(或包括指令的程序模块)中实现时,软件模块可以存储在非暂时性计算机可读记录介质中。软件模块可以由OS或某个应用提供。替代地,软件模块的一部分可以由OS提供,而软件模块的其余部分可以由某个应用提供。
[0182] 图14是根据实施方式的数据识别器1320。
[0183] 参考图14,根据实施方式的数据识别器1320可以包括数据获取器1320-1、预处理器1320-2、识别数据选择器1320-3、识别结果提供器1320-4和模型完善器1320-5。
[0184] 数据获取器1320-1可以获取基于滑动输入来确定输入字符所需的数据,并且预处理器1320-2可以预处理所获取的数据使得所获取的数据用于确定输入字符。预处理器1320-2可以将所获取的数据处理成预设格式,使得识别结果提供器1320-4可以使用所获取的数据来确定输入字符。
[0185] 识别数据选择器1320-3可以从预处理的数据中选择用于确定输入字符所需的数据。所选择的数据可以被提供给识别结果提供器1320-4。识别数据选择器1320-3可以根据用于情境确定的预设标准选择一些或所有预处理的数据。此外,识别数据选择器1320-3可以根据通过训练模型训练器1310-4预设的标准来选择数据。
[0186] 识别结果提供器1320-4可以通过将所选择的数据应用到数据确定模型来确定输入字符。识别结果提供器1320-4可以根据数据的识别目的提供识别结果。识别结果提供器1320-4可以通过使用识别数据选择器1320-3选择的数据作为输入值,将所选择的数据应用到数据确定模型。此外,识别结果可以由数据确定模型来确定。
[0187] 识别结果提供器1320-4可以通过使用关于归一化轨迹的轨迹信息作为数据确定模型的输入值,根据滑动输入来确定输入字符。此外,识别结果提供器1320-4可以通过向数据确定模型输入关于用户通过SNS上传的文本的信息、存储在设备1000中的地址簿中包括的联系人信息、关于通过设备1000发送或接收的消息的信息、以及关于通过在设备1000中执行的备忘录应用输入的文本的信息中的至少一些,根据滑动输入来确定输入字符。
[0188] 模型完善器1320-5可以基于相对于识别结果提供器1320-4提供的识别结果的评估来完善数据确定模型。例如,模型完善器1320-5可以向模型训练器1310-4提供由识别结果提供器1320-4提供的识别结果,使得模型训练器1310-4可以完善数据确定模型。
[0189] 另一方面,数据识别器1320中的数据获取器1320-1、预处理器1320-2、识别数据选择器1320-3、识别结果提供器1320-4和模型完善器1320-5中的至少一个可以制造成至少一个硬件芯片的形式并包括在电子装置中。例如,数据获取器1320-1、预处理器1320-2、识别数据选择器1320-3、识别结果提供器1320-4和模型完善器1320-5中的至少一个可以被制造成在专用AI硬件芯片中,或者可以被制造成现有通用处理器(例如,CPU或应用处理器)或专用图形处理器(例如,GPU)的一部分,并且包括在上述任何电子装置中。
[0190] 此外,数据获取器1320-1、预处理器1320-2、识别数据选择器1320-3、识别结果提供器1320-4和模型完善器1320-5中的至少一个可以包括在一个电子装置中或不同的电子装置中。例如,数据获取器1320-1、预处理器1320-2、识别数据选择器1320-3、识别结果提供器1320-4和模型完善器1320-5中的一些可以包括在电子装置中,而其余的可以包括在服务器中。
[0191] 此外,数据获取器1320-1、预处理器1320-2、识别数据选择器1320-3、识别结果提供器1320-4和模型完善器1320-5中的至少一个可以在软件模块中实现。当数据获取器1320-1、预处理器1320-2、识别数据选择器1320-3、识别结果提供器1320-4和模型完善器
1320-5中的至少一个在软件模块(或包括指令的程序模块)中实现时,软件模块可以存储在非暂时性计算机可读记录介质中。软件模块可以由OS或某个应用提供。替代地,软件模块的一部分可以由OS提供,而软件模块的其余部分可以由某个应用提供。
[0192] 图15是用于描述根据实施方式的设备1000和服务器2000一起交互工作以学习和识别数据的示例的图。
[0193] 参考图15,服务器2000可以学习用于根据滑动输入确定输入字符的标准,并且设备1000可以基于服务器2000的学习结果根据滑动输入确定输入字符。
[0194] 在这种情况下,服务器2000的模型训练器2340可以执行图13的数据训练器1310的功能。服务器2000的模型训练器2340可以学习关于使用哪些数据来确定输入的输入字符以及如何通过使用数据来确定输入字符的标准。模型训练器2340可以通过获取要用于学习的数据并将所获取的数据应用到数据确定模型来学习用于确定输入字符的标准。
[0195] 此外,设备1000的识别结果提供器1320-4可以通过将由识别数据选择器1320-3选择的数据应用到由服务器2000生成的数据确定模型来确定输入字符。例如,识别结果提供器1320-4可以将由识别数据选择器1320-3选择的数据发送到服务器2000,并且识别结果提供器1320-4请求服务器2000将由识别数据选择器1320-3选择的数据应用到数据确定模型并确定输入字符。此外,识别结果提供器1320-4可以从服务器2000接收关于所确定的输入字符的信息。
[0196] 替代地,设备1000的识别结果提供器1320-4可以从服务器2000接收由服务器2000生成的数据确定模型,并且通过使用所接收的数据确定模型来确定输入字符。在这种情况下,设备1000的识别结果提供器1320-4可以通过将由识别数据选择器1320-3选择的数据应用到从服务器2000接收的数据确定模型来确定输入字符。
[0197] 一些实施方式也可以以包括计算机可读指令的计算机可读记录介质的形式实现,例如由计算机执行的程序模块。计算机可读记录介质可以是计算机可访问的任意可用介质,其示例包括所有易失性和非易失性介质以及可分离和不可分离介质。此外,计算机可读记录介质的示例可以包括计算机存储介质和通信介质。计算机存储介质的示例包括所有易失性和非易失性介质以及用于存储诸如计算机可读指令、数据结构、程序模块和其他数据的信息的可移除和不可移除介质。通信介质通常包括计算机可读指令、数据结构、程序模块、调制数据信号的其他数据或另一种传输机制,且其示例包括任意信息传输介质。
[0198] 此外,在本说明书中,“单元”或“模块”可以是硬件组件,例如处理器或电路,和/或由硬件组件执行的软件组件,例如处理器。
[0199] 尽管已经参照本公开的示例性实施方式具体示出和描述了本公开,但是本领域普通技术人员将理解,在不脱离本公开的技术思想和实质特征的情况下,可以在形式和细节上进行各种改变。因此,应当理解,上述实施方式并不限制本公开的范围。例如,以单一类型描述的每个组件可以以分布式方式执行,并且描述为分布式的组件也可以以集成形式执行。
[0200] 本公开的范围由权利要求(将在下文中描述)而不是本公开的详细描述来指示,并且应当理解,权利要求和从权利要求的构思得出的所有修改案或修改形式都包括在本公开的范围内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈