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

使用神经网络的压缩感测的制作方法

2021-11-03 21:56:00 来源:中国专利 TAG:


1.本说明书涉及使用神经网络压缩和重构数据。


背景技术:

2.神经网络是机器学习模型,它应用一层或多层非线性单元来针对接收到的输入预测输出。除了输出层之外,一些神经网络还包括一个或多个隐藏层。每个隐藏层的输出用作对于在网络中的下一层的输入,网络中的下一层即下一个隐藏层或输出层。网络的每一层根据相应权重集的当前值从接收到的输入生成输出。


技术实现要素:

3.本说明书描述了一种系统,该系统在一个或多个位置的一个或多个计算机上被实现为计算机程序,该系统使用深度压缩感测来压缩和重构—即解压缩—数据项。重构方案被称为深度压缩感测方案,因为它利用生成器神经网络和测量函数(其也可以是神经网络)在一个或多个优化步骤上优化数据项的重构。
4.因此,描述了一种重构数据项的方法,数据项例如是压缩或感测的数据项。该方法包括:接收输入数据项的输入测量,其中,输入数据项的输入测量是输入数据项的至少一个特征的表示,并且其中,输入测量具有比输入数据项低的维度;以及,初始化潜在表示,其中,潜在表示具有比输入数据项低的维度。该方法进一步包括,对于一个或多个优化步骤中的每个:使用具有多个生成器参数的生成器神经网络处理潜在表示,其中,生成器神经网络被配置为根据生成器的当前值处理潜在表示参数以生成候选重构数据项,使用具有多个测量参数的测量神经网络处理候选重构数据项,其中,测量神经网络被配置为根据测量参数的当前值处理候选重构数据项以生成候选重构数据项的度量,并更新潜在表示以减少候选重构数据项的测量与输入数据项的输入测量之间的误差;并且,使用生成器神经网络并根据生成器参数的当前值在一个或多个优化步骤之后处理潜在表示以生成输入数据项的重构。
5.压缩感测通常依赖于数据项——诸如图像—的稀疏性,以便能够使用保证在稀疏性约束下最小化测量误差的手段通过少量测量来重构数据项。稀疏性可能例如在频域中是隐式的,但稀疏性要求是一个重要的限制。所描述的方法的实施方式使用生成器神经网络和测量神经网络来解决这个问题,生成器神经网络隐式地将重构的数据项约束到低维流形,测量神经网络能够了解数据项的哪些方面对重构有用。因此,测量神经网络还可以充当编码器来压缩数据项,尽管当用于重构数据项时,它处理候选重构数据项。在生成重构时更新潜在表示有助于重构过程。
6.如下所述,对于生成器神经网络和测量神经网络不需要使用特殊的架构。
7.初始化潜在表示可以包括随机选择潜在表示。一个或多个优化步骤中优化步骤的数量可以是固定常数。在该方法的一些实施方式中,优化步骤的数量可能很小,例如少于十个,例如3

