CN109863488A - 神经网络数据输入***的设备/服务器部署 - Google Patents

神经网络数据输入***的设备/服务器部署 Download PDF

Info

Publication number
CN109863488A
CN109863488A CN201780065887.4A CN201780065887A CN109863488A CN 109863488 A CN109863488 A CN 109863488A CN 201780065887 A CN201780065887 A CN 201780065887A CN 109863488 A CN109863488 A CN 109863488A
Authority
CN
China
Prior art keywords
item
electronic equipment
neural network
server
computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201780065887.4A
Other languages
English (en)
Other versions
CN109863488B (zh
Inventor
M·J·威尔森
M·菲斯凯托
J·伊索-西皮莱
D·A·H·欧
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN109863488A publication Critical patent/CN109863488A/zh
Application granted granted Critical
Publication of CN109863488B publication Critical patent/CN109863488B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)

Abstract

描述了一种电子设备,其具有用于接收项的序列中的至少一项的至少一个输入接口。所述电子设备能够与服务器进行通信,所述服务器存储神经网络以及生成所述神经网络的项嵌入的过程。所述电子设备具有存储器,该存储器存储有所述神经网络的副本和所述神经网络的多个项嵌入。在当电子设备处存在对应于所接收的至少一项的对应的项嵌入的不可用性时的情况下,所述电子设备触发对应的项嵌入从服务器向电子设备的传输。电子设备处的处理器通过利用所述神经网络的副本和所述多个项嵌入处理对应的项嵌入来预测所述序列中至少一个候选的下一项。

Description

