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

域适配的制作方法

2022-03-31 10:12:42 来源:中国专利 TAG:


1.本说明书涉及域适配,例如用于适配用于对可以从一个或多个传感器接收的数据进行分类的计算模型。


背景技术:

2.例如设置在编码器上的计算模型可以使用带标记的训练数据被训练,例如使用机器学习原理。如果在训练阶段应用于这种计算模型的数据与在部署阶段应用的数据具有相似的属性(properties),则可以提供高性能模型。在真实世界系统中,情况并非总是如此。该领域仍需要进一步发展。


技术实现要素:

3.本发明的各个方面寻求的保护范围由独立权利要求规定。本说明书中描述的不属于独立权利要求的范围的各方面和特征(如果有的话)将被解释为对理解本发明的各个方面有用的示例。
4.根据第一方面,本说明书描述了一种用于机器学习的装置,该装置包括用于以下操作的部件:提供包括与源域相关联的多个源数据项的源数据集;提供包括与目标域相关联的多个目标数据项的目标数据集;提供与源域数据集相关联的第一计算模型(34,41),第一计算模型与多个源域类相关联;针对输入到第一计算模型(34,41)的一系列目标数据项x
t
中的每个目标数据项生成目标权重δ
t
,目标权重δ
t
指示上述目标数据项属于与第一计算模型的已知类共享的类的置信值;针对输入到第一计算模型(34,41)的一系列源数据项xs中的每个源数据项生成源权重δs,源权重δs指示上述源数据项属于第一计算模型(34,41)的与目标域共享的已知类的置信值;通过训练鉴别器(42)以寻求减小鉴别器损失函数,借助于一个或多个处理器来适配第一计算模型(34,41)的至少一部分以生成第二计算模型,鉴别器损失函数是使用分别由源权重δs和目标权重δ
t
加权的源数据项xs和目标数据项x
t
计算的;以及部署第二计算模型以用于接收与目标域相关联的一个或多个输入数据项,以产生推断输出。
5.源数据集和目标数据集可以包括相应的第一组音频数据项和第二组音频数据项,并且其中第二计算模型是包括与第一计算模型的已知类共享的至少一个类的经适配的音频分类器。第一组音频数据项可以表示在一个或多个第一条件下接收的音频数据,并且其中第二组音频数据项可以表示在一个或多个第二条件下接收的音频数据,其中第一条件和第二条件包括它们相应的环境噪声和/或麦克风特性方面的差异。第一组音频数据项和第二组音频数据项可以表示语音,例如一个或多个关键字。
6.第一组音频数据项和第二组音频数据项可以分别表示特定语言的具有不同口音的语音。第一组音频数据项和第二组音频数据项可以分别表示由不同性别和/或年龄组的人接收的语音。
7.第二计算模型可以被配置用于与数字助理装置一起使用以基于接收到的与目标
域相关联的语音来执行一个或多个处理动作。源数据集和目标数据集可以包括相应的第一组视频数据项和第二组视频数据项,并且其中第二计算模型可以是包括与第一计算模型的已知类共享的至少一个类的经适配的视频分类器。第一组视频数据项和第二组视频数据项可以分别表示在第一条件和第二条件下接收的视频数据,其中第一条件和第二条件可以包括它们相应的照明、相机和/或图像捕获特性方面的差异。第一组视频数据项可以表示与第一对象类型的运动相关联的视频数据,并且第二组视频数据项可以表示与第二对象类型的运动相关联的视频数据。
8.源数据集和目标数据集可以包括从一个或多个传感器接收的相应的第一生理数据项和第二生理数据项,并且其中第二计算模型可以是包括与第一计算模型的已知类共享的至少一个类的经适配的健康或健身相关分类器。
9.用于生成目标权重和用于生成源权重的部件可以被配置为使用通过将一个或多个目标数据项输入到第一计算模型而产生的概率分布。该装置还可以包括用于计算目标权重的第一分类器部件,第一分类器部件是基于所产生的概率分布使用目标数据项的过滤子集而训练的计算模型。该装置可以被配置用于通过以下操作提供目标数据项的过滤子集:使用第一计算模型,针对特定目标数据项生成在已知源域类上的概率分布;使用所生成的概率分布确定特定目标数据项属于源域类的置信水平;以及如果置信水平高于置信水平上限或低于置信水平下限,则选择特定目标数据项以用于子集。置信水平可以使用所生成的概率分布的两个最大值之间的差来确定的。第一分类器部件可以被配置为用于计算为“1”和为“0”的目标权重的二元分类器,为“1”的目标权重用于指示特定目标数据项属于共享目标域类,为“0”的目标权重用于指示目标数据项属于私有目标域类。该装置还可以包括用于计算源权重的第二分类器部件,第二分类器部件是使用源域数据项的过滤子集而训练的计算模型。
10.该装置可以被配置用于通过以下操作过滤源数据项:将一批目标数据项输入到第一已训练模型中以生成相应概率分布;聚合概率分布;基于所聚合的概率分布来标识源域类的子集,包括预定数目的最大值类和最小值类;以及选择与源域类的所标识的子集相关联的源数据项。
11.第二分类器部件可以被配置为用于计算为“1”和为“0”的源权重的二元分类器,为“1”的源权重用于指示特定源数据项属于第一计算模型的与目标域共享的已知类,为“0”的源权重用于指示特定源数据项属于私有源域类。
12.第一计算模型可以包括与源域数据集相关联的特征提取器,并且其中用于适配第一计算模型的部件可以包括用于基于所计算的鉴别器损失函数来更新特征提取器的权重的部件。第一计算模型还可以包括用于从特征提取器接收特征表示的分类器,并且其中用于适配第一计算模型的部件还可以包括确定由更新特征提取器的权重而产生的分类损失并且基于分类损失进一步更新特征提取器的权重。
13.该装置还可以包括用于响应于标识产生一组目标数据项的一个或多个条件不同于产生一组源数据项的一个或多个条件而自动启用第一计算模型的适配的部件。启用部件可以被配置为标识用于生成相应的一组目标数据项和一组源数据项的一个或多个传感器的不同特性。启用部件可以被配置为访问分别与源数据项和目标数据项相关联的元数据,元数据指示产生一组源数据项和一组目标数据项的一个或多个条件。
14.根据第二方面,本说明书描述了一种机器学习中的方法,该方法包括:提供包括与源域相关联的多个源数据项的源数据集;提供包括与目标域相关联的多个目标数据项的目标数据集;提供与源域数据集相关联的第一计算模型(34,41),第一计算模型与多个源域类相关联;针对输入到第一计算模型(34,41)的一系列目标数据项x
t
中的每个目标数据项生成目标权重δ
t
,目标权重δ
t
指示上述目标数据项属于与第一计算模型的已知类共享的类的置信值;针对输入到第一计算模型(34,41)的一系列源数据项xs中的每个源数据项生成源权重δs,源权重δs指示上述源数据项属于第一计算模型(34,41)的与目标域共享的已知类的置信值;通过训练鉴别器(42)以寻求减小鉴别器损失函数,借助于一个或多个处理器来适配第一计算模型(34,41)的至少一部分以生成第二计算模型,鉴别器损失函数是使用分别由源权重δs和目标权重δ
t
加权的源数据项xs和目标数据项x
t
计算的;以及部署第二计算模型以用于接收与目标域相关联的一个或多个输入数据项,以产生推断输出。
15.源数据集和目标数据集可以包括相应的第一组音频数据项和第二组音频数据项,并且其中第二计算模型可以是包括与第一计算模型的已知类共享的至少一个类的经适配的音频分类器。第一组音频数据项表示在一个或多个第一条件下接收的音频数据,并且其中第二组音频数据项表示在一个或多个第二条件下接收的音频数据,其中第一条件和第二条件包括它们相应的环境噪声和/或麦克风特性方面的差异。
16.第一组音频数据项和第二组音频数据项可以表示语音,例如一个或多个关键字。第一组音频数据项和第二组音频数据项可以分别表示特定语言的具有不同口音的语音。第一组音频数据项和第二组音频数据项可以分别表示由不同性别和/或年龄组的人接收的语音。
17.第二计算模型可以用于与数字助理装置一起使用以基于接收到的与目标域相关联的语音来执行一个或多个处理动作。
18.源数据集和目标数据集可以包括相应的第一组视频数据项和第二组视频数据项,并且其中第二计算模型可以是包括与第一计算模型的已知类共享的至少一个类的经适配的视频分类器。
19.第一组视频数据项和第二组视频数据项可以分别表示在第一条件和第二条件下接收的视频数据,其中第一条件和第二条件可以包括它们相应的照明、相机和/或图像捕获特性方面的差异。第一组视频数据项表示与第一对象类型的运动相关联的视频数据,并且第二组视频数据项可以表示与第二对象类型的运动相关联的视频数据。源数据集和目标数据集可以包括从一个或多个传感器接收的相应的第一生理数据项和第二生理数据项,并且其中第二计算模型可以是包括与第一计算模型的已知类共享的至少一个类的经适配的健康或健身相关分类器。
20.生成目标权重和源权重可以使用通过将一个或多个目标数据项输入到第一计算模型而产生的概率分布。该方法还可以包括使用第一分类器来计算目标权重,第一分类器是基于所产生的概率分布使用目标数据项的过滤子集而训练的计算模型。目标数据项的过滤子集可以通过以下操作获取:使用第一计算模型,针对特定目标数据项生成在已知源域类上的概率分布;使用所生成的概率分布确定特定目标数据项属于源域类的置信水平;以及如果置信水平高于置信水平上限或低于置信水平下限,则选择特定目标数据项以用于子集。置信水平可以使用所生成的概率分布的两个最大值之间的差来确定的。
21.第一分类器可以被配置为用于计算为“1”和为“0”的目标权重的二元分类器,为“1”的目标权重用于指示特定目标数据项属于共享目标域类,为“0”的目标权重用于指示目标数据项属于私有目标域类。该方法还可以包括使用第二分类器来计算源权重,第二分类器是使用源域数据项的过滤子集而训练的计算模型。源数据项可以通过以下操作过滤:将一批目标数据项输入到第一已训练模型中以生成相应概率分布;聚合概率分布;基于所聚合的概率分布来标识源域类的子集,包括预定数目的最大值类和最小值类;以及选择与源域类的所标识的子集相关联的源数据项。
22.第二分类器可以被配置为用于计算为“1”和为“0”的源权重的二元分类器,为“1”的源权重用于指示特定源数据项属于第一计算模型的与目标域共享的已知类,为“0”的源权重用于指示特定源数据项属于私有源域类。
23.第一计算模型包括与源域数据集相关联的特征提取器,并且其中用于适配第一计算模型的部件包括用于基于所计算的鉴别器损失函数来更新特征提取器的权重的部件。第一计算模型还可以包括用于从特征提取器接收特征表示的分类器,并且其中适配第一计算模型还包括确定由更新特征提取器的权重而产生的分类损失并且基于分类损失进一步更新特征提取器的权重。
24.该方法还可以包括响应于标识产生一组目标数据项的一个或多个条件不同于产生一组源数据项的一个或多个条件而自动执行第一计算模型的适配。适配可以响应于标识用于生成相应的各组目标数据项和源数据项的一个或多个传感器的不同特性来执行。该方法还可以包括访问分别与源数据项和目标数据项相关联的元数据,元数据指示产生各组源数据项和目标数据项的一个或多个条件。
25.根据第三方面,本说明书描述了一种计算机可读存储介质,该计算机可读存储介质存储包括指令的计算机程序,该指令在由计算装置执行时使计算装置执行参照第二方面描述的任何方法。
26.根据第四方面,本说明书描述了一种用于机器学习的装置,该装置包括:至少一个处理器;以及包括计算机程序代码的至少一个存储器,该计算机程序代码在由至少一个处理器执行时使该装置执行参照第二方面描述的任何方法。
附图说明
27.现在将参考附图仅通过示例来描述示例,在附图中:
28.图1a是示例系统的框图;
29.图1b是示例系统的框图;
30.图2是示出根据示例方面的算法的操作的流程图;
31.图3是根据示例方面的适配装置(adaptation apparatus)的框图;
32.图4是图3的适配装置的至少一些组件的示意性框图;
33.图5是更详细地示出根据示例方面的算法的操作的流程图;
34.图6是示出根据示例方面的另一算法的操作的流程图;
35.图7是有助于理解示例方面的概率分布的示意图;
36.图8是图3的装置的组件的框图;
37.图9是示出根据示例方面的另一算法的操作的流程图;
38.图10是有助于理解示例方面的概率分布的示意图;
39.图11是图3的装置的另一组件的框图;
40.图12a-12f是指示根据示例方面的如何迭代地使用特定损失函数来更新相应模型的权重的示意图;
41.图13是用于使用图3的适配装置的一种硬件架构的示意性框图;
42.图14是用于使用图3的适配装置的替代硬件架构的示意性框图;
43.图15是根据示例方面的神经网络系统的框图;
44.图16是根据示例方面的系统的组件的框图;以及
45.图17是有助于理解示例方面的图。
具体实施方式
46.在说明书和附图中,相同的附图标记始终指代相同的元素。
47.示例方面涉及机器学习领域中的域适配(domain adaptation),例如出于减轻在实际实现中可能导致性能下降的所谓域偏移(domain shift)的目的,如下所述。
48.示例方面可以涉及用于一个或多个特定技术目的的域适配,例如涉及用于对表示真实世界和/或技术实体(诸如一个或多个电气或电子传感器)或由真实世界和/或技术实体生成的数据项进行分类的计算模型。传感器可以包括以下一项或多项:麦克风、相机、摄像机、光传感器、热传感器、地理空间定位传感器、取向传感器、加速度计和生理传感器(诸如用于估计心率、血压、体温、心电图(ecg)等)。具体示例可以包括以下一项或多项:(i)对音频数据(例如,音乐或语音)进行分类,(ii)对视频数据(例如,表示人或物体的捕获图像的数据)进行分类,(iii)对技术或生理性能数据(例如,表示来自一个或多个穿戴式传感器(body-worn sensor)的健康或健身相关数据)进行分类,以及(iv)对来自与工业机械或过程相关联的一个或多个传感器的数据进行分类。所有这样的示例以及其他示例都容易受到所谓域偏移的影响,如下所述。
49.图1a是示例系统的框图,该系统总体上由附图标记10a指示。系统10a包括编码器12a,编码器12a具有接收标记数据(labelled data)的输入。标记数据用于使用机器学习原理(例如,有监督学习原理(supervised learning principles))来训练编码器12a。编码器12a可以包括计算机或数字系统,该计算机或数字系统可以包括一个或多个处理器和/或控制器。编码器12a可以在单个系统上被提供并被训练,或者可以分布在多个系统上。编码器12a可以实现具有已训练功能的计算模型,例如软件程序。
50.图1b是示例系统的框图,该系统总体上由附图标记10b指示。系统10b包括编码器12b,编码器12b是编码器12a的已训练版本(例如,使用图1a的标记数据被训练)。编码器12b接收输入并且基于编码器的已训练函数生成输出。这可以称为推断输出(inference output)。
51.机器学习(ml)算法(作为数据驱动的计算方法)通常会尝试在标记数据集(例如,一组训练数据)上拟合复杂函数,期望当不可见数据集(例如,测试数据或操作数据)被应用于已训练算法时可以实现相当的性能。这种训练算法可以称为有监督学习算法,其中使用标记训练集来学习输入数据与类标签(class label)之间的映射。
52.在理论和实践两者中,机器学习和有监督学习方法通常假定训练数据集和部署
(例如,测试)数据集的数据分布相同。因此,在示例系统10a和10b中,可以假定系统10b的输入数据的分布与系统10a中标记数据的分布匹配。标记数据和输入数据被称为属于同一域。
53.按照这个假定,可以为多个数据分布中的每个数据分布提供标记训练集,即使这些数据分布中的很多可能是相似的。可以为其生成单独的标记训练数据的示例数据集包括同一对象的来自不同角度的图像、不同风格的绘画、不同身体位置的人类活动传感器、具有不同口音的相同语言的处理等。
54.在真实世界系统中,关于训练数据集和部署(例如,测试)数据集的数据分布相同的假定并不总是有效的。
55.很多真实世界因素可能会导致训练数据分布与测试数据分布之间的差异。例如,这些因素可以包括由传感器处理管道(pipeline)、环境因素(例如,照明条件)、用户相关问题(例如,不同人以不同方式佩戴其智能设备)和/或表示不同口音的用户的语音的音频数据引起的变化。训练域(training domain)与测试/部署域(testing/deployment domain)之间的数据分布的这种偏移有时被称为“域偏移”。
56.如下文进一步讨论的,“域适配”(domain adaptation)寻求解决域偏移问题。一般而言,域适配提供两个相似(但不同)的域,本文中称为源域(source domain)和目标域(target domain)。源域中的数据实例通常被标记(以为源模型提供标记训练数据),而目标域中的数据实例被部分标记(半监督域适配)或根本不标记(无监督域适配)。域适配的目的是寻求利用源模型的各方面来训练目标模型(例如,另一编码器)。
57.因此,域适配不是从头开始训练每个数据分布(或“域”(domain)),而是寻求通过适配已经训练的源模型来开发目标模型。这可以减少标记工作,从而提高处理和存储器效率,并且在某些情况下可以开发更强大的模型。然而,仅仅通过将源数据集的特征表示与目标数据集对准来进行适配而不考虑一个或两个域中非共享私有类的存在可能会产生负面影响,甚至会导致性能比不执行适配更差。
58.出于说明目的,图17是表示源域320和目标域322两者中的语音识别模型的关键字的维恩图(venn diagram)。源域320的语音识别模型可以与计算机化的数字助理应用一起使用。源域320可以采用被训练以标识一个或多个关键字“保存”、“复制”、“唤醒”、“播放”和“停止”的计算模型例如用于控制某些应用。上述一个或多个关键字可以由计算模型的标记类表示。用于与相同或不同的计算机化的数字助理应用一起使用的目标域322可能需要计算模型被训练以标识一个或多个关键字“唤醒”、“播放”、“停止”、“开始”和“返回”。显然,区域324标识源域320与目标域322之间的共享类,包括“唤醒”、“播放”和“停止”。源域320具有私有类“保存”和“复制”,目标域322具有私有类“开始”和“返回”。作为迭代训练过程的一部分,示例方面旨在区分在源域320和目标域322之间共享和私有的这些类,以便提供更稳健的适配。
59.图2是示出有助于理解一些示例方面的算法的流程图,该算法总体上由附图标记20指示。
60.算法20开始于操作22,在操作22,在某个较早时间训练源编码器以提供源域模型。例如,源编码器可以以有监督学习方式使用如上面参考图1a所述的被标记的训练数据来训练,例如通过任何人工神经网络模型(诸如卷积神经网络(cnn))。
61.在被训练时,源编码器表示可以称为源域模型的计算模型。源域模型可以在后续
推断阶段用于生成输出数据,该输出数据表示例如输入数据或测试数据所属的类的预测。例如,源域模型可以包括一个或多个子模型,该子模型包括用于生成输入数据的特征表示的特征提取器和分类器。
62.稍后,当需要源域模型的适配以与目标域数据一起使用时,相应操作24和26提供源域数据和目标域数据。源域数据可以包括与用于训练源域模型的数据项相对应(或紧密相对应)的源域数据集的一个或多个数据项。例如,来自具有相同或非常相似口音的用户的语音数据。操作24和26可以并行或以任何顺序执行。
63.在操作28,可以使用所提供的源域数据和目标域数据作为训练数据来如本文所述适配源域模型。例如,特征提取器和/或分类器可以基于源域数据项和目标域数据项的序列被迭代地更新(由箭头指示)。特征提取器和/或分类器可以被视为子模型,该子模型具有它们自己的参数或权重。更新可以涉及确定已更新的参数或权重。目的是“对准”或偏移源域模型,使得它可以在以后的推断操作29中使用,例如,其中适配模型被部署(即,出于推断目的而生效)在编码器上以用于接收目标域测试数据,目标域测试数据可以直接或间接实时或接近实时地从一个或多个传感器接收。注意,在一些示例方面,源域模型不需要包括源编码器22上的全面训练的源域模型的副本以用于适配,尽管这是一种选择。相反,另一种形式的源域模型可以包括一组任意(例如,随机或伪随机)参数,该参数基于源域模型被初始化以具有相同的已训练类。当执行本文中公开的操作时,以这种方式初始化的目标域模型应当如所描述的那样收敛。
64.如本文中使用的,术语“提供”(provide)还可以包括“接收”(receive)或“生成”(generate)。
65.示例方面可以涉及适配源域模型以提供目标域模型,这可以包括估计所谓的共享类,共享类是源域模型的已知类,至少一些目标域数据也属于该已知类。示例方面可以涉及适配这些类以具有与非共享类的权重相比更显著的权重,使得与私有相关的后续输入可以被适当地标识和标记,例如作为未知。
66.用于执行适配的一种方法是对准源域和目标域的特征表示;即,通过训练特征提取器来对准或偏移后续目标数据项的特征表示,使得下游分类器将给定目标数据项的偏移后的特征表示映射到正确的类(如果它是共享类)。针对未在目标域数据中表示的源域类,建议适配过程可以不对准,反之亦然。为此,需要估计一个或多个私有类。
67.因此,总的来说,示例方面旨在估计共享类和私有类,并且对它们在适配过程中的贡献适当地加权以应对所谓的标签不匹配(label mismatch)。在推断阶段,与私有类相关联的测试数据可以分类为未知。以这种方式,可以避免与负迁移(negative transfer)相关联的已知问题(这些问题可能导致适配模型的性能比原始模型差)。此外,通过确定某些数据项在私有类中,并且将它们标记为未知,可以降低数据项被错误地标记为源域类的风险。这会严重影响依赖类标签来执行操作的后续应用的性能。
68.示例方面涉及通过适配与源域相关联的已经训练的第一计算模型来训练第二计算模型。第二计算模型可以使用第一计算模型被初始化,并且然后使用加权损失函数迭代地适配,该加权损失函数使用目标权重和源权重来指示特定目标数据项和源数据项属于共享类的置信水平。较高的置信水平是指示性的,而较低的置信水平指示特定数据项属于私有类。
69.在示例方面,可以提供从概率分布s采样的源数据项xs和标签ys、以及从概率分布t采样的目标数据项x
t
。在训练期间没有来自目标域的标签可用。源域和目标域的标签集可以分别表示为cs和c
t
。在源域与目标域之间共享的一组类可以用c
shared
表示。最后,c's和c'
t
可以表示源域和目标域的私有标签集。
70.算法20可以被实现,包括在计算机程序控制下用于执行本文中描述的操作的一个或多个处理器或控制器,例如,包括至少一个处理器和包括计算机程序代码的至少一个存储器的装置,至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使该装置至少执行所定义的功能和/或操作。
71.图3示出了根据一些示例方面的适配系统30的示意图。适配系统30可以被提供作为独立系统或作为源系统或目标系统的一部分。目标系统可以包括边缘设备,例如客户端设备、终端用户设备或物联网(iot)设备。如果被提供作为源系统的一部分,则源域数据项xs可以本地存储,并且目标域数据项x
t
的目标数据集可以直接或间接地从目标系统接收。在一些方面,适配系统30可以在云(例如,与源系统相关联的云空间,诸如一个或多个服务器设备)中提供。在一些方面,适配系统30可以被提供作为目标系统的一部分,由此目标域数据项x
t
可以本地存储,并且源域数据项xs可以直接或间接地从源系统接收。后者具有安全优势,因为目标域数据项x
t
可以保持私有。
72.在一些示例方面,适配系统30可以响应于标识出接收目标数据项x
t
的一个或多个条件不同于接收源数据项xs的一个或多个条件而被自动启用或触发以执行本文中描述的适配操作。
73.例如,源或目标计算机系统、或者与适配系统30相关联的任何系统可以存储源模型元数据,源模型元数据指示用于生成源数据项的一个或多个传感器的一个或多个特性。如果用于生成目标数据项的传感器的对应一个或多个特性不同,或者在值方面不同超过预定阈值,则适配系统30可以被启用。例如,在音频或视频数据的情况下,特性可以与麦克风或相机的特定型号或类型有关;如果使用第一类型或模型来捕获源数据项xs并且使用第二类型或模型来捕获目标数据项x
t
,则标识出的差异可能足以触发适配系统30进行模型适配。在一些方面,诸如捕获的时间或日期、照明条件、环境噪声条件等其他特性可以被参数化并且存储为源模型元数据以在随后基于针对目标数据项x
t
而标识的对应特性来确定是否以及何时启用或触发适配系统30时使用。
74.根据示例方面,适配系统30可以包括采样子系统32、特征提取子系统34和适配子系统36。
75.采样子系统32是可选的并且可以被配置为例如将时变数据重新采样到特定频率,或者在图像数据的情况下调节图像的大小。
76.特征提取子系统34可以被配置为使用任何已知手段来执行特征提取,例如提取统计特征(诸如均值、方差)和/或任务特定特征(诸如用于语音模型的梅尔频率倒谱分量(mfcc))。
77.适配子系统36可以被配置为执行已训练的源域模型的适配或基于已训练的源域模型的适配而产生目标域模型,如本文所述。
78.适配系统30可以包括在计算机程序控制下用于执行本文中描述的操作的一个或多个处理器或控制器,例如,包括至少一个处理器和包括计算机程序代码的至少一个存储
器的装置,至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使该装置至少执行所定义的功能和/或操作。
79.图4是适配子系统36的至少一些组件的示意性框图。适配子系统36可以包括更多或更少数目的组件并且可以使用硬件、软件、固件或其任何组合来实现。适配子系统36可以被实现,包括在计算机程序控制下用于执行本文中描述的操作的一个或多个处理器或控制器,例如,包括至少一个处理器和包括计算机程序代码的至少一个存储器的装置,至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使该装置至少执行所定义的功能和/或操作。
80.就其在硬件上的实现而言,组件可以是分布式的,使得某些功能在一项硬件上执行,而其他功能在一项或多项其他硬件上执行。不同项硬件不必彼此本地,并且某些相互通信可以通过一个或多个远程位置之间的一个或多个数据网络来执行。
81.为方便起见,特征提取子系统34被示出为图4的图的一部分,并且下文中将简称为特征提取器34。
82.特征提取器34是用于生成有意义的特征表示z=f(x)以用于训练和推断目的的计算模型。作为计算模型,特征提取器34因此可以包括一组参数或权重wf,该参数或权重wf可以根据作为例如梯度下降算法的一部分的损失函数来被迭代地适配(训练)以减小或最小化损失函数。
83.在适配期间,目标数据项x
t
和源数据项xs都可以被提供给特征提取器34。
84.适配源域模型的一部分可以包括通过修改权重wf来适配其特征提取器的副本,使得目标数据项x
t
导致特征表示与属于具有共享类c
shared
的源数据项更加对准。
85.适配子系统36还可以包括分类器41。分类器41可以是概率分类器并且还可以包括用于根据从特征提取器34接收的特征表示z来生成一组类上的概率分布的计算模型。作为计算模型,分类器41因此可以包括一组参数或权重wg,该参数或权重wg可以根据作为例如梯度下降算法的一部分的分类器损失函数l
cls 45来被迭代地适配(训练)以减小或最小化分类器损失函数。
86.例如,适配源域模型的一部分可以包括通过修改权重wg来适配其分类器的副本,使得目标数据项x
t
从分类器41产生概率分布,由此目标数据项x
t
产生共享类c
shared
的更高概率值。概率分布可以包括softmax概率分布。
87.适配子系统36还可以包括用于对抗性学习(adversarial learning)的鉴别器(discriminator)42。鉴别器42用于生成对抗网络(gan),并且包括用于根据所接收的特征表示z来训练指示特定数据项是否与源域或某个其他域(例如,目标域)相关联的数据的计算模型。鉴别器42的目的是通过上述对抗性学习将源特征与目标特征分离。作为计算模型,鉴别器42因此可以包括一组参数或权重w
adv
,该参数或权重w
adv
可以根据作为例如梯度下降算法的一部分的对抗性损失函数l
adv 46来被迭代地适配(训练)以减小或最小化对抗性损失函数。
88.随着训练迭代地进行,通过对l
adv 46值的了解,鉴别器42可以被迭代地更新以改进源特征和目标特征的分离。此外,通过将l
adv 46梯度乘以负1来反转l
adv 46梯度,可以获取表示特征损失l
feature 47的反向梯度。
89.作为上述特征对准的一部分,l
feature 47可以用于更新特征提取器34的权重wf以便使源特征表示和目标特征表示更靠近在一起。然而,如上所述,这仅适用于与共享类(而不是私有类)相关联的特征表示。
90.因此,作为特征对准过程的一部分,适配子系统36被配置为在特征对准过程中向共享类提供比私有类更高的重要性或权重。因此,鉴别器42用来最小化的对抗性损失函数l
adv 46被公式化为包括第一加权项δs和第二加权项δ
t
,分别称为源权重和目标权重。
91.例如,对抗性损失函数l
adv 46可以采用以下形式:
[0092][0093]
其中δs和δ
t
分别是分配给源数据项和目标数据项的权重。
[0094]
通过为来自共享类的数据项分配更高权重,并且为来自相关域中的私有类的数据项分配更低权重,可以改进适配过程。
[0095]
再次参考图4,以源预测器43和余量预测器(margin predictor)44的形式提供两个计算分类器模型。源预测器43和余量预测器44被配置为生成上述源权重δs和目标权重δ
t

