CN116012233A - 机器学习模型的训练方法及相关产品 - Google Patents
机器学习模型的训练方法及相关产品 Download PDFInfo
- Publication number
- CN116012233A CN116012233A CN202111216791.8A CN202111216791A CN116012233A CN 116012233 A CN116012233 A CN 116012233A CN 202111216791 A CN202111216791 A CN 202111216791A CN 116012233 A CN116012233 A CN 116012233A
- Authority
- CN
- China
- Prior art keywords
- pixel
- image
- training method
- blurred
- reference image
- 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.)
- Pending
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
本披露公开了一种机器学习模型的训练方法及相应的计算装置、计算机可读存储介质和计算机程序产品。训练方法中引入了新的损失函数,从而可以更有效地处理图像复原中的模糊像素。本披露实施例的方案可以提升涉及图像复原的机器学习模型的准确性。
Description
技术领域
本披露一般地涉及数据处理领域,尤其涉及图像处理领域。更具体地,本披露涉及一种机器学习模型的训练方法、计算装置、计算机可读存储介质及计算机程序产品。
背景技术
图像复原是指从退化的图像恢复高质量图像的方法,包括超分辨率、去噪、去模糊等处理。近年来,基于神经网络(Neural Network,NN)的方法在图像复原任务上取得了极大成功。
图像复原方法不仅得益于神经网络的架构,还得益于损失函数。除了开发精心设计的网络架构之外,作为优化目标的损失函数在基于神经网络的图像复原方法中也吸引了大量关注。
基于神经网络的图像复原方法通常使用退化图像作为输入,通过最小化由损失函数定义的输出图像与对应的基准图像之间的误差来训练模型。常用的损失函数可以分为两类:像素级损失和感知驱动损失。像素级损失最小化输出像素值和基准像素值之间的绝对距离,诸如均方误差(MSE或L2)和平均绝对误差(MAE或L1)。感知驱动损失在特征空间比较输出图像和基准图像之间的差异,诸如感知损失和对抗损失。为了生成具有高准确性的高质量逼真输出图像,感知驱动损失通常与像素级损失一起使用。
像素级损失的优化目标是最大化峰值信噪比(PSNR)。然而,像素级损失得到的多少有些模糊的结果,并且不能恢复精细结构。因此,这对用于图像复原任务的损失函数的设计提出了新的要求,带来了新的挑战。
发明内容
为了至少解决在上文中所提到的一个或多个技术问题,本披露实施例提出了一种新的损失函数,用于训练执行图像复原任务的机器学习模型。这种损失函数能够保留图像中的结构性信息,从而使得经过训练的机器学习模型能够在复原图像的同时保留精细的图像结构。
在第一方面中,本披露公开了一种机器学习模型的训练方法,所述机器学习模型用于图像复原处理,所述方法包括:在正向训练中,基于基准图像和所述机器学习模型处理后的输出图像计算损失函数的值,其中所述损失函数保留所述基准图像中的结构性信息;以及在反向训练中,基于所述损失函数更新所述机器学习模型的参数。
在第二方面中,本披露公开了一种计算装置,用于训练机器学习模型,包括:处理器,其配置用于执行程序指令;以及存储器,其配置用于存储所述程序指令,当所述程序指令由所述处理器加载并执行时,使得所述处理器执行根据本披露第一方面的训练方法。
在第三方面中,本披露公开了一种计算机可读存储介质,其中存储有程序指令,当所述程序指令由处理器加载并执行时,使得所述处理器执行根据本披露第一方面的训练方法。
在第四方面中,本披露公开了一种计算机程序产品,包括计算机程序或指令,该计算机程序或指令被处理器执行时实现本披露第一方面的训练方法。
通过利用本披露上述的机器学习模型的训练方法,经过训练的机器学习模型可以准确地复原图像,同时保留图像的精细结构,提高图像质量。
附图说明
通过参考附图阅读下文的详细描述,本披露示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本披露的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
图1示出了根据现有损失函数训练后得到的神经网络模型的输出结果示例;
图2示出了根据本披露实施例的机器学习模型的训练方法的示例性流程图;
图3示出了根据本披露一些实施例的计算损失函数的示例性流程图;
图4示出了本披露实施例的训练过程中计算损失函数的示例性图示;
图5示出可以实施本披露实施例的方案的计算装置的硬件配置的框图;
图6示出根据本披露实施例的一种组合处理装置的结构图;以及
图7示出根据本披露实施例的一种板卡的结构示意图。
具体实施方式
下面将结合本披露实施例中的附图,对本披露实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本披露一部分实施例,而不是全部的实施例。基于本披露中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本披露披露的方案保护的范围。
应当理解,本披露的权利要求、说明书及附图中可能出现的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。本披露的说明书和权利要求书中使用的术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本披露说明书中所使用的术语仅仅是出于描述特定实施例的目的,而并不意在限定本披露。如在本披露说明书和权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本披露说明书和权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
下面结合附图来详细描述本披露的具体实施方式。
针对现有技术中的损失函数很难恢复图像中的结构性信息的问题,本披露提供了一种新的损失函数。可以理解,该损失函数不仅可以用于训练神经网络模型,也可以用于训练其他处理图像复原任务的机器学习模型。因此,虽然在下文中多处以神经网络模型为例进行描述,但是本领域技术人员可以理解,这些描述也适用于其他机器学习模型。
下面以神经网络模型为例介绍机器学习模型的训练过程。
在实际应用中,预先给大量的样本数据(包含输入和输出)对初始神经网络进行训练,训练完成后,获得训练后的神经网络。该神经网络对于将来的真实环境的输入能给出一个正确的输出。
在开始神经网络的训练之前,需要定义损失函数。损失函数是一个衡量神经网络在执行某个特定任务的表现函数。在有些情境中,损失函数可以如此得到:在训练某神经网络过程中,对每一个样本数据,都沿着神经网络传递得到输出值,然后将这个输出值与期望值做差再求平方,这样计算出来的损失函数就是预测值与真实值之间的距离,而训练神经网络目的就是将这个距离或损失函数的取值减小。在这些情境中,损失函数可以表示为:
为了计算损失函数,必须遍历样本数据集中的每一张样本图片,获得每一张样本图片对应的实际结果然后按照上面的定义计算损失函数。如果损失函数比较大,例如超过一个预定的阈值,则说明神经网络还没有训练好,此时就需要对权值进一步调整。
在开始训练神经网络的时候,需要对权值进行随机初始化。在大多数的情况下,初始化的神经网络并不能提供一个很好的训练结果。在训练的过程中,假设以一个很糟糕的神经网络开始,通过训练可以得到一个具有高准确率的网络。
神经网络的训练过程分为两个阶段,第一阶段是信号的正向处理操作(在本披露中称为正向训练或前向传播过程),训练从输入层经过隐含层,最后到达输出层。第二阶段是反向传播梯度操作(在本披露中称为反向训练或后向传播过程),训练从输出层到隐含层,最后到输入层,根据梯度依次调节神经网络中每层的权值和偏置。
在前向传播过程中,将输入值输入到神经网络的输入层,经过多个隐藏层的相关算子执行的相应运算,可以从神经网络的输出层得到所谓的预测值的输出。当输入值提供给神经网络的输入层时,其可以不进行任何操作或依应用场景做一些必要的预处理。在隐含层中,第二个隐含层从第一个隐含层获取预测中间结果值并进行计算操作和激活操作,然后将得到的预测中间结果值传递给下一个隐含层。在后面的层中执行相同的操作,最后在神经网络的输出层得到输出值。在经过前向传播过程的正向处理后,通常可以得到一个被称为预测值的输出值。为了计算误差,可以将预测值与实际输出值进行比较,获得对应的误差值。
在反向传播过程中,可以使用微分学的链式法则来对各层的权值进行更新,以期在下一次的前向传播过程中获得相对于前次较低的误差值。在链式法则中,首先计算对应神经网络的最后一层权值的误差值的导数。称这些导数为梯度,然后使用这些梯度来计算神经网络中的倒数第二层的梯度。重复此过程,直到得到神经网络中每个权值对应的梯度。最后,将神经网络中每个权值减去对应的梯度,从而对权值进行一次更新,以达到减少误差值的目的。与前向传播过程中利用各类算子(在本披露中称为前向算子)类似,在对应的反向传播过程中也存在与前向传播过程中的前向算子相对应的反向算子。例如,对于卷积层中的卷积算子,其包括前向传播过程中的前向卷积算子和反向传播过程中的反卷积算子。
在神经网络进行训练的过程中,神经网络每经过一次信号的正向处理的前向传播过程以及对应一次误差的反向传播过程,神经网络中的权值利用梯度进行一次更新,此时称为一次迭代(iteration)。为了获得精度符合预期的神经网络,在训练过程中需要很庞大的样本数据集,而一次性将样本数据集输入进计算设备(例如计算机)几乎是不可能的。因此,为了解决这个问题,需要将样本数据集划分成多个批次,按批次传递给计算机,每个批次的数据集经过前向传播过程的正向处理后,对应进行一次反向传播过程中的更新神经网络的权值操作。当一个完整的样本数据集通过了神经网络一次正向处理并且对应返回了一次权值更新,这个过程称为一个周期(epoch)。实际中,在神经网络中传递一次完整的数据集是不够的,需要将完整的数据集在同一神经网络中传递多次,即需要多个周期,最终获得精度符合预期的神经网络。
图1示出了根据现有损失函数训练后得到的神经网络模型的输出结果示例。在此示例中,损失函数采用已知的像素级损失函数L1。其他像素级损失函数也是类似效果。
图中示出了基准图像a、经过训练的神经网络模型输出的模糊图像b以及锐利图像c。从图中可以明显看出,锐利图像c比模糊图像b具有更好的视觉质量,并且更好地保留了图像结构。图中还标示出了模糊图像b对应的L1损失函数的值为0.0579,锐利图像c对应的L1损失函数的值为0.0578。然而,从L1损失函数的值可以看出,模糊图像b和锐利图像c的L1损失非常接近,几乎无法区分。也即,现有的像素级损失函数无法区分图像中的边缘是模糊还是锐利。
为了进一步分析模糊图像b与锐利图像c的区别,图1中还示出了基准图像a、模糊图像b和锐利图像c的像素值,尤其是边缘区域的像素值。曲线a1指示基准图像a的边缘区域的像素值,曲线b1指示模糊图像b的边缘区域的像素值,曲线c1指示锐利图像c的边缘区域的像素值。
为了分析模糊图像b与锐利图像c的区别,可以计算模糊图像b与基准图像a之间的像素差,称为模糊误差;同时可以计算锐利图像c与基准图像a之间的像素差,称为锐利误差。通过计算可以发现,模糊误差和锐利误差具有相同的数值,但是具有不同的方向。但是模糊图像b和锐利图像c的L1损失函数非常接近。
基于上述分析,本披露实施例提供了一种损失函数,其保留了图像中的锐利边缘和精细结构,由此经过该损失函数训练的机器学习模型能够输出更高质量的图像。
图2示出了根据本披露实施例的机器学习模型的训练方法的示例性流程图。使用该训练方法的机器学习模型用于处理图像复原任务。在本披露实施例中,用于图像复原任务的机器学习模型的输入可以是基准图像经过退化处理(诸如双三次差值方法)后得到的图像,其作为要复原的输入图像提供给机器学习模型,而理想的或期望的输出则是该基准图像。
如图所示,方法200在步骤210中,在正向训练中,基于基准图像和机器学习模型处理后的输出图像计算损失函数的值。
图像模糊是图像复原任务中的一个重要问题,其毁坏了图像的结构。如背景技术中所提到的,现有的损失函数不能保留图像结构,其可以获得准确但却模糊的图像。因此,在本披露实施例中,为了提高图像质量,所提供的损失函数保留了基准图像中的结构性信息。
图像模糊趋向于减小当前像素与周围像素之间的差异,尤其是在图像中的边缘处。发明人注意到,现有的损失函数不能区分图像中的边缘是模糊还是锐利。因此,在本披露一些实施例中,损失函数所保留的结构性信息可以是图像中的边缘信息,由此可以特别地针对边缘进行优化。
本文中,边缘是指图像中一个属性区域和另一个属性区域的交接处,是区域属性发生突变的地方,是图像中不确定性最大的地方,也是图像信息最集中的地方。例如,在一幅包括绿草地和草地上的足球的图像中,足球的图像区域与绿草地的图像区域在颜色上发生突变,足球的圆形轮廓属于图像中的边缘。进一步地,足球的黑白相间的图案中也存在边缘,黑色区块与白色区块的交接处颜色发生突变,属于边缘。
图像的边缘包含着丰富的信息。边缘信息主要包括边缘的方向和幅度,通常沿着边缘走向的幅度变化较缓,而垂直于边缘走向的幅度变化较剧烈。例如在上述绿草地和足球的图像中,沿着足球的圆形轮廓走向的幅度变化较缓,而垂直于圆形轮廓走向的幅度变化剧烈。
接着,在步骤220中,在反向训练中,基于上述损失函数来更新机器学习模型的参数。
由此通过反复调整,可以得到经过训练的机器学习模型,其输出的图像能够更好地反映图像的结构特征,尤其是图像中的边缘特征。
图3示出了根据本披露一些实施例的计算损失函数的示例性流程图。
如图所示,在步骤310中,首先检测输出图像中边缘处的模糊像素。
本披露实施例旨在改善图像复原中的图像模糊问题,因此,可以首先检测出输出图像中边缘处的模糊像素,从而进行针对性地调整。如前所述,本披露提供的损失函数保留了结构性信息,尤其是图像中的边缘信息。因此,这些边缘信息可以用来帮助检测输出图像中边缘处的模糊像素。
发明人通过观测模糊像素与锐利像素发现,输出图像中的像素是否模糊与其在基准像素中对应像素的相对位置和基准像素中相邻像素的变化方向有关。发明人还观察到,当输出图像中的像素是模糊的时,该像素与基准图像中对应像素之间的误差的方向(此处称为第一方向)与基准图像中对应像素位置处相邻像素变化的方向(此处称为第二方向)是一致的。由此,借助这种方向判断可以检测输出图像中边缘处的模糊像素。
具体地,在一些实施例中,检测模糊像素的步骤310可以包括子步骤:确定输出图像与基准图像的像素误差的第一方向(子步骤311),确定基准图像中对应像素位置处相邻像素变化的第二方向(子步骤312),以及将第一方向与第二方向一致的像素确定为模糊像素(子步骤313)。
可以采用多种方式来确定图像中相邻像素的变化。在一些实施例中,可以采用例如像素灰度值的二阶梯度来反映相邻像素变化的方向和强度。具体地,基准图像中某个像素位置处与其相邻像素点的二阶梯度值的符号代表变化的方向,也即第二方向;二阶梯度值的幅度代表变化的强度。在一些实现中,可以使用拉普拉斯算子来计算二阶梯度值。当然,也可以采用其他方式计算二阶梯度值,本披露实施例不限于此。
由此,通过比较第一方向和第二方向是否一致,可以确定输出图像中哪些像素为模糊像素。上述检测方法具体可以表示为如下公式:
其中mi,j表示模糊因子图,其为与输出图像尺寸大小相同的矩阵,其中0值表示像素(i,j)为非模糊像素,也即普通像素,非0值表示像素(i,j)为模糊像素;表示输出图像在像素(i,j)处的像素值;表示基准图像在像素(i,j)处的像素值;ei,j表示像素(i,j)处的像素误差;以及表示基准图像上像素(i,j)处的二阶梯度值。
继续图3,接着在步骤320处,根据检测到的模糊像素,确定对输出图像与基准图像之间的像素误差进行加权的加权因子以供计算损失函数。
在本披露实施例中,对于检测到的模糊像素,可以增大模糊像素对应的像素误差的加权因子,由此增大对模糊像素的惩罚,从而可以训练机器学习模型对模糊像素进行针对性地调整。
在一些示例中,加权因子可以表示为如下公式:
ωi,j=1+αmi,j (4)
其中ωi,j表示像素(i,j)处的加权因子,α表示惩罚因子,mi,j为前面确定的模糊因子图。由于mi,j中非模糊像素的对应值为0,因此不会增大对非模糊像素的惩罚,而只针对模糊像素加大惩罚。
可选地或附加地,针对不同位置的模糊像素,加权因子的大小可以不同。在一种实现中,可以根据基准图像中对应像素位置处的相邻像素变化的幅度确定对应的加权因子。
在一种实现中,模糊因子图可以表示如下:
从公式(5)可以看出,对于模糊因子,其在模糊因子图mi,j中的值是基准图像中对应像素位置处的相邻像素变化的幅度,例如二阶梯度值的绝对值。
在一些实施例中,惩罚因子α是正实数,由此可以增大加权因子。惩罚因子是可调的,其例如可以根据不同的机器学习模型、应用场景等选择合适的数值。可以理解,惩罚因子越大,其对模糊像素的惩罚越重,由此得到的输出图像中的边缘的锐度越高。优选地,在一些实施例中,惩罚因子α的范围大约为1.0~5.0;更优先地,惩罚因子α大约为2。
在确定了各个像素的加权因子之后,可以计算损失函数。
在一个示例中,可以按如下公式计算损失函数:
其中,LSP表示损失函数,W、H分别表示基准图像和输出图像的宽度和高度像素数。
可以理解,还可以设计其他形式的损失函数,这些损失函数中通过引入加权因子ωi,j,从而可以对模糊像素进行特别处理,优化图像模糊问题。
图4示出了本披露实施例的训练过程中计算损失函数的示例性图示。
如图所示,输出图像410中包括了锐利区域411和模糊区域412。输出图像410的下方分别示出了锐利区域411对应的像素值曲线和模糊区域412对应的像素值曲线。基准图像420中示出了与输出图像中的锐利区域411和模糊区域412分别对应的区域421和422,以及它们各自的像素值曲线。
在计算损失函数时,首先在阶段1检测输出图像中的模糊像素。
图中示出了像素误差图430,更具体示出了输出图像410中锐利区域411与基准图像430中对应区域431之间的像素误差曲线431,以及输出图像410中模糊区域412与基准图像420中对应区域422之间的像素误差曲线432。从图中可以看出,锐利区域的像素误差431是先负值后正值,也即其方向是先小后大;而模糊区域的像素误差432则是先正值后负值,也即其方向是先大后小。
图中还示出了基准图像的二阶梯度图440,更具体示出了与锐利区域411对应区域的二阶梯度值曲线441,以及与模糊区域412对应区域的二阶梯度值曲线442。在图中示例中,二阶梯度采用拉普拉斯算子来计算,其例如可以针对像素的灰度值进行处理。拉普拉斯算子可以利用零交叉的性质进行边缘定位,此外也可以确定一个像素是在边缘暗的一边还是亮的一边。在亮的一边时,二阶梯度值为正值,在暗的一边时,二阶梯度值为负值。从图中可以看出,锐利区域的二阶梯度值441是先正值后负值,与像素误差431的方向相反;而模糊区域的二阶梯度值442也是先正值后负值,与像素误差432的方向一致。
通过比较像素误差曲线与二阶梯度值曲线,可以确定输出图像中哪些像素是模糊像素。具体地,图中示出可以将像素误差与二阶梯度进行异或(NOR)操作,从而将二者方向一致的像素确定为模糊像素,二者方向不一致的像素确定为非模糊像素。这些检测结果可以构成模糊因子图450。
如前面描述的一个示例,模糊因子图450中可以将模糊像素赋值为对应的二阶梯度值的绝对值,将非模糊像素赋值为0,由此区分对模糊像素与非模糊像素的加权力度,也即在后续加大在损失函数中的惩罚力度。
接着,在阶段2的损失函数计算中,对模糊像素进行惩罚。
如图所示,在计算损失函数时,可以根据阶段1中确定的模糊因子图来调整加权因子,从而对模糊像素进行区别处理。更具体地,相比于非模糊像素,可以增加模糊像素对应的加权因子,从而更重地惩罚模糊像素。
图中示出了基于模糊因子图确定各个像素的加权因子后对像素误差430进行加权运算,例如执行哈达玛积这种矩阵乘法运算,从而得到损失函数460。
上面结合附图描述了本披露实施例的机器学习模型的训练方法。本披露还提供了一种计算装置,其可以用于训练机器学习处理模型,尤其是神经网络模型。
图5示出可以实施本披露实施例的训练方案的计算装置500的硬件配置的框图。如图所示,计算装置500可以包括处理器510和存储器520。在图5的计算装置500中,仅示出了与本实施例有关的组成元素。因此,对于本领域普通技术人员而言显而易见的是:计算装置500还可以包括与图5中所示的组成元素不同的常见组成元素,比如:显示器。
计算装置500可以对应于具有各种处理功能的计算设备,例如,用于生成神经网络模型、训练或学习神经网络模型、或者生成训练图像集的功能。例如,计算装置500可以被实现为各种类型的设备,例如个人计算机(PC)、服务器设备、移动设备等。
处理器510,其配置用于执行程序指令以控制计算装置500的所有功能。例如,处理器510通过执行计算装置500上的存储器520中存储的程序,来控制计算装置500的所有功能。处理器510可以由计算装置500中提供的中央处理单元(CPU)、图形处理单元(GPU)、应用处理器(AP)、人工智能处理器芯片(IPU)等来实现。然而,本披露不限于此。
在一些实施例中,处理器510可以包括输入/输出(I/O)单元511和计算单元512。I/O单元511可以用于接收各种数据,例如训练图像集。计算单元512可以用于基于训练图像集来训练机器学习模型。经过训练的机器学习模型例如可以由I/O单元511输出。经过训练的机器学习模型可以提供给存储器520以供其他设备(未示出)读取使用,也可以直接提供给其他设备使用。
存储器520是用于存储计算装置500中处理的各种数据的硬件。例如,存储器520可以存储计算装置500中的处理过的数据和待处理的数据。存储器520可存储处理器510已处理或要处理的数据,例如训练图像,或者神经网络运算过程中涉及的数据集,例如,训练图像集、未训练的初始神经网络的数据、在训练过程中生成的神经网络的中间数据、完成了所有训练的神经网络的数据等。此外,存储器520可以存储要由计算装置500驱动的应用、驱动程序等程序指令。例如:存储器520可以存储与将由处理器510执行的机器学习模型的训练算法等有关的各种程序。存储器520可以是DRAM,但是本披露不限于此。存储器520可以包括易失性存储器或非易失性存储器中的至少一种。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存、相变RAM(PRAM)、磁性RAM(MRAM)、电阻RAM(RRAM)、铁电RAM(FRAM)等。易失性存储器可以包括动态RAM(DRAM)、静态RAM(SRAM)、同步DRAM(SDRAM)、PRAM、MRAM、RRAM、铁电RAM(FeRAM)等。在实施例中,存储器820可以包括硬盘驱动器(HDD)、固态驱动器(SSD)、高密度闪存(CF)、安全数字(SD)卡、微安全数字(Micro-SD)卡、迷你安全数字(Mini-SD)卡、极限数字(xD)卡、高速缓存(caches)或记忆棒中的至少一项。
综上,本说明书实施方式提供的计算装置500的存储器520和处理器510实现的具体功能,可以与本说明书中的前述实施方式相对照解释,并能够达到前述实施方式的技术效果,这里便不再赘述。
在本披露实施例中,还提供一种计算机可读存储介质,其中存储有程序指令,当该程序指令由处理器加载并执行时,使得处理器执行本披露实施例中描述的机器学习模型的训练方法。
在本披露实施例中,还提供一种计算机程序产品,包括计算机程序或指令,该计算机程序或指令被处理器执行时,实现根据本披露实施例中描述的机器学习模型的训练方法。
图6是示出根据本披露实施例的一种组合处理装置600的结构图。如图所示,该组合处理装置600包括计算处理装置602、接口装置604、其他处理装置606和存储装置608。根据不同的应用场景,计算处理装置中可以包括一个或多个计算装置610,该计算装置可以配置成图5所示的计算装置500,用于执行本文结合附图所描述的操作。
在不同的实施例中,本披露的计算处理装置可以配置成执行用户指定的操作。在示例性的应用中,该计算处理装置可以实现为单核人工智能处理器或者多核人工智能处理器。类似地,包括在计算处理装置内的一个或多个计算装置可以实现为人工智能处理器核或者人工智能处理器核的部分硬件结构。当多个计算装置实现为人工智能处理器核或人工智能处理器核的部分硬件结构时,就本披露的计算处理装置而言,其可以视为具有单核结构或者同构多核结构。
在示例性的操作中,本披露的计算处理装置可以通过接口装置与其他处理装置进行交互,以共同完成用户指定的操作。根据实现方式的不同,本披露的其他处理装置可以包括中央处理器(Central Processing Unit,CPU)、图形处理器(Graphics ProcessingUnit,GPU)、人工智能处理器等通用和/或专用处理器中的一种或多种类型的处理器。这些处理器可以包括但不限于数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,并且其数目可以根据实际需要来确定。如前所述,仅就本披露的计算处理装置而言,其可以视为具有单核结构或者同构多核结构。然而,当将计算处理装置和其他处理装置共同考虑时,二者可以视为形成异构多核结构。
在一个或多个实施例中,该其他处理装置可以作为本披露的计算处理装置(其可以具体化为人工智能例如神经网络运算的相关运算装置)与外部数据和控制的接口,执行包括但不限于数据搬运、对计算装置的开启和/或停止等基本控制。在另外的实施例中,其他处理装置也可以和该计算处理装置协作以共同完成运算任务。
在一个或多个实施例中,该接口装置可以用于在计算处理装置与其他处理装置间传输数据和控制指令。例如,该计算处理装置可以经由所述接口装置从其他处理装置中获取输入数据,写入该计算处理装置片上的存储装置(或称存储器)。进一步,该计算处理装置可以经由所述接口装置从其他处理装置中获取控制指令,写入计算处理装置片上的控制缓存中。替代地或可选地,接口装置也可以读取计算处理装置的存储装置中的数据并传输给其他处理装置。
附加地或可选地,本披露的组合处理装置还可以包括存储装置。如图中所示,该存储装置分别与所述计算处理装置和所述其他处理装置连接。在一个或多个实施例中,存储装置可以用于保存所述计算处理装置和/或所述其他处理装置的数据。例如,该数据可以是在计算处理装置或其他处理装置的内部或片上存储装置中无法全部保存的数据。
在一些实施例里,本披露还公开了一种芯片(例如图7中示出的芯片702)。在一种实现中,该芯片是一种系统级芯片(System on Chip,SoC),并且集成有一个或多个如图6中所示的组合处理装置。该芯片可以通过对外接口装置(如图7中示出的对外接口装置706)与其他相关部件相连接。该相关部件可以例如是摄像头、显示器、鼠标、键盘、网卡或wifi接口。在一些应用场景中,该芯片上可以集成有其他处理单元(例如视频编解码器)和/或接口模块(例如DRAM接口)等。在一些实施例中,本披露还公开了一种芯片封装结构,其包括了上述芯片。在一些实施例里,本披露还公开了一种板卡,其包括上述的芯片封装结构。下面将结合图7对该板卡进行详细地描述。
图7是示出根据本披露实施例的一种板卡700的结构示意图。如图所示,该板卡包括用于存储数据的存储器件704,其包括一个或多个存储单元710。该存储器件可以通过例如总线等方式与控制器件708和上文所述的芯片702进行连接和数据传输。进一步,该板卡还包括对外接口装置706,其配置用于芯片(或芯片封装结构中的芯片)与外部设备712(例如服务器或计算机等)之间的数据中继或转接功能。例如,待处理的数据可以由外部设备通过对外接口装置传递至芯片。又例如,所述芯片的计算结果可以经由所述对外接口装置传送回外部设备。根据不同的应用场景,所述对外接口装置可以具有不同的接口形式,例如其可以采用标准PCIE接口等。
在一个或多个实施例中,本披露板卡中的控制器件可以配置用于对所述芯片的状态进行调控。为此,在一个应用场景中,该控制器件可以包括单片机(Micro ControllerUnit,MCU),以用于对所述芯片的工作状态进行调控。
根据上述结合图6和图7的描述,本领域技术人员可以理解本披露也公开了一种电子设备或装置,其可以包括一个或多个上述板卡、一个或多个上述芯片和/或一个或多个上述组合处理装置。
根据不同的应用场景,本披露的电子设备或装置可以包括服务器、云端服务器、服务器集群、数据处理装置、机器人、电脑、打印机、扫描仪、平板电脑、智能终端、PC设备、物联网终端、移动终端、手机、行车记录仪、导航仪、传感器、摄像头、相机、摄像机、投影仪、手表、耳机、移动存储、可穿戴设备、视觉终端、自动驾驶终端、交通工具、家用电器、和/或医疗设备。所述交通工具包括飞机、轮船和/或车辆;所述家用电器包括电视、空调、微波炉、冰箱、电饭煲、加湿器、洗衣机、电灯、燃气灶、油烟机;所述医疗设备包括核磁共振仪、B超仪和/或心电图仪。本披露的电子设备或装置还可以被应用于互联网、物联网、数据中心、能源、交通、公共管理、制造、教育、电网、电信、金融、零售、工地、医疗等领域。进一步,本披露的电子设备或装置还可以用于云端、边缘端、终端等与人工智能、大数据和/或云计算相关的应用场景中。在一个或多个实施例中,根据本披露方案的算力高的电子设备或装置可以应用于云端设备(例如云端服务器),而功耗小的电子设备或装置可以应用于终端设备和/或边缘端设备(例如智能手机或摄像头)。在一个或多个实施例中,云端设备的硬件信息和终端设备和/或边缘端设备的硬件信息相互兼容,从而可以根据终端设备和/或边缘端设备的硬件信息,从云端设备的硬件资源中匹配出合适的硬件资源来模拟终端设备和/或边缘端设备的硬件资源,以便完成端云一体或云边端一体的统一管理、调度和协同工作。
需要说明的是,为了简明的目的,本披露将一些方法及其实施例表述为一系列的动作及其组合,但是本领域技术人员可以理解本披露的方案并不受所描述的动作的顺序限制。因此,依据本披露的公开或教导,本领域技术人员可以理解其中的某些步骤可以采用其他顺序来执行或者同时执行。进一步,本领域技术人员可以理解本披露所描述的实施例可以视为可选实施例,即其中所涉及的动作或模块对于本披露某个或某些方案的实现并不一定是必需的。另外,根据方案的不同,本披露对一些实施例的描述也各有侧重。鉴于此,本领域技术人员可以理解本披露某个实施例中没有详述的部分,也可以参见其他实施例的相关描述。
在具体实现方面,基于本披露的公开和教导,本领域技术人员可以理解本披露所公开的若干实施例也可以通过本文未公开的其他方式来实现。例如,就前文所述的电子设备或装置实施例中的各个单元来说,本文在考虑了逻辑功能的基础上对其进行划分,而实际实现时也可以有另外的划分方式。又例如,可以将多个单元或组件结合或者集成到另一个系统,或者对单元或组件中的一些特征或功能进行选择性地禁用。就不同单元或组件之间的连接关系而言,前文结合附图所讨论的连接可以是单元或组件之间的直接或间接耦合。在一些场景中,前述的直接或间接耦合涉及利用接口的通信连接,其中通信接口可以支持电性、光学、声学、磁性或其它形式的信号传输。
在本披露中,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元示出的部件可以是或者也可以不是物理单元。前述部件或单元可以位于同一位置或者分布到多个网络单元上。另外,根据实际的需要,可以选择其中的部分或者全部单元来实现本披露实施例所述方案的目的。另外,在一些场景中,本披露实施例中的多个单元可以集成于一个单元中或者各个单元物理上单独存在。
在另外一些实现场景中,上述集成的单元也可以采用硬件的形式实现,即为具体的硬件电路,其可以包括数字电路和/或模拟电路等。电路的硬件结构的物理实现可以包括但不限于物理器件,而物理器件可以包括但不限于晶体管或忆阻器等器件。鉴于此,本文所述的各类装置(例如计算装置或其他处理装置)可以通过适当的硬件处理器来实现,例如CPU、GPU、FPGA、DSP和ASIC等。进一步,前述的所述存储单元或存储装置可以是任意适当的存储介质(包括磁存储介质或磁光存储介质等),其例如可以是可变电阻式存储器(Resistive Random Access Memory,RRAM)、动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)、静态随机存取存储器(Static Random Access Memory,SRAM)、增强动态随机存取存储器(Enhanced Dynamic Random Access Memory,EDRAM)、高带宽存储器(High Bandwidth Memory,HBM)、混合存储器立方体(Hybrid Memory Cube,HMC)、ROM和RAM等。
依据以下条款可更好地理解前述内容:
条款1、一种机器学习模型的训练方法,所述机器学习模型用于图像复原处理,所述方法包括:
在正向训练中,基于基准图像和所述机器学习模型处理后的输出图像计算损失函数的值,其中所述损失函数保留所述基准图像中的结构性信息;以及
在反向训练中,基于所述损失函数更新所述机器学习模型的参数。
条款2、根据条款1所述的训练方法,其中所述结构性信息是图像中的边缘信息。
条款3、根据条款2所述的训练方法,其中计算损失函数的值包括:
检测所述输出图像中边缘处的模糊像素;以及
根据检测到的模糊像素,确定对所述输出图像与基准图像之间的像素误差进行加权的加权因子以供计算所述损失函数。
条款4、根据条款3所述的训练方法,其中检测所述输出图像中边缘处的模糊像素包括:
确定所述输出图像与所述基准图像的像素误差的第一方向;
确定所述基准图像中对应像素位置处相邻像素变化的第二方向;以及
将所述第一方向与第二方向一致的像素确定为模糊像素。
条款5、根据条款4所述的训练方法,其中确定所述基准图像中对应像素位置处相邻像素变化的第二方向包括:
计算所述基准图像中对应像素位置处与其相邻像素点的二阶梯度值,所述二阶梯度值的符号代表所述第二方向。
条款6、根据条款3-5任一所述的训练方法,其中根据检测到的模糊像素,确定对所述输出图像与基准图像之间的像素误差进行加权的加权因子包括:
对于检测到的模糊像素,增大所述模糊像素对应的像素误差的加权因子。
条款7、根据条款3-6任一所述的训练方法,其中根据检测到的模糊像素,确定对所述输出图像与基准图像之间的像素误差进行加权的加权因子还包括:
针对不同位置的模糊像素,根据所述基准图像中对应像素位置处的相邻像素变化的幅度确定对应的加权因子。
条款8、根据条款3-7任一所述的训练方法,其中按如下公式确定所述加权因子ωi,j:
ωi,j=1+αmi,j
其中ωi,j表示像素(i,j)处的加权因子,α表示惩罚因子,mi,j表示模糊因子图,其中0值表示非模糊像素,非0值表示模糊像素,表示所述输出图像在像素(i,j)处的像素值,表示所述基准图像在像素(i,j)处的像素值,ei,j表示像素(i,j)处的像素误差,表示基准图像上像素(i,j)处的二阶梯度值。
条款9、根据条款8所述的训练方法,其中所述损失函数LSP按如下计算:
其中,LSP表示损失函数,W、H分别表示所述基准图像和输出图像的宽度和高度像素数。
条款10、根据条款8-9任一所述的训练方法,其中所述惩罚因子是可调整的,并且惩罚因子越大,得到的输出图像中的边缘的锐度越高。
条款11、根据条款10所述的训练方法,其中所述惩罚因子为正实数,其范围优选大约为1.0~5.0,更优选为2。
条款12、根据条款1-11任一所述的训练方法,其中所述机器学习模型是基于神经网络的模型。
条款13、一种计算装置,用于训练机器学习模型,包括:
处理器,其配置用于执行程序指令;以及
存储器,其配置用于存储所述程序指令,当所述程序指令由所述处理器加载并执行时,使得所述处理器执行根据条款1-12任一所述的训练方法。
条款14、一种计算机可读存储介质,其中存储有程序指令,当所述程序指令由处理器加载并执行时,使得所述处理器执行根据条款1-12任一所述的训练方法。
条款15、一种计算机程序产品,包括计算机程序或指令,该计算机程序或指令被处理器执行时实现条款1-12任一所述的训练方法。
虽然本文已经示出和描述了本披露的多个实施例,但对于本领域技术人员显而易见的是,这样的实施例只是以示例的方式来提供。本领域技术人员可以在不偏离本披露思想和精神的情况下想到许多更改、改变和替代的方式。应当理解的是在实践本披露的过程中,可以采用对本文所描述的本披露实施例的各种替代方案。所附权利要求书旨在限定本披露的保护范围,并因此覆盖这些权利要求范围内的等同或替代方案。
Claims (15)
1.一种机器学习模型的训练方法,所述机器学习模型用于图像复原处理,所述方法包括:
在正向训练中,基于基准图像和所述机器学习模型处理后的输出图像计算损失函数的值,其中所述损失函数保留所述基准图像中的结构性信息;以及
在反向训练中,基于所述损失函数更新所述机器学习模型的参数。
2.根据权利要求1所述的训练方法,其中所述结构性信息是图像中的边缘信息。
3.根据权利要求2所述的训练方法,其中计算损失函数的值包括:
检测所述输出图像中边缘处的模糊像素;以及
根据检测到的模糊像素,确定对所述输出图像与基准图像之间的像素误差进行加权的加权因子以供计算所述损失函数。
4.根据权利要求3所述的训练方法,其中检测所述输出图像中边缘处的模糊像素包括:
确定所述输出图像与所述基准图像的像素误差的第一方向;
确定所述基准图像中对应像素位置处相邻像素变化的第二方向;以及
将所述第一方向与第二方向一致的像素确定为模糊像素。
5.根据权利要求4所述的训练方法,其中确定所述基准图像中对应像素位置处相邻像素变化的第二方向包括:
计算所述基准图像中对应像素位置处与其相邻像素点的二阶梯度值,所述二阶梯度值的符号代表所述第二方向。
6.根据权利要求3-5任一所述的训练方法,其中根据检测到的模糊像素,确定对所述输出图像与基准图像之间的像素误差进行加权的加权因子包括:
对于检测到的模糊像素,增大所述模糊像素对应的像素误差的加权因子。
7.根据权利要求3-6任一所述的训练方法,其中根据检测到的模糊像素,确定对所述输出图像与基准图像之间的像素误差进行加权的加权因子还包括:
针对不同位置的模糊像素,根据所述基准图像中对应像素位置处的相邻像素变化的幅度确定对应的加权因子。
10.根据权利要求8-9任一所述的训练方法,其中所述惩罚因子是可调整的,并且惩罚因子越大,得到的输出图像中的边缘的锐度越高。
11.根据权利要求10所述的训练方法,其中所述惩罚因子为正实数,其范围优选大约为1.0~5.0,更优选为2。
12.根据权利要求1-11任一所述的训练方法,其中所述机器学习模型是基于神经网络的模型。
13.一种计算装置,用于训练机器学习模型,包括:
处理器,其配置用于执行程序指令;以及
存储器,其配置用于存储所述程序指令,当所述程序指令由所述处理器加载并执行时,使得所述处理器执行根据权利要求1-12任一所述的训练方法。
14.一种计算机可读存储介质,其中存储有程序指令,当所述程序指令由处理器加载并执行时,使得所述处理器执行根据权利要求1-12任一所述的训练方法。
15.一种计算机程序产品,包括计算机程序或指令,该计算机程序或指令被处理器执行时实现权利要求1-12任一所述的训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111216791.8A CN116012233A (zh) | 2021-10-19 | 2021-10-19 | 机器学习模型的训练方法及相关产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111216791.8A CN116012233A (zh) | 2021-10-19 | 2021-10-19 | 机器学习模型的训练方法及相关产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116012233A true CN116012233A (zh) | 2023-04-25 |
Family
ID=86028467
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111216791.8A Pending CN116012233A (zh) | 2021-10-19 | 2021-10-19 | 机器学习模型的训练方法及相关产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116012233A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116680590A (zh) * | 2023-07-28 | 2023-09-01 | 中国人民解放军国防科技大学 | 基于工作说明书解析的岗位画像标签提取方法及装置 |
-
2021
- 2021-10-19 CN CN202111216791.8A patent/CN116012233A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116680590A (zh) * | 2023-07-28 | 2023-09-01 | 中国人民解放军国防科技大学 | 基于工作说明书解析的岗位画像标签提取方法及装置 |
CN116680590B (zh) * | 2023-07-28 | 2023-10-20 | 中国人民解放军国防科技大学 | 基于工作说明书解析的岗位画像标签提取方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhao et al. | Dd-cyclegan: Unpaired image dehazing via double-discriminator cycle-consistent generative adversarial network | |
CN111833237B (zh) | 基于卷积神经网络和局部单应性变换的图像配准方法 | |
CN114339409B (zh) | 视频处理方法、装置、计算机设备及存储介质 | |
Xie et al. | A binocular vision application in IoT: Realtime trustworthy road condition detection system in passable area | |
Liu et al. | Learning hadamard-product-propagation for image dehazing and beyond | |
Tseng et al. | Shape-from-focus depth reconstruction with a spatial consistency model | |
Zheng et al. | T-net: Deep stacked scale-iteration network for image dehazing | |
CN116012233A (zh) | 机器学习模型的训练方法及相关产品 | |
Yan et al. | A natural-based fusion strategy for underwater image enhancement | |
CN110458867A (zh) | 一种基于注意力循环网络的目标跟踪方法 | |
CN111369435A (zh) | 基于自适应稳定模型的彩色图像深度上采样方法及系统 | |
Wang et al. | A multi-scale attentive recurrent network for image dehazing | |
Chen et al. | Alfpn: adaptive learning feature pyramid network for small object detection | |
Deng et al. | UCT‐GAN: underwater image colour transfer generative adversarial network | |
Xia et al. | A coarse-to-fine ghost removal scheme for HDR imaging | |
Li et al. | Hybrid warping fusion for video frame interpolation | |
CN114445451A (zh) | 平面图像追踪方法、终端以及存储介质 | |
Schreiber et al. | Monocular depth estimation using synthetic data for an augmented reality training system in laparoscopic surgery | |
CN112817898A (zh) | 数据传输方法、处理器、芯片及电子设备 | |
Keyang et al. | Video Stabilization via Prediction with Time‐Series Network and Image Inpainting with Pyramid Fusion | |
Wenjie et al. | Research on super-resolution reconstruction algorithm of remote sensing image based on generative adversarial networks | |
Ruiqiang et al. | Improved object detection using data enhancement method based on generative adversarial nets | |
Yang et al. | An end‐to‐end perceptual enhancement method for UHD portrait images | |
CN114414065B (zh) | 物体温度探测方法、装置、计算机设备和介质 | |
Lei et al. | A monocular image depth estimation method based on weighted fusion and point‐wise convolution |
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 |