掌桥专利:专业的专利平台
掌桥专利
首页

一种数据采集方法及其相关设备

文献发布时间:2024-04-18 19:58:53


一种数据采集方法及其相关设备

技术领域

本申请实施例涉及人工智能(artificial intelligence,AI)技术,尤其涉及一种数据采集方法及其相关设备。

背景技术

在自动驾驶领域中,为了不断优化自动驾驶模型,自动驾驶厂商需要部署专属的训练数据库。对于难例数据的获取和挖掘,是部署训练数据库中的关键环节。随着自动驾驶技术的产品落地加速,如何自动高效地采集海量的高价值场景训练数据,以完成模型的迭代优化变得至关重要。

目前,自动驾驶厂商通过搭建专属的数据闭环平台,以完成训练数据的采集,从而完成训练数据库的部署。在训练数据采集的过程中,往往存在不同的数据挖掘需求,这要求数据闭环平台能够采集大量的训练数据并明确训练数据的类别,那么,则需要在平台上训练和部署各种分类模型(分类器),以在采集到训练数据后可以确定这些训练数据的类别,从而纳入训练数据库中。

上述过程中,在数据闭环平台上训练和部署不同的分类模型不仅需要付出较大的时间成本和人力成本,还会限制数据闭环平台所能采集到的训练数据的类别。

发明内容

本申请实施例提供了一种数据采集方法及其相关设备,数据采集的过程大幅减少人工参与,可有效节省时间成本和人力成本,且可采集各种类别的训练数据,有利于完善系统中的训练数据库。

本申请实施例的第一方面提供了一种数据采集方法,该方法包括:

第一终端设备接收来自网络设备的第一特征,第一特征指示第一场景;第一终端设备获取第二图像,并对第二图像进行处理,从而得到指示第二场景的第二特征。需要说明的是,第二图像为某种类别的图像,也就是说,第二场景分别为某种类别的场景,同样地,第一场景也为某种类别的场景,第一场景和第二场景的类别可能相同,也可能不同。

第一终端设备根据第一特征和第二特征,判断第一图像和第二图像是否属于相同类别的图像,也就是判断第一场景和第二场景是否属于相同类别的场景,若第一场景和第二场景属于相同类别的场景,第一终端设备则向网络设备发送该第二图像。

基于以上技术方案,当进行数据采集时,终端设备接收来自网络设备的第一特征,即终端设备可基于第一特征采集与第一特征向匹配的数据,从而实现定向数据挖掘,同时采集的过程大幅减少人工参与,可有效节省时间成本和人力成本。

在一种可能的实现方式中,第一终端设备可计算第一特征与第二特征之间的相似度,并判断第一特征与第二特征之间的相似度是否大于或等于相似度阈值,若第一特征与第二特征之间的相似度大于或等于相似度阈值,第一终端设备可确定第一图像和第二图像为同一类别的图像,也就是说,第一场景和第二场景为相同类别的场景,故第一终端设备可将第二图像确定为可用数据(目标数据),将第二图像发送至网络设备。若第一特征与第二特征之间的相似度小于相似度阈值,也就是说,第一场景和第二场景为不同类别的场景,终端设备可将第二图像确定为不可用数据(非目标数据)。

在一种可能的实现方式中,终端设备首先获取第二图像,并通过第三模型对第二图像进行编码,得到第二特征,第二特征指示第二场景,然后检测第一特征与第二特征之间的相似度是否大于或等于相似度阈值,若是,终端设备向网络设备发送第二图像。在该实现方式中,终端设备可部署多模态基础模型库,其中,多模态基础模型库包括多种基础的神经网络处理模型,如上述第三模型。通过使用通用且基础的模型库可以避免针对不同的场景或者数据开发和部署不同的算法和模型,降低人力开发和部署成本。

在一种可能的实现方式中,第一特征为文本特征。

在一种可能的实现方式中,第一终端设备接收来自网络设备的第一特征,还包括:第一终端设备接收来自网络设备的第一参数,第一参数用于指示第一终端设备后续向网络设备发送图像的帧率。前述实现方式中,网络设备在向终端设备下发第一特征的同时,还可向终端设备下发第一参数,第一参数用于指示终端设备后续向网络设备发送图像的帧率。那么,终端设备在确定第二图像为可用的数据后,可按照第一参数所指示的帧率将第二图像发送至网络设备。

在一种可能的实现方式中,在该方法之后,还包括:第一终端设备接收来自网络设备的第二参数,第二参数用于调整第一终端设备向网络设备发送图像的帧率;第一终端设备基于第二参数,向网络设备发送第三图像。前述实现方式中,虽然第二图像被终端设备确定为可用的数据,但网络设备可对第二图像作进一步的校验,以最终确定第二图像是否为可用的数据。网络设备得到校验结果后,网络设备可生成第二参数,并将第二参数发送至终端设备,第二参数用于调整终端设备后续向网络设备发送图像的帧率。若校验结果用于指示第二图像为可用数据,则第二参数用于增大终端设备后续向网络设备发送图像的帧率,故终端设备后续获取得到的第三图像与第一图像为同一类别的图像时,终端设备可基于第二参数对第一参数所指示的帧率进行增大,并按照增大后的帧率向网络设备发送第三图像。若校验结果为第二图像为不可用数据,则第二参数用于减小终端设备后续向网络设备发送图像的帧率,故终端设备后续获取得到的第三图像与第一图像不为同一类别的图像时,终端设备可基于第二参数对第一参数所指示的帧率进行减小,并按照减小后的帧率向网络设备发送第三图像。由此可见,网络设备可对终端设备上传的目标数据(也就是第二图像)进行二次校验,从而基于二次校验的结果来灵活调整终端设备上传后续数据的速率,这样可使得终端设备预留足够的带宽为用户提供其他服务,进而提高用户体验。

在一种可能的实现方式中,在该方法之后,还包括:第一终端设备接收来自网络设备的第三参数,第三参数用于指示网络设备对第二图像的校验结果,并基于校验结果向网络设备发送第三图像。前述实现方式中,网络设备得到校验结果后,网络设备可生成第三参数,并将第三参数发送至终端设备,第三参数用于指示校验结果。终端设备可基于第三参数所指示的校验结果,调整后续向网络设备发送图像的帧率。例如,若校验结果为第二图像为可用数据,终端设备可自行对第一参数所指示的帧率进行增大,并按照增大后的帧率向网络设备发送第三图像。若校验结果为第二图像为不可用数据,则终端设备可自行对第一参数所指示的帧率进行减小,并按照减小后的帧率向网络设备发送第三图像。由此可见,终端设备基于网络设备二次校验的结果来灵活调整上传后续数据的帧率,这样可使得终端设备灵活的控制上传带宽,并可预留足够的带宽为用户提供其他服务,进而提高用户体验。

在一种可能的实现方式中,在该方法之后,还包括:第一终端设备接收来自网络设备的第四参数,并基于第四参数调整相似度阈值。前述实现方式中,网络设备得到校验结果后,网络设备可生成第四参数,并将第四参数发送至终端设备,第四参数用于调整前述的相似度阈值。若校验结果指示第二图像为可用数据,则第四参数用于指示终端设备可适当减小相似度阈值,故终端设备对当前的相似度阈值进行减小,并基于减小后的相似度阈值来采集第三图像,这样可以采集到更多的数据;若校验结果用于指示第二图像为不可用数据,则第四参数用于适当增大相似度阈值,故终端设备对当前的相似度阈值进行增大,并基于增大后的相似度阈值来采集第三图像,这样可以提高终端设备发送到网络设备的数据的准确度。由此可见,终端设备基于校验结果来灵活控制采集后续数据的门槛,这样可使得终端设备提高数据采集效率。

在一种可能的实现方式中,在该方法之前,还包括:第二终端设备基于预设条件向网络设备发送第一图像,第一图像为第一场景的图像。前述实现方式中,网络设备发送的第一特征来源于第二终端设备发送的第一图像。应理解,第二终端设备与第一终端设备可以为相同或者不同的终端设备。