[0096]
图5是示出可以根据示例方面执行的高级处理操作50的流程图。
[0097]
操作52可以包括提供包括与源域相关联的多个源数据项xs的源数据集。
[0098]
操作53可以包括提供包括与目标域相关联的多个目标数据项x
t
的目标数据集。
[0099]
操作54可以包括提供与源域数据集相关联的第一计算模型。第一计算模型可以包括定义节点和参数(例如,权重)的数据集或文件,该节点和参数(例如,权重)可以从一个计算项(例如,编码器)迁移到另一计算项。在一些示例方面,第一计算模型可以是已训练计算模型。替代地,在一些示例方面,第一计算模型可以是用随机或伪随机参数初始化但具有与先前训练的源域数据集相关联的相同源域类的模型。
[0100]
应当理解,操作52、53、54可以并行地、基本上同时地或以任何顺序执行。
[0101]
操作55可以包括针对输入到第一计算模型的一系列目标数据项x
t
中的每个目标数据项x
t
,生成目标权重。目标权重可以指示关于上述目标数据项属于第一计算模型的已知类的置信值。
[0102]
操作56可以包括针对输入到第一计算模型的一系列源数据项xs中的每个源数据项xs,生成源权重。源权重可以指示关于上述源数据项属于与目标域共享的第一计算模型的已知类的置信值。
[0103]
应当理解,操作55、56可以并行地、基本上同时地或以任何顺序执行。
[0104]
操作57可以包括通过训练鉴别器以寻求减小鉴别器损失函数来适配第一已训练计算模型以生成第二计算模型,鉴别器损失函数是使用分别用源权重和目标权重加权的源数据项和目标数据项计算的,例如,如在(1)中。
[0105]
操作52-57可以在任何硬件、软件、固件或其任何组合上执行,例如,操作可以被实现,包括在计算机程序控制下用于执行本文中描述的操作的一个或多个处理器或控制器,例如,包括至少一个处理器和包括计算机程序代码的至少一个存储器的装置,至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使该装置至少执行所定义的功能和/或操作。
[0106]
将变得清楚的是,用于生成目标权重和用于生成源权重的部件可以被配置为使用通过将一个或多个目标数据项输入到第一计算模型而产生的概率分布。
[0107]
现在将描述用于生成目标权重δ
t
和源权重δs的示例方法。
[0108]
确定目标权重δ
t
[0109]
再次参考图4,目标数据项x
t
可以被输入到特征分类器以产生特征表示,特征表示然后被馈送到分类器41。分类器可以生成源类集cs上的概率分布例如,以softmax输出的形式。
[0110]
假定分类器41对来自共享类c
shared
的目标数据项x
t
的预测比来自私有类c'
t
的预测更有信心。这是合理的,因为尽管存在域偏移,但与私有类c'
t
相比,c
shared
中的类可能更接近源域。因此,可以将分类器置信度的度量导出为加权函数,以在使用鉴别器46的适配期间分离共享目标类和私有目标类。
[0111]
所谓的最大余量(mm)方法可以用作分类器置信度的标准。形式上,余量m可以定义为概率分布中前两个softmax输出之间的差异。当分类器41对其顶部预测具有高置信度时,m将是高的。相反,当分类器41不太自信时,m将是低的。然而,由于源域与目标域之间存在域偏移,在目标数据项上获取的余量m可能会是有噪声的,并且可能导致不正确的目标权重δ
t