5。更新潜在表示可以包括相对于关于误差的潜在表示执行梯度下降步骤。
8.在实施方式中,通过经由一个或多个优化步骤的反向传播来联合训练生成器神经网络和测量神经网络以确定生成器参数和测量参数的当前值。候选重构数据项的测量与输入测量之间的误差取决于生成器参数和测量参数;通过优化步骤的反向传播可以包括调整这些参数。因此,可能已经使用元学习训练了生成器神经网络和测量神经网络。这可以显著减少用于重构数据项所需的处理,并有助于实现更高精度的重构。
9.当重构数据时,(在线)优化步骤可以包括通过确定相对于生成器参数的误差的梯度来确定对生成器参数的当前值的更新。即,可以调整生成器参数以及潜在表示以生成数据项的重构。这也有助于减少所需的处理并可以提高重构精度。
10.无需更新测量参数,原则上该技术甚至可以用于随机测量。然而,在一些实施方式中,可以通过类似地确定相对于测量参数的测量损失函数的梯度来更新测量参数。
11.测量损失函数的梯度也可以相对于生成器参数来确定,并且可以与相对于生成器参数的误差梯度结合使用以更新生成器参数的当前值。
12.在实施方式中,对于一对数据项,测量损失测量以下之间的差:(i)该对中两个数据项之间差的测量的范数和(ii)该对中的两个数据项之间的差的范数。这种形式的测量损失可以有助于在优化步骤期间保持过程的稳定性。
13.在一些实施方式中,通过使用测量神经网络并根据测量参数的当前值处理输入数据项来生成输入数据项的输入测量。因此,在这些实施方式中,测量神经网络充当数据编码器或压缩器以将输入数据项压缩成对输入数据项进行的测量的形式。在其他实施方式中,可以通过对从一个或多个感测器—例如,一个或多个电、磁或光感测器—直接或间接导出的数据进行采样来获得输入测量。然后,输入数据项可以被认为是由来自感测器的数据表示并且要从来自感测器的数据重构的数据项。
14.一般而言,输入数据项可以是具有第一数量元素的张量,并且其中,输入测量可以是具有第二、更低(得多)数量的元素的张量。输入测量可以例如被存储在磁盘或其他非易失性存储器中,或例如经由一个或多个有线或无线通信链接传输;然后相应地被检索或接收,并且如所描述的那样重构输入数据项。
15.输入数据项通常可以包括任何种类的数据;该方法的实施方式可以学习重构不同类型的数据项。仅作为示例,输入数据项可包括音频数据项、图像数据项(其在此包括视频数据项)或从一个或多个电、磁或光感测器导出的数据。
16.在一些实施方式中,该方法用于生成而不是解压缩数据项,例如来自反映训练数据集的分布的数据项。在这样的实施方式中,输入测量可以编码输入数据项已经由生成器神经网络生成而不是真实输入数据项的可能性。或者,对于多个类中的每个类,输入测量可以包括表示输入数据项属于该类的可能性的分数。多个类可以包括仅包括由生成器神经网络生成的数据项的类。如前,生成的数据项可以包括音频数据项—例如表示语音—或图像数据项。
17.可以实现本说明书中描述的主题的特定实施例以实现以下优点中的一个或多个。
18.所描述的技术在确保高重构质量的同时允许以非常数据有效的方式压缩和重构高维数据项,例如大图像。特别地,可以从单个低维测量有效地重构高维输入。可以从高维输入通过测量神经网络的单次前向传递中生成低维测量。通过在重构过程期间利用测量神经网络和生成器神经网络,重构过程可以生成高质量的重构,其具有大大减少的计算预算,
比传统的压缩感测技术消耗更少的计算资源。特别地,其他采用压缩感测的技术可能需要数百或数千个优化步骤,并在重构过程中需要多次重启以实现高质量的重构,而所描述的技术可以在不到十个步骤中实现高质量的重构,而无需任何重启。
19.当用于生成数据项时,所描述的技术可以以最小的额外开销—即以在潜在空间中执行的固定数量的优化步骤—生成比传统对抗生成技术更高质量的数据项,且因此计算高效。
20.在附图和以下描述中阐述了本说明书的主题的一个或多个实施例的细节。本主题的其他特征、方面和优点将从说明书、附图和权利要求中变得明显。
附图说明
21.图1示出了示例编码器系统和示例解码器系统。
22.图2是用于生成数据项的重构的示例过程的流程图。
23.图3是用于训练生成器和测量神经网络的示例过程的流程图。
24.各图中相同的参考标号和名称指示相同的元件。
25.具体实现
26.图1示出了示例编码器系统100和示例解码器系统150。编码器系统100和解码器系统150是在一个或多个位置的一个或多个计算机上实现为计算机程序的系统的示例,其中,可以实现下面描述的系统、组件和技术。
27.通常,编码器系统100和解码器系统150使用深度压缩感测来压缩和重构—即解压缩—数据项。重构方案被称为深度压缩感测方案,因为它利用生成器神经网络110和测量函数(也可以是神经网络120)来在一个或多个优化步骤优化数据项102的重构152。
28.编码器100和解码器150可以对多种不同类型的数据项102—例如图像、视频和音频信号等等—中的任一种进行操作。作为特定示例,所描述的系统对于以高度数据高效的方式压缩高维(因此大)数据项可能特别有效。例如,所描述的系统可以用于以数据高效的方式压缩和重构医学图像,例如磁共振图像(mri)。
29.特别地,编码器系统100可以通过生成数据项的测量130来压缩数据项102。
30.编码器系统100然后可以将测量130存储为数据项102的压缩表示。当需要重构数据项102时,编码器系统可以将数据项的测量130提供给解码器系统150,解码器系统150从测量130生成数据项102的重构152。
31.通常,测量130是具有比原始数据项102低得多的维度的张量,因此可以以低得多的计算成本来存储和传输。例如,如果输入数据项102是包括超过1000个强度值的图像,则测量130可以仅包括25或50个数值,例如,是25或50维向量。
32.在一些实施方式中,编码器系统100和解码器系统150被实现在共享对相同存储器或数据存储器的访问的一个或多个计算机上。在这些实施方式中,编码器系统100可以将测量130存储在解码器系统150可访问的存储器或数据存储器中,并且解码器系统150可以在需要重构数据项102时检索测量130。
33.在一些其他实施方式中,编码器系统100和解码器系统150被实现在彼此远离的计算机上。在这些实施方式中,编码器系统100可以通过数据通信网络—例如互联网—传输测量130,以供解码器系统150重构。
34.为了从输入测量130重构压缩数据项102,解码器系统150初始化潜在表示。潜在表示是在预定空间中具有比原始数据项102更低维度的表示。例如,当输入数据项102是如上所述的图像时,潜在表示可以是具有100维度的向量。因此,潜在表示可能具有比测量130更大的维度,但仍然具有比输入数据项102低得多的维度。
35.解码器系统150然后执行一个或多个优化步骤以更新潜在表示。
36.在每个优化步骤,解码器系统150使用生成器神经网络110处理潜在表示(从优化步骤开始)。
37.生成器神经网络110是神经网络,其具有参数(称为“生成器参数”)并且被配置为根据生成器参数的当前值来处理潜在表示以生成候选重构数据项,即,将潜在表示映射到与数据项102具有相同维度的候选数据项。
38.生成器神经网络110可以具有允许神经网络将潜在表示空间中的输入映射到与数据项具有相同维度的输出的任何架构。例如,当数据项是图像时,生成器神经网络110可以是将潜在表示映射到输出图像的卷积神经网络。作为另一示例,当数据项是图像时,生成器神经网络110可以是将潜在表示映射到表示输出图像的强度值序列的多层感知器(mlp)。作为另一示例,当数据项是音频数据时,生成器神经网络110可以是具有一维卷积的卷积神经网络或将潜在表示映射到幅度值序列或压缩、压扩或两个幅度值的序列的mlp。
39.解码器系统150然后使用测量神经网络120处理候选重构数据项。测量神经网络120是神经网络,其具有参数(称为“测量参数”)并且被配置为根据测量参数的当前值来处理候选重构数据项以生成候选重构数据项的测量,即,将候选重构数据项映射到与输入数据项的输入测量具有相同维度的测量。
40.测量神经网络120可以具有允许神经网络将潜在表示空间中的输入映射到具有与数据项相同维度的输出的任何适当架构。例如,当数据项是图像时,测量神经网络120可以是将重构数据项映射到具有测量的维度的输出张量的卷积神经网络。作为另一示例,当数据项是图像时,测量神经网络120可以是多层感知器(mlp),其将来自重构数据项的强度值序列映射到具有测量的维度的输出张量。作为另一示例,当数据项是音频数据时,测量神经网络120可以是具有一维卷积的卷积神经网络或mlp,其将幅度值序列或压缩、压扩或两种幅度值的序列映射到具有适当维度的输出张量。
41.解码器系统150然后例如通过相对于关于误差的潜在表示执行梯度下降步骤而更新潜在表示以减少候选重构数据项的测量与输入数据项的输入测量之间的误差。
42.在已经执行了一个或多个优化步骤之后,解码器系统150在一个或多个优化步骤之后使用生成器神经网络110处理潜在表示以生成数据项102的重构152。
43.在一些实施方式中,系统100、系统150或另一训练系统联合训练生成器神经网络110和测量神经网络120以确定生成器参数和测量参数的当前值。特别地,系统已经通过下述方式使用元学习在一组训练数据项上联合训练了生成器神经网络110和测量神经网络120:对于每个训练数据项,通过一个或多个优化步骤进行反向传播以提高生成的训练数据项的重构的质量。下面参考图3更详细地描述这种训练。
44.虽然该描述描述了使用已经与生成器神经网络110联合训练的测量神经网络120,但在一些实施方式中,测量神经网络120被替换为:1)尚未联合训练的测量神经网络,即预训练的神经网络;或2)不是神经网络的函数,即从输入数据项空间映射到测量空间的不同
函数。例如,测量函数可以是的线性投影,其具有随机投影矩阵或如上文针对测量神经网络120的参数学习—即,也与生成器神经网络110的训练联合学习—的投影矩阵。
45.此外,以上描述将压缩感测方案描述为用于压缩和重构数据项。该方案可替代地用于有条件或无条件的数据项生成。在无条件数据项生成实施方式中,测量是单个值,其编码输入数据项是由生成器神经网络生成还是真实数据项。然后,当测量编码输入数据项是真实的时,上述技术可用于生成看起来是真实数据项的新数据项。在条件数据项生成实施方式中,对于多个类中的每个,测量可以包括表示输入数据项属于该类(以及,可选地,指示数据项是由生成器神经网络生成的合成数据项的附加类)的可能性的分数。然后可以使用上述技术来生成反映由测量定义的类上的分布的数据项。
46.图2是用于生成数据项的重构的示例过程200的流程图。为方便起见,过程200将被描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,适当编程的解码器系统,例如图1的解码器系统150,可以执行过程200。
47.系统接收数据项的测量(步骤202)。输入数据项的输入测量是输入数据项的至少一个特征的表示,并且具有比输入数据项低的维度。更具体地,测量是由编码器系统通过使用测量神经网络处理数据项而生成的。
48.系统初始化潜在表示(步骤204)。例如,系统可以随机初始化潜在表示,即通过从潜在表示空间上的预定概率分布随机采样张量。
49.系统执行一个或多个优化步骤以更新潜在表示。通常,优化步骤的数量是固定的。例如,系统可能已经基于在生成器和测量神经网络的训练期间生成训练项的高质量重构需要多少步骤来确定要执行的优化步骤的数量。作为另一示例,系统可以基于分配给重构过程的计算资源量或可用于生成重构的延迟预算来确定要执行的优化步骤的数量。
50.在每个优化步骤,系统执行过程200的步骤206