在一种可能的实现方式中,预设条件包括:第二终端设备针对第一场景做出第一操作,第二终端设备或用户针对所述第一场景做出第二操作,所述第一操作和所述第二操作不同。示例性的,预设条件可以为:在自动驾驶中,第一操作为自动驾驶系统做出的操作,第二操作为用户进行人驾时的操作,自动驾驶系统和用户人驾是针对相同的场景做出的操作不同。示例性的,预设条件可以为:第一操作和第二操作均为自动驾驶系统针对相同的场景做出的,但第一操作和第二操作不同。预设条件可以描述为终端设备发现难例数据时。由此可见,终端设备可自行挖掘各种类别的难例数据(也就是第一图像),相当于终端设备自行制定数据挖掘需求,并将数据挖掘需求通知网络设备。如此一来,由网络设备和终端设备构成的数据采集系统,可按照数据挖掘需求来自动完成相应的训练数据的采集和挖掘。由于需求制定的过程不需人工参与,不仅可减低成本,还可提高数据采集的效率和准确度。

本申请实施例的第二方面提供了一种数据采集方法,该方法包括:网络设备向第一终端设备发送第一特征,第一特征指示第一场景;网络设备接收第一终端设备发送的第二图像,并对第二图像进行处理,得到第三特征,第三特征指示第二场景;网络设备基于第一特征和第三特征,生成第二场景和第一场景是否属于相同类别的场景的校验结果;网络设备向第一终端设备发送第二参数和/或第三参数,第二参数用于调整第一终端设备向网络设备发送图像的帧率,第三参数用于指示校验结果。

在一种可能的实现方式中,网络设备向第一终端设备发送第一特征,还包括,网络设备向第一终端设备发送第一参数,第一参数用于指示第一终端设备后续向网络设备发送图像的帧率。

在一种可能的实现方式中,在方法之后,还包括:网络设备向第一终端设备发送第四参数,第四参数用于调整第一终端设备的相似度阈值。

在一种可能的实现方式中,在方法之前,还包括:网络设备接收第二终端设备发送的第一图像,基于第一图像得到第一特征。

在一种可能的实现方式中,网络设备部署有多模态基础模型库,其中,多模态基础模型库包含第一模型以及第二模型。示例性的,网络设备可将第一图像输入至第一模型,以通过第一模型对第一图像进行转换,从而得到用于描述第一场景的第一文本。然后,网络设备可将第一文本输入至第二模型,以通过第二模型对第一文本进行编码,从而得到第一特征。

在一种可能的实现方式中,基于第一图像得到第一特征包括:对第一图像进行扩展,得到图像集,图像集包括一个或多个图像;对图像集进行处理,得到第一特征。

本申请实施例的第三方面提供一种终端设备,包括:接收模块,用于接收来自网络设备的第一特征,第一特征指示第一场景;处理模块,用于对第二图像进行处理,得到第二特征,第二特征指示第二场景;发送模块,用于根据第一特征和第二特征判断如果第一场景和第二场景属于相同类别的场景,则向网络设备发送第二图像。

在一种可能的实现方式中,发送模块,用于判断如果第一特征与第二特征之间的相似度大于或等于相似度阈值,则向网络设备发送第二图像。

在一种可能的实现方式中,接收模块,还用于接收来自网络设备的第一参数,第一参数用于指示终端设备后续向网络设备发送图像的帧率。

在一种可能的实现方式中,发送模块,用于基于第一参数,向网络设备发送第二图像。

在一种可能的实现方式中,接收模块,还用于接收来自网络设备的第二参数,第二参数用于调整终端设备向网络设备发送图像的帧率;发送模块,还用于基于第二参数,向网络设备发送第三图像。

在一种可能的实现方式中,接收模块,还用于接收来自网络设备的第三参数,第三参数用于指示网络设备对第二图像的校验结果;处理模块,还用于基于校验结果向网络设备发送第三图像。

在一种可能的实现方式中,接收模块,还用于接收来自网络设备的第四参数;处理模块,还用于基于第四参数调整相似度阈值。

在一种可能的实现方式中,发送模块,还用于基于预设条件向网络设备发送第一图像。

在一种可能的实现方式中,预设条件包括:终端设备针对第一场景做出第一操作,终端设备或用户针对所述第一场景做出第二操作,第一操作和第二操作不同。

本申请实施例的第四方面提供了一种网络设备,网络设备包括:发送模块,用于向第一终端设备发送第一特征,第一特征指示第一场景;接收模块,用于接收第一终端设备发送的第二图像,并对第二图像进行处理,得到第三特征,第三特征指示第二场景;处理模块,用于基于第一特征和第三特征,生成第二场景和第一场景是否属于相同类别的场景的校验结果;发送模块,还用于向第一终端设备发送第二参数和/或第三参数,第二参数用于调整第一终端设备向网络设备发送图像的帧率,第三参数用于指示校验结果。

在一种可能的实现方式中,发送模块,还用于向第一终端设备发送第一参数,第一参数用于指示第一终端设备后续向网络设备发送图像的帧率。

在一种可能的实现方式中,发送模块,还用于向第一终端设备发送第四参数,第四参数用于调整第一终端设备的相似度阈值。

在一种可能的实现方式中,接收模块,还用于接收第二终端设备发送的第一图像;处理模块,还用于基于第一图像得到第一特征。

在一种可能的实现方式中,处理模块,用于对第一图像进行扩展,得到图像集,图像集包括一个或多个图像;对图像集进行处理,得到第一特征。

本申请实施例的第五方面提供了一种终端设备,终端设备包括存储器和处理器;存储器存储有代码,处理器被配置为执行代码,当代码被执行时,终端设备执行如第一方面或第一方面中任意一种可能的实现方式所述的方法。

本申请实施例的第六方面提供了一种网络设备,网络设备包括存储器和处理器;存储器存储有代码,处理器被配置为执行代码,当代码被执行时,网络设备执行如第二方面或第二方面中任意一种可能的实现方式所述的方法。

本申请实施例的第七方面提供了一种电路系统,该电路系统包括处理电路,该处理电路配置为执行如第一方面、第一方面中任意一种可能的实现方式、第二方面或第二方面中任意一种可能的实现方式所述的方法。

本申请实施例的第八方面提供了一种芯片系统,该芯片系统包括处理器,用于调用存储器中存储的计算机程序或计算机指令,以使得该处理器执行如第一方面、第一方面中任意一种可能的实现方式、第二方面或第二方面中任意一种可能的实现方式所述的方法。

在一种可能的实现方式中,该处理器通过接口与存储器耦合。

在一种可能的实现方式中,该芯片系统还包括存储器,该存储器中存储有计算机程序或计算机指令。

本申请实施例的第九方面提供了一种计算机存储介质,该计算机存储介质存储有计算机程序,该程序在由计算机执行时,使得计算机实施如第一方面、第一方面中任意一种可能的实现方式、第二方面或第二方面中任意一种可能的实现方式所述的方法。

本申请实施例的第十方面提供了一种计算机程序产品,该计算机程序产品存储有指令,该指令在由计算机执行时,使得计算机实施如第一方面、第一方面中任意一种可能的实现方式、第二方面或第二方面中任意一种可能的实现方式所述的方法。

本申请实施例的第十一方面提供了一种车辆,车辆包含如第三方面、第三方面中任意一种可能的实现方式或第五方面所述的终端设备。

本申请实施例中,当网络设备和终端设备联合采集数据时,终端设备可向网络设备发送属于第一场景的第一图像。接着,网络设备可将第一图像输入至第一模型,以通过第一模型对第一图像进行转换,从而得到用于描述第一场景的第一文本。然后,网络设备可将第一文本输入至第二模型,以通过第二模型对第一文本进行编码,从而得到第一特征,并将第一特征发送至终端设备。随后,终端设备可通过第三模型对第二图像进行编码,得到第二特征,第二特征指示第二场景,并检测第一特征与第二特征之间的相似度是否大于或等于相似度阈值,若是,终端设备向网络设备发送第二图像。最后,网络设备可将第二图像与第一图像归属为同一类别场景的训练数据,用于后续的模型训练中。前述过程中,包含网络设备以及终端设备的数据采集系统中部署有多模态基础模型库,其中,多模态基础模型库中的第一模型以及第二模型部署在网络设备中,多模态基础模型库中的第三模型部署在终端设备中。那么,网络设备可基于第一模型以及第二模型提取第一图像的第一特征,终端设备可基于第三模型提取第二图像的第二特征,故终端设备可通过判断第一特征与第二特征之间的相似度,以此来判断第一图像和第二图像是否为同一类别的图像(即第一场景和第二场景是否为同一类别的场景),若是,终端设备则将第二图像确定为可用的训练数据上传至网络设备储存。由此可见,数据采集系统通过多模态基础模型库,可以第一图像作为训练数据的采集模板,自动采集与第一图像属于同一类别的训练数据(第二图像等等),数据采集的过程大幅减少人工参与,可有效节省时间成本和人力成本。并且,由于第一图像的类别是不受限制的,故数据采集系统可成功采集各种类别的训练数据,有利于丰富和完善系统中的训练数据库。