[0112]
在示例方面,不是直接使用余量m或类概率,而是适配子系统36被配置为过滤具有非常高(和非常低)的余量m的目标数据项,用于训练另一种形式的分类器模型,即,上述余量预测器44。来自私有目标类的目标数据项x
t
(将具有协变量偏移并且与源类没有语义重叠(即,概念偏移))可能具有非常低的余量。相反,来自共享目标类的目标数据项x
t
(将只有协变量偏移,但没有概念偏移)可能具有更高余量m。因此,通过过滤目标数据项x
t
并且基于过滤后的目标数据项来训练余量预测器44,可以为对抗性损失函数l
adv
46推导出更好的目标权重δ
t

[0113]
在一些方面,余量预测器44可以被配置为二元分类器,该二元分类器针对属于共享目标类的高概率输出“1”,而针对低概率输出“0”。
[0114]
图6是在高级别示出处理操作60的流程图,处理操作60可以根据过滤目标数据项来执行以训练余量预测器44。
[0115]
操作62可以包括提供目标数据集中的数据项x
t

[0116]
操作63可以包括使用第一计算模型针对特定目标数据项生成已知源域类上的概率分布
[0117]
操作64可以包括使用所生成的概率分布确定特定目标数据项属于源(即,共享)域类的置信水平(m);以及
[0118]
操作65可以包括如果置信水平(m)高于置信水平上限或低于置信水平下限,则针对子集选择特定目标数据项。
[0119]
操作62-65可以在任何硬件、软件、固件或其任何组合上执行,例如,操作可以被实现,包括在计算机程序控制下用于执行本文中描述的操作的一个或多个处理器或控制器,例如,包括至少一个处理器和包括计算机程序代码的至少一个存储器的装置,至少一个存
储器和计算机程序代码被配置为与该至少一个处理器一起使该装置至少执行所定义的功能和/或操作。一个或多个处理器或控制器可以包括一个或多个处理单元,诸如图形处理单元(gpu)。
[0120]
更详细地,针对输入到图4中表示的训练管道的一批目标数据项,针对每个数据项或样本计算余量m。余量m是一种用于估计置信度的方法。然后可以使用具有非常高余量(高于上限阈值)的目标数据项x
thigh
和具有非常低余量(低于下限阈值)的数据项x
tlow
来训练被称为余量预测器44的二元分类器。上限阈值和下限阈值被分离,使得既不是特别高也不是特别低的余量被过滤掉。通过使用“1”作为x
thigh
的标签并且使用“0”作为x
tlow
的标签,损失函数l
mp 48可以表示为:
[0121][0122]
其中l
bce
表示二元交叉熵损失。余量预测器44可以被迭代地训练以减小l
mp 48。
[0123]
很明显,余量预测器44可以被训练以在它被馈送具有高余量(即,预测时的高置信度)的目标数据项x
thigh
时预测“1”,而在它遇到具有低余量(即,预测时的低置信度)的数据项x
tlow
时预测“0”。因此,余量预测器44的输出可以直接用于目标权重δ
t
,因为它满足共享类和私有类的加权标准。
[0124]
仅用于说明,图7指示当应用于分类器41时概念目标数据项x
t
的表示性概率分布在这种情况下,两个最高值对应于类“b”和“a”,并且因此余量m可以被确定,例如0.76,作为示例值。例如,如果上限阈值是0.7并且下限阈值是0.2,则特定数据项x
t
可以被选择以使用标签“1”或类似标签来训练余量预测器44。相反,如果余量m为较低值,例如0.12,则该数据项被选择以使用标签“0”或类似标签来训练余量预测器44。如果余量m在上限阈值与下限阈值之间,例如0.28,则该数据项不用于训练余量预测器44。
[0125]
图8是示例余量预测器44的框图。它可以包括被迭代地训练并且基于输入f(x
t
)以上述方式生成目标权重δ
t
的分类器计算模型的形式。
[0126]
余量预测器44可以被实现,包括在计算机程序控制下用于执行本文中描述的操作的一个或多个处理器或控制器,例如,包括至少一个处理器和包括计算机程序代码的至少一个存储器的装置,至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使该装置至少执行所定义的功能和/或操作。
[0127]
确定源权重δs[0128]
在示例方面,源权重δs是基于概率分布的另一属性来确定的。特别地,注意,与目标域共享的源类c
shared
将在中具有更高概率,而私有源类c's将具有更低概率。这是合理的,因为目标数据x
t
与私有源类没有重叠,并且因此分类器41应当针对c's估计低概率。
[0129]
因此,通过观察源类上的概率分布可以区分共享源类和私有源类,并且为它们分配适当权重。然而,再一次,由于域偏移和私有类的存在,这些类概率往往是有噪声的。
[0130]
因此,示例方面遵循类似方法,该方法可以包括用极端的类概率(例如,顶部k个类
和底部k个类)过滤源域数据项xs并且然后训练另一种形式的分类器模型(即,源预测器43)以预测源数据项xs是否属于共享类或私有类之一。
[0131]
针对批次b中的每个目标数据项x
t
,可以计算类概率并且在整个批次上对它们求平均以获取平均类概率向量η。
[0132][0133]
然后,可以通过分析η中的每类概率来获取具有极端每类概率的这些类(例如,顶部k个和底部k个类)。这个过程过滤掉了潜在的噪声类,并且提供了对c
shared
的更稳健的估计。
[0134]
在标识了顶部k个类和底部k个类之后,属于这些类的源数据项xs可以用于训练源预测器43。
[0135]
在一些方面,源预测器43可以被配置为二元分类器。标签“1”可以被分配给来自顶部k个类的数据项,标签“0”可以被分配给来自底部k个类的数据项。源预测器43可以被迭代地训练以减小l
sp
49,如下所示:
[0136][0137]
很明显,源预测器43被训练以针对c
shared
中的源数据项预测“1”,而针对私有类c's中的源数据项预测“0”。
[0138]
源预测器43的输出可以用作源权重δs。
[0139]
图9是在高级别示出处理操作90的流程图,处理操作90可以根据过滤目标数据项来执行以训练源预测器43。
[0140]
操作92可以包括提供目标数据集中的批次b数据项x
t