210。
51.系统使用生成器神经网络处理潜在表示以生成候选重构数据项(步骤206)。
52.系统使用测量神经网络处理候选重构数据项以生成候选重构数据项的测量(步骤208)。
53.系统更新潜在表示以减少在候选重构数据项的测量与输入数据项的输入测量之间的误差(步骤210)。特别地,系统相对于误差的潜在表示执行梯度下降步骤。例如,误差可以是两个测量之间的欧几里得距离的平方。
54.为了执行梯度下降步骤,在一些实施方式中,系统计算相对于误差的潜在表示的梯度并且从潜在表示中减去更新以确定更新的潜在表示。在一些其他实施方式中,系统将学习率应用于梯度以确定更新,然后从潜在表示中减去更新以确定更新的潜在表示。学习率可以是固定的,或可以作为参数对待并且在生成器和测量神经网络的训练过程期间被学习。
55.在一些实施方式中,系统在每个梯度下降步骤之后对更新的潜在表示进行归一化。
56.因为在潜在表示的空间(而不是数据项本身的空间)中执行优化,并且潜在表示的维度明显低于输入数据项,所以可以以计算效率高的方式执行每个优化步骤。
57.在执行一个或多个优化步骤之后,系统使用生成器神经网络并根据生成器参数的当前值处理在一个或多个优化步骤之后的潜在表示以生成输入数据项的重构(步骤212)。
58.图3是用于训练测量神经网络和生成器神经网络的示例过程300的流程图。为方便起见,过程300将被描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,适当编程的训练系统,例如图1的编码器系统100或解码器系统150,可以执行过程300。
59.系统可以对从一组训练数据中选择的不同训练项重复执行过程300以联合训练测量和生成器神经网络。
60.系统接收训练数据项(步骤302)。
61.系统通过使用测量神经网络并根据测量参数的当前值处理数据项来生成训练数据项的测量(步骤304)。
62.系统根据测量参数的当前值和生成器参数的当前值生成训练数据项的重构(步骤306),即,如以上参考图2所述的。
63.系统确定对测量参数的当前值的更新(步骤308)。特别地,系统通过确定相对于测量损失函数的测量参数的梯度来确定更新。
64.对于一对数据项,测量损失函数测量以下之间的差异:(i)在对中的两个数据项之间差的测量的范数和(ii)在对中的两个数据项之间的差的范数。例如,测量损失可以是两个范数之差的平方。在计算测量损失时,系统可以使用任何适当的范数,例如欧几里得范数。
65.特别地,测量损失可以满足:
[0066][0067]
其中,e是期望算子,x1和x2是一对数据项,是数据项x的测量神经网络的输出。
[0068]
可以以各种方式对于对中的数据项进行采样。然而,通常,在小批量内计算测量损失的数据项包括一个或多个训练数据项和一个或多个生成的重构。在一些实施方式中,系统可以选择训练数据项、优化步骤开始时的生成的数据项和优化步骤结束时的生成的数据项,且然后计算在这三个项目点之间的三对损失之间的平均作为一种形式的“三重损失”。
[0069]
系统确定对生成器参数的当前值的更新(步骤310)。
[0070]
特别地,系统通过确定相对于生成器损失的生成器参数的梯度来确定更新,该生成器损失至少包括测量在重构数据项的测量—即,如由测量神经网络根据生成器参数的当前值生成的—和输入数据项的输入测量之间的误差的项。在一些实施方式中,生成器损失还包括惩罚潜在表示在优化步骤上移动的距离的距离惩罚项。例如,距离惩罚项可以是初始化的潜在表示和由常数加权的在优化步骤后的最终潜在表示之间的平方欧几里得距离。
[0071]
在一些实施方式中,当计算对生成器参数的更新时,系统还计算测量损失相对于生成器参数的梯度,并将训练数据项的最终更新计算为两个梯度的总和或加权总和。
[0072]
一旦系统针对小批量训练数据项执行了过程300,系统例如根据系统在训练中使用的优化器—例如,adam优化器或其他基于梯度下降的优化器—所采用的更新规则,将更新应用于生成器和测量参数的当前值。例如,系统可以对小批量的训练数据项的各个更新进行平均,然后将优化器采用的更新规则应用于平均的更新以更新生成器和测量参数的当前值。
[0073]
在某些情况下,系统不为小批量中的每个训练数据项计算对于测量参数的更新,
而是对固定数量的三元组进行采样,例如,如上所述,每个三元组都包括在小批量中的一个或多个训练数据项和由生成器生成的一个或多个生成的数据项,同时计算小批量的生成器参数更新。然后,系统计算每个三元组的测量更新,并根据优化器采用的更新规则将更新应用到测量参数的当前值。
[0074]
系统对多个小批量重复过程300以确定测量和生成器参数的训练值。
[0075]
如上所述,本说明书中描述的方案也可用于生成而不是重构数据项。对于数据项生成,系统不是在训练期间联合更新生成器和测量神经网络,而是在更新生成器神经网络以提高生成的数据项的质量和更新测量神经网络以更准确地区分生成和真实测量之间交替。
[0076]
此外,系统可以用不同的损失替换测量损失,不同的损失使经过训练的生成器神经网络更准确地生成数据项。
[0077]
特别地,当测量是反映数据项是真实而非合成的可能性的单个值时,系统可以用作为在指示函数和测量神经网络为数据项生成的概率之间的交叉熵的测量损失替换上述测量损失,该指示函数指示数据项是否是真实的。
[0078]
当测量对于多个类中的每个包括表示输入数据项属于该类的可能性的分数时,系统可以替代地使用下述之间的交叉熵来作为测量损失:(i)指示函数,其识别输入数据项属于哪个类(并为所有其他类分配零概率);以及(ii)测量神经网络生成的输入数据项的测量。
[0079]
本说明书与系统和计算机程序组件相关地使用术语“被配置”。一个或多个计算机的系统被配置为执行特定操作或动作意味着系统已在其上安装了软件、固件、硬件或它们的组合,这些软件、固件、硬件或它们的组合在运行中会导致系统执行操作或动作。一个或多个计算机程序被配置为执行特定操作或动作意味着该一个或多个程序包括在由数据处理装置执行时使该装置执行操作或动作的指令。
[0080]
本说明书中描述的主题和功能操作的实施例可以被实现在数字电子电路中、在有形体现的计算机软件或固件中、在计算机硬件中—包括在本说明书中公开的结构及其结构等效物—或在它们的一个或多个的组合中。本说明书中描述的主题的实施例可以被实现为一个或多个计算机程序,即,编码在有形的非暂时性存储介质上以由数据处理装置执行或控制数据处理装置的计算机程序指令的一个或多个模块。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备或它们中的一个或多个的组合。替代地或附加地,程序指令可以被编码在人工生成的传播信号上,例如机器生成的电、光或电磁信号,其被生成以对信息进行编码以传输到合适的接收器装置以供数据处理装置执行。
[0081]
术语“数据处理装置”是指数据处理硬件并且涵盖用于处理数据的所有装置、设备和机器,例如包括可编程处理器、计算机或多个处理器或计算机。该装置还可以是或进一步包括专用逻辑电路,例如fpga(现场可编程门阵列)或asic(专用集成电路)。除了硬件之外,该装置还可以可选地包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。
[0082]
也可以被称为或描述为程序、软件、软件应用程序、app、模块、软件模块、脚本或代码的计算机程序可以用任何形式的编程语言编写,包括编译或解释性语言或声明性或程序
性语言;它可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程或其他适合在计算环境中使用的单元。程序可以但不必对应于文件系统中的文件。程序可以被存储在保存有其他程序或数据的文件的一部分中,该其他程序或数据例如是存储在标记语言文档、专用于相关程序的单个文件或多个协调文件中的一个或多个脚本,协调文件例如是存储一个或多个模块、子程序或部分代码的文件。计算机程序可以被部署在一台计算机上执行,也可以部署在位于一个站点或分布在多个站点并通过数据通信网络互连的多台计算机上执行。
[0083]
在本说明书中,术语“数据库”广泛用于指代任何数据集合:数据不需要以任何特定方式进行结构化,或者根本不需要结构化,并且它可以存储在一个或多个位置中的存储设备上。因此,例如,索引数据库可以包括多个数据集合,每个数据集合可以被不同地组织和访问。
[0084]
类似地,在本说明书中,术语“引擎”被广义用于指被编程为执行一个或多个特定功能的基于软件的系统、子系统或过程。通常,引擎将被实现为一个或多个软件模块或组件,安装在一个或多个位置的一个或多个计算机上。在某些情况下,一个或多个计算机将专用于特定引擎;在其他情况下,可以在相同的一个或多个计算机上安装和运行多个引擎。
[0085]
本说明书中描述的过程和逻辑流程可由一个或多个可编程计算机执行,该计算机执行一个或多个计算机程序以通过对输入数据进行操作并生成输出来执行功能。该过程和逻辑流程也可以由专用逻辑电路—例如fpga或asic—执行,或由专用逻辑电路和一个或多个编程计算机的组合执行。
[0086]
适用于执行计算机程序的计算机可以基于通用或专用微处理器或两者,或任何其他种类的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本要素是用于执行或实行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。该中央处理单元和存储器可由专用逻辑电路补充或合并到专用逻辑电路中。通常,计算机还将包括一个或多个用于存储数据的大容量存储设备—例如,磁光盘、磁光盘或光盘,或可操作地耦合以从一个或多个用于存储数据的大容量存储设备—例如,磁光盘、磁光盘或光盘—接收数据或将数据传送到一个或多个用于存储数据的大容量存储设备—例如,磁光盘、磁光盘或光盘—或两者。然而,计算机不需要有这样的设备。此外,计算机可以嵌入到另一设备中,仅举几例,例如移动电话、个人数字助理(pda)、移动音频或视频播放器、游戏机、全球定位系统(gps)接收器或便携式存储设备—例如,通用串行总线(usb)闪存驱动器。
[0087]
适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,例如包括:半导体存储器设备,例如eprom、eeprom和闪存设备;磁盘,例如内置硬盘或可移动磁盘;磁光盘;以及cdrom和dvd