神经网络数据输入***的设备/服务器部署
背景技术
诸如将文本字符、表情符号(emoji)、以及其他数据输入到具有较小形状因子的电子设备中之类的数据输入对于终端用户而言是耗时、繁琐、且容易出错的。用于促进数据输入的一种方法是提供诸如软键盘之类的预测性键盘,其在电子设备的触摸屏上被显示并且由终端用户使用以键入字符、表情符号、符号、和其他数据。预测性键盘通常呈现一个或多个候选的经预测的词或短语作为选项,以供用户选择并因此输入到电子设备中。
在一些情况下,用于给予这样的预测性键盘的功能的技术包括神经网络技术。例如,其中,神经网络用于预测用户很可能想要输入的候选词。然而,神经网络占用了大量资源(例如,存储器和处理资源)并且这使得在神经网络位于资源受约束的设备(例如,智能电话、平板计算机、可佩戴计算机、或其他资源受约束的设备)上的情况下,难以获得良好的性能准确性。
神经网络是通过边相互连接的节点的集合,并且其中,存在与节点和/或边相关联的权重。在所述节点中的个体节点处应用了各种函数或非线性。在训练阶段期间,所述权重是根据训练示例、按照更新规则来更新的。一旦已经训练了神经网络,其就可以用于通过泛化(generalization)从先前在训练期间没有由神经网络见过的示例中计算预测。
下文所描述的实施例不限于使用神经网络技术来解决已知数据输入***的缺点中的任何一个或所有缺点的实现。
发明内容
以下呈现了本公开的简化的概要,以便向读者提供基本的理解。该发明内容不旨在标识所要求保护的主题的关键或重要特征,也不旨在用于限制所要求保护的主题的范围。其唯一的目的是以简化的形式呈现在本文中所公开的概念的选择,作为之后所呈现的更加详细的描述的前序。
描述了一种电子设备,其具有用于接收项的序列中的至少一个项的至少一个输入接口。所述电子设备能够通过通信网络与服务器进行通信,所述服务器存储神经网络以及生成神经网络的项嵌入的过程。所述电子设备具有存储神经网络的至少一部分以及神经网络的多个项嵌入的存储器。在当电子设备处存在对应于所接收的至少一项的对应的项嵌入的不可用性时的情况下,所述电子设备触发对应的项嵌入从服务器向电子设备的传输。电子设备处的处理器通过利用所述神经网络的副本并且使用针对从所述存储器获取的多个候选的下一项的项嵌入,在可用的情况下处理所述对应的项嵌入和针对一个或多个其他先前项的项嵌入,来预测所述序列中的至少一个候选的下一项。
许多伴随的特征将更易于被理解,因为通过参考以下结合附图考虑的详细描述可以更好地理解这些特征。
附图说明
本描述将从以下根据附图对具体实施方式的阅读中更好地理解,其中:
图1是多个电子设备的示意图,所述电子设备具有作为预测性数据输入***的一部分的神经网络,并且其中,所述电子设备能够与也具有神经网络的服务器进行通信;
图2是具有使用神经网络技术的预测性键盘的电子设备的示意图;
图3是神经网络的示意图,例如其用于在图1和图2的电子设备中使用;
图4是在诸如图1到图2的电子设备之类的电子设备处的操作的方法的流程图;
图5是在诸如图1的服务器之类的服务器处的操作的方法的流程图;
图6是在诸如图1的服务器之类的服务器处的操作的另一方法的流程图;
图7是诸如图1和图2中的任何一个的电子设备之类的计算设备的示意图;。
图8是诸如图1的服务器之类的服务器的示意图;
在附图中相似的附图标记用于指代相同的部分。
具体实施方式
下文结合附图提供的消息描述旨在作为本示例的描述,并且不旨在仅表示本示例被构造或利用的形式。描述阐述了示例的功能以及用于构造和操作所述示例的操作序列。然而,通过不同的示例,可以完成相同或等价的功能和序列。
向电子设备输入诸如文本、图像、或其他数据之类的数据是困难的,尤其是在电子设备具有较小的形状因子的情况下。神经网络技术可以用于预测数据项的序列中的项,并且提供这些项作为供输入的候选者,并且这减少了终端用户上的负担。然而,神经网络占用大量存储器和处理资源,这在涉及具有有限资源的电子设备的情况下呈现出困难。在本文中所描述的各种示例展示了可以如何通过使用客户端-服务器部署来将神经网络预测技术的性能质量针对资源要求成功地折衷。在各种示例中,这在改善由网络延迟引起的结果的同时被实现。
尽管在本文中将本示例描述和示出为在预测性键盘***中被实现,所描述的***被提供为示例而非限制。本领域技术人员将领会到,本示例适合在包括语音输入、文本数据输入、图像数据输入、和其他输入的多种不同类型的数据输入***中的应用。
图1是通过诸如互联网或任何其他通信网络之类的通信网络100与服务器108进行通信的多个电子设备102、104、106的示意图。服务器存储用于预测诸如词、短语、词素、字符、或其他语言单元之类的项的序列中的项的神经网络110。在一些示例中,所述项可以是图像,例如表情符号、情绪符号、贴纸、或被用作文本的部分的其他图像。神经网络110已经被提前训练,例如,在制造阶段或在离线阶段。所述训练在服务器108或任何其他实体处进行,并且使用训练数据,如在该文档中之后更加详细地解释的。
在训练之后,神经网络110的至少一部分被安装在个体的电子设备102、104、106处。接着,个体的电子设备102、104、106能够使用该神经网络的至少一部分的本地副本来自己进行预测,而不是从服务器处的神经网络中请求这些预测。神经网络110包括通过边相互连接的节点层,并且具有与节点和/或边相关联的权重。神经网络110具有项嵌入生成器114和/或项嵌入存储112,并且它们在图1中被示出为分别的框以便帮助理解本技术,但它们可以被认为是神经网络110自身的一部分。因此,神经网络可以被认为是包括与项嵌入生成器114和/或项嵌入存储一起的核心。神经网络110的核心能够在已知序列中的至少一项的项嵌入并且还已知候选的下一项的多个项嵌入的情况下,预测所述项的序列中的下一项。神经网络110的至少一部分的本地副本包括神经网络110的核心的副本。
例如,神经网络的副本116在生产期间被存储在智能手机102处,或者作为来自服务器的预测性键盘应用的下载的一部分从服务器108被下载。在从服务器下载了预测性键盘应用之后,还有可能分开地下载神经网络的副本116。在一些示例中,神经网络的副本被存储在头戴增强现实计算设备106处,并且用于预测在用户的语音输入的序列中的候选词。在一些示例中,神经网络的副本被存储在智能手表处,并且用于预测在该智能手表处的文本输入序列中的候选词。智能电话102、智能手表104、和头戴计算设备106的示例不旨在限制本技术的范围,而是被提供以示出如何使用本技术。
在本文中所描述的示例中,服务器处的神经网络110以及在电子设备102、104、106处的神经网络的副本116使用项嵌入。要注意的是,在一些示例中,在电子设备处的神经网络的至少一部分的副本116可以彼此不同。例如,如果所述电子设备中的一个电子设备比所述电子设备中的其他电子设备具有更多的处理力和存储器,则该电子设备与其他电子设备相比可以保存从服务器复制的神经网络110的更大部分。
项嵌入是多个学习的权重,其以能够由神经网络的单元处理的形式来表示项的序列中的项。在一些情况下,项嵌入可以是实值向量。在一些示例中,项嵌入还包括标量偏置值,其作为实值向量一部分被存储或者被分开存储。项嵌入的学习的权重是数值。项嵌入在数据输入过程的至少两个不同的阶段中被使用,并且所述阶段可以被称为神经网络输入阶段和神经网络输出阶段。在神经网络输入阶段,其中用户将诸如词、短语、词素、表情符号、字符、或其他项之类的项输入到电子设备中,所述设备处的神经网络的副本用于预测项的序列中的候选的下一项。为了将所述项输入到神经网络中,所述项被映射至项嵌入,其接着被输入到神经网络。在用户输入诸如词“我”、“是”、“一个”、“漂亮的”之类的项的序列的情况下,这些个体的词中的每个词被映射至对应的项嵌入并且被输入至神经网络,以便预测诸如“人”之类的候选的接下来的词。
在神经网络输出阶段,神经网络的输出层产生数值,这些数值是网络的输出层中的单元的激活水平。这些数值形成了预测的项嵌入。为了将预测的项嵌入转换成个体的候选项(例如,候选的词语、短语、词素、表情符号、或其他项)的得分,计算预测的项嵌入与在电子设备处可用的多个项嵌入中的个体相嵌入之间的相似性度量。在一些示例中,点乘被计算作为相似性度量,但是这不是必要的,因为可以使用其他相似性度量。相似性度量给出多个得分,每个得分针对所述项嵌入中的每个项嵌入,所述得分当被归一化时表达所述序列中的下一项是与所述项嵌入相对应的项中的每一项的可能性。在项嵌入具有如上文所提及的相关联的偏置值的情况下,利用所述得分来聚合所述偏置值,例如通过加法、乘法、或其他形式的聚合。以该方式,得分以将偏置值考虑在内的方式变得经偏置。所述偏置值被手动配置,在一元模型下被设置为项的对数概率(其可以从项的训练集中计算),或者以与项嵌入相似的方式通过后向传播算法学习。
为了使得在电子设备102、104、106处的神经网络的副本116能够操作以生成预测,其针对在上文提及的神经网络输入和输出阶段使用所述项嵌入。电子设备102具有项嵌入的存储的子集118以促进神经网络副本116的本地操作。然而,所述项嵌入占用了电子设备处的存储器,并且该存储器是受限的。
在各种实施例中,电子设备具有在服务器108处可用的神经网络110的项嵌入的子集,其中,子集指的是在服务器处可用的神经网络110的项嵌入中的一些但不是全部。通过在电子设备处具有项嵌入的子集118,与在电子设备处具有项嵌入的较大集合相比节省了存储器。而且,由于在神经网络输出阶段存在较少的项嵌入要生成得分,所以节省了处理资源。在输出阶段所使用的处理资源随着项嵌入数量的增加而线性地增加,并且因此在输出阶段对处理资源有显著影响。
在电子设备处使用神经网络的本地副本进行的预测的质量或准确性是要考虑的另一因素。假定用户在电子设备102、104、106处输入了项,并且在该电子设备处没有可用于该项的项嵌入。可以针对该项(是指词汇项之外的项)使用默认或哑(dummy)的项嵌入,并继续使用该默认或哑的项嵌入来生成预测。这在该项是上下文的一部分的情况下是有用的,例如在用户输入“我”、“是”、“一个”、“漂亮的”,但是在本地存在针对“我”、“是”和“一个”可用但不针对“漂亮的”可用的项嵌入的情况下。通过针对“漂亮的”使用默认的/虚拟的项嵌入,神经网络获得关于具有四个项而不是三个项(假设仅仅忽略“漂亮的”)的上下文的信息。然而,与当针对“漂亮的”的项嵌入可用的情况相比,预测的质量有所降低。
一个问题是在选择合适的项嵌入的子集118以通过快速和成本有效的方式存储在电子设备102处时的困难。在一些示例中,在服务器处实行完全个性化,由此,针对个体用户(已经给出了合适的赞同)的项使用数据被获得,并且被用于在每用户基础上或在指定分组成员的基础上创建项嵌入的定制子集。然而,对此进行实现是消耗时间且昂贵的。另一选项是针对给定类别的任何个体用户使用项嵌入的默认子集。例如,项嵌入的默认子集可以是英语中最常见的一万个词,但这只是一个示例且其他示例是可能的。在项嵌入的默认子集被存储在个体电子设备102、104、106处的情况下,当用户输入不在默认子集中的项时,或者当由用户输入的序列中的下一项不在默认子集中时,存在问题。在该情况下,因为无法将上下文完全考虑在内并且由于候选的下一项在其可用的项嵌入中不存在而使得神经网络不能够预测正确的候选的下一项,预测质量有所降低(在超过一项是由用户输入的情况下)。
为了在电子设备处使用项嵌入的子集的情况下促进改进的质量,在本文中所描述的各种示例使得电子设备能够触发项嵌入从服务器向电子设备的传输。该传输由于网络延迟而花费时间,并且为了对此适应,可以采取各种措施。例如,在一些情况下,使用批处理来对从电子设备发送至服务器的项嵌入请求进行批处理,和/或对从服务器发送至电子设备的项嵌入进行批处理。例如,在服务器和/或电子设备处使用预测性过程来预期项嵌入,所述项嵌入在未来很可能要被用于促进这些项嵌入在其使用之前的传输。
在一些示例中,服务器108具有项嵌入生成器114,其是接收项并且预测项嵌入的经训练的预测性模型。项嵌入生成器不是必要的,因为在一些情况下,服务器具有在神经网络110的训练期间创建的项嵌入存储。在各种示例中,单个电子设备102、104、106没有项嵌入生成器114,以节省在电子设备上的存储器和处理资源。
在一些示例中,服务器具有项使用预测器116,但是这不是必要的。项使用预测器116获得关于项的使用的数据,并且能够预测在所述电子设备中的个体电子设备处很可能需要的项。例如,项使用预测器可以是经训练的多标签分类器,例如,其由神经网络(或本领域已知的另一算法)实现,并且对从一组训练项日志提取的项使用数据进行训练。
在一些示例中,电子设备102、104、106具有管理器组件120,该管理器组件120被配置为控制对项嵌入从服务器的传输的触发。
为了清晰起见,图1示出了服务器和电子设备102的组件中的一些但不是全部;图7和图8给出了关于服务器和电子设备的更加详细的信息,并且在该文档中之后被解释。
可替代地或另外地,在本文中所描述的服务器和/或电子设备的功能是至少部分地由一个或多个硬件逻辑组件执行的。例如但非限制,可选地使用的逻辑硬件组件的说明性类型包括现场可编程门阵列(FPGA)、应用专用集成电路(ASIC)、应用专用标准产品(ASSP)、片上***(SOC)、复杂可编程逻辑器件(CPLD)、图形处理单元(GPU)。
图2是电子设备102的示意图,在该情况下,该设备是具有使用神经网络技术的预测性键盘的智能电话。所述智能电话具有诸如触摸屏之类的显示屏幕202,其显示用于向电子设备102输入文本的键盘200。键盘200包括三个候选预测区域204、206、208,它们显示由神经网络技术计算的候选的预测。在该示例中,用户已经从Robyn接收到写着“只是好奇,你的ETA是什么?”的短消息服务(SMS)。用户处于在输入栏210中输入回复SMS消息的过程中,并且迄今为止已经输入了词“要迟到了,在”且预测性键盘已经计算出预测的三个候选的下一个词,它们是“家”、“返回”和“那里”,并且这些词被显示在键盘200上。用户能够选择候选的预测的接下来的词中的一个词,而不用输入分别的字符来形成该词。对于终端用户而言,这针对数据输入节省了负担。然而,预测的质量是重要的,因为如果候选词不是用户想要输入的实际的词,则用户必须输入期望的词的个体字符。预测的质量取决于各种因素,例如在训练期间使用的训练数据的数量和种类、所使用的训练的类型、神经网络的架构、神经网络用于泛化其在训练期间没有见过的示例的能力,以及诸如可用的项嵌入之类的其他因素(在该情况下,项嵌入如在下文参考图3所描述的那样被使用)。在一些示例中,候选的预测随着用户输入期望的词的个体字符而被更新。
图3是诸如图1的神经网络110、116之类的神经网络300的示意图。
神经网络是通过边相互连接的节点(也称为单元)的集合,并且其中,存在与节点和/或边相关联的权重。非线性函数通常被应用在每个节点中以产生其激活,并且可以使用的非线性函数的非详尽列表是:sigmoid函数、双曲正切(tanh)、整流器(rectifier)。在训练阶段期间,所述权重根据训练示例、按照更新规则来更新。所述单元包括输入单元、隐藏单元、和输出单元。输入单元是在其处向神经网络进行输入的单元,隐藏单元在输入单元与输出单元(或在深度网络中的其他隐藏单元)之间连接,而输出单元是在其处观察到来自神经网络的输出的单元。神经网络可以具有分层结构,该结构具有输入节点的层、隐藏单元的一个或多个层、以及至少一个输出层。在使用神经网络期间,在测试时(即,在训练之后),当信号通过一层时,其经由激活产生输出,该输出变成对神经网络的下一层的输入,以此类推,直到信号到达输出层并且输出单元被激活为止。在输出层处的激活的模式给出了对神经网络的预测。激活的模式已经受到在训练阶段期间学习的权重的影响。
神经网络300是使用后向传播或任何其他神经网络训练算法来训练的。后向传播算法包括将经标记的训练数据实例输入至神经网络,通过神经网络来传播所述训练实例(称为前向传播),以及对输出进行观察。训练数据实例被标记,并且因此神经网络的真实的输出是已知的,并且观察的输出与真实输出之间的差别或误差被发现,并且提供关于损失函数的信息。进行搜索以尝试发现损失函数的最小值,其是使得神经网络的输出能够与真实数据相匹配的神经网络的一组权重。对损失函数进行搜索是使用梯度下降或随机梯度下降或以其他方式来实现的。
在图3的示例中,神经网络300包括输入层322、单个隐藏层312、和单个输出层316。然而,这仅是一个示例,并且可以使用具有更多的隐藏层的(例如,具有递归的结构的)许多其他类型的架构,在所述递归结构中,单元之间的连接形成有向圆。
在图3的示例中,用户已经输入了词“我”、“是”、“一个”以及“漂亮的”,并且每个词由向量中的1的位置来表示,向量中的其他位置以零填充。在图3中的304处示出了这些向量。通过使用映射308,将每个个体词指示符向量304映射至项嵌入向量306。例如,项嵌入是从预先计算的项嵌入的表格或矩阵中查找的,或者是使用如上文所解释的预测性模型所预测的。项嵌入306被输入到输入层322的输入单元,并创建激活,其如由线310所指示的通过输入层前向传播以到达隐藏层312。隐藏层接收输入层的输出作为其输入。隐藏层根据在图3中被表示为314的激活函数以及隐藏层单元处的权重来处理信号。隐藏层312的输出到达输出层316,输出层316还根据在图3中被表示为318的激活函数来处理所述信号,并且在输出单元处生成被表示为线320上的滴(blob)的激活。输出单元的激活被转换成一组可用的项嵌入中的项的得分。这通过在由输出单元的激活给定的预测的项嵌入与可用的项嵌入中的每个之间的点积(或其他相似性的度量)来完成,并且接着,在标量偏置值可用的情况下,添加针对该项所存储的标量偏置值。可以例如通过应用柔性最大传输(softmax)函数或以其他的方式将得分归一化,以使得它们总和为1。如果可用的项嵌入是针对词“人”、“是”、“孩子”、“房屋”、“天”的,则结果是针对“人”、“是”、“孩子”、“房屋”、和“天”中的每个的得分,该得分指示该词有多大可能是用户期望的下一个词。
图4是在诸如图1的电子设备102、104、106之类的电子设备上的操作方法的流程图。电子设备存储400在服务器处可用的神经网络的副本。电子设备可选地存储402在服务器上可用的神经网络的项嵌入的子集。例如,项嵌入的子集是项嵌入的默认子集,其包括如通过用户群观察到的最频繁使用的前n个项的项嵌入。
电子设备在输入接口处接收404由用户输入的作为项的序列的部分的项。例如,所述输入接口包括电子设备处的触摸屏和图形用户界面。电子设备接收键入到电子设备处的预测性键盘中的词,或者短语、表情符号、字符、或者键入到电子设备处的预测性键盘中的其他项。在另一示例中,输入接口包括麦克风、模数信号转换器、以及用户凭借其能够说出词或短语以向电子设备输入的语音识别组件。输入接口是使得用户能够向电子设备输入数据的任何机制。
在一些示例中,电子设备预测到其将在过程404处接收用户输入项而不是实际上接收到该用户输入项。如在下文中更加详细地描述的,该预测可以以多种方式来实现。
电子设备检查406所接收的项是否在其存储器中存在。如果存在,则电子设备从其存储器获取408与所接收的项相对应的项嵌入,并且通过电子设备处的神经网络副本来处理410该项嵌入。该项嵌入被输入到神经网络的输入单元,所述输入单元生成通过如上文参考图3所描述的神经网络传播的信号,以在输出单元处产生激活。输出单元处的激活给出了预测的项嵌入412。计算预测的项嵌入412与在电子设备处可用的多个项嵌入中的每个项嵌入的相似性(例如,通过如上文所描述的那样计算点积414),并且这给出了与项嵌入相对应的个体项的得分。接着,电子设备能够使用得分来输出416序列中的一个或多个预测的下一项,例如通过选择最高得分的三个预测项。在电子设备处可用的项嵌入可以是来自服务器的项嵌入的默认子集,如上文所解释的。在电子设备以没有可用的项嵌入开始的情况下,多个项嵌入从服务器被请求或者通过参考操作418至422所描述的过程逐渐被构建。
在电子设备的存储器中不存在与所接收的项相对应的项嵌入的情况下,电子设备触发项嵌入从服务器到电子设备的传输。例如,电子设备向服务器发送418请求。该请求是针对项的项嵌入的请求,并且该请求可以是消息,该消息包括电子设备的地址以及期望其项嵌入的项的标识符。在一些情况下,在需要时,即当在操作408处期望项嵌入时,发送418请求。在一些情况下,电子设备等待积累多个请求并且将这些请求作为一批一起发送。在一些情况下,通过预测在未来电子设备将需要什么项嵌入来在过程408之前发送请求。电子设备从服务器接收420项嵌入(或成批的项嵌入),并且更新422其存储器以包括所述项嵌入。接着,该过程返回至检查点406。
在用户已经给出了合适的赞同的情况下,操作404处的预测过程利用电子设备可用的项使用数据。例如,在设备上存储的或者从服务器获得的过去的SMS或电子邮件消息可以用于发现项使用数据,其中,所述项是词、短语、表情符号、或其他文本项。在一些示例中,该项使用数据是从诸如动态n元语言模型之类的语言模型或者电子设备处的其他形式的语言模型获得的。例如,除了神经网络技术之外,预测性键盘可以包括用于预测候选的项的n元语言模型技术。n元语言模型是动态的,其中,其在电子设备上观察到词或者其他文本项时更新所述词和文本项的计数。通过在动态的n元语言模型中读取合适的计数器的值,电子设备的管理器组件120以简单、准确、且高效的方式获得项使用数据。管理器组件使用所述项使用数据来预测操作404处的项嵌入。
图5是在诸如图1的服务器108之类的服务器处的操作的方法的流程图。服务器存储500神经网络,例如参考图3描述的神经网络或者已经被训练为预测项的序列中的候选的下一项的任何其他神经网络。服务器对项嵌入生成过程进行存储。在一些示例中,项嵌入生成过程包括在项嵌入的表格、矩阵、或其他存储中进行查找。在一些示例中,项嵌入生成过程包括被训练为从项的个体组件来预测项嵌入,所述项的个体组件例如是个体词中的字母、个体短语中的词、或者其他个体组件。预测性模型可以是神经网络自身或者任何其他类型的预测性模型。现在描述基于字母的嵌入预测器的示例。
基于字母的嵌入预测器的示例将项看作输入,并且计算预测的项嵌入。基于字母的嵌入预测器可以被称为字符组成词嵌入模型,其是将每个词中的一个或多个字符考虑在内的模型。预测性模型被参数化且使用经标记的训练数据被预先训练。
在示例中,字符组成词嵌入模型是卷积的。例如,从形成模型的参数的部分的查找表获取针对每个词中的每个字符的字符嵌入向量。例如,字符嵌入向量是以与模型的其他参数相同的方式,在模型训练期间经由后向传播所学习的。所获取的针对给定词的字符嵌入向量被馈送到一组一维卷积过滤器中。接着,获得词的长度上的每个一维卷积的最大输出。这些最大输出通过神经网络的另外的稠密前馈层(例如,高速路层)来供应,以产生针对讨论中的词的词嵌入。这是基于卷积的架构的一个示例,并且其他示例是可能的。
在其他示例中,字符组成词嵌入模型是字符递归神经网络,其具有单向性或是双向的。在一些示例中,递归神经网络使用门控递归单元(GRU)或长短期记忆(LSTM)单元。在一些示例中,字符组成词嵌入模型是根据其字符以及另外的每词校正项来表示每个词的神经网络的组合(例如串联、求和、或其他混合),其包括针对定义的词汇表中的词中的每个词所学习的向量表示、以及针对其他词所学习的词汇表外表示。
服务器向一个或多个电子设备发送502神经网络的副本。在一些情况下,电子设备从服务器下载神经网络。在一些情况下,神经网络在制造期间被安装在电子设备处。
服务器可选地向电子设备中的个体电子设备发送504项嵌入的子集。在一些情况下,电子设备下载项嵌入的子集。在一些情况下,项嵌入的子集在制造期间被安装在电子设备处。如通过用户群所观察的,所述子集可以是最频繁使用的前n个项嵌入。与在服务器处可用的项嵌入相比,该项嵌入的子集具有较少的项嵌入。
在一些示例中,从服务器向客户端发送的数据在被发送之前在服务器处例如使用无损压缩协议被压缩。在一些示例中,在向客户端发送所述数据之前,服务器使用有损压缩方案对所述嵌入和/或神经网络权重进行量化。例如,服务器量化至每嵌入或权重1字节整数值,而不是每嵌入或网络权重发送4字节浮点值。
服务器例如从所述电子设备之一或者从项使用预测器116或管理器组件120接收506针对项嵌入的请求。服务器检查508所请求的项嵌入在服务器处的存储中是否可用,如果不可用,则其如上文所描述的将该项输入518至项嵌入模型(例如,字符组成词嵌入模型)。项嵌入模型产生预测的项嵌入520,其被添加至服务器处的项嵌入的存储522。接着,服务器单独地或者作为批的部分将预测的项嵌入发送514至电子设备。在批的情况下,存在用于等待批在被发送之前填满的操作512。
在服务器确实在步骤508处在其存储中发现了项嵌入的情况下,服务器从该存储获取510项嵌入,可选地等待批填满,并且将该项嵌入发送514至电子设备。在发送514之后,该过程返回至操作506。
参考图6,服务器处的项使用预测器116(或电子设备处的管理器组件120)获得项使用数据,例如,从社交媒体数据、从电子邮件消息、从SMS消息、从用户创作的文档、或其他源。在一些情况下,项使用数据的至少一部分是从电子设备处或服务器处的动态n元语言模型获得的,并且利用额外的项使用数据来补充。
在一些示例中,在已经获得用户赞同的情况下,电子设备通过在该电子设备处观察到项使用数据和/或在电子设备首先开始与服务器交互时将该数据成批发送来将该数据传递至服务器。在已经获得用户赞同的情况下,项使用数据包括以下中的一个或多个:由电子设备发送和/或接收的电子邮件的文本、在电子设备处输入的搜索查询的文本、在电子设备处创作的文档的文本、由电子设备以其他方式向用户渲染或呈现的文本、或者与电子设备相关联的其他文本。
使得项使用数据对项使用模型可用602,所述项使用模型是用于选择在所述电子设备中的单个电子设备处不太可能存在的项的一个或多个规则、标准、或阈值。例如,项使用模型包括用于选择被频繁观察到的项的规则,所述项不在用户群的被最频繁使用的前n个项中。在一些示例中,所述项使用模型是经训练的预测器,例如经训练的神经网络,或是其他类型的预测器。
使用项嵌入的记录可选地过滤606所选择的项604,所述记录是服务器最近向电子设备发送的,或者服务器在其处创建了已经向电子设备发送的经更新的项嵌入。接着,针对所选择的项请求项嵌入,并且该过程移动至图5的操作506。
图7示出了示例性的基于计算的设备700的各种组件,所述基于计算的设备被实现为图4的方法的实施例在一些示例中在其中被实现的任何形式的电子设备。
基于计算的设备700包括一个或多个处理器702,其是微处理器、控制器、或者任何其他合适类型的处理器,所述处理器用于处理计算机可执行指令以控制设备操作,以便预测项的序列中的候选项,从而促进将所述项输入到电子设备700中。在一些示例中,例如在使用片上***架构的情况下,处理器702包括一个或多个固定功能框(也称为加速器),其以硬件(而不是软件或固件)实现图4的方法的一部分。包括操作***704的平台软件或任何其他合适的平台软件在基于计算的设备700处被提供,以使得应用软件706能够在该设备处被执行。神经网络720被存储在电子设备处,并且是在服务器处可用的神经网络的副本。管理器组件726控制项嵌入从服务器向电子设备的传输的触发。输入接口722接收项的序列中的项,以使得用户能够将该项输入至电子设备700。项嵌入子集724包括神经网络的多个项嵌入,其中,所述项嵌入的数量小于在服务器处可用的项嵌入的数量。完成/校正预测器718使用来自神经网络720的输出以完成词、短语、表情符号、或其他项。例如,完成/校正预期器718是预测性键盘或预测性语音识别***。
计算机可执行指令是使用由基于计算的设备700可访问的任何计算机可读介质来提供的。计算机可读介质包括诸如存储器708之类的计算机存储介质以及通信介质。计算机存储介质(例如,存储器708)包括以用于存储信息(例如,计算机可读指令、数据结构、程序模块等)的任何方法或技术来实现的易失性和非易失性的、可移动和不可移动的介质。计算机存储介质包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、电子可擦除可编程只读存储器(EEPROM)、闪速存储器或其他存储器技术、压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)或其他光存储设备、盒式磁带、磁带、磁盘存储设备或其他磁存储设备、或者用于存储供计算设备访问的信息的任何其他非传输介质。相比之下,通信介质在诸如载波之类的调制数据信号或其他传输机制中实施计算机可读指令、数据结构、程序模块等。如在本文中所定义的,计算机存储介质不包括通信介质。因此,计算机存储介质不应当被解释为传播信号本身。尽管计算机存储介质(存储器708)被示出在基于计算的设备700内,但是将领会的是,所述存储设备在一些示例中远程地分布或被定位,并且经由网络或其他通信链路访问(例如,使用通信接口710)。
基于计算的设备700还包括被布置为向显示设备714输出显示信息的输入/输出控制器712,其中,显示设备714可以与基于计算的设备700相分离或者集成至计算的设备700。显示信息可以提供图形用户界面。输入/输出控制器712还被布置为从诸如用户输入设备716(例如,鼠标、键盘、相机、麦克风、或其他传感器)之类的一个或多个设备接收输入并处理所述输入。在一些示例中,用户输入设备716检测语音输入、用户手势、或其他用户动作,并且提供自然用户接口(NUI)。该用户输入可以用于向电子设备输入数据。在实施例中,如果显示设备714是触摸感应显示设备,则显示设备714还充当用户输入设备716。在一些实施例中,输入/输出控制器712向与显示设备不同的设备(例如,本地连接的打印设备)输出数据。
输入/输出控制器712、显示设备714、和用户输入设备716中的任何一个可以包括使得用户能够以自然的方式与基于计算的设备进行交互的NUI技术,摆脱了由诸如鼠标、键盘、远程控制等之类的输入设备施加的人为约束。在一些示例中提供的NUI技术的示例包括但不限于以下技术,其依赖于声音和/或语音识别、触摸和/或手写笔识别(触摸感应显示器)、在屏幕上以及接近屏幕的手势识别、空中手势、头部和眼睛跟踪、声音和语音、视觉、触摸、手势、及机器智能。在一些示例中使用的NUI技术的其他示例包括意图和目标理解***,使用深度相机(例如,立体照相***、红外照相***、红绿蓝(rgb)照相***及这些的结合)的运动姿势检测***,使用加速度计、陀螺仪的运动姿势检测,脸部识别,三维(3D)显示,头部、眼睛和注视跟踪,沉浸式增强现实和虚拟现实***,以及用于使用电场传感电极(脑电图(EEG)和相关方法)来感测脑部活动的技术。
图8示出了示例性的基于计算的设备800的各种组件,所述基于计算的设备被实现为图5和图6的方法的实施例在一些示例中在其中被实现的任何形式的服务器。
基于计算的设备800包括一个或多个处理器802,其是微处理器、控制器、或者任何其他合适类型的处理器,所述处理器用于处理计算机可执行指令以控制服务器操作,以便向具有受限资源的电子设备发送项嵌入,从而促进将所述项输入到电子设备800中。在一些示例中,例如在使用片上***架构的情况下,处理器802包括一个或多个固定功能框(也称为加速器),其以硬件(而不是软件或固件)实现图5和图6的方法的一部分。包括操作***804的平台软件或任何其他合适的平台软件在基于计算的设备800处被提供,以使得应用软件806能够在该设备处被执行。神经网络820被存储在服务器处。项嵌入模型826在一些情况下存在,并且使得能够生成项嵌入。在一些情况下,项嵌入模型是字符组成词嵌入模型。项使用预测组件822识别所述电子设备中的个体的电子设备在未来很可能需要的项。项嵌入存储824保存在服务器处可获取的项嵌入。完成/校正预测器818使用来自神经网络820的输出来完成词、表情符号、或项的序列中的其他项。例如,完成/校正预测器818是预测性键盘或预测性语音识别***。
计算机可执行指令是使用由基于计算的设备800可访问的任何计算机可读介质来提供的。计算机可读介质包括诸如存储器808之类的计算机存储介质以及通信介质。计算机存储介质(例如,存储器808)包括以用于存储信息(例如,计算机可读指令、数据结构、程序模块等)的任何方法或技术来实现的易失性和非易失性的、可移动和不可移动的介质。计算机存储介质包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、电子可擦除可编程只读存储器(EEPROM)、闪速存储器或其他存储器技术、压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)或其他光存储设备、盒式磁带、磁带、磁盘存储设备或其他磁存储设备、或者用于存储供计算设备访问的信息的任何其他非传输介质。相比之下,通信介质在诸如载波之类的调制数据信号或其他传输机制中实施计算机可读指令、数据结构、程序模块等。如在本文中所定义的,计算机存储介质不包括通信介质。因此,计算机存储介质不应当被解释为传播信号本身。尽管计算机存储介质(存储器808)被示出在基于计算的设备800内,但是将领会的是,所述存储设备在一些示例中远程地分布或被定位,并且经由网络或其他通信链路访问(例如,使用通信接口810)。
基于计算的设备800还包括被布置为向显示设备814输出显示信息的输入/输出控制器812,其中,显示设备814可以与基于计算的设备800相分离或者集成至计算的设备800。显示信息可以提供图形用户界面。输入/输出控制器812还被布置为从诸如用户输入设备816(例如,鼠标、键盘、相机、麦克风、或其他传感器)之类的一个或多个设备接收输入并处理所述输入。在一些示例中,用户输入设备816检测语音输入、用户手势、或其他用户动作,并且提供自然用户接口(NUI)。该用户输入可以用于向电子设备输入数据。在实施例中,如果显示设备814是触摸感应显示设备,则显示设备814还充当用户输入设备816。在一些实施例中,输入/输出控制器812向与显示设备不同的设备(例如,本地连接的打印设备)输出数据。
输入/输出控制器812、显示设备814、和用户输入设备816中的任何一个可以包括如参考图7所描述的NUI技术。
可替代地或除了在本文中描述的其他示例之外,示例包括以下内容的任何组合:
一种电子设备包括:
至少一个输入接口,其用于接收项的序列中的至少一项;
通信接口,其用于通过通信网络与服务器进行通信,所述服务器存储神经网络以及生成所述神经网络的项嵌入的过程;
存储器,其存储所述神经网络的至少一部分的副本以及所述神经网络的多个项嵌入;
管理器组件,其在当电子设备处存在对应于所接收的至少一项的对应的项嵌入的不可用性时的情况下,触发至少所述对应的项嵌入从服务器向电子设备的传输;以及
处理器,其用于通过利用所述神经网络的至少一部分的所述副本并且使用针对从所述存储器获取的多个候选的下一项的项嵌入,在可用的情况下处理所述对应的项嵌入和针对一个或多个其他先前项的项嵌入,来预测所述序列中的至少一个候选的下一项。
在上文中描述的电子设备,其中,在所述电子设备处存储的多个项嵌入少于在所述服务器处存储的项嵌入的数量。
在上文中描述的电子设备,其中,项嵌入是多个学习的权重,其以能够由神经网络的单元处理的形式来表示所述项的序列中的项。
在上文中描述的电子设备,其中,所述处理器被配置为通过利用从在所述存储器中存储的所述多个项嵌入形成的编码矩阵将输入转换至所述神经网络的输出层来在所述输出层处获取输出向量,其中,所述输出向量与所述至少一个候选的下一项相对应。
在上文中描述的电子设备,其中,管理器组件被配置为通过向所述服务器发送请求来触发所述对应的项嵌入从所述服务器的传输,所述请求包括所接收的至少一项或者所接收的至少一项的标识符。
在上文中描述的电子设备,其中,管理器组件被配置为通过替换或删除所述项嵌入中的单个项嵌入来控制所述神经网络的所述至少一部分的项嵌入的数量,以使得项嵌入的最大数量保持低于阈值。
在上文中描述的电子设备,其中,管理器组件被配置为通过使用最近最少使用的高速缓存来控制所述神经网络的所述至少一部分的项嵌入的数量。
在上文中描述的电子设备,其中,管理器组件被配置为访问关于历史的多个序列的项的数据,并且被配置为至少部分地基于所述数据来触发项嵌入从所述服务器向所述电子设备的传输。
在上文中描述的电子设备,其中,管理器组件被配置为使用经平滑频率的项使用数据来触发嵌入从所述服务器向所述电子设备的传输。
在上文中描述的电子设备,其中,管理器组件被配置为确保指定的多个项嵌入被留存在所述电子设备处的所述存储器中。
在上文中描述的电子设备,其中,管理器组件被配置为从所述电子设备处的动态n元语言模型中访问关于历史的多个序列的项的数据。
在上文中描述的电子设备,其中,所述处理器被配置为显示候选的下一项以输入至所述电子设备。
服务器,包括:
神经网络,其被配置为使用所述神经网络的项嵌入来预测项的序列中的至少一个候选的下一项。
处理器,其被配置为生成所述神经网络的项嵌入;以及
通信接口,其用于通过通信网络与电子设备进行通信,所述电子设备具有所述神经网络的至少一部分的副本;
处理器被配置为至少当被所述电子设备触发时,使用所述通信接口向所述电子设备发送所述项嵌入中的一个或多个项嵌入。
在上文中所描述的服务器,其中,所述处理器被配置为通过在所述服务器处存储的项嵌入的存储中查找所述项嵌入来生成所述神经网络的所述项嵌入。
在上文中所描述的服务器,其中,所述处理器被配置为生成与通过所述通信接口从所述电子设备接收的项的序列中的项相对应的项嵌入,并且将所生成的项嵌入发送至所述电子设备。
在上文中所描述的服务器,其中,所述处理器被配置为根据预测所述电子设备所需要的项嵌入的预测,将所述项嵌入中的一个或多个项嵌入发送至所述电子设备。
在上文中所描述的服务器包括项使用预测组件,其被配置为使用项使用数据来预测在所述电子设备处将需要其项嵌入的项。
在上文中所描述的服务器,其中,多个项嵌入被存储在所述服务器处,并且其中,在所述服务器处存储的项嵌入的数量大于在所述电子设备处允许的项嵌入的阈值数量。
在上文中所描述的服务器,其中,项嵌入是将该所述项的序列中的项表示为实值向量的多个学习的权重。
一种在电子设备处的方法,包括:
在输入接口接收项的序列中的至少一项;
通过通信网络与服务器进行通信,所述服务器存储神经网络和生成所述神经网络的项嵌入的过程;
存储所述神经网络的至少一部分的副本以及所述神经网络的多个项嵌入;
在当电子设备处存在对应于所接收的至少一项的对应的项嵌入的不可用性时的情况下,触发至少所述对应的项嵌入从服务器向电子设备的传输;
通过利用所述神经网络的至少一部分的所述副本并且使用针对从所述存储器获取的多个候选的下一项的项嵌入,在可用的情况下处理所述对应的项嵌入和针对一个或多个其他先前项的项嵌入,来预测所述序列中的至少一个候选的下一项;以及
提供候选的下一项以输入到所述电子设备。
一种服务器处的方法,包括:
存储神经网络,所述神经网络被配置为使用所述神经网络的项嵌入来预测项的序列中的至少一个候选的下一项;
生成所述神经网络的项嵌入;
通过通信网络与电子设备进行通信,所述电子设备具有所述神经网络的副本;
至少当由所述电子设备触发时,使用所述通信接口将所述项嵌入中的一个或多个项嵌入发送至所述电子设备。
一种电子设备处的方法,包括:
用于接收项的序列中的至少一项的模块;
用于通过通信网络来与服务器进行通信的模块,所述服务器存储神经网络以及生成所述神经网络的项嵌入的过程;
用于存储所述神经网络的至少一部分的副本以及所述神经网络的多个项嵌入的模块;
用于在当电子设备处存在对应于所接收的至少一项的对应的项嵌入的不可用性时的情况下,触发至少所述对应的项嵌入从服务器向电子设备的传输的模块;以及
用于通过利用所述神经网络的至少一部分的所述副本并且使用针对从所述存储器获取的多个候选的下一项的项嵌入,在可用的情况下处理所述对应的项嵌入和针对一个或多个其他先前项的项嵌入,来预测所述序列中的至少一个候选的下一项的模块。
在实施例中,一种可以被实现的电子设备,包括:
至少一个处理器;以及
存储器,其可通信地耦合至所述至少一个处理器,所述存储器在其上存储有:
指示神经网络的至少一部分和所述神经网络的多个项嵌入的数据;以及
计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,包括:
从至少一个输入接口接收指示项的序列中的至少一项的数据;
当与所接收的至少一项相对应的项嵌入在所述电子设备处不可用时,发起所述项嵌入从存储所述神经网络的服务器的传输;
当可用时,访问针对多个候选的下一项的项嵌入以及针对一个或多个其他先前项的项嵌入;以及
基于所述访问、所述神经网络的所述至少一部分、以及所述对应的项嵌入来预测所述项的序列中的至少一个候选的下一项。
在实施例中,在所述电子设备处存储的多个项嵌入少于在所述服务器处存储的项嵌入的数量。
在实施例中,项嵌入是多个学习的权重,所述学习的权重以能够由神经网络的单元处理的形式来表示所述项的序列中的项。
在实施例中,电子设备还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括通过利用从在所述存储器中存储的所述多个项嵌入形成的编码矩阵将输入转换至所述神经网络的输出层来在所述输出层处获取输出向量,其中,所述输出向量与所述至少一个候选的下一项相对应。
在实施例中,电子设备还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括通过向所述服务器发送请求来触发所述对应的项嵌入从所述服务器的传输,所述请求包括所接收的至少一项或者所接收的至少一项的标识符。
在实施例中,电子设备还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括通过替换或删除所述项嵌入中的单个项嵌入来控制所述神经网络的所述至少一部分的项嵌入的数量,以使得项嵌入的最大数量保持低于阈值。
在实施例中,电子设备还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括通过使用最近最少使用的高速缓存来控制所述神经网络的所述至少一部分的项嵌入的数量。
在实施例中,电子设备还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括访问关于历史的多个序列的项的数据,以及至少部分地基于所述数据来触发项嵌入从所述服务器向所述电子设备的传输。
在实施例中,电子设备还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括使用经平滑频率的项使用数据来触发嵌入从所述服务器向所述电子设备的传输。
在实施例中,电子设备还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括确保指定的多个项嵌入被留存在所述电子设备处的所述存储器中。
在实施例中,电子设备还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括从所述电子设备处的动态n元语言模型中访问关于历史的多个序列的项的数据。
在实施例中,电子设备还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括显示所述候选的下一项以供输入至所述电子设备。
在实施例中,服务器包括:
神经网络,其被配置为使用所述神经网络的项嵌入来预测项的序列中的至少一个候选的下一项;
处理器;以及
存储器,其可通信地耦合至处理器,所述存储器在其上存储有计算机可读指令,所述计算机可读指令当由所述处理器执行时,使得所述服务器执行以下操作,包括:
生成所述神经网络的项嵌入;以及
当由在其上存储有所述神经网络的至少一部分的副本的电子设备触发时,将所述项嵌入中的一个或多个项嵌入发送至所述电子设备。
在实施例中,服务器还包括计算机可读指令,所述计算机可读指令当由所述处理器执行时,使得所述服务器执行以下操作,所述操作包括通过在所述服务器处存储的项嵌入的存储中查找所述项嵌入来生成所述神经网络的所述项嵌入。
在实施例中,服务器还包括计算机可读指令,所述计算机可读指令当由所述处理器执行时,使得所述服务器执行以下操作,所述操作包括:
生成与从所述电子设备接收的项的序列中的一项相对应的项嵌入,以及
将所生成的项嵌入发送至所述电子设备。
在实施例中,服务器还包括计算机可读指令,所述计算机可读指令当由所述处理器执行时,使得所述服务器执行以下操作,所述操作包括根据预测所述电子设备所需要的项嵌入的预测,将所述项嵌入中的一个或多个项嵌入发送至所述电子设备。
在实施例中,服务器还包括计算机可读指令,所述计算机可读指令当由所述处理器执行时,使得所述服务器执行以下操作,所述操作包括使用项使用数据来预测在所述电子设备处将需要其项嵌入的项。
在实施例中,多个项嵌入被存储在所述服务器处,并且其中,在所述服务器处存储的项嵌入的数量大于在所述电子设备处允许的项嵌入的阈值数量。
在实施例中,项嵌入是将该所述项的序列中的项表示为实值向量的多个学习的权重。
在实施例中,一种方法包括:
在计算设备的输入接口处接收项的序列中的至少一项;
由所述计算设备通过通信网络与服务器进行通信,所述服务器存储神经网络并且被配置为实现生成所述神经网络的项嵌入的过程;
在所述计算设备处存储所述神经网络的至少一部分的副本以及所述神经网络的多个项嵌入;
当在所述计算设备处存在对应于所接收的至少一项的对应的项嵌入的不可用性时,由所述计算设备触发所述对应的项嵌入从所述服务器向所述计算设备的传输;
通过利用所述神经网络的至少一部分的所述副本并且使用针对从所述存储器获取的多个候选的下一项的项嵌入,当可用时处理所述对应的项嵌入和针对一个或多个其他先前项的项嵌入,由所述计算设备预测所述序列中的至少一个候选的下一项;以及
将所述候选的下一项输入至所述计算设备。
在本文中示出和描述的示例以及在本文中没有具体描述但在本公开的方面的范围中的示例构成了用于通过通信网络与服务器进行通信的示例性模块,所述服务器存储神经网络以及生成所述神经网络的项嵌入的过程。例如,用于与服务器进行通信的模块包括诸如网卡、收发机、或任何其他通信接口之类的通信接口710、810。例如,用于存储神经网络的副本和神经网络的多个项嵌入的模块包括这样的存储器,其例如是参考图7和图8所描述的任何类型的存储器。例如,用于在当电子设备处存在对应于所接收的至少一项的对应的项嵌入的不可用性时的情况下,触发至少所述对应的项嵌入从服务器向电子设备的传输的模块包括所述电子设备处的处理器或存储管理器。例如,用于通过利用神经网络的副本和在存储器中存储的多个项嵌入处理对应的项嵌入来预测序列中的至少一个候选的下一项的装置包括电子设备上的处理器。例如,用于显示候选的下一项以向电子设备输入的装置包括电子设备上的处理器。
在本文中使用术语“计算机”或“基于计算的设备”来指代具有处理能力以使其执行指令的任何设备。本领域技术人员将认识到,这样的处理能力被并入到许多不同的设备中,并且因此术语“计算机”和“基于计算的设备”中的每个包括个人计算机(PC)、服务器、移动电话(包括智能电话)、平板计算机、机顶盒、媒体播放机、游戏机、个人数字助理、可穿戴计算机、以及许多其他设备。
在一些示例中,通过有形存储介质上的采用机器可读形式(例如,采用计算机程序形式)的软件来执行在本文中所描述的方法,所述计算机程序包括适配成当所述程序在计算机上运行时执行在本文中所描述的方法中的一个或多个方法的所有操作的计算机程序代码模块,并且所述计算机程序可以在计算机可读介质上被实施。所述软件适合于在并行处理器或串行处理器上执行,以使得可以以任何适当的顺序或者同时地实行所述方法操作。
这承认了软件是有价值的、单独可交易的商品。其旨在包含在“哑的”或标准硬件上运行或者控制“哑的”或标准硬件以实行期望的功能的软件。其还旨在包含“描述”或定义硬件配置的软件,例如HDL(硬件描述语言)软件,其用于设计硅芯片、或用于配置通用可编程芯片以实行期望的功能。
本领域技术人员将认识到,用于存储程序指令的存储设备可选地跨网络分布。例如,远程计算机能够存储被描述为软件的过程的示例。本地或终端计算机能够访问远程计算机并且下载软件的部分或全部以运行程序。可替代地,本地计算机可以根据需要下载软件的片段,或者执行在本地终端上的一些软件指令或者在远程计算机(或计算机网络)上的一些软件指令。本领域技术人员还将认识到,通过利用本领域技术人员已知的传统技术,软件指令的全部或部分可以由诸如数字信号处理器(DSP)、可编程逻辑阵列等之类的专用电路来实行。
在本文中给出的任何范围或设备值可以在不失去所寻求的效果的情况下被扩展或改变,如本领域技术人员显而易见的。
尽管已经用特定于结构特征和/或方法动作的语言描述了本主题,但是要理解的是,在所附权利要求书中定义的本主题不一定限于上文所描述的具体特征或动作。相反,上文所描述的具体特征和动作是作为实现权利要求的示例性形式被公开的。
应当理解的是,在上文中所描述的好处和优点可以与一个实施例相关,或者可以与几个实施例相关。所述实施例不限于解决所述的问题那些实施例,或者具有所述的好处和优点中的任何一个或全部的那些实施例。还应当理解的是,所提到的“一个”项指的是那些项中的一个或多个。
可以以任何合适的顺序或者在合适的情况下同时地实行在本文中所描述的方法的步骤。另外地,可以从方法中的任何一个中删除个别模块而不脱离在本文中所描述的主题的范围。在上文中所描述的示例中的任何一个的方面可以与所描述的其他示例中的任何一个的方面相结合以形成进一步的示例,而不失去所寻求的效果。
在本文中所使用的术语“包括”意指包括所标识的方法模块或元素,但是这样的模块或元素不包括排除性的列表,并且方法或装置可以包含额外的模块或元素。
在本文中所使用的术语“子集”是指使得集合的子集不包括集合的所有元素(即,所述集合中的元素中的至少一个元素在所述子集中缺失)的合适的子集
应当理解的是,仅仅作为示例给出了上文中的描述,并且可以由本领域技术人员做出各种修改。以上的详细说明、示例、和数据提供了对示例性实施例的使用和结构的完整的描述。尽管已经结合某种程度上的特殊性,或者参考一个或多个个别的实施例在上文中描述了各种实施例,但是本领域技术人员可以对所公开的实施例做出各种改变而不脱离该说明书的精神或范围。