附图说明

图1为人工智能主体框架的一种结构示意图;

图2a为本申请实施例提供的数据采集系统的一个结构示意图;

图2b为本申请实施例提供的数据采集的相关设备的一个示意图;

图3为本申请实施例提供的系统100架构的一个示意图;

图4为本申请实施例提供的数据采集方法的一个流程示意图;

图5a为本申请实施例提供的数据采集系统的一个流程示意图;

图5b为本申请实施例提供的数据采集系统的另一流程示意图;

图5c为本申请实施例提供的数据采集系统的另一流程示意图;

图6为本申请实施例提供的数据采集方法的另一流程示意图;

图7为本申请实施例提供的数据采集方法的另一个流程示意图;

图8为本申请实施例提供的终端设备的一个结构示意图;

图9为本申请实施例提供的网络设备的一个结构示意图;

图10为本申请实施例提供的终端设备的一个结构示意图;

图11为本申请实施例提供的网络设备的一个结构示意图;

图12为本申请实施例提供的芯片的一个结构示意图。

具体实施方式

本申请实施例提供了一种数据采集方法及其相关设备,数据采集的过程大幅减少人工参与,可有效节省时间成本和人力成本,且可采集各种类别的训练数据,有利于完善系统中的训练数据库。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。

在自动驾驶领域中,为了不断优化自动驾驶模型,自动驾驶厂商需要部署专属的训练数据库。对于难例数据的获取和挖掘,是部署训练数据库中的关键环节。随着自动驾驶技术的产品落地加速,如何自动高效地采集海量的训练数据,以完成模型的迭代优化变得至关重要。

目前,自动驾驶厂商通过搭建专属的数据闭环平台,以完成训练数据的采集,从而完成训练数据库的部署。在数据采集的过程中,往往存在不同的数据挖掘需求,这要求数据闭环平台能够采集大量的训练数据并明确训练数据的类别,那么,则需要在平台上训练和部署各种分类模型(分类器),以在采集到训练数据后可以确定这些训练数据的类别,从而纳入训练数据库中。

上述过程中,在数据闭环平台上训练和部署不同的分类模型不仅需要付出较大的时间成本和人力成本,还会限制数据闭环平台所能采集到的训练数据的类别。

进一步地,数据闭环平台往往部署在网络设备上,无法自行确定各种数据挖掘需求,需要由人工来指定数据挖掘需求,这样需要较多的人工参与,一旦人工参与过多,不仅成本增加,还会影响数据采集的效率和准确度。

进一步地,终端设备向数据闭环平台上传采集到的数据,一般以固定帧率上传,缺少灵活性,同时也并未考虑到上传的数据是否符合要求(或者说并未考虑到上传的数据的可用性),从而可能会浪费终端设备的带宽。

为了解决上述问题,本申请实施例提供了一种数据采集方法,该方法可结合人工智能(artificial intelligence,AI)技术实现。AI技术是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能的技术学科,AI技术通过感知环境、获取知识并使用知识获得最佳结果。换句话说,人工智能技术是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。利用人工智能进行数据处理是人工智能常见的一个应用方式。

首先对人工智能系统总体工作流程进行描述,请参见图1,图1为人工智能主体框架的一种结构示意图,下面从“智能信息链”(水平轴)和“IT价值链”(垂直轴)两个维度对上述人工智能主题框架进行阐述。其中,“智能信息链”反映从数据的获取到处理的一列过程。举例来说,可以是智能信息感知、智能信息表示与形成、智能推理、智能决策、智能执行与输出的一般过程。在这个过程中,数据经历了“数据—信息—知识—智慧”的凝练过程。“IT价值链”从人智能的底层基础设施、信息(提供和处理技术实现)到系统的产业生态过程,反映人工智能为信息技术产业带来的价值。

(1)基础设施

基础设施为人工智能系统提供计算能力支持,实现与外部世界的沟通,并通过基础平台实现支撑。通过传感器与外部沟通;计算能力由智能芯片(CPU、NPU、GPU、ASIC、FPGA等硬件加速芯片)提供;基础平台包括分布式计算框架及网络等相关的平台保障和支持,可以包括云存储和计算、互联互通网络等。举例来说,传感器和外部沟通获取数据,这些数据提供给基础平台提供的分布式计算系统中的智能芯片进行计算。

(2)数据

基础设施的上一层的数据用于表示人工智能领域的数据来源。数据涉及到图形、图像、语音、文本,还涉及到传统设备的物联网数据,包括已有系统的业务数据以及力、位移、液位、温度、湿度等感知数据。

(3)数据处理

数据处理通常包括数据训练,机器学习,深度学习,搜索,推理,决策等方式。

其中,机器学习和深度学习可以对数据进行符号化和形式化的智能信息建模、抽取、预处理、训练等。

推理是指在计算机或智能系统中,模拟人类的智能推理方式,依据推理控制策略,利用形式化的信息进行机器思维和求解问题的过程,典型的功能是搜索与匹配。

决策是指智能信息经过推理后进行决策的过程,通常提供分类、排序、预测等功能。

(4)通用能力

对数据经过上面提到的数据处理后,进一步基于数据处理的结果可以形成一些通用的能力,比如可以是算法或者一个通用系统,例如,翻译,文本的分析,计算机视觉的处理,语音识别,图像的识别等等。

(5)智能产品及行业应用

智能产品及行业应用指人工智能系统在各领域的产品和应用,是对人工智能整体解决方案的封装,将智能信息决策产品化、实现落地应用,其应用领域主要包括:智能终端、智能交通、智能医疗、自动驾驶、智慧城市等。

接下来介绍几种本申请的应用场景。

图2a为本申请实施例提供的数据采集系统的一个结构示意图,该数据采集系统包括终端设备以及数据处理设备(网络设备)。其中,终端设备包括手机、个人电脑、智能车(或车载终端、域控制器、计算平台等)、或者数据采集中心等智能终端。数据处理设备可作为数据采集的发起端,作为数据采集请求的发起方,通常由数据处理设备向终端设备发起请求,以使得终端设备基于数据采集请求完成训练数据的采集。

上述数据处理设备可以是云服务器、网络服务器、应用服务器以及管理服务器等具有数据处理功能的设备或服务器。数据处理设备通过交互接口接收来自智能终端的数据采集请求,再通过存储数据的存储器以及数据处理的处理器环节进行机器学习,深度学习,搜索,推理,决策等方式的数据采集。数据处理设备中的存储器可以是一个统称,包括本地存储以及存储历史数据的数据库,数据库可以在数据处理设备上,也可以在其它网络服务器上。

在图2a所示的数据采集系统中,终端设备可以接收数据处理设备的指令,例如终端设备可以获取数据处理设备的数据采集请求,然后基于数据采集请求,联合数据处理设备来完成数据的采集,并将采集得到的数据上传至数据处理设备,以使得数据处理设备构建数据库。示例性的,终端设备接收到数据处理设备的数据采集请求后,可采集难例数据,并将难例数据上传至数据处理设备。接着,数据处理设备可对难例数据进行处理,并向终端设备下发难例数据的特征。然后,终端设备可采集目标数据,并提取目标数据的特征,通过比较难例数据的特征以及目标数据的特征,来确定目标数据是否可用。若确定目标练数据可用,则将目标数据上传至数据处理设备,以使得数据处理设备将目标数据划分为与难例数据属于同一类别或同一场景的数据。

在图2a中,数据处理设备与终端设备可以联合起来共同执行本申请实施例的数据采集方法。

图2b为本申请实施例提供的数据采集的相关设备的一个示意图。

上述图2a中的终端设备具体可以是图2b中的本地设备301或者本地设备302,图2a中的数据处理设备具体可以是图2b中的执行设备210,其中,数据存储系统250可以存储执行设备210的待处理数据,数据存储系统250可以集成在执行设备210上,也可以设置在云上或其它网络服务器上。

图2b中执行设备或本地设备的处理器可以通过神经网络模型或者其它模型(例如,基于支持向量机的模型)进行数据训练/机器学习/深度学习,并利用数据最终训练或者学习得到的模型来完成数据采集应用,从而采集得到相应的数据。

图3为本申请实施例提供的系统100架构的一个示意图,在图3中,执行设备110配置输入/输出(input/output,I/O)接口112,用于与外部设备进行数据交互,执行设备110可以通过I/O接口112向客户设备140输入数据,所述输入数据在本申请实施例中可以包括:数据采集请求以及其他控制参数。