rom盘。
[0088]
为了提供与用户的交互,本说明书中描述的主题的实施例可以实现在具有显示设备—例如,crt(阴极射线管)或lcd(液晶显示器)监视器—和键盘和指示设备的计算机上,该显示设备用于向用户显示信息,指示设备例如是鼠标或轨迹球,用户可以通过它们向计算机提供输入。也可以使用其他类型的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声学、语音或触觉输入。此外,计算机可以通过下述方式来与用户
交互:向用户使用的设备发送文档和从用户使用的设备接收文档;例如,响应从web浏览器收到的请求,将网页发送到用户设备上的web浏览器。此外,计算机可以通过下述方式来与用户交互:向个人设备—例如运行消息传递应用程序的智能手机—发送文本消息或其他形式的消息并作为回报从用户接收响应消息。
[0089]
用于实现机器学习模型的数据处理装置还可以包括例如专用硬件加速器单元,用于处理机器学习训练或生产—即推理—工作负载的通用和计算密集部分。
[0090]
机器学习模型可以使用机器学习框架来实现和部署,机器学习框架例如是tensorflow框架、microsoft cognitive toolkit框架、apache singa框架或apache mxnet框架。
[0091]
本说明书中描述的主题的实施例可以被实现在计算系统中,该计算系统包括诸如作为数据服务器的后端组件,或者包括诸如应用服务器的中间件组件,或者包括诸如具有图形用户界面或网络浏览器的客户端计算机的前端组件,或者包括一个或多个这样的后端、中间件或前端组件的任何组合,用户可以通过该图形用户界面或网络浏览器与本说明书中描述的主题的实现交互。系统的组件可以通过任何形式或介质的数字数据通信—例如,通信网络—互连。通信网络的示例包括局域网(“lan”)和广域网(“wan”),例如互联网。
[0092]
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系是通过在相应计算机上运行并彼此具有客户端