Claims (15)

1.一种电子设备,包括:
至少一个处理器;以及
存储器,其通信地耦合至所述至少一个处理器,所述存储器在其上存储有:
指示神经网络的至少一部分和所述神经网络的多个项嵌入的数据;以及
计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,包括:
从至少一个输入接口接收指示项的序列中的至少一项的数据;
当与所接收的至少一项相对应的项嵌入在所述电子设备处不可用时,发起所述对应的项嵌入从存储所述神经网络的服务器的传输;
当可用时,访问针对多个候选的下一项的项嵌入以及针对一个或多个其他先前项的项嵌入;以及
基于所述访问、所述神经网络的所述至少一部分、以及所述对应的项嵌入来预测所述项的序列中的至少一个候选的下一项。
2.根据权利要求1所述的电子设备,其中,在所述电子设备处存储的多个项嵌入少于在所述服务器处存储的项嵌入的数量。
3.根据权利要求1所述的电子设备,其中,项嵌入是多个学习的权重,其以能够由神经网络的单元处理的形式来表示所述项的序列中的项。
4.根据权利要求1所述的电子设备,还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括:通过利用从在所述存储器中存储的所述多个项嵌入形成的编码矩阵将输入转换至所述神经网络的输出层来在所述输出层处获取输出向量,其中,所述输出向量与所述至少一个候选的下一项相对应。
5.根据权利要求1所述的电子设备,还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括通过向所述服务器发送请求来触发所述对应的项嵌入从所述服务器的传输,所述请求包括所接收的至少一项或者所接收的至少一项的标识符。
6.根据权利要求1所述的电子设备,还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括通过替换或删除所述项嵌入中的单个项嵌入来控制所述神经网络的所述至少一部分的项嵌入的数量,以使得项嵌入的最大数量保持低于阈值。
7.根据权利要求1所述的电子设备,还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括通过使用最近最少使用的高速缓存来控制所述神经网络的所述至少一部分的项嵌入的数量。
8.根据权利要求1所述的电子设备,还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括访问关于历史的多个序列的项的数据,以及至少基于所述数据来触发项嵌入从所述服务器向所述电子设备的传输。
9.根据权利要求1所述的电子设备,还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括使用经平滑频率的项使用数据来触发嵌入从所述服务器向所述电子设备的传输。
10.根据权利要求1所述的电子设备,还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括确保指定的多个项嵌入被留存在所述电子设备处的所述存储器中。
11.根据权利要求1所述的电子设备,还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括从所述电子设备处的动态n元语言模型中访问关于历史的多个序列的项的数据。
12.根据权利要求1所述的电子设备,还包括计算机可读指令,所述计算机可读指令当由所述至少一个处理器执行时,使得所述电子设备执行以下操作,所述操作包括显示所述候选的下一项以供输入至所述电子设备。
13.一种服务器,包括:
神经网络,其被配置为使用所述神经网络的项嵌入来预测项的序列中的至少一个候选的下一项;
处理器;以及
存储器,其通信地耦合至处理器,所述存储器在其上存储有计算机可读指令,所述计算机可读指令当由所述处理器执行时,使得所述服务器执行以下操作,包括:
生成所述神经网络的项嵌入;以及
当由在其上存储有所述神经网络的至少一部分的副本的电子设备触发时,将所述项嵌入中的一个或多个项嵌入发送至所述电子设备。
14.根据权利要求13所述的服务器,还包括计算机可读指令,所述计算机可读指令当由所述处理器执行时,使得所述服务器执行以下操作,所述操作包括通过在所述服务器处存储的项嵌入的存储中查找所述项嵌入来生成所述神经网络的所述项嵌入。
15.一种方法,包括:
在计算设备的输入接口处接收项的序列中的至少一项;
由所述计算设备通过通信网络与服务器进行通信,所述服务器存储神经网络并且被配置为实现生成所述神经网络的项嵌入的过程;
在所述计算设备处存储所述神经网络的至少一部分的副本以及所述神经网络的多个项嵌入;
当在所述计算设备处对应于所接收的至少一项的对应的项嵌入不可用时,由所述计算设备触发所述对应的项嵌入从所述服务器向所述计算设备的传输;
通过利用所述神经网络的至少一部分的所述副本并且使用针对从所述存储器获取的多个候选的下一项的项嵌入,当可用时处理所述对应的项嵌入和针对一个或多个其他先前项的项嵌入,由所述计算设备预测所述序列中的至少一个候选的下一项;以及
将所述候选的下一项输入至所述计算设备。
CN201780065887.4A 2016-10-24 2017-10-16 神经网络数据输入***的设备/服务器部署 Active CN109863488B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/332,907 2016-10-24
US15/332,907 US11205110B2 (en) 2016-10-24 2016-10-24 Device/server deployment of neural network data entry system
PCT/US2017/056702 WO2018080813A1 (en) 2016-10-24 2017-10-16 Device/server deployment of neural network data entry system