那么,终端设备140可基于输入数据,发现并采集难例数据上传至执行设备110。在执行设备110对难例数据进行预处理,或者在执行设备110的计算模块111执行计算等相关的处理(比如进行本申请中神经网络模型的功能实现)过程中,执行设备110可以调用数据存储系统150中的数据、代码等以用于相应的处理,也可以将难例数据以及相应处理得到的难例数据的特征等存入数据存储系统150中。

此外,执行设备110还可通过I/O接口112将难例数据的特征发送给终端设备140,终端设备140可以基于执行设备110发送的特征进一步采集目标数据,例如,终端设备140获取目标数据,并提取目标数据的特征,通过比对难例数据的特征以及目标数据的特征,可基于比对结果来确定目标数据是否可用,若确定目标数据可用,终端设备140可将目标数据发送至执行设备110。如此一来,执行设备110可将得到的目标数据等存入数据存储系统150中。需要说明的是,存储在数据存储系统150中的难例数据以及目标数据可以作为同一类别的训练数据,被执行设备调取,并完成其他神经网络模型的训练。

值得注意的是,图3仅是本申请实施例提供的一种系统架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制,例如,在图3中,数据存储系统150相对执行设备110是外部存储器,在其它情况下,也可以将数据存储系统150置于执行设备110中。

下面先对本申请提供的数据采集方法进行简单描述。

本申请实施例提供的数据采集方法,可通过数据采集系统实现,该系统包含网络设备和终端设备,二者可联合执行本申请实施例提供的数据采集方法,所采集得到的数据可用于网络设备侧的模型训练。其中,网络设备和终端设备均可以部署有一定数量的神经网络模型(预训练的神经网络模型),通过这些神经网络模型,网络设备和终端设备可针对难例数据进行处理,并发现与难例数据相关联的目标数据,以将目标数据纳为可用的训练数据,从而完善训练数据库。那么,后续网络设备可利用训练数据库中的训练数据,来训练其它待训练的神经网络模型或继续微调网络设备和终端设备上的预训练的神经网络模型。

此外,本申请实施例提供的数据采集方法,可应用于多种领域中。其中,一种优选的领域为自动驾驶领域,相应地,上述网络设备可以为云服务器,终端设备可以为车、车载终端、域控制器、计算平台等,二者可构成车-云协同的数据采集系统,以完成训练数据的挖掘和采集。

为了进一步了解本申请实施例提供的数据采集系统的工作流程,下文结合图4对该流程做进一步的介绍,图4为本申请实施例提供的数据采集方法的一个流程示意图,如图4所示,该方法包括:

401、终端设备向网络设备发送属于第一场景的第一图像。

本实施例中,当网络设备和终端设备需要联合采集数据时,终端设备可先获取用于呈现第一场景的第一图像(第一图像所呈现的内容为第一场景,也可以理解为第一图像属于第一场景),并将第一图像发送至网络设备。需要说明的是,第一图像(也可以称为难例数据)通常为终端设备发现并采集的某一类别的图像,也就是说,第一场景是终端设备发现并决定采集的某一类别的场景。例如,第一场景可以为自动驾驶领域中的路上小动物场景,该场景为自动驾驶领域中的其中一种场景,第一场景也可以是自动驾驶领域中的其余场景,例如车辆在隧道中通行的场景等,第一场景还可以是其余领域中的某种场景。由此可见,同一领域中的不同场景可视为不同类别的场景,不同领域的场景也可视为不同类别的场景。

具体地,终端设备可通过以下方式获取并向网络设备发送第一图像:

(1)当终端设备处于第一场景时,终端设备可将用于呈现第一场景的第一图像输入至第九模型(某种操作预测模型,为已训练的神经网络模型),以通过第九模型对第一图像进行处理,从而得到针对第一场景的第一操作。依旧如上述例子,设第一场景为自动驾驶领域中的路上小动物场景,当用户驾驶车辆遇到路上有只黑狗的场景时,车载终端还可将用于呈现路上有只黑狗的场景的图像输入到某种操作预测模型中,以得到针对路上有只黑狗的场景的驾驶操作1。

(2)当终端设备处于第一场景时,终端设备还可获取针对第一场景的第二操作。其中,第二操作可通过多种方式获取:(2.1)当终端设备处于第一场景时,可(通过传感器)针对用户进行实时采集,从而采集得到用户针对第一场景的第二操作。例如,当用户驾驶车辆遇到路上有只黑狗的场景时,用户可针对该场景自行做出驾驶操作,车载终端可实时捕获用户针对路上有只黑狗的场景的驾驶操作2。(2.2)当终端设备处于第一场景时,终端设备可将用于呈现第一场景的第一图像输入至第十模型(另一种操作预测模型,为已训练的神经网络模型),以通过第十模型对第一图像进行处理,从而得到针对第一场景的第二操作。依旧如上述例子,车载终端可将用于呈现路上有只黑狗的场景的图像输入到另一种操作预测模型中,以得到针对路上有只黑狗的场景的驾驶操作2。

(3)得到针对第一场景的第一操作与针对第一场景的第二操作后,终端设备可检测针对第一场景的第一操作与针对第一场景的第二操作是否相同,若针对第一场景的第一操作与针对第一场景的第二操作不同,终端设备可将用于呈现第一场景的第一图像确定为难例数据,并向网络设备发送第一图像。依旧如上述例子,若车载终端确定驾驶操作1和驾驶操作2为不同的操作,则将用于呈现路上有只黑狗的场景的图像确定为难例图像,并将该图像上传至云服务器。

更具体地,终端设备还可通过以下方式获取并向网络设备发送第一图像:

终端设备无法获取针对第一场景的操作,也就是说,终端设备上的模型针对第一图像无法得出针对第一场景的操作,示例性的,模型并未对第一场景做过训练或者训练效果不佳,可能导致需要用户接管等,此时,终端设备可将用于呈现第一场景的第一图像确定为难例数据,并向网络设备发送第一图像等等。

应理解,本申请中终端设备采集数据或者图像,可以是终端设备通过自身的采集能力进行采集,例如终端设备为车辆,车辆包含各种车载传感器,例如图像传感器(如摄像头)、雷达(毫米波雷达、激光雷达、超声波雷达)等,可以通过车载传感器(如图像传感器等)进行采集图像和数据;也可以是终端设备控制其他设备采集,例如终端设备为车载域控制器或计算平台,车载域控制器可以控制车载传感器进行数据或者图像采集等。

402、网络设备对第一图像进行处理,得到第一特征,第一特征用于指示第一场景。

得到第一图像后,网络设备可从多模态基础模型库中,获取第一模型(图像-文本转换模型,为已训练的神经网络模型)以及第二模型(文本编码器,为已训练的神经网络模型)。接着,网络设备可将第一图像输入至第一模型,以通过第一模型对第一图像进行转换,从而得到用于描述第一场景的第一文本。然后,网络设备可将第一文本输入至第二模型,以通过第二模型对第一文本进行编码,从而得到第一特征(可以为文本特征)。由于第一图像用于呈现第一场景,故基于第一图像得到的第一特征可用于指示第一场景。

依旧如上述例子,如图5a所示(图5a为本申请实施例提供的数据采集系统的一个流程示意图),在得到用于呈现路上有只黑狗的场景的图像后,云服务器可从多模态基础模型库中,选择图像-文本转换模型(比如,e.g.BLIP2,miniGPT4等等)来对该图像进行处理,以实现image2text,从而得到用于描述路上有只小狗的场景的文本,即“a photo of a dogon the road”。接着,云服务器还可从多模态基础模型库中,选择文本编码器来对该文本进行处理,以实现特征提取,从而得到文本特征。

具体地,网络设备可通过以下方式获取第一特征:

(1)得到第一图像后,网络设备可从多模态基础模型库中,获取第一模型(图像-文本转换模型,为已训练的神经网络模型)以及第五模型(图像-图像增强模型,为已训练的神经网络模型)。接着,网络设备可将第一图像输入至第一模型,以通过第一模型对第一图像进行转换,从而得到用于描述第一场景的第一文本。

(2)得到第一图像以及第一文本后,网络设备还可将第一图像输入至第五模型,以通过第五模型对第一图像进行增强(扩展),得到图像集,图像集包含一个或多个图像。其中,第一场景与图像集中的图像所属于的场景相关联,也就是说,第一场景与图像集中的图像所属于的场景为同一类别的场景,比如,第一场景为自动驾驶领域中的路上小动物场景时,图像集中的图像所属于的场景也为自动驾驶领域中的路上小动物场景。