[0141]
操作93可以包括生成源域类上的相应概率分布
[0142]
操作94可以包括聚合概率分布例如,在批次b上对它们求平均。
[0143]
操作95可以包括基于聚合概率分布标识源域类的子集,包括预定数目的最大值类和最小值类。
[0144]
操作96可以包括选择与标识出的源域类的子集相关联的源数据项以训练源预测器43。
[0145]
操作92-96可以在任何硬件、软件、固件或其组合上执行,例如,操作可以被实现,包括在计算机程序控制下用于执行本文中描述的操作的一个或多个处理器或控制器,例如,包括至少一个处理器和包括计算机程序代码的至少一个存储器的装置,至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使该装置至少执行所定义的功能和/或操作。
[0146]
仅用于说明,图8指示当应用于分类器41时概念(notional)批次的目标数据项x
t
的表示性聚合概率分布假定取上部和下部k个类。在该示例中,k=2。然后,选择与a类和b类相关联/用其标记的源数据样本xs以用于针对标签“1”或其他高置信度标签来训练源预测器43。相反,选择与类d和e相关联/用其标记的源数据样本以用于针对标签“0”或其他低置信度标签来训练源预测器43。与类c和f相关联/用其标记的源数据样本不用于训练源预测器43。
[0147]
图11是示例源预测器43的框图。它可以包括被迭代地训练并且基于输入f(x
t
)以上述方式生成源权重δ
t
的分类器计算模型的形式。
[0148]
示例源预测器43可以被实现,例如,包括在计算机程序控制下用于执行本文中描述的操作的一个或多个处理器或控制器,例如,包括至少一个处理器和包括计算机程序代码的至少一个存储器的装置,至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使该装置至少执行所定义的功能和/或操作。
[0149]
图12a-12f是指示如何通过反向传播(backpropagation)迭代地更新本文中描述的各种计算子模型34、41、42、43、44的过程流程图。如本领域所理解的,可以使用下降技术(descent techniques)(例如,梯度下降)来更新计算模型以减小损失函数。
[0150]
可以实现各种计算子模型,例如,包括在计算机程序控制下用于执行本文中描述的操作的一个或多个处理器或控制器,例如,包括至少一个处理器和包括计算机程序代码的至少一个存储器的装置,至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使该装置至少执行所定义的功能和/或操作。
[0151]
图12a-12f还指示在每一轮更新中迭代地使用哪些损失函数45、46、47、48、49来更新相应模型的权重。
[0152]
例如,图12a指示使用上述损失函数l
mp 48的增量除以余量预测器权重w
mp
的增量基于余量预测器损失函数l
mp 48来更新余量预测器44。图12b指示使用上述损失函数l
sp 49的增量除以源预测器权重w
sp
的增量基于源预测器损失函数l
sp 49来更新源预测器43。图12c指示使用上述损失函数l
adv 46的增量除以鉴别器权重wd的增量基于对抗性损失函数l
adv 46来更新鉴别器42。图12d指示使用上述损失函数l
feature 47的增量除以特征提取器权重wf的增量基于特征损失函数l
feature 47来更新特征提取器34。图12e指示使用上述损失函数l
c1s 45的增量除以分类器权重wg的增量基于分类器损失函数l
c1s 45来更新分类器41。图12f指示还使用上述损失函数l
c1s 45的增量除以特征提取器权重wf的增量基于分类器损失函数l
c1s 45来更新特征提取器34。
[0153]
推断阶段
[0154]
在推断阶段,给定特定目标数据项x
t
(有时称为测试数据项),特征表示被计算且被提供给余量预测器44以估计是共享(1)类还是私有(0)类。如果它被估计为属于私有类,则它就会被标记为“未知”。如果它被估计为共享类,则使用分类器41计算概率分布并且输出argmax作为它的标签。
[0155]
系统架构
[0156]
图13示出了示例系统架构100,其中适配系统30可以在与源域相关联的云网络102中实现。与目标域(“目标系统”(target system))104相关联的系统可以包括训练管理器
106、预处理器108、特征提取器110和编码器112,编码器112实现根据示例方面的由适配系统30更新的计算模型。目标系统104还可以包括目标数据存储库114和源元数据存储库116。目标数据存储库114可以存储所接收的未标记的目标数据项。源元数据存储库116可以存储元数据,该元数据指示其训练条件,例如,源数据在其上被训练的相机等,或者指示可以与目标数据项一起接收并且存储在目标数据存储库114中的一个或多个其他条件或特性。可以假定源数据项在云网络102中被提供。
[0157]
随后,训练管理器106可以被配置为读取源元数据存储库116并且标识给定(given)源域模型的源条件是否与目标条件不同,例如,高于某个可测量阈值,以便启用或触发源域模型的适配。
[0158]
一旦源数据项和目标数据项可用,上述适配系统30可以如所描述的那样运行以执行预处理、特征提取和适配。输出由适配系统30经由训练管理器106提供以更新存储在编码器112上的当前模型,该模型然后被部署或生效以用于推断阶段,由此可以接收目标数据项并且将其标记(推断输出)为属于特定类,或者,如果适用,则生成未知推断输出。在推断期间,目标数据项通过预处理器108、特征提取器110、和编码器112上的已更新模型,以便为某个用户应用118产生标记的或未知的推断输出。
[0159]
针对音频(例如,语音)模型,推断输出的示例可以包括基于从用户接收的语音的关键字或短语。针对视觉(例如,基于视频)模型,推断输出的另一示例可以包括图像中存在的一种对象类型。针对基于活动的模型,推断输出的另一示例可以包括由用户执行的特定身体活动,例如,跑步、散步、游泳。
[0160]
图14示出了示例系统架构120,其中适配系统30可以在与目标域(“目标系统”)相关联的系统121处实现。类似于图13,目标系统121可以包括训练管理器106、预处理器108、特征提取器110和编码器112,编码器112实现根据示例方面的由适配系统30更新的计算模型。目标系统121还可以包括目标数据存储库114、源元数据存储库116、以及另外的用于接收源数据项的源数据存储库122。否则,训练和推断按图13的实施例所示进行。这种方法的好处是,目标数据项永远不需要离开目标系统121,并且因此具有隐私和安全益处。
[0161]
图13或14中的适配系统30可以在任何硬件、软件、固件或其组合上执行,例如,操作可以被实现,包括在计算机程序控制下用于执行本文中描述的操作的一个或多个处理器或控制器,例如,包括至少一个处理器和包括计算机程序代码的至少一个存储器的装置,至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使该装置至少执行所定义的功能和/或操作。
[0162]
目标系统104、121的示例可以包括边缘设备,诸如带有麦克风的家庭网关或路由器、相机和/或智能电话。
[0163]
在示例方面,源数据项和目标数据项可以从一个或多个电气或电子传感器生成和/或接收。传感器可以包括以下一项或多项:麦克风、相机、摄像机、光传感器、热传感器、地理空间定位传感器、取向传感器、加速度计和生理传感器(诸如用于估计心率、血压、提问、心电图(ecg)等)。在适配和推断阶段中的一者或两者期间,可以实时或接近实时地接收目标数据项。针对适配阶段,源数据项和目标数据项可以是存储在一个或多个数据存储器中的历史数据项。
[0164]
技术目的的具体示例
[0165]
示例方面可以包括使用图3所示的适配系统30和/或图13和14所示的相应示例系统架构100、120中的任一个以用于以下技术目的中的一个或多个的域适配。
[0166]
例如,示例方面可以涉及音频分类,包括但不限于语音分类。也就是说,可以使用说出的一个或多个关键字的标记数据集来训练源计算模型。源计算模型可以包括关键字检测分类器。关键字检测分类器可以被配置用于任何基于计算机的装置或方法,该装置或方法采用基于一个或一系列关键字的语音识别,并且可以响应于此而执行一个或多个动作。一个示例可以包括用音频响应和/或视频输出中的一个或多个来响应于一个或多个关键字的计算机化的数字助理。计算机化的数字助理可以另外地或替代地基于推断输出来执行一个或多个其他响应功能,诸如请求信息、控制一个或多个电子系统或设备(例如,家庭自动化,包括照明、警报系统和/或加热系统)。计算机化的数字助理可以是独立设备,或者是车辆或工艺控制系统的一部分。源计算模型可能已经使用表示第一口音(例如,英国口音)的标记数据集被训练。如果源计算模型要部署到用于接收相同或相似语言的第二口音(例如,法语英语口音)的语音的系统,则口音可变性可能会导致域偏移,适配系统30可以针对该域偏移而提供更新后的计算模型。
[0167]
例如,被指示为存储在图13和14中的源模型元数据116可以指示源计算模型是使用以英语口音说出的一个或多个关键字被训练的。目标数据项可以与元数据相关联,元数据指示数据项表示法语口音的一个或多个关键字。元数据可以手动提供或通过某种自动化方法生成,例如基于提供相应数据项或使用检测算法或模型的个人或实体的身份。可以基于标识元数据中的上述差异来执行域适配。
[0168]
可能导致音频/语音分类中的域偏移的其他现象包括但不限于环境噪声、信道和/或麦克风可变性和其他环境因素的差异。例如,由不同厂家生产的麦克风可能会产生不同音频特性。源(和目标)元数据可以指示这种差异。可以访问查找表(lut)以确定不同设备是否具有被认为足够不同以需要域适配的特性。
[0169]
性别也可能会导致域偏移。例如,如果源计算模型是使用包括由一个或多个女性说出的一个或多个关键字的标记数据集被训练的并且要部署到用于接收由男性说出的语音的系统,则可能导致域偏移。年龄差异也会导致域偏移。
[0170]
因此,示例方面可以如本文中描述的那样具体地用于启用针对目标域来适配用于音频(例如,语音)分类的源计算模型,同时实现本文中公开的计算效率。
[0171]
其他示例方面可以涉及视频分类,包括但不限于对象和/或姿势和/或运动分类。在该上下文中,术语视频(video)可以包括静态和运动图像。
[0172]
例如,可以使用标记的图像或视频剪辑数据集来训练源计算模型。源计算模型可以包括用于从例如rgb像素数据中标识特定类的对象(诸如人、男人、女人、孩子、狗、猫、汽车、船等)的对象分类器。
[0173]
在人类的情况下,如果源计算模型是针对特定类型的人(例如,健康的成年人)被训练的,如果目标数据项与不同类型的人(例如,年轻人或甚至由于其相应动作差异而表现出痴呆症迹象的老年人)有关,则可能会导致域偏移。
[0174]
在所有这样的视频应用中,源域与目标域之间的差异可能会受到诸如环境照明条件、相机类型和/或不同传感器制造商的图像捕获参数(例如,传感器分辨率、捕获率)等现象的影响。
[0175]
因此,示例方面可以如本文中描述的那样具体地用于启用针对目标域来适配用于视频分类的源计算模型,同时实现本文中公开的计算效率。
[0176]
其他示例方面可能涉及与健身或健康相关的计算模型,诸如用于监测人或甚至动物的健康相关表现以进行自我评估或专业评估的模型。如果源计算模型是针对特定类型的人(例如,特定年龄的健康成年女性)被训练的,而模型的目标数据项与不同类型的人(例如,老年男性)相关,则可能会导致域偏移。
[0177]
其他示例方面可能涉及使用放置在被监测对象(例如,人)上的运动传感器。可以训练源计算模型以基于由一个或多个运动传感器检测到的特定类型的运动来标识特定类型的身体活动。例如,运动传感器可以被包含在智能手机、健身追踪器或智能手表中。用户将运动传感器放置在其身体上的哪个位置或相对于其身体的哪个位置,这取决于个人喜好。一些用户更喜欢将智能手机放在大腿口袋、胸袋或臂带上。不同放置可能会导致域偏移,其中源计算模型是关于大腿口袋放置被训练的,但使用不同放置(例如,在臂带上)被佩戴。
[0178]
因此,示例方面可以如本文中描述的那样具体地用于启用针对目标域来适配用于健身和/或健康推断的源计算模型,同时实现本文中公开的计算效率。
[0179]
评估
[0180]
上述适配系统30的使用已经在有限范围的基于语音的适配任务上被测试,结果表明,准确度增益方面的改进约在7-15%之间。
[0181]
神经网络
[0182]
很多上述元素可以使用神经网络技术来实现。例如,图15是根据示例实施例的神经网络系统的框图,神经网络系统总体上由附图标记150指示。作为示例,示例神经网络系统150用于实现上述目标域模型。类似的神经网络系统可以用于实现本文中描述的其他模块(例如,特征提取器34、分类器41、余量预测器44和源预测器43)。
[0183]
系统150包括输入层151、一个或多个隐藏层152和输出层153。在输入层151,可以接收输入数据(诸如目标数据集的一部分)作为输入。隐藏层152可以包括多个隐藏节点,这些隐藏节点可以以很多不同方式连接。在输出层153,生成输出数据(例如,目标编码器输出)。
[0184]
系统150的神经网络包括多个节点和这些节点之间的多个连接。神经网络通过修改节点(包括修改节点之间的连接以及应用于这些连接的权重)而被训练。
[0185]
硬件
[0186]
为完整起见,图16是用于在上述目标域和/或源域中实现算法的一个或多个模块的组件的示例示意图,这些模块在下文中统称为处理系统300。处理系统300可以具有处理器302、耦合到处理器并且包括ram 314和rom 312的存储器304、以及可选的用户输入310和显示器318。处理系统300可以包括用于到网络的连接的一个或多个网络接口308,例如,可以是有线或无线的调制解调器,诸如局域网(lan),无线电信网络(诸如5g网络)、无线短程通信网络(诸如无线局域网(wlan)、超宽带连接(uwb)、近场通信(nfc))、iot通信网络/协议(诸如低功耗广域网(lpwan))、远程广域网(lorawantm)、sigfox、窄带物联网(nb-iot)等。此外,处理系统300可以包括用于生成输入数据的一个或多个传感器,包括但不限于音频、图像、视频、运动传感器(诸如陀螺仪和/或加速度计)、麦
克风、相机、生理传感器等。此外,处理系统300可以包括全球导航卫星系统(gnss)传感器,诸如全球定位系统(gps)传感器。
[0187]
处理器302连接到其他组件中的每个以控制其操作。
[0188]
存储器304可以包括非易失性存储器、硬盘驱动器(hdd)或固态驱动器(ssd)。存储器304的rom 312存储操作系统315等并且可以存储软件应用316。存储器304的ram 314由处理器302使用以用于数据的临时存储。操作系统315可以包含代码,该代码在由处理器执行时实现本文中描述的算法的各方面,例如在流程图中指出的。
[0189]
处理器302可以采用任何合适的形式。例如,它可以是一个微控制器、多个微控制器、一个处理器或多个处理器。处理器302可以包括处理器电路系统。
[0190]
处理系统300可以是独立计算机、服务器、控制台、装置、用户设备、移动通信设备、智能电话、车辆、车辆远程信息处理单元、车辆电子控制单元(ecu)、iot设备、传感器、软件应用、通信网络或其任何组合。
[0191]
在一些示例实施例中,处理系统300还可以与外部软件应用相关联。这些外部软件应用可以是存储在远程服务器设备上的应用,并且可以部分地或专门地在远程服务器设备上运行。这些应用可以称为云托管应用。处理系统300可以与远程服务器设备通信以利用存储在那里的软件应用。
[0192]
本发明的一些示例实施例可以以软件、硬件、应用逻辑或软件、硬件和应用逻辑的组合来实现。软件、应用逻辑和/或硬件可以驻留在存储器或任何计算机介质上。在示例实施例中,应用逻辑、软件或指令集被维护在各种常规计算机可读介质中的任何一种上。在本文档的上下文中,“存储器”(memory)或“计算机可读介质”(computer-readable medium)可以是任何非暂态介质或装置,该介质或装置可以包含、存储、传送、传播或传输指令以供指令执行系统、装置或设备(诸如计算机)使用或与其相结合使用。
[0193]
在相关情况下,对“计算机可读存储介质”、“计算机程序产品”、“有形地实施的计算机程序”等或“处理器”或“处理电路系统”等的引用应当理解为不仅包括具有不同架构(诸如单/多处理器架构和定序器/并行架构)的计算机,还包括专用电路,诸如现场可编程门阵列fpga、专用集成电路asic、信号处理设备和其他设备。对计算机程序、指令、代码等的引用应当理解为表达用于可编程处理器固件的软件,诸如硬件设备的可编程内容作为处理器的指令、或者被配置或配置设置用于固定功能设备、门阵列、可编程逻辑器件等。
[0194]
用于在上述目标域和/或源域中实现算法的一个或多个模块(下文中统称为处理系统300)可以在硬件、软件、固件或其组合中的任何一种上执行,例如,包括在计算机程序控制下用于执行本文中描述的操作的一个或多个处理器或控制器,例如,包括至少一个处理器和包括计算机程序代码的至少一个存储器的装置,至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使该装置至少执行所定义的功能和/或操作。
[0195]
替代地,用于在上述目标域和/或源域中实现算法的一个或多个模块(下文中统称为处理系统300)可以由一个或多个电路系统来执行。在本技术中,术语“电路系统”可以指代以下一项或多项或全部:
[0196]
(a)纯硬件电路实现(诸如仅在模拟和/或数字电路系统中的实现),以及
[0197]
(b)硬件电路和软件的组合,诸如(如适用):
[0198]
(i)模拟和/或数字硬件电路与软件/固件的组合,以及
[0199]
(ii)具有软件的硬件处理器(包括数字信号处理器)、软件和存储器的任何部分,它们一起工作以使装置(诸如移动电话或服务器)执行各种功能,以及
[0200]
(c)需要软件(例如,固件)进行操作(但在操作不需要该软件时该软件可以不存在)的硬件电路和/或处理器,诸如微处理器或微处理器的一部分。
[0201]
该电路系统的定义适用于该术语在本技术中(包括在任何权利要求中)的所有使用。作为另一示例,如本技术中使用的,术语电路系统还涵盖仅硬件电路或处理器(或多个处理器)或硬件电路或处理器的一部分及其(或它们的)伴随软件和/或固件的实现。术语电路系统还涵盖(例如并且如果适用于特定权利要求元素)用于移动设备的基带集成电路或处理器集成电路、或者服务器、蜂窝网络设备或其他计算设备或网络设备中的类似集成电路。
[0202]
如果需要,本文中讨论的不同功能可以以不同顺序和/或彼此同时执行。此外,如果需要,上述功能中的一个或多个可以是可选的或者可以组合。类似地,还应当理解,图5、6和9的流程图仅是示例,并且其中描述的各种操作可以被省略、重新排序和/或组合。
[0203]
应当理解,上述示例实施例纯粹是说明性的,而不限制本发明的范围。通过阅读本说明书,本领域技术人员将明白其他变化和修改。
[0204]
此外,本技术的公开应当被理解为包括本文中明确或隐含地公开的任何新颖特征或特征的任何新颖组合或其任何概括,并且在本技术或从其衍生的任何申请的实施期间,新的权利要求可以被公式化以涵盖任何这样的特征和/或这样的特征的组合。
[0205]
尽管在独立权利要求中阐述了本发明的各个方面,但本发明的其他方面包括来自所描述的示例实施例和/或从属权利要求的特征与独立权利要求的特征的其他组合,而不仅仅是在权利要求中明确给出的组合。
[0206]
此处还应当注意,虽然以上描述了各种示例,但不应当将这些描述视为限制性的。相反,在不脱离如所附权利要求所限定的本发明的范围的情况下,可以进行多种变化和修改。
再多了解一些

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

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

相关文献