服务器关系的计算机程序产生的。在一些实施方式中,服务器将数据—例如,html页面—发送到客户端设备—例如,用于向与客户端设备交互的用户显示数据和从该用户接收用户输入的目的。可以从服务器处的客户端设备接收在客户端设备处生成的数据—例如,用户交互的结果。
[0093]
虽然本说明书包含许多细节,但是这些细节不应被解释为对本公开的范围或所要求保护的内容的范围的限制,而应解释为对本公开的特定实现特定的特征的描述。在本说明书中在单独的实现的上下文中描述的某些特征也可以在单个实现中组合实现。相反,在单个实现的上下文中描述的各种特征也可以分别在多个实现中或以任何合适的子组合来实现。而且,虽然以上可以将特征描述为以某些组合起作用并且甚至最初如此宣称,但是在某些情况下可以从组合中切除来自所要求保护的组合的一个或多个特征,并且所要求保护的组合可以针对子组合或子组合的变体。
[0094]
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求以所示的特定顺序或以连续的顺序执行这样的操作,或者执行所有示出的操作,以实现期望的效果。结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统组件的分离不应理解为在所有实施例中都需要这种分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中或打包成多种软件产品。
[0095]
已经描述了主题的特定实施例。其他实施例在所附权利要求的范围内。例如,在权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。作为一个示例,附图中描绘的过程不一定需要所示的特定顺序或连续顺序来实现期望的结果。在某些情况下,多任务处理和并行处理可能是有利的。
再多了解一些

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

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

相关文献