那么,得到第一文本以及图像集后,网络设备可利用第一文本以及图像集来训练得到第二模型以及第四模型(映射模型,已训练的神经网络模型),并将第二模型以及第四模型添加至多模态基础模型库。

(3)然后,网络设备可将第一文本输入至第四模型,以通过第四模型对第一文本进行映射,从而得到中间特征。随后,网络设备可将中间特征输入至第二模型,以通过第二模型对中间特征进行编码,从而得到第一特征(也可以理解为文本特征)。

依旧如上述例子,如图5b和图5c所示(图5b为本申请实施例提供的数据采集系统的另一流程示意图,图5c为本申请实施例提供的数据采集系统的另一流程示意图,图5b和图5c是在图5a的基础上绘制得到的),在得到用于呈现路上有只黑狗的场景的图像后,云服务器可从多模态基础模型库中,选择图像-文本转换模型(比如,e.g.BLIP2,miniGPT4等等)来对该图像进行处理,以实现image2text,从而得到用于描述路上有只小狗的场景的文本,即“a photo of a dog on the road”。

接着,云服务器还可从多模态基础模型库中,选择图像-图像增强模型(比如,e.g.Tag2text+Detclip+SAM+SD),对该图像进行处理,以实现image2image,从而得到用于呈现路上有只小鸟的场景的新图像、用于呈现路上有只小猫的场景的新图像以及用于呈现路上有只小鹿的场景的新图像等等。

然后,云服务器可从多模态基础模型库中,挑选出预训练后的两个基础模型,利用前述的文本以及新图像对其进行训练(微调),从而得到映射模型以及文本编码器。随后,云服务器可通过映射模型对前述的文本进行处理,得到中间特征,并通过文本编码器对中间特征进行处理,从而得到文本特征。

值得注意的是,原始的多模态基础模型库包含预训练后的多个基础模型,为了使得整个模型库适应于自动驾驶领域,可利用自动驾驶数据对这些基础模型进行微调,从而得到微调后的多个基础模型,微调后的多个基础模型组成了上述多模态基础模型库,微调后的多个基础模型包含上述的图像-文本转换模型,上述的文本编码器上述,上述的图像-图像增强模型,上述的映射模型,后续的视觉编码器,后续的大尺寸图像-文本转换模型,后续的大尺寸文本编码器,后续的大尺寸视觉编码器等等,由于这些模型均是用自动驾驶数据微调得到的,故这些模型所输出的结果(比如,上述的文本、中间特征、文本特征、以及新图像等等)均包含更多与自动驾驶领域中各个场景相关的细节和特征。如此一来,可使得整个数据采集系统可更适配于自动驾驶领域。当然,如果数据采集系统应用于其余领域,也可以使用其他领域数据来进行模型微调,或者直接使用预训练后的多个基础模型(也就是通用的多个基础模型)来完成训练数据的采集。

403、网络设备向终端设备发送第一特征。

得到第一特征后,网络设备可将第一特征发送至终端设备。

404、终端设备对属于第二场景的第二图像进行处理,得到第二特征,第二特征用于指示第二场景。

得到第一特征后,终端设备可采集用于呈现第二场景的第二图像,并从多模态基础模型库中获取第三模型,再将第二图像输入至第三模型(视觉编码器,为已训练的神经网络模型),以通过第三模型对第二图像进行编码,从而得到第二特征(也可以理解为视觉特征)。由于第二图像用于呈现第二场景,故基于第二图像得到的第二特征可用于指示第二场景。

依旧如上述例子,得到文本特征后,云服务器可将文本特征下发至车载终端。得到文本特征后,在车辆行驶的过程中,车载终端可实时采集用于呈现某个场景(比如,路上有只鸡)的图像,并将该图像确定为待检测的目标图像。那么,车载终端可通过视觉编码器对该图像进行处理,从而得到视觉特征。

405、终端设备根据第一特征和第二特征判断如果第一场景和第二场景属于相同类别的场景,则终端设备向网络设备发送所述第二图像。

得到第二特征后,终端设备可对第一特征以及第二特征进行计算,从而得到第一特征与第二特征之间的相似度。那么,终端设备可判断第一特征与第二特征之间的相似度是否大于或等于相似度阈值(该相似度阈值表示终端设备获取到的图像达成可用或者目标的基准值,其可根据实际需求进行设置,可以是终端设备预设的,也可以是网络设备发送给终端设备的,该阈值可以是统一的,即适用于所有类型的场景,也可以是与第一特征或者第一特征指示的场景是对应的,即不同类型的场景可以是不同的,此处不做限制)。若第一特征与第二特征之间的相似度大于或等于相似度阈值,终端设备可确定第一图像和第二图像为同一类别的图像,也就是说,第一场景和第二场景为同一类别的场景,故终端设备可将第二图像确定为可用的数据,发送至网络设备。若第一特征与第二特征之间的相似度小于相似度阈值,终端设备可确定第一图像和第二图像为不同类别的图像,也就是说,第一场景和第二场景为不同类别的场景,故终端设备可将第二图像确定为不可用的数据,则丢弃第二图像。

具体地,终端设备可通过以下多种方式向网络设备发送第二图像:

网络设备在向终端设备下发第一特征的同时,还可向终端设备下发第一参数,第一参数用于指示终端设备后续向网络设备发送图像的帧率(也可以称为上传帧率),当终端设备在确定第二图像为可用的数据后,可基于第一参数将第二图像发送至网络设备。

可以理解的是,由于第一参数用于指示终端设备后续向网络设备发送图像的帧率,即网络设备为终端设备所设置的帧率,终端设备在确定第二图像为可用的数据后,可按照第一参数所指示的帧率将第二图像发送至网络设备。

依旧如上述例子,云服务器可将文本特征以及相应的控制参数下发至车载终端,其中,控制参数包含上传帧率。因此,车载终端在确定文本特征和视觉特征之间的相似度大于或等于相似度阈值后,可按照该控制参数所包含的上传帧率,将目标图像上传至云服务器。

406、网络设备将第一图像与第二图像确定为用于模型训练的训练数据。

得到第二图像后,网络设备可将第二图像与第一图像归属为同一类别场景的数据,并将其存储于训练数据库中。随着终端设备不断上传后续的图像,网络设备也可将后续的图像确定为与第一图像属于同一类别的训练数据,这样可以在训练数据库中不断完善该类训练数据,可用于后续的模型训练,以训练出相应的神经网络模型。

具体地,网络设备还可对第二图像进行二次挖掘(二次校验),以保证训练数据的质量:

(1)虽然第二图像被终端设备确定为可用的数据,但网络设备可对第二图像作进一步的校验,以最终确定第二图像是否为可用的数据。因此,网络设备可从多模态基础模型库中,获取第六模型(大尺寸图像-文本转换模型,为已训练的神经网络模型)、第七模型(大尺寸文本编码器,为已训练的神经网络模型)以及第八模型(大尺寸视觉编码器,为已训练的神经网络模型)。接着,网络设备可将第一图像输入至第六模型,以通过第六模型对第一图像进行转换,从而得到用于描述第一场景的第二文本。然后,网络设备可将第二文本输入至第七模型,以通过第七模型对第二文本进行编码,从而得到第四特征(也可以理解为新文本特征),由于第一图像用于呈现第一场景,故基于第一图像得到的第四特征可用于指示第一场景。随后,网络设备还可将第二图像输入至第八模型,以通过第八模型对第二图像进行编码,从而得到第三特征(也可以理解为新视觉特征),由于第二图像用于呈现第二场景,故基于第二图像得到的第三特征可用于指示第二场景。

需要说明的是,相较于第一模型,第六模型的尺寸更大,且性能更优。同样地,相较于第二模型,第七模型的尺寸更大,且性能更优。同样地,相较于第三模型,第八模型的尺寸更大,且性能更优。

得到第四特征和第三特征后,网络设备可计算第四特征与第三特征之间的相似度,并检测第四特征与第三特征之间的相似度是否大于或等于相似度阈值。

若第四特征与第三特征之间的相似度大于或等于相似度阈值,网络设备可确定第二图像为可用的数据。在这种情况下,网络设备则将第一图像与第二图像确定为属于同一类别的训练数据(即网络设备将第一场景与第二场景确定为相同类别的场景),并将其存储于训练数据库的同一区域中。若第四特征与第三特征之间的相似度小相似度阈值,也就是第二图像不满足预置的条件,网络设备可确定第二图像为不可用的数据,在这种情况下,网络设备则将第一图像与第二图像确定为属于不同类别的训练数据(即网络设备将第一场景与第二场景确定为不同类别的场景),并将其存储于训练数据库的不同区域中。