Publications (2)

Publication Number Publication Date
CN109863488A true CN109863488A (zh) 2019-06-07
CN109863488B CN109863488B (zh) 2023-08-29

Family

ID=60302459

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780065887.4A Active CN109863488B (zh) 2016-10-24 2017-10-16 神经网络数据输入***的设备/服务器部署

Country Status (4)

Country Link
US (1) US11205110B2 (zh)
EP (1) EP3529711B1 (zh)
CN (1) CN109863488B (zh)
WO (1) WO2018080813A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110472063A (zh) * 2019-07-12 2019-11-19 新华三大数据技术有限公司 社交媒体数据处理方法、模型训练方法及相关装置
CN114402179A (zh) * 2019-09-20 2022-04-26 诺基亚技术有限公司 传感器的运行时评价

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201511887D0 (en) 2015-07-07 2015-08-19 Touchtype Ltd Improved artificial neural network for language modelling and prediction
US11042796B2 (en) * 2016-11-03 2021-06-22 Salesforce.Com, Inc. Training a joint many-task neural network model using successive regularization
KR20180077689A (ko) * 2016-12-29 2018-07-09 주식회사 엔씨소프트 자연어 생성 장치 및 방법
US10565498B1 (en) * 2017-02-28 2020-02-18 Amazon Technologies, Inc. Deep neural network-based relationship analysis with multi-feature token model
US11631236B2 (en) * 2017-03-14 2023-04-18 Samsung Electronics Co., Ltd. System and method for deep labeling
US11037330B2 (en) * 2017-04-08 2021-06-15 Intel Corporation Low rank matrix compression
US10788900B1 (en) * 2017-06-29 2020-09-29 Snap Inc. Pictorial symbol prediction
US20200034025A1 (en) * 2018-07-26 2020-01-30 Lois Jean Brady Systems and methods for multisensory semiotic communications
US10720151B2 (en) 2018-07-27 2020-07-21 Deepgram, Inc. End-to-end neural networks for speech recognition and classification
WO2020026741A1 (ja) * 2018-08-03 2020-02-06 ソニー株式会社 情報処理方法、情報処理装置及び情報処理プログラム
US20200265270A1 (en) * 2019-02-20 2020-08-20 Caseware International Inc. Mutual neighbors
CN112465133B (zh) * 2020-11-25 2022-12-09 安徽寒武纪信息科技有限公司 控制流多核并行方法、计算机设备和存储介质
CN113648658B (zh) * 2021-07-23 2023-10-20 广州三七互娱科技有限公司 游戏数据处理方法、***、装置、计算机设备和存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040186815A1 (en) * 2002-12-20 2004-09-23 Stockfisch Thomas P. Method for accommodating missing descriptor and property data while training neural network models
CN101373468A (zh) * 2007-08-20 2009-02-25 北京搜狗科技发展有限公司 一种加载词库的方法、字符输入的方法和输入法***
CN101681198A (zh) * 2007-05-21 2010-03-24 微软公司 提供相关文本自动完成
CN101697099A (zh) * 2009-10-26 2010-04-21 北京搜狗科技发展有限公司 一种字词转换结果的获取方法及***
CN103870000A (zh) * 2012-12-11 2014-06-18 百度国际科技(深圳)有限公司 一种对输入法所产生的候选项进行排序的方法及装置
CN103870001A (zh) * 2012-12-11 2014-06-18 百度国际科技(深圳)有限公司 一种生成输入法候选项的方法及电子装置
CN104951428A (zh) * 2014-03-26 2015-09-30 阿里巴巴集团控股有限公司 用户意图识别方法及装置
EP3054403A2 (en) * 2015-02-06 2016-08-10 Google, Inc. Recurrent neural networks for data item generation
US20180204120A1 (en) * 2015-07-07 2018-07-19 Touchtype Ltd. Improved artificial neural network for language modelling and prediction

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905773A (en) 1996-03-28 1999-05-18 Northern Telecom Limited Apparatus and method for reducing speech recognition vocabulary perplexity and dynamically selecting acoustic models
US5822730A (en) 1996-08-22 1998-10-13 Dragon Systems, Inc. Lexical tree pre-filtering in speech recognition
US6195641B1 (en) 1998-03-27 2001-02-27 International Business Machines Corp. Network universal spoken language vocabulary
US7181399B1 (en) 1999-05-19 2007-02-20 At&T Corp. Recognizing the numeric language in natural spoken dialogue
US6751595B2 (en) 2001-05-09 2004-06-15 Bellsouth Intellectual Property Corporation Multi-stage large vocabulary speech recognition system and method
US7716058B2 (en) 2001-09-05 2010-05-11 Voice Signal Technologies, Inc. Speech recognition using automatic recognition turn off
US6999931B2 (en) 2002-02-01 2006-02-14 Intel Corporation Spoken dialog system using a best-fit language model and best-fit grammar
US20050209983A1 (en) 2004-03-18 2005-09-22 Macpherson Deborah L Context driven topologies
US7512570B2 (en) 2006-05-30 2009-03-31 Zaracom Technologies Inc. Artificial intelligence analyzer and generator
US8375190B2 (en) * 2007-12-11 2013-02-12 Microsoft Corporation Dynamtic storage hierarachy management
US8589163B2 (en) 2009-12-04 2013-11-19 At&T Intellectual Property I, L.P. Adapting language models with a bit mask for a subset of related words
US10867597B2 (en) 2013-09-02 2020-12-15 Microsoft Technology Licensing, Llc Assignment of semantic labels to a sequence of words using neural network architectures
US20150095017A1 (en) * 2013-09-27 2015-04-02 Google Inc. System and method for learning word embeddings using neural language models
US20150100537A1 (en) 2013-10-03 2015-04-09 Microsoft Corporation Emoji for Text Predictions
US20150213365A1 (en) * 2014-01-30 2015-07-30 Shine Security Ltd. Methods and systems for classification of software applications
CN104036010B (zh) 2014-06-25 2017-05-24 华东师范大学 一种基于半监督cbow的用户搜索词主题分类的方法
US9563825B2 (en) * 2014-11-20 2017-02-07 Adobe Systems Incorporated Convolutional neural network using a binarized convolution layer
CN104504442A (zh) 2014-12-30 2015-04-08 湖南强智科技发展有限公司 神经网络优化方法
US9678664B2 (en) * 2015-04-10 2017-06-13 Google Inc. Neural network for keyboard input decoding
US20160328644A1 (en) * 2015-05-08 2016-11-10 Qualcomm Incorporated Adaptive selection of artificial neural networks
US20160342720A1 (en) 2015-05-22 2016-11-24 Andreas Veneris Method, system, and computer program for identifying design revisions in hardware design debugging
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
KR20180001889A (ko) * 2016-06-28 2018-01-05 삼성전자주식회사 언어 처리 방법 및 장치
US12033071B2 (en) 2017-02-07 2024-07-09 Qatar University Generalized operational perceptrons: new generation artificial neural networks

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040186815A1 (en) * 2002-12-20 2004-09-23 Stockfisch Thomas P. Method for accommodating missing descriptor and property data while training neural network models
CN101681198A (zh) * 2007-05-21 2010-03-24 微软公司 提供相关文本自动完成
CN101373468A (zh) * 2007-08-20 2009-02-25 北京搜狗科技发展有限公司 一种加载词库的方法、字符输入的方法和输入法***
CN101697099A (zh) * 2009-10-26 2010-04-21 北京搜狗科技发展有限公司 一种字词转换结果的获取方法及***
CN103870000A (zh) * 2012-12-11 2014-06-18 百度国际科技(深圳)有限公司 一种对输入法所产生的候选项进行排序的方法及装置
CN103870001A (zh) * 2012-12-11 2014-06-18 百度国际科技(深圳)有限公司 一种生成输入法候选项的方法及电子装置
CN104951428A (zh) * 2014-03-26 2015-09-30 阿里巴巴集团控股有限公司 用户意图识别方法及装置
EP3054403A2 (en) * 2015-02-06 2016-08-10 Google, Inc. Recurrent neural networks for data item generation
US20180204120A1 (en) * 2015-07-07 2018-07-19 Touchtype Ltd. Improved artificial neural network for language modelling and prediction

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
柏蓉: "别吓唬住!用上神经网络技术的输入法SwiftKey Neural不是黑科技", 《HTTPS://WWW.LEIPHONE.COM/CATEGORY/ZIXUN/EBKRB5GJBJYDSLI4.HTML》 *
柏蓉: "别吓唬住!用上神经网络技术的输入法SwiftKey Neural不是黑科技", 《HTTPS://WWW.LEIPHONE.COM/CATEGORY/ZIXUN/EBKRB5GJBJYDSLI4.HTML》, 9 October 2015 (2015-10-09), pages 1 - 4 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110472063A (zh) * 2019-07-12 2019-11-19 新华三大数据技术有限公司 社交媒体数据处理方法、模型训练方法及相关装置
CN110472063B (zh) * 2019-07-12 2022-04-08 新华三大数据技术有限公司 社交媒体数据处理方法、模型训练方法及相关装置
CN114402179A (zh) * 2019-09-20 2022-04-26 诺基亚技术有限公司 传感器的运行时评价

