一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于学习迁移学习的框架的制作方法

2022-03-19 18:33:20 来源:中国专利 TAG:


1.本公开涉及用于学习迁移学习的框架。


背景技术:

2.机器学习模型接收输入并基于接收到的输入而产生输出,例如预测输出。一些机器学习模型是参数模型,并且基于接收到的输入和模型的参数的值来产生输出。
3.一些机器学习模型是采用多层模型来为接收到的输入产生输出的深度模型。例如,深度神经网络是深度机器学习模型,其包括输出层和一个或多个隐藏层,每个隐藏层对接收到的输入应用非线性变换以产生输出。


技术实现要素:

4.本公开的一个方面提供了一种自适应地学习深度学习模型的权重分配的方法,深度学习模型针对源数据集和目标数据集被联合优化。该方法包括在数据处理硬件处接收源数据集和目标数据集,并且由数据处理硬件基于源数据集和目标数据集来识别深度学习模型的损失函数。损失函数包括编码器权重,源分类器层权重,目标分类器层权重,系数和策略权重。在被配置为学习所述深度学习模型的权重分配的学习迁移学习(l2tl)架构的多个学习迭代中的每一个学习迭代的第一阶段期间,所述方法还包括:由数据处理硬件应用基于梯度下降的优化来学习使损失函数最小化的编码器权重,源分类器层权重和目标分类器层权重;数据处理硬件通过对策略模型的动作进行采样来确定系数。在用于l2tl架构的多个学习迭代中的每一个学习迭代的第二阶段期间,该方法还包括由数据处理硬件确定使损失函数的评估度量最大化的策略权重。
5.本公开的实施方式可以包括以下可选特征中的一个或多个。在一些实施方式中,确定使损失函数的评估度量最大化的策略权重包括使用在第一阶段期间学习的编码器权重和目标分类层权重。当执行学习迭代的第一阶段时,策略模型可以是固定的。策略模型可以包括基于强化学习的策略模型。用于损失函数的评估度量可以量化深度学习模型在目标评估数据集中的性能,目标评估数据集包括目标数据集中先前未被深度学习模型看到的数据样本的子集。
6.在一些示例中,在多个学习迭代中的每一个的第一阶段期间,该方法还包括:由数据处理硬件从具有特定大小的源数据集采样训练批次的源数据样本;以及由数据处理硬件从训练批次的源数据样本中选择源数据样本,源数据样本具有n最佳置信度得分,用于训练所述深度学习模型以学习使所述损失函数最小化的所述编码器权重,源分类器层权重和目标分类器层权重。在另外的例子中,在多个学习迭代的每一个的第二阶段期间,该方法还包括由所述数据处理硬件使用目标评估数据集上的策略梯度来训练所述策略模型,以计算使所述评估度量最大化的奖励。在这些附加的例子中,确定使所述损失函数的所述评估度量最大化的所述策略权重是基于所计算的所述奖励。
7.在一些实施方式中,源数据集包括第一多个图像,并且目标数据集包括第二多个
图像。这里,所述源数据集的所述第一多个图像中的图像的数量大于所述目标数据集的所述第二多个图像中的图像的数量。l2tl结构可以包括编码器网络层,源分类器层和目标分类器层。
8.本公开的另一方面提供了一种用于自适应地学习深度学习模型的权重分配的系统,所述深度学习模型针对源数据集和目标数据集被联合优化。该系统包括数据处理硬件和与用户设备的数据处理硬件通信的存储器硬件。存储器硬件存储在数据处理硬件上执行时使数据处理硬件执行以下操作的指令:接收源数据集和目标数据集,并基于源数据集和目标数据集来识别深度学习模型的损失函数。损失函数包括编码器权重,源分类器层权重,目标分类器层权重,系数和策略权重。在被配置为学习所述深度学习模型的权重分配的学习迁移学习(l2tl)架构的多个学习迭代中的每一个学习迭代的第一阶段期间,所述操作还包括:应用基于梯度下降的优化来学习使所述损失函数最小化的所述编码器权重,所述源分类器层权重和所述目标分类器层权重;通过对策略模型的动作进行采样来确定所述系数。在用于l2tl架构的多个学习迭代中的每一个的第二阶段期间,所述操作还包括确定使损失函数的评估度量最大化的策略权重。
9.该方面可以包括一个或多个以下可选特征。在一些实施方式中,确定使损失函数的评估度量最大化的策略权重包括使用在第一阶段期间学习的编码器权重和目标分类层权重。当执行学习迭代的第一阶段时,策略模型可以是固定的。策略模型可以包括基于强化学习的策略模型。损失函数的评估度量可以量化深度学习模型在目标评估数据集中的性能,所述目标评估数据集包括目标数据集中先前未被深度学习模型看到的数据样本的子集。
10.在一些示例中,在多个学习迭代中的每一个的第一阶段期间,所述操作还包括:从具有特定大小的源数据集采样训练批次的源数据样本;从所述训练批次的源数据样本中选择所述源数据样本,所述源数据样本具有n最佳置信度得分,用于训练所述深度学习模型以学习使所述损失函数最小化的所述编码器权重,所述源分类器层权重和所述目标分类器层权重。在另外的例子中,在多个学习迭代的每一个的第二阶段期间,操作还包括使用目标评估数据集上的策略梯度来训练策略模型,以计算使评估度量最大化的奖励。在这些附加的例子中,确定使损失函数的评估度量最大化的策略权重是基于所计算的奖励。
11.在一些实施方式中,源数据集包括第一多个图像,并且目标数据集包括第二多个图像。这里,所述源数据集的所述第一多个图像中的图像的数量大于所述目标数据集的所述第二多个图像中的图像的数量。l2tl结构可以包括编码器网络层,源分类器层和目标分类器层。
12.本公开的一个或多个实施方式的细节在附图和以下描述中阐述。从说明书和附图以及从权利要求书中,其它方面,特征和优点将是显而易见的。
附图说明
13.图1是包括学习迁移学习(l2tl)架构和针对源数据集和训练数据集联合优化的深度学习模型的系统的示意图。
14.图2是通过明智地从源数据集中提取信息来改进对目标数据集的迁移学习的学习迁移学习架构的示例的示意图。
15.图3是描述用于更新深度学习模型的权重的多个学习迭代中的每一个的第一和第二阶段的学习迁移学习算法的示例的示意图。
16.图4是用于自适应地学习深度学习模型的权重分配的方法的操作的示例性布置,该深度学习模型针对源数据集和目标数据集被联合优化。
17.图5是可用于实施本文所述的系统和方法的示例性计算设备的示意图。
18.在各个附图中相同的附图标记表示相同的元件。
具体实施方式
19.深度神经网络在理解图像,文本和音频方面是优越的。随着训练数据的增加,深度神经网络的性能显著提高。由于应用多样化并跨越具有小的训练数据集的用例,传统的训练方法通常不足以产生高性能。利用额外的源数据集和将相关信息“迁移”到目标数据集变得非常有益。通常以在大规模源数据集上获得预先训练的模型,然后在目标数据集上进一步训练它(称为微调)的形式的迁移学习已经成为大多数现实世界人工智能应用的标准方案。与来自随机初始化的训练相比,微调产生了相当大的性能改进和收敛加速,如对于对象识别,语义分割,语言理解,语音合成,视听识别和语言翻译所证明的。
20.本文中的实施方式针对在数据处理硬件上执行的学习迁移学习(l2tl)架构,其用于通过从源数据集中明智地提取信息来改进对目标数据集的迁移学习。与使用固定加权分配函数来测量源域和目标域之间的相关性的迁移学习技术相反,l2tl架构可以自适应地学习针对深度学习模型的分配,该深度学习模型针对源数据集和目标数据集被联合优化。如将变得显而易见的,对于深度学习模型的自适应权重的学习可以由深度学习模型在目标评估数据集上的性能来指导。具体地,可以使用目标性能度量来量化性能,由此l2tl架构可以直接针对目标评估性能的改进目标的相关性。
21.在优化重要性加权函数的同时,用于选择缩放系数的一个选项是在(1,0)和(0,1)之间交替它们。这将训练源数据集,直到用优化的策略权重收敛,然后训练目标数据集,直到用来自源数据集的预先训练的权重收敛。在一些实施方式中,框架优化单个系数作为尺度不变的优化。策略优化步骤与基于梯度下降的可训练参数优化解耦,并且信号在它们之间共享。
22.实施方式针对在用于l2tl架构的多个学习迭代的每一个中使用两个阶段。在用于多个学习迭代中的每一个的第一阶段期间,l2tl架构应用基于梯度下降的优化来学习使l2tl架构的损失函数最小化的编码器权重,源分类器层权重和目标分类器权重,并且还通过对策略模型的动作进行采样来确定系数。在第一阶段期间,策略模型可以被固定。在一些情况下,当批次中的大多数源数据集样本不相关时,该损失可能被偏斜,而一些批次包含更相关的示例。为了解决这个问题,l2tl体系结构可以采样更大的批次,并动态地选择更相关的示例。在每次迭代时,l2tl结构可以对具有特定大小的训练批次进行采样,并使用具有最高置信度得分的多个最前样本进行训练。这种方法可以产生计算益处,因为直到收敛才对大多数源数据集样本计算梯度。
23.在用于多个学习迭代中的每一个的第二阶段期间,l2tl架构用在第一阶段期间学习的编码器权重来优化使目标评估数据集上的评估度量最大化的策略权重这可以被视为rl问题,使得策略模型输出用于重要性加权函数的动作和针对奖励的优化的单个系数。
当训练策略模型时,l2tl架构可以使用策略梯度来使用具有特定大小的批次来使对目标数据集的奖励最大化。l2tl架构可以使用移动平均基线来减少方差。l2tl架构可以使用强化学习来计算策略梯度。l2tl架构还可以使用基于梯度的随机目标的优化(例如,adam优化器)来优化策略梯度。
24.参照图1,在一些实施方式中,系统100包括计算环境130,该计算环境130包括资源132,诸如数据处理硬件134(例如,服务器或cpu)和/或存储指令的远程存储器硬件136,所述指令在数据处理硬件102上执行时使数据处理硬件102执行操作。学习迁移学习(l2tl)架构200和深度学习模型150可以驻留在资源132上。通常,深度学习模型150包括深度学习网络,即,机器学习模型,其包括多个模型层以为接收到的输入产生输出。在所示的示例中,针对源数据集104和目标数据集106联合优化深度学习模型150,并且将l2tl架构200配置为自适应地学习深度学习模型150的权重分配。
25.图2示出了在数据处理硬件134上执行并接收源数据集104和目标数据集106的l2tl架构200的示例。源数据集104包括第一多个图像,而目标数据集106包括第二多个图像。源数据集104的第一多个图像包括比目标数据集106的第二多个图像更多数量的图像。在其它实施方式中,源数据集104和目标数据集106包括除图像之外的数据样本,例如但不限于音频样本或文本样本。目标数据集106包括专门的训练样本集,例如包括狗的图像,用于训练深度学习模型150以执行专门的目标任务,例如识别包含狗的图像。然而,源数据集104可以包括用于跨越可能包括或可能不包括狗的各种类的图像的非常大规模的公共数据集。值得注意的是,源数据集104和目标数据集106可以各自被标记。存在源数据集104中的源样本可以具有隐含地与目标数据集106中的目标样本相关的特征并且将有利于学习过程的情况,但是它们可以属于不同的类。例如,考虑其中训练深度学习模型150以执行鸟类图像的分类的示例。源数据集104可以不包含鸟类图像,但是可以具有带有类似视觉图案的飞机图像,这将有助于训练鸟类分类器,因为它们共享类似的视觉图案来学习原始数据的有价值的表示。l2tl架构200被设计成利用其策略学习来自动处理这样的情况,并且可以以手动源数据集选择或固定域相似性方法可能不能处理的方式进一步推动性能。l2tl架构200考虑用于源任务和目标任务的深度学习模型150的协同优化,同时使用自适应权重202,204,208,210来缩放组成损失项。图2的l2tl结构200中的虚线框对应于可训练的函数。
26.l2tl架构200被配置为通过从源数据集104明智地提取信息来改进对目标数据集106的迁移学习。l2tl架构200被配置为基于源数据集104和目标数据集106来识别深度学习网络150的损失函数201。损失函数201可以包括与深度学习模型150的编码器神经网络152相关联的编码器权重210,与深度学习模型150的源分类器层154相关联的源分类器层权重202,与深度学习模型150的目标分类器层156相关联的目标分类器层权重204,用于源数据集104和目标数据集106的系数206,以及与深度学习模型150的策略模型209相关联的策略权重208。损失函数201可以表示如下。
其中(x,y)是输入和输出对,bs和b
t
是源批次大小和目标批次大小,αs[i]和α
t
[i]是第i次迭代时的缩放系数206,λ是重要性加权函数212,fs(
·
;ω,ζs)和f
t
(
·
;ω,ζ
t
)是用于具有可训练参数ω(编码权重210)、ζs(源分类器层权重202)和ζ
t
(目标分类器层权重204)的源数据集104和目标数据集106的编码函数。如将变得显而易见的,由等式(1)表示的损失函数201的学习目标经由性能度量r,220的最大化而推广到未看到的目标评估数据集106'。
[0027]
在用于l2tl架构200的多个学习迭代中的每一个迭代的第一阶段期间,l2tl架构200应用基于梯度下降的优化来学习使损失函数201最小化的编码器权重ω210,源分类器层权重ζ
s 202和目标分类器层权重ζ
t 204,并通过对策略模型209的动作进行采样来确定系数206。例如,应用基于梯度下降的优化来学习使损失函数201最小化的自适应权重ω210,ζ
s 202和ζ
t
可以由以下等式来表示。
[0028]
在第一阶段期间,策略模型209保持固定。尽管大多数批次将包含来自源数据集104的相关样本,但是如果批次中的大多数源数据集样本是不相关的(并且将理想地获得较低的权重),则损失函数201可能是偏斜的。为了减轻这个问题,第一阶段可以在每次迭代时使用更大的批次大小,并从中动态地选择最相关的示例。在每次迭代时,l2tl架构对大小为ms·bs
的训练批次进行采样,并且在该迭代期间使用具有最高权重的那些中的最高bs来训练更新。这种方法还产生了计算益处,因为直到收敛才对大多数源数据集样本计算梯度。
[0029]
图2示出了在学习迭代的第一阶段期间具有针对源数据集104和目标数据集106中的每一个的训练目标的l2tl架构200,其包括使源数据集104和目标数据集106的相应输入x以及其对应的标签/输出y之间的梯度最小化。这里,编码网络152对来自源数据集104的输入特征(例如,图像)进行编码,并且源分类器层154(也称为“源决策层”)使用经编码的输入特征来输出置信度得分,由此该训练目标确定输入特征的置信度得分与对应的标签/输出y之间的源数据集分类损失(其对应于损失函数201的等式(1)中的第一项ls(fs(xj;ω,ζs),yj))。源数据集分类损失与重要性权重212相乘,该重要性权重212对应于损失函数201的等式(1)中的λ(xj,yj;φ),然后求和函数203将目标数据集分类损失(其对应于损失函数201的等式(1)中的第二项l
t
(f
t
(x
′k;ω,ζ
t
),y
′k))与源数据集分类损失和重要性权重212的乘积聚集,以确定损失函数201的聚集梯度。基于每次迭代的损失函数的聚集梯度,l2tl架构200确定/更新编码器权重ω210,源分类器层权重ζ
s 202和目标分类器层权重ζ
t 204中的每一个,直到源数据集103收敛。
[0030]
编码网络152还对来自目标数据集106的输入特征(例如,图像)进行编码,并且目标分类器层156(也称为“源决策层”)使用经编码的特征来输出置信度得分,由此该训练目标确定目标数据集的输入特征的置信度得分与对应的标签/输出y之间的目标数据集分类
损失l
t
(f
t
(x
′k;ω,ζ
t
),y
′k)。如上所述,求和函数203将目标数据集分类损失与源数据集分类损失和重要性权重208的乘积进行聚合,以确定损失函数201的聚合梯度。
[0031]
在针对l2tl架构200的多个学习迭代中的每一个学习迭代的第二阶段期间,l2tl架构200确定使损失函数201的评估度量r,220最大化的策略权重φ208。这里,l2tl架构200使用在第一阶段期间学习的编码器权重ω210和目标分类器层权重ζ
t 204来确定使评估度量r,220最大化的策略权重φ208。如这里所使用的,用于损失函数的评估度量(也称为“评估度量”)220对深度学习模型150(即,编码器网络152和目标分类层154)在目标评估数据集106'上的性能进行量化。在一些示例中,目标评估数据集106'包括在训练的第一阶段期间先前未被深度学习模型150看到的目标数据集106中的数据样本(例如,图像)的子集。因此,确定策略权重φ208包括优化策略权重208以使目标评估数据集106'上的评估度量r
d’t 220最大化,可以表示如下。其中d’t
是未看到的目标评估数据集106',其可以包括目标数据集106中先前在第一阶段期间未被深度学习模型150看到的数据样本(输入特征x,输出标记y)的子集。当策略模型209在第一阶段期间被固定时,在第二阶段期间,l2tl架构200使用目标评估数据集106'上的策略梯度来训练策略模型209,以使用等式(3)来计算使评估度量220最大化的奖励。因此,l2tl架构200基于所计算的奖励来确定/更新使评估度量r 220最大化的策略权重φ208。基于更新的策略权重φ208,通过对策略模型209的动作进行采样来更新在后续学习迭代的第一阶段期间将被作为乘数应用于要确定的源数据集分类损失的重要性权重212。因此,l2tl架构200使用策略模型209来学习编码器权重ω210,源分类器层权重ζ
s 202和目标分类器层权重ζ
t 204,并确定/更新使目标评估数据集106'上的评估度量r 220最大化的策略权重φ208。结果,l2tl架构200通过直接针对提高目标评估数据集106'的性能的特定目标的相关度而胜过了针对一般的相关度。图3提供了描述用于更新权重ω210,ζ
s 202,ζ
t 204和φ208的多个学习迭代中的每一个的第一和第二阶段的示例l2tl算法。
[0032]
有效地,策略模型209为源数据集104的多个类中的每一类自适应地输出重要性权重212,从而使得l2tl架构200能够学习源数据集类权重,以直接优化目标数据集106的性能。利用重要性权重212的自适应分配,l2tl架构200将更高的权重分配给源数据集104中更相关的数据样本,从而可以从源数据集104中提取相关信息,以便训练深度学习模型150来学习对象目标。策略模型209可以包括基于强化学习的策略模型。此外,在一些示例中,l2tl架构200基于源数据集104的样本对目标任务的贡献来产生源数据集104的样本的排序。
[0033]
图4提供了用于自适应地学习深度学习模型150的权重分配的方法400的操作的示例布置的流程图,该深度学习模型150针对源数据集104和目标数据集106被联合优化。数据处理硬件134(图1)可以通过执行存储在存储器硬件136(图1)上的指令来执行方法400的操作。在操作402,方法400包括接收源数据集104和目标数据集106。在操作404,方法400包括基于源数据集104和目标数据集106来识别深度学习模型150的损失函数201。损失函数201包括编码器权重210,源分类器层权重202,目标分类器层权重204,系数206和策略权重208。
[0034]
在被配置为学习深度学习模型150的权重分配的学习迁移学习(l2tl)架构200的多个学习迭代中的每一个的第一阶段期间,方法400还包括:在操作406,应用基于梯度下降
的优化来学习使损失函数最小化的编码器权重,源分类器层权重和目标分类器权重;以及在操作408,通过对策略模型209的动作进行采样来确定系数206。在l2tl架构200的多个学习迭代的每一个的第二阶段期间,方法400还包括,在操作410,确定使损失函数201的评估度量220最大化的策略权重208。
[0035]
软件应用(即,软件资源)可以指使计算设备执行任务的计算机软件。在一些示例中,软件应用可被称为“应用”,“app”或“程序”。示例应用包括但不限于系统诊断应用,系统管理应用,系统维护应用,字处理应用,电子表格应用,消息传递应用,媒体流应用,社交网络应用和游戏应用。
[0036]
非暂时性存储器可以是用于临时或永久地存储由计算设备使用的程序(例如,指令序列)或数据(例如,程序状态信息)的物理设备。非暂时性存储器可以是易失性和/或非易失性可寻址半导体存储器。非易失性存储器的示例包括(但不限于)闪存存储器和只读存储器(rom)/可编程只读存储器(prom)/可擦除可编程只读存储器(eprom)/电可擦除可编程只读存储器(eeprom)(例如,通常用于固件,例如启动程序)。易失性存储器的示例包括但不限于随机存取存储器(ram),动态随机存取存储器(dram),静态随机存取存储器(sram),相变存储器(pcm)以及磁盘或磁带。
[0037]
图5是可用于实施本文档中描述的系统和方法的示例性计算设备500的示意图。计算设备500用于表示各种形式的数字计算机,例如膝上型计算机,台式计算机,工作站,个人数字助理,服务器,刀片服务器,大型机和其它适当的计算机。这里所示的部件,它们的连接和关系以及它们的功能仅仅是示例性的,而不是要限制在本文件中描述和/或要求保护的本发明的实施方式。
[0038]
计算设备500包括处理器510(例如,数据处理硬件),存储器520(例如,存储器硬件),存储设备(例如,存储器硬件)530,连接到存储器520和高速扩展端口550的高速接口/控制器540,以及连接到低速总线570和存储设备530的低速接口/控制器560。部件510,520,530,540,550和560中的每一个使用各种总线互连,并且可以适当地安装在公共母板上或以其它方式安装。处理器510可以处理用于在计算设备500内执行的指令,包括存储在存储器520中或存储设备530上的指令,以在外部输入/输出设备(例如联接到高速接口540的显示器580)上显示图形用户界面(gui)的图形信息。在其它实施方式中,可以适当地使用多个处理器和/或多个总线以及多个存储器和存储器类型。此外,可以连接多个计算设备500,其中每个设备提供必要操作的部分(例如,作为服务器库,一组刀片服务器,或多处理器系统)。处理器510可对应于图1的数据处理硬件134并执行l2tl架构200和深度学习模型150。
[0039]
存储器520在计算设备500内非暂时性地存储信息。存储器520可以是计算机可读介质,易失性存储器单元或非易失性存储器单元。非暂时性存储器520可以是用于临时或永久地存储由计算设备500使用的程序(例如,指令序列)或数据(例如,程序状态信息)的物理设备。非易失性存储器的示例包括(但不限于)闪存存储器和只读存储器(rom)/可编程只读存储器(prom)/可擦除可编程只读存储器(eprom)/电可擦除可编程只读存储器(eeprom)(例如,通常用于固件,例如启动程序)。易失性存储器的示例包括但不限于随机存取存储器(ram),动态随机存取存储器(dram),静态随机存取存储器(sram),相变存储器(pcm)以及磁盘或磁带。
[0040]
存储设备530能够为计算设备500提供大容量存储。在一些实施方式中,存储设备
530是计算机可读介质。在各种不同的实施方式中,存储设备530可以是软盘设备,硬盘设备,光盘设备,或磁带设备,闪存或其它类似的固态存储器设备,或设备阵列,包括存储区域网络中的设备或其它配置。在另外的实施方式中,计算机程序产品被有形地包含在信息载体中。所述计算机程序产品包含指令,所述指令在被执行时执行一个或多个方法,例如上述的那些方法。信息载体是计算机或机器可读介质,例如存储器520,存储设备530或处理器510上的存储器。
[0041]
高速控制器540管理计算设备500的带宽密集操作,而低速控制器560管理较低的带宽密集操作。这种职责的分配仅是示例性的。在一些实施方式中,高速控制器540联接到存储器520,显示器580(例如,通过图形处理器或加速器)以及高速扩展端口550,高速扩展端口550可以接受各种扩展卡(未示出)。在一些实施方式中,低速控制器560联接到存储设备530和低速扩展端口590。可以包括各种通信端口(例如,usb,蓝牙,以太网,无线以太网)的低速扩展端口590可以例如通过网络适配器联接到一个或多个输入/输出设备,例如键盘,定点设备,扫描仪,或联网设备,例如交换机或路由器。
[0042]
计算设备500可以以多种不同的形式来实施,如图所示。例如,它可以被实施为标准服务器500a或者在一组这样的服务器500a中多次实施为膝上型计算机500b,或者实施为机架服务器系统500c的一部分。
[0043]
在此描述的系统和技术的各种实施方式可以在数字电子和/或光学电路,集成电路,专门设计的asic(专用集成电路),计算机硬件,固件,软件和/或其组合中实施。这些各种实施方式可以包括在可编程系统上可执行和/或可解释的一个或多个计算机程序中的实施方式,所述可编程系统包括至少一个可编程处理器,所述可编程处理器可以是专用的或通用的,被联接以从存储系统,至少一个输入设备和至少一个输出设备接收数据和指令,以及向存储系统,至少一个输入设备和至少一个输出设备发送数据和指令。
[0044]
这些计算机程序(也称为程序,软件,软件应用或代码)包括用于可编程处理器的机器指令,并且可以用高级过程和/或面向对象的编程语言和/或用汇编/机器语言来实施方式。如本文所用,术语“机器可读介质”和“计算机可读介质”是指用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品,非暂时性计算机可读介质,设备和/或设备(例如,磁盘,光盘,存储器,可编程逻辑设备(pld)),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数据的任何信号。
[0045]
本说明书中描述的过程和逻辑流程可以由一个或多个可编程处理器(也称为数据处理硬件)执行,执行一个或多个计算机程序以通过对输入数据进行操作并产生输出来执行功能。过程和逻辑流程也可以由专用逻辑电路执行,例如fpga(现场可编程门阵列)或asic(专用集成电路)。例如,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括或被可操作地耦合以从一个或多个大容量存储设备接收数据或向一个或多个大容量存储设备传送数据,所述大容量存储设备用于存储数据,例如磁盘,磁光盘或光盘。然而,计算机不必具有这样的设备。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器,介质和存储
器设备,包括例如半导体存储器设备,例如eprom,eeprom和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;cd rom和dvd-rom盘。处理器和存储器可以由专用逻辑电路补充或结合在专用逻辑电路中。
[0046]
为了提供与用户的交互,本公开的一个或多个方面可以在具有显示设备的计算机上实施,所述显示设备例如是crt(阴极射线管),lcd(液晶显示器)监视器,或者用于向用户显示信息的触摸屏,并且可选地还具有键盘和定点设备,例如鼠标或轨迹球,通过所述定点设备,用户可以向计算机提供输入。也可以使用其他类型的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈,听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声音,语音或触觉输入。此外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过响应于从web浏览器接收的请求向用户的客户端设备上的网页浏览器发送网页。
[0047]
已经描述了多种实施方式。然而,应当理解,在不脱离本公开的精神和范围的情况下,可以进行各种修改。因此,其它实施方式也在所附权利要求的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献