(2)虽然第二图像被终端设备确定为可用的数据,但网络设备可对第二图像作进一步的校验,以最终确定第二图像是否为可用的数据。因此,网络设备可从多模态基础模型库中,获取第八模型(大尺寸视觉编码器,为已训练的神经网络模型)。接着,网络设备还可将第二图像输入至第八模型,以通过第八模型对第二图像进行编码,从而得到第三特征(也可以理解为新视觉特征)。由于第二图像用于呈现第二场景,故基于第二图像得到的第三特征可用于指示第二场景。

若第一特征与第三特征之间的相似度大于或等于相似度阈值,网络设备可确定第二图像为可用的数据。在这种情况下,网络设备则将第一图像与第二图像确定为属于同一类别的训练数据(即网络设备将第一场景与第二场景确定为相同类别的场景),并将其存储于训练数据库的同一区域中。若第一特征与第三特征之间的相似度小相似度阈值,网络设备可确定第二图像为不可用的数据,在这种情况下,网络设备则将第一图像与第二图像确定为属于不同类别的训练数据(即网络设备将第一场景与第二场景确定为不同类别的场景),并将其存储于训练数据库的不同区域中。

由此可见,网络设备可得到对第二图像的校验结果,该校验结果用于指示第一图像和第二图像是否为相同类别或不同类别的图像,也就是用于指示第一场景和第二场景为相同类别或不同类别的场景。

更具体地,网络设备还可基于第二图像的可用性来调整终端设备发送后续图像的帧率:

(1)网络设备得到校验结果后,网络设备可生成第二参数,并将第二参数发送至终端设备,第二参数用于调整终端设备后续向网络设备发送图像的帧率。若校验结果用于指示第一场景和第二场景为相同类别的场景,则第二参数用于增大终端设备后续向网络设备发送图像的帧率,故终端设备后续采集得到的第三图像与第一图像为同一类别的图像时(第三图像属于第三场景,也就是说,终端设备将第一场景与第三场景确定为相同类别的场景),终端设备可基于第二参数对第一参数所指示的帧率进行增大,并按照增大后的帧率向网络设备发送第三图像。若校验结果用于指示第一场景和第二场景为不同类别的场景,则第二参数用于减小终端设备后续向网络设备发送图像的帧率,故终端设备后续采集得到的第三图像与第一图像为同一类别的图像时,终端设备可基于第二参数对第一参数所指示的帧率进行减小,并按照减小后的帧率向网络设备发送第三图像。

(2)网络设备得到校验结果后,网络设备可生成第三参数,并将第三参数发送至终端设备,第三参数用于指示校验结果。若终端设备基于第三参数所指示的校验结果,确定第一场景和第二场景为相同类别的场景,一旦终端设备后续采集得到的第三图像与第一图像为同一类别的图像时,终端设备可自行对第一参数所指示的帧率进行增大,并按照增大后的帧率向网络设备发送第三图像。若终端设备基于第三参数所指示的校验结果,确定第一场景和第二场景为不同类别的场景,一旦终端设备后续采集得到的第三图像与第一图像为同一类别的图像时,终端设备可自行对第一参数所指示的帧率进行减小,并按照减小后的帧率向网络设备发送第三图像。

(3)此外,网络设备得到校验结果后,网络设备可生成第四参数,并将第四参数发送至终端设备,第四参数用于调整前述的相似度阈值。若校验结果用于指示第一场景和第二场景为相同类别的场景,则第四参数用于适当减小相似度阈值,故终端设备对当前的相似度阈值进行减小,并基于减小后的相似度阈值来采集第三图像以及后续的图像,通过适当的减小相似度阈值,可以使终端设备采集到更多的数据,快速补充训练数据库。若校验结果用于指示第一场景和第二场景为不同类别的场景,则第四参数用于适当增大相似度阈值,故终端设备对当前的相似度阈值进行增大,并基于增大后的相似度阈值来采集第三图像,通过增大相似度阈值可以提高终端设备获取到的可用数据的准确度,避免用户的带宽浪费。应理解,该第四参数还可以是基于多个终端设备(例如第三终端设备、第四终端设备等)发送到第二图像的二次校验结果得出的,通过综合多个终端设备发送的图像的二次校验结果,来调整相似度阈值,可以提升终端设备获取的数据的可用性。

应理解,本申请实施例中,执行步骤401的终端设备和执行步骤404、步骤405的终端设备可以为同一终端设备,例如,执行步骤401、步骤404和步骤405的终端设备均为第一终端设备。执行步骤401的终端设备和执行步骤404、步骤405的终端设备可以为不同的终端设备,例如,执行步骤401的终端设备为第二终端设备,执行步骤404和步骤405的终端设备均为第一终端设备。示例性的如下:第二终端设备向网络设备发送属于第一场景的第一图像,网络设备对第一图像进行处理,得到第一特征,并将第一特征发送至一个或多个终端设备,一个或多个终端设备可以包括第一终端设备;第一终端设备获取第二图像,并对第二图像进行处理,得到第二特征,并根据第一特征和第二特征确定第二图像是否为目标数据,如果确定为目标数据,则将第二图像发送至网络设备;网络设备可将第二图像作为和第一图像相同类型的场景数据入数据库,或者网络设备可以对第二图像做二次校验,并根据校验结果下发参数(例如终端后续的上传帧率或者校验结果等等)。上述的第一终端设备和第二终端设备可以是相同或者不同的终端设备。

图6为本申请实施例提供的数据采集方法的另一流程示意图,如图6所示,该方法包括:

601、第一终端设备接收来自网络设备的第一特征,第一特征指示第一场景。

关于步骤601的介绍,可参考图4所示实施例中步骤402和步骤403的相关说明部分,此处不再赘述。

602、第一终端设备对第二图像进行处理,得到第二特征,第二特征指示第二场景。

关于步骤602的介绍,可参考图4所示实施例中步骤404的相关说明部分,此处不再赘述。

603、第一终端设备根据第一特征和第二特征判断如果第一场景和第二场景属于相同类别的场景,则第一终端设备向网络设备发送第二图像。

关于步骤603的介绍,可参考图4所示实施例中步骤405的相关说明部分,此处不再赘述。

在一种可能的实现方式中,第一终端设备根据第一特征和第二特征判断如果第二图像和第一场景属于相同类别的场景,则第一终端设备向网络设备发送第二图像,包括:第一终端设备判断如果第一特征与第二特征之间的相似度大于或等于相似度阈值,则第一终端设备向网络设备发送第二图像。关于该实现方式的介绍,可参考图4所示实施例中步骤405的相关说明部分,此处不再赘述。

在一种可能的实现方式中,第一终端设备接收来自网络设备的第一特征,还包括:第一终端设备接收来自网络设备的第一参数,第一参数用于指示第一终端后续向网络设备发送图像的帧率。关于该实现方式的介绍,可参考图4所示实施例中步骤405的相关说明部分,此处不再赘述。

在一种可能的实现方式中,第一终端设备向网络设备发送第二图像包括:第一终端设备基于第一参数,向网络设备发送第二图像。关于该实现方式的介绍,可参考图4所示实施例中步骤405的相关说明部分,此处不再赘述。

在一种可能的实现方式中,在步骤603之后,还包括:第一终端设备接收来自网络设备的第二参数,第二参数用于调整第一终端设备向网络设备发送图像的帧率;第一终端设备基于第二参数,向网络设备发送第三图像。关于该实现方式的介绍,可参考图4所示实施例中步骤406的相关说明部分,此处不再赘述。

在一种可能的实现方式中,在步骤603之后,还包括:第一终端设备接收来自网络设备的第三参数,第三参数用于指示网络设备对第二图像的校验结果,并基于校验结果向网络设备发送第三图像。关于该实现方式的介绍,可参考图4所示实施例中步骤406的相关说明部分,此处不再赘述。

在一种可能的实现方式中,在步骤603之后,还包括:第一终端设备接收来自网络设备的第四参数,并基于第四参数调整相似度阈值。关于该实现方式的介绍,可参考图4所示实施例中步骤406的相关说明部分,此处不再赘述。

在一种可能的实现方式中,在步骤601之前,还包括:第二终端设备基于预设条件向网络设备发送第一图像。关于该实现方式的介绍,可参考图4所示实施例中步骤401的相关说明部分,此处不再赘述。

在一种可能的实现方式中,预设条件包括:第二终端设备针对第一场景做出第一操作,第二终端设备或用户针对第一场景做出第二操作,第一操作和第二操作不同。关于该实现方式的介绍,可参考图4所示实施例中步骤401的相关说明部分,此处不再赘述。

图7为本申请实施例提供的数据采集方法的另一流程示意图,如图7所示,该方法包括:

701、网络设备向第一终端设备发送第一特征,第一特征指示第一场景;

关于步骤701的介绍,可参考图4所示实施例中步骤402以及步骤403的相关说明部分,此处不再赘述。

702、网络设备接收第一终端设备发送的第二图像,并对第二图像进行处理,得到第三特征,第三特征指示第二场景;

关于步骤702的介绍,可参考图4所示实施例中步骤406的相关说明部分,此处不再赘述。

703、网络设备基于第一特征和第三特征,生成第二场景和第一场景是否属于相同类别的场景的校验结果;

关于步骤703的介绍,可参考图4所示实施例中步骤406的相关说明部分,此处不再赘述。

704、网络设备向第一终端设备发送第二参数和/或第三参数,第二参数用于调整第一终端设备向网络设备发送图像的帧率,第三参数用于指示校验结果。

关于步骤704的介绍,可参考图4所示实施例中步骤406的相关说明部分,此处不再赘述。

在一种可能的实现方式中,网络设备向第一终端设备发送第一特征,还包括,网络设备向第一终端设备发送第一参数,第一参数用于指示第一终端设备后续向网络设备发送图像的帧率。关于该实现方式的介绍,可参考图4所示实施例中步骤405的相关说明部分,此处不再赘述。

在一种可能的实现方式中,该方法还包括:网络设备向第一终端设备发送第四参数,第四参数用于调整第一终端设备的相似度阈值。关于该实现方式的介绍,可参考图4所示实施例中步骤406的相关说明部分,此处不再赘述。

在一种可能的实现方式中,在步骤701之前,还包括:网络设备接收第二终端设备发送的第一图像,基于第一图像得到第一特征。关于该实现方式的介绍,可参考图4所示实施例中步骤402的相关说明部分,此处不再赘述。

在一种可能的实现方式中,基于第一图像得到第一特征包括:对第一图像进行扩展,得到图像集,图像集包括一个或多个图像;对图像集进行处理,得到第一特征。关于该实现方式的介绍,可参考图4所示实施例中步骤402的相关说明部分,此处不再赘述。

本申请实施例中,当网络设备和终端设备需要联合采集训练数据时,终端设备可向网络设备发送用于呈现第一场景的第一图像。接着,网络设备可将第一图像输入至第一模型,以通过第一模型对第一图像进行转换,从而得到用于描述第一场景的第一文本。然后,网络设备可将第一文本输入至第二模型,以通过第二模型对第一文本进行编码,从而得到第一特征,并将第一特征发送至终端设备。随后,终端设备可通过第三模型对用于呈现第二场景的第二图像进行编码,得到第二特征,并检测第一特征与第二特征之间的相似度是否大于或等于相似度阈值,若是,终端设备向网络设备发送第二图像。最后,网络设备可将第二图像与第一图像归属为同一类别的训练数据,用于后续的模型训练中。前述过程中,包含网络设备以及终端设备的数据采集系统中部署有多模态基础模型库,其中,多模态基础模型库中的第一模型以及第二模型部署在网络设备中,多模态基础模型库中的第三模型部署在终端设备中。那么,网络设备可基于第一模型以及第二模型提取第一图像的第一特征,终端设备可基于第三模型提取第二图像的第二特征,故终端设备可通过判断第一特征与第二特征之间的相似程度,以此来判断第一图像和第二图像是否为同一类别的图像(即第一场景和第二场景是否为同一类别的场景),若是,终端设备则将第二图像确定为可用的训练数据上传至网络设备储存。由此可见,数据采集系统通过多模态基础模型库,可以第一图像作为训练数据的采集模板,自动采集与第一图像属于同一类别的训练数据(第二图像等等),数据采集的过程大幅减少人工参与,可有效节省时间成本和人力成本。并且,由于第一图像的类别是不受限制的,故数据采集系统可成功采集各种类别的训练数据,有利于丰富和完善系统中的训练数据库。

进一步地,本申请实施例提供的数据采集系统中,终端设备可自行挖掘各种类别的难例数据(也就是第一图像),相当于终端设备自行制定数据挖掘需求,并将数据挖掘需求通知网络设备。如此一来,由网络设备和终端设备构成的数据采集系统,可按照数据挖掘需求(以难例数据作为训练数据的采集模板)来自动完成相应的训练数据的采集和挖掘。由于需求制定的过程不需人工参与,不仅可减低成本,还可提高数据采集的效率和准确度。

进一步地,本申请实施例提供的数据采集系统中,网络设备可对终端设备上传的目标数据(也就是第二图像)进行二次挖掘,从而基于二次挖掘的结果来灵活控制终端设备上传后续数据的速率,这样可使得终端设备预留足够的带宽为用户提供其他服务,进而提高用户体验。

以上是对本申请实施例提供的数据采集方法所进行的详细说明,以下将对本申请实施例提供的数据采集装置进行介绍,其中数据采集装置包含终端设备和网络设备。图8为本申请实施例提供的终端设备的一个结构示意图,如图8所示,终端设备包括:

接收模块801,用于接收来自网络设备的第一特征,第一特征指示第一场景;

处理模块802,用于对第二图像进行处理,得到第二特征,第二特征指示第二场景;

发送模块803,用于根据第一特征和第二特征判断如果第一场景和第二场景属于相同类别的场景,则向网络设备发送第二图像。

在一种可能的实现方式中,发送模块803,用于判断如果第一特征与第二特征之间的相似度大于或等于相似度阈值,则向网络设备发送第二图像。

在一种可能的实现方式中,接收模块801,还用于接收来自网络设备的第一参数,第一参数用于指示终端设备后续向网络设备发送图像的帧率。

在一种可能的实现方式中,发送模块803,用于基于第一参数,向网络设备发送第二图像。

在一种可能的实现方式中,接收模块801,还用于接收来自网络设备的第二参数,第二参数用于调整终端设备向网络设备发送图像的帧率;发送模块803,还用于基于第二参数,向网络设备发送第三图像。

在一种可能的实现方式中,接收模块801,还用于接收来自网络设备的第三参数,第三参数用于指示网络设备对第二图像的校验结果;处理模块802,还用于基于校验结果向网络设备发送第三图像。

在一种可能的实现方式中,接收模块801,还用于接收来自网络设备的第四参数;处理模块802,还用于基于第四参数调整相似度阈值。

在一种可能的实现方式中,发送模块803,还用于基于预设条件向网络设备发送第一图像。

在一种可能的实现方式中,预设条件包括:终端设备针对第一场景做出第一操作,第二终端设备或用户针对第一场景做出第二操作,第一操作和第二操作不同。

图9为本申请实施例提供的网络设备的一个结构示意图,如图9所示,网络设备包含:

发送模块903,用于向第一终端设备发送第一特征,第一特征指示第一场景;

接收模块901,用于接收第一终端设备发送的第二图像,并对第二图像进行处理,得到第三特征,第三特征指示第二场景;

处理模块902,用于基于第一特征和第三特征,生成第二场景和第一场景是否属于相同类别的场景的校验结果;

发送模块903,还用于向第一终端设备发送第二参数和/或第三参数,第二参数用于调整第一终端设备向网络设备发送图像的帧率,第三参数用于指示校验结果。

在一种可能的实现方式中,发送模块903,还用于向第一终端设备发送第一参数,第一参数用于指示第一终端设备后续向网络设备发送图像的帧率。

在一种可能的实现方式中,发送模块903,还用于向第一终端设备发送第四参数,第四参数用于调整第一终端设备的相似度阈值,第一终端设备基于调整后的相似度阈值向网络设备发送图像。

在一种可能的实现方式中,接收模块901,还用于接收第二终端设备发送的第一图像;处理模块902,还用于基于第一图像得到第一特征。

在一种可能的实现方式中,处理模块902,用于对第一图像进行扩展,得到图像集,图像集包括一个或多个图像;对图像集进行处理,得到第一特征。

需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其带来的技术效果与本申请方法实施例相同,具体内容可参考本申请实施例前述所示的方法实施例中的叙述,此处不再赘述。

本申请实施例还涉及一种终端设备,图10为本申请实施例提供的终端设备的一个结构示意图。如图10所示,终端设备1000具体可以表现为手机、平板、笔记本电脑、智能穿戴设备、车、车载终端、车载域控制器、车载计算平台、服务器等,此处不做限定。其中,终端设备1000上可部署有图8对应实施例中所描述的装置,用于实现图6对应实施例中数据采集的功能和/或图4中终端设备的功能。具体的,终端设备1000包括:接收器1001、发射器1002、处理器1003和存储器1004(其中终端设备1000中的处理器1003的数量可以一个或多个,图10中以一个处理器为例),其中,处理器1003可以包括应用处理器10031和通信处理器10032。在本申请的一些实施例中,接收器1001、发射器1002、处理器1003和存储器1004可通过总线或其它方式连接。

存储器1004可以包括只读存储器和随机存取存储器,并向处理器1003提供指令和数据。存储器1004的一部分还可以包括非易失性随机存取存储器(non-volatile randomaccess memory,NVRAM)。存储器1004存储有处理器和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。

处理器1003控制终端设备的操作。具体的应用中,终端设备的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线系统。

上述本申请实施例揭示的方法可以应用于处理器1003中,或者由处理器1003实现。处理器1003可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1003中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1003可以是通用处理器、数字信号处理器(digital signal processing,DSP)、微处理器或微控制器,还可进一步包括专用集成电路(application specific integratedcircuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。该处理器1003可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1004,处理器1003读取存储器1004中的信息,结合其硬件完成上述方法的步骤。

接收器1001可用于接收输入的数字或字符信息,以及产生与终端设备的相关设置以及功能控制有关的信号输入。发射器1002可用于通过第一接口输出数字或字符信息;发射器1002还可用于通过第一接口向磁盘组发送指令,以修改磁盘组中的数据;发射器1002还可以包括显示屏等显示设备。

本申请实施例中,在一种情况下,处理器1003,用于通过图4对应实施例中的第三模型,配合网络设备完成训练数据的采集。

本申请实施例还涉及一种网络设备,图11为本申请实施例提供的网络设备的一个结构示意图。如图11所示,网络设备1100具体可以表现为手机、平板、笔记本电脑、智能穿戴设备、服务器等,此处不做限定。其中,网络设备1100上可部署有图9对应实施例中所描述的装置,用于实现图7对应实施例中数据采集的功能和/或图4中网络设备的功能。具体的,网络设备1100包括:接收器1101、发射器1102、处理器1103和存储器1104(其中网络设备1100中的处理器1103的数量可以一个或多个,图11中以一个处理器为例),其中,处理器1103可以包括应用处理器11031和通信处理器11032。在本申请的一些实施例中,接收器1101、发射器1102、处理器1103和存储器1104可通过总线或其它方式连接。

存储器1104可以包括只读存储器和随机存取存储器,并向处理器1103提供指令和数据。存储器1104的一部分还可以包括非易失性随机存取存储器(non-volatile randomaccess memory,NVRAM)。存储器1104存储有处理器和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。

处理器1103控制网络设备的操作。具体的应用中,网络设备的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线系统。

上述本申请实施例揭示的方法可以应用于处理器1103中,或者由处理器1103实现。处理器1103可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1103中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1103可以是通用处理器、数字信号处理器(digital signal processing,DSP)、微处理器或微控制器,还可进一步包括专用集成电路(application specific integratedcircuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。该处理器1103可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1104,处理器1103读取存储器1104中的信息,结合其硬件完成上述方法的步骤。

接收器1101可用于接收输入的数字或字符信息,以及产生与网络设备的相关设置以及功能控制有关的信号输入。发射器1102可用于通过第一接口输出数字或字符信息;发射器1102还可用于通过第一接口向磁盘组发送指令,以修改磁盘组中的数据;发射器1102还可以包括显示屏等显示设备。

本申请实施例中,在一种情况下,处理器1103,用于通过图4对应实施例中的第一模型以及第二模型等等,配合终端设备完成训练数据的采集。

本申请实施例还涉及一种计算机存储介质,该计算机可读存储介质中存储有用于进行信号处理的程序,当其在计算机上运行时,使得计算机执行如前述终端设备所执行的步骤,或者,使得计算机执行如前述网络设备所执行的步骤。

本申请实施例还涉及一种计算机程序产品,该计算机程序产品存储有指令,该指令在由计算机执行时使得计算机执行如前述终端设备所执行的步骤,或者,使得计算机执行如前述网络设备所执行的步骤。

本申请实施例还提供一种车辆,该车辆包括前述的终端设备,示例性的,如图8或者图10所示的终端设备。

本申请实施例提供的网络设备或终端设备具体可以为芯片,芯片包括:处理单元和通信单元,所述处理单元例如可以是处理器,所述通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行存储单元存储的计算机执行指令,以使执行设备内的芯片执行上述实施例描述的数据处理方法,或者,以使训练设备内的芯片执行上述实施例描述的数据处理方法。可选地,所述存储单元为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是所述无线接入设备端内的位于所述芯片外部的存储单元,如只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)等。

具体的,请参阅图12,图12为本申请实施例提供的芯片的一个结构示意图,所述芯片可以表现为神经网络处理器NPU 1200,NPU 1200作为协处理器挂载到主CPU(Host CPU)上,由Host CPU分配任务。NPU的核心部分为运算电路1203,通过控制器1204控制运算电路1203提取存储器中的矩阵数据并进行乘法运算。

在一些实现中,运算电路1203内部包括多个处理单元(Process Engine,PE)。在一些实现中,运算电路1203是二维脉动阵列。运算电路1203还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路1203是通用的矩阵处理器。

举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路从权重存储器1202中取矩阵B相应的数据,并缓存在运算电路中每一个PE上。运算电路从输入存储器1201中取矩阵A数据与矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器(accumulator)1208中。

统一存储器1206用于存放输入数据以及输出数据。权重数据直接通过存储单元访问控制器(Direct Memory Access Controller,DMAC)1205,DMAC被搬运到权重存储器1202中。输入数据也通过DMAC被搬运到统一存储器1206中。

BIU为Bus Interface Unit即,总线接口单元1213,用于AXI总线与DMAC和取指存储器(Instruction Fetch Buffer,IFB)1209的交互。

总线接口单元1213(Bus Interface Unit,简称BIU),用于取指存储器1209从外部存储器获取指令,还用于存储单元访问控制器1205从外部存储器获取输入矩阵A或者权重矩阵B的原数据。

DMAC主要用于将外部存储器DDR中的输入数据搬运到统一存储器1206或将权重数据搬运到权重存储器1202中或将输入数据数据搬运到输入存储器1201中。

向量计算单元1207包括多个运算处理单元,在需要的情况下,对运算电路1203的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。主要用于神经网络中非卷积/全连接层网络计算,如Batch Normalization(批归一化),像素级求和,对预测标签平面进行上采样等。

在一些实现中,向量计算单元1207能将经处理的输出的向量存储到统一存储器1206。例如,向量计算单元1207可以将线性函数;或,非线性函数应用到运算电路1203的输出,例如对卷积层提取的预测标签平面进行线性插值,再例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元1207生成归一化的值、像素级求和的值,或二者均有。在一些实现中,处理过的输出的向量能够用作到运算电路1203的激活输入,例如用于在神经网络中的后续层中的使用。

控制器1204连接的取指存储器(instruction fetch buffer)1209,用于存储控制器1204使用的指令;

统一存储器1206,输入存储器1201,权重存储器1202以及取指存储器1209均为On-Chip存储器。外部存储器私有于该NPU硬件架构。

其中,上述任一处提到的处理器,可以是一个通用中央处理器,微处理器,ASIC,或一个或多个用于控制上述程序执行的集成电路。

另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、ROM、RAM、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,训练设备,或者网络设备等)执行本申请各个实施例所述的方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。

所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、训练设备或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、训练设备或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的训练设备、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。

相关技术
  • 一种数据采集系统和可穿戴设备数据采集、建模的方法
  • 一种基于LoRa无线通信的电能表数据采集方法和设备
  • 一种数据采集方法、装置、设备和存储介质
  • 一种基于编程语言的低耦合数据采集方法及电子设备
  • 一种数据采集周期的确定方法、装置、设备及存储介质
  • 一种数据采集方法、数据分析方法和相关设备
  • 一种窑炉内部数据采集装置、方法及相关设备
技术分类

06120116508388