Also Published As

Publication number Publication date
WO2018080813A1 (en) 2018-05-03
US11205110B2 (en) 2021-12-21
CN109863488B (zh) 2023-08-29
EP3529711A1 (en) 2019-08-28
EP3529711B1 (en) 2022-02-16
US20180114112A1 (en) 2018-04-26

Similar Documents

Publication Publication Date Title
CN109863488A (zh) 神经网络数据输入***的设备/服务器部署
CN111291181B (zh) 经由主题稀疏自编码器和实体嵌入的用于输入分类的表示学习
US11361225B2 (en) Neural network architecture for attention based efficient model adaptation
CN111368996B (zh) 可传递自然语言表示的重新训练投影网络
CN107836000B (zh) 用于语言建模和预测的改进的人工神经网络方法、电子设备
CN110036399A (zh) 神经网络数据录入***
CN107710249A (zh) 个性化预测模型
CN107810496A (zh) 用户文本分析
CN109716365A (zh) 动态地管理人工神经网络
CN106663124A (zh) 生成和使用知识增强型模型
CN110023930B (zh) 利用神经网络和在线学习的语言数据预测
JP7422767B2 (ja) 自然言語ソリューション
CN110431553A (zh) 多语言数据输入***
CN108604313B (zh) 自动化的预测性建模与框架
CN115879508A (zh) 一种数据处理方法及相关装置
US20230153533A1 (en) Pre-training techniques for entity extraction in low resource domains
CN112837466A (zh) 票据识别方法、装置、设备以及存储介质
CN110352418A (zh) 通过消歧对话问题来进行查询消歧
CN114373098A (zh) 一种图像分类方法、装置、计算机设备及存储介质
US20240086947A1 (en) Intelligent prediction of sales opportunity outcome
US11985571B2 (en) Predicting user interaction with communications
US20230124177A1 (en) System and method for training a sparse neural network whilst maintaining sparsity
US20220269858A1 (en) Learning Rules and Dictionaries with Neuro-Symbolic Artificial Intelligence
Ye et al. LOLA: LLM-Assisted Online Learning Algorithm for Content Experiments
CN116257687A (zh) 推荐模型的训练方法、内容项的推荐方法、装置以及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant