机器学习装置以及方法与流程

文档序号:30493212发布日期:2022-06-22 02:39阅读:144来源:国知局
机器学习装置以及方法与流程

1.本公开有关于一种机器学习技术,且特别是有关于消除伪相关的机器学习技术。


背景技术:

2.例如机器学习、神经网络等技术正广泛应用于人工智能技术领域。人工智能的重要应用之一是识别物件(例如,人脸、车牌等)或预测数据(例如,股票预测、医疗预测等)。物件检测以及数据预测可以经由特征提取以及特征分类来实现。
3.然而,用于特征提取以及特征分类的特征之间通常会发生伪相关(spurious correlation),并且伪相关总是会导致物件检测以及数据预测的预测精确度下降。


技术实现要素:

4.本公开的一实施例揭露一种机器学习方法,包括:藉由处理器从存储器中获取模型参数,并根据模型参数执行分类模型,其中分类模型包括多个神经网络结构层;藉由处理器根据多个训练样本计算第一损失以及第二损失,其中第一损失对应于多个神经网络结构层中的输出层,第二损失对应于多个神经网络结构层中位于输出层之前的一层;以及藉由处理器根据第一损失以及第二损失对模型参数执行多个更新操作以训练分类模型。
5.在一些实施例中,根据该些训练样本计算该第一损失以及该第二损失的步骤包括:藉由该处理器根据该些训练样本从该些神经网络结构层的该输出层产生多个预测标签;以及藉由该处理器对该些预测标签以及该些训练样本的多个训练标签进行比较以计算该第一损失。
6.在一些实施例中,根据该些训练样本计算该第一损失以及该第二损失的步骤包括:藉由该处理器根据该些训练样本从该分类模型中产生多个提取特征;以及藉由该处理器根据该些提取特征之间的统计独立性计算该第二损失,其中该些提取特征对应于该些神经网络结构层中的一层。
7.在一些实施例中,根据该第一损失以及该第二损失对该模型参数执行该些更新操作以训练该分类模型包括:藉由该处理器根据该第一损失以及该第二损失计算多个损失差;以及藉由该处理器根据该些损失差对该分类模型执行多个反向传递操作以更新该模型参数。
8.在一些实施例中,机器学习方法更包括:藉由该处理器根据该些提取特征以及该些训练样本的多个训练标签之间的平均处理效应计算一第三损失。
9.在一些实施例中,根据该第一损失以及该第二损失对该模型参数执行该些更新操作以训练该分类模型包括:藉由该处理器根据该第一损失、该第二损失以及该第三损失计算多个损失差;以及藉由该处理器根据该些损失差对该分类模型执行多个反向传递操作以更新该模型参数。
10.在一些实施例中,根据该些训练样本计算该第一损失以及该第二损失的步骤包括:藉由该处理器根据该些训练样本从该分类模型中产生多个提取特征;以及藉由该处理
器根据该些提取特征以及该些训练样本的多个训练标签之间的平均处理效应计算该第二损失,其中该些提取特征对应于该些神经网络结构中的一层。
11.在一些实施例中,根据该第一损失以及该第二损失对该模型参数执行该些更新操作以训练该分类模型包括:藉由该处理器根据该第一损失以及该第二损失计算多个损失差;以及藉由该处理器根据该些损失差对该分类模型执行多个反向传递操作以更新该模型参数。
12.在一些实施例中,输出层包括至少一全连接层,该些神经网络结构层中的一层包括至少一个卷积层。
13.在一些实施例中,该分类模型相关于神经网络。
14.本公开的另一实施例揭露一种机器学习装置,包括存储器以及处理器。存储器用以存储多个指令以及模型参数。处理器连接存储器,其中处理器用以运行分类模型,并执行多个指令以:从存储器中获取模型参数,并根据模型参数执行分类模型,其中分类模型包括多个神经网络结构层;根据多个训练样本计算第一损失以及第二损失,其中第一损失对应于多个神经网络结构层中的输出层,第二损失对应于多个神经网络结构层中位于输出层之前的一层;以及根据第一损失以及第二损失对模型参数执行多个更新操作以训练分类模型。
15.在一些实施例中,该处理器更用以:根据该些训练样本从该些神经网络结构层的该输出层产生多个预测标签;以及对该些预测标签以及该些训练样本的多个训练标签进行比较以计算该第一损失。
16.在一些实施例中,该处理器更用以:根据该些训练样本从该分类模型中产生多个提取特征;以及根据该些提取特征之间的统计独立性计算该第二损失,其中该些提取特征对应于该些神经网络结构层中的一层。
17.在一些实施例中,该处理器更用以:根据该第一损失以及该第二损失计算多个损失差;以及根据该些损失差对该分类模型执行多个反向传递操作以更新该模型参数。
18.在一些实施例中,该处理器更用以:根据该些提取特征以及该些训练样本的多个训练标签之间的平均处理效应计算一第三损失。
19.在一些实施例中,该处理器更用以:根据该第一损失、该第二损失以及该第三损失计算多个损失差;以及根据该些损失差对该分类模型执行多个反向传递操作以更新该模型参数。
20.在一些实施例中,该处理器更用以:根据该些训练样本从该分类模型中产生多个提取特征;以及根据该些提取特征以及该些训练样本的多个训练标签之间的平均处理效应计算该第二损失,其中该些提取特征对应于该些神经网络结构中的一层。
21.在一些实施例中,该处理器更用以:根据该第一损失以及该第二损失计算多个损失差;以及根据该些损失差对该分类模型执行多个反向传递操作以更新该模型参数。
22.在一些实施例中,该输出层包括至少一全连接层,该些神经网络结构层中的一层包括至少一个卷积层。
23.在一些实施例中,该分类模型相关于神经网络。
24.在电脑视觉以及电脑预测领域,深度学习的准确度主要依赖于大量标记的训练数据。随着训练数据的质量、数量以及种类的增加,分类模型的性能通常会相对提高。然而,分
类模型在提取特征以及训练标签之间总是存在显性伪相关或隐性伪相关。如果我们能去除显性伪相关或隐性伪相关,效率会更高且更准确。在本公开的上述实施例中,提出根据独立性损失以及平均处理效应损失调整模型,去除分类模型中的显性伪相关或隐性伪相关。因此,根据独立性损失以及平均处理效应损失调整模型参数可以提高模型的整体性能。
附图说明
25.图1示出了根据本公开的一实施例中一种机器学习装置的示意图。
26.图2示出了根据本公开的一实施例中一种机器学习方法的示意图。
27.图3示出了根据本公开的一实施例中分类模型以及损失的示意图。
28.图4示出了在一些实施例当中图2中一步骤的详细步骤的流程图。
29.图5示出了在另一些实施例当中图2中一步骤的详细步骤的流程图。
30.图6示出了在一些实施例当中图2中另一步骤的详细步骤的流程图。
31.图7示出了在一些实施例当中图2中额外步骤的流程图。
32.图8示出了在另一些实施例当中图2中另一步骤的详细步骤的流程图。
33.符号说明:
34.100:机器学习装置
35.110:处理器
36.120:存储器
37.mp:模型参数
38.111:分类模型
39.sl1、sl2、

slt:神经网络结构层
40.训练样本
41.预测标签
42.训练标签
43.提取特征
44.l1:第一损失
45.l2、l3:第二损失
46.s210~s230、s221~s223、s224a、224b、s231a、s231b、s232~s233、s220’:步骤
具体实施方式
47.现在将详细参照本公开的当前实施例,其例子在图式中示出。在可能的情况下,在图式以及描述中使用相同的图式标号来指出相同或相似的部分。
48.参照图1,图1示出了根据本公开的一实施例中一种机器学习装置的示意图。机器学习装置100包括处理器110以及存储器120。处理器110以及存储器120互相连接。
49.于一些实施例中,机器学习装置100可由电脑、服务器或处理中心建立。于一些实施例中,处理器110可由中央处理单元或计算单元实现。于一些实施例中,存储器120可以利
用快闪存储器、唯读存储器、硬盘或任何具相等性的存储组件来实现。
50.于一些实施例中,机器学习装置100并不限于包括处理器110以及存储器120,机器学习装置100可以进一步包括操作以及应用中所需的其他元件,举例来说,机器学习装置100可以更包括输出界面(例如用于显示资讯的显示面板)、输入界面(例如触控面板、键盘、麦克风、扫描器或快闪存储器读取器)以及通讯电路(例如wifi通讯模组、蓝牙通讯模组、无线电信网络通讯模组等)。
51.如图1所示,处理器110基于存储在存储器120中相应的软件/固件指令程序用以运行分类模型111。
52.于一些实施例中,分类模型111可以对输入的数据(例如上述的数据增强影像)进行分类,例如检测输入的影像当中具有车辆、人脸、车牌、文字、图片或是其他影像特征物件。分类模型111根据分类的结果产生相应的标签。需特别说明的是,分类模型111在进行分类运作时需参考本身的模型参数mp。
53.如第1图所示,存储器120用以存储模型参数mp。于一些实施例中,模型参数mp可包括多个权重参数内容。
54.于本实施例中,分类模型111包括多个神经网络结构层。于一些实施例中,各层神经网络路结构层可对应于模型参数mp中的一个权重参数内容(用于决定一个神经网络结构层的操作)。另一方面,分类模型111的各神经网络结构层可对应于相互独立的权重参数内容。换言之,各层神经网络结构层可对应于一个权重值集合,权重值集合可包括多个权重值。
55.于一些实施例中,神经网络结构层可以是卷积层、池化层、线性整流层、全连接层或其他类型的神经网络结构层。于一些实施例中,分类模型111可相关于神经网络(例如,分类模型111可由深度残差网络(resnet)以及全连接层组成,或者是由efficentnet以及全连接层组成)。
56.请一并参照图2,图2示出了根据本公开的一实施例中一种机器学习方法的示意图,图1所示的机器学习装置100可用以执行图2中的机器学习方法。
57.如图2所示,首先于步骤s210中,从存储器120中获取模型参数mp,并根据模型参数mp执行分类模型111。于一实施例中,存储器120中的模型参数mp可以是根据过往训练经验当中取得的平均值、人工给定的预设值、或是随机数值。
58.于步骤s220中,根据多个训练样本计算第一损失以及第二损失,其中第一损失对应于多个神经网络结构层中的输出层,第二损失对应于多个神经网络结构层中位于输出层之前的一层。于一实施例中,第一损失由处理器110从分类模型111的神经网络结构层的输出层产生,第二损失由处理器110从输出层之前的神经网络结构层产生。于一些实施例中,输出层可包括至少一全连接层。后续将配合具体的例子,进一步说明步骤s220在一些实施例当中的详细步骤。
59.于步骤s230中,根据第一损失以及第二损失对模型参数mp执行多个更新操作以训练分类模型111。于一实施例中,处理器110在更新操作中根据第一损失以及第二损失更新模型参数mp以产生更新后的模型参数mp,并根据更新后的模型参数mp训练分类模型111以产生训练后的分类模型111。后续将配合具体的例子,进一步说明步骤s230在一些实施例当中的详细步骤。
60.藉此,训练后的分类模型111可用以执行后续应用。例如,训练后的分类模型111可用于输入图片、影像、串流当中的物件识别、人脸识别、音频识别或动态侦测等,或可用于关于股票数据或天气资讯的数据预测。
61.请一并参照图3以及图4,图3示出了根据本公开的一实施例中分类模型以及损失的示意图。图4示出了在一些实施例当中步骤s220的详细步骤s221至s224a的流程图。
62.如图3所示,分类模型111包括神经网络结构层sl1、sl2、

slt。在一些实施例中,t为正整数。一般而言,分类模型111中的总层数可以根据实际应用的需求(例如,分类的精确度、分类目标物的复杂度、输入影像的差异性)而定。在某些情况下,t的常见范围可以在16到128之间,但本公开文件并不以特定层数为限。
63.举例而言,神经网络结构层sl1及sl2可以是卷积层,神经网络结构层sl3可以是池化层,神经网络结构层sl4及sl5可以是卷积层,神经网络结构层sl6可以是池化层,神经网络结构层sl7可以是卷积层,神经网络结构层sl8可以是线性整流层,神经网络结构层slt可以是全连接层,但本公开文件并不以此为限。
64.于一些实施例中,分类模型111可具有多个残差映射区块(residual mapping block),藉由使用残差映射区块的结构,可以大大降低t。以下以分类模型111的这种结构为例,以进一步说明步骤s221至步骤s224a。
65.需特别补充的是,为了说明上的方便,图3中的分类模型111仅仅是例示性说明而示出具有残差映射区块的模型(例如resnet模型),但本公开文件并不以此为限。实际应用中,分类模型111可以是其他类型的卷积神经网络。于一些实施例中,分类模型111可以是efficentnet模型。
66.如图3以及图4所示,于步骤s221中,藉由处理器110根据训练样本从神经网络结构层sll、sl2、

slt的输出层slt产生多个预测标签值得注意的是,n是训练样本的数量,n也是预测标签的数量,n可以是正整数,且i可以是不大于n的正整数。如图3所示,当训练样本xi输入到分类模型111时,经由神经网络结构层sll、sl2、

slt的运算,可从分类模型111的神经网络结构层slt(即输出层)产生预测标签以此类推,可以将训练样本输入分类模型111以产生预测标签
67.如图3以及图4所示,于步骤s222中,藉由处理器110执行比较演算法将预测标签以及训练样本的多个训练标签进行比较,以产生第一损失l1。如图3所示,将预测标签以及训练样本xi的训练标签yi进行比较计算损失。以此类推,藉由处理器110执行比较演算法将预测标签以及训练标签进行比较以计算出多个损失,且藉由处理器110根据这些损失(即,传统的损失函数(loss function))产生第一损失l1。于在一些实施例中,可藉由处理器110对预测标签以及训练标签执行交叉熵(cross entropy)计算以获得第一损失l1。
68.如图3以及图4所示,于步骤s223中,藉由根据训练样本从分类模型111中生
成多个提取特征如第3图所示,将训练样本xi输入到分类模型111后,可经由神经网络结构层sl1、sl2、

slt-1的操作从分类模型111的神经网络结构层lt-1的人工神经元(artificial neuron)计算提取特征hi,1、hi,2、

hi,m,其中m可以是正整数并等于人工神经元的数量,且提取特征hi,1,hi,2,

hi,m分别对应于神经网络结构层lt-1中的人工神经元。此外,提取特征hi,1,hi,2,

hi,m也可以分别对应于神经网络结构层lt-1之前的任一神经网络结构层中的人工神经元。以此类推,可由人工神经元计算与训练样本对应的提取特征
69.值得注意的是,提取特征以及训练标签之间可能存在伪相关(spurious correlation)。详细而言,假设第一提取特征对第二提取特征以及训练标签yi都存在因果相关(causally related),但是第二提取特征以及训练标签yi彼此之间没有因果相关。基于此,可将第二提取特征以及训练标签yi相关联(associated)。当第二提取特征的数值随着标签的变化线性增加时,第二提取特征以及训练标签yi之间存在伪相关。如果可以观察到导致伪相关的提取特征(即,第一提取特征、第二提取特征以及训练标签yi之间的关系),则伪相关属于显性(explicit)。否则,伪相关可被认为是隐性(implicit)(即,第二提取特征以及训练标签yi之间的关系)。伪相关将会导致预测标签以及训练标签的差异更大。
70.例如,若患者临床影像具有病灶的细胞组织以及与细胞组织颜色相似的骨胳,则导致骨胳的提取特征以及病灶的标签之间的显性伪相关(explicit spurious correlation)。于另一例子中,患者临床影像通常具有背景,患者临床影像中的病灶以及背景相似。因此,这导致了背景提取特征与病灶标签之间的隐性伪相关(implicit spurious correlation)。
71.为了避免伪相关,以下段落进一步描述了使用统计独立性(statistical independence)消除显性伪相关以及使用平均处理效应(average treatment effect,ate)消除隐性伪相关的细节。
72.如图3以及图4所示,于步骤s224a中,藉由处理器110根据提取特征之间的统计独立性计算第二损失l2,其中提取特征对应于神经网络结构层sl1、sl2、

slt中的一层(即神经网络结构层slt-1)。具体而言,随机变量(random variable)的统计独立性如下公式(1)所示。
73.e(a
pbq
)=e(a
p
)e(bq)
……
(1)
74.其中e(.)表示随机变量的期望值,a以及b为随机变量,p以及q为正整数。根据公式(1),独立性损失可以用下面的公式(2)表示。
75.independent loss=-|e(a
pbq
)-e(a
p
)e(bq)|
……
(2)
76.如第3图所示,藉由将随机变量替换为提取特征公式(2)可以改写为以下公式(3),其表示第二损失l2(即,提取特征之间的独立性损
失)。
[0077][0078]
其中j以及k为正整数且不大于m。藉由公式(3),根据提取特征计算第二损失l2。于一些实施例中,公式(3)的第二损失可以进一步乘以重要性值(importance value)以产生第二损失l2,其中重要性值大于零且是控制独立性损失的重要性的超参数。
[0079]
请一并参照图5,图5示出了在另一些实施例当中步骤s220的详细步骤s221至s224b的流程图。
[0080]
值得注意的是,图4与图5的区别仅在于步骤s224b。换言之,除了执行步骤s224a以产生第二损失之外,可选地,也可执行步骤s224b以产生第二损失。因此,以下仅针对步骤s224b进行说明,其余步骤不再赘述。
[0081]
如图3以及图5所示,于步骤s224b中,藉由处理器110根据提取特征以及训练样本的训练标签之间的平均处理效应计算第二损失l3,其中提取特征对应于神经网络结构层sl1、sl2、

slt中的一层(即,神经网络结构层slt-1)。详细而言,随机变量的平均处理效应(即,因果性)如下公式(4)所示。
[0082][0083]
其中p(.)表示随机变量的机率,yi和ti是随机变量,ti∈{0,1}且代表治疗,且是观察结果,且是共变向量(covariate vector),以及
[0084]
如第3图所示,藉由将yi以及ti替换为训练标签以及经由强激活函数(hard sigmoid)处理的提取特征公式(4)可以改写为如下公式(5)。
[0085][0086]
其中第j个提取特征的损失是指对应于提取特征h1,j、h2,j、

hn,j的因果性损失(即,平均处理效应损失),σ(x)是指范围为的强激活函数。基于公式(5),指示提取特征的平均处理效应的第二损失l3如下公式(6)所示。
[0087]
[0088]
藉由公式(6),根据提取特征以及训练样本的训练标签计算第二损失l3。于一些实施例中,公式(6)的第二损失还可进一步乘以另一重要性值以产生第二损失l3,其中另一重要性值也大于零且是控制平均处理效应损失的重要性的另一超参数。
[0089]
请一并参照图6,图6示出了在一些实施例当中步骤s230的详细步骤s231a至s233的流程图。
[0090]
如图6所示,于步骤s231a中,藉由处理器110根据第一损失以及第二损失计算损失差。详细而言,藉由处理器110执行第一损失以及第二损失之间的差值运算以产生损失差(即,第一损失减去第二损失)。值得注意的是,第二损失可以由图4的步骤s224a或图5的步骤s224b产生。换言之,可根据第一损失以及独立损失或根据第一损失以及平均处理效应损失以计算损失差。
[0091]
此外,还可以同时根据第一损失、第4图中的步骤s224a产生的第二损失以及图5中的步骤s224b产生的第二损失计算损失差(更详细的内容将在下面的段落中藉由一些例子进行说明)。
[0092]
于步骤s232中,判断损失差是否收敛。于一些实施例中,当损失差收敛时,损失差可接近或等于根据统计实验结果所产生的差阈值。
[0093]
于本实施例中,若损失差没有收敛,则执行步骤s233。于步骤s233中,藉由处理器110根据第一损失以及第二损失对分类模型执行反向传递(backpropagation)操作以更新模型参数mp。换言之,根据基于第一损失以及第二损失的反向传递,从模型参数mp产生更新的模型参数。
[0094]
藉此,继续重复步骤s233、s220以及s231a,以迭代的方式逐渐更新模型参数mp。如此一来,损失差将逐渐最小化(即,第二损失逐渐最大化),直到损失差接近或等于差阈值。反之,若损失差收敛,则表示机器学习装置100已完成训练,训练后的分类模型111可用于执行后续应用。
[0095]
基于上述实施例,藉由使用步骤s224a中的第二损失,可以在步骤s230中去除属于显性伪相关的提取特征。此外,藉由使用步骤s224b中的第二损失,可以在步骤s230中去除属于隐性伪相关的提取特征。
[0096]
请一并参照图7,图6示出了在一些实施例当中在步骤s224a之后的额外步骤的流程图。
[0097]
如图7所示,步骤s220’a以与在步骤s224b中计算第二损失相同的方式计算第三损失。换言之,这表示在藉由处理器110产生第一损失后,产生独立损失以及平均处理效应损失。由于步骤s220’a以及步骤s224b类似,此步骤不再赘述。
[0098]
请一并参照图8,图8示出了在另一些实施例当中步骤s230的详细步骤s231b至s233的流程图。
[0099]
值得注意的是,图6以及图8的区别仅在于步骤s231b。换言之,除了执行步骤s231a以产生损失差之外,可选地,也可进行步骤s231b以产生损失差。因此,以下仅针对步骤s231b进行说明,其余步骤不再赘述。
[0100]
如图8所示,在执行完步骤s220’之后,再执行步骤s231b。于步骤s231b中,藉由处理器110根据第一损失、第二损失以及第三损失计算损失差。详细而言,藉由处理器110执行第一损失以及第二损失之间的差值运算以产生第一差值,然后在第一差值以及第三个损失
之间执行另一差值运算以生成损失差(即,第一损失减去第二损失,然后再减去第三损失)。因此,于步骤s233中,根据基于第一损失、第二损失以及第三损失的反向传递从模型参数mp产生更新的模型参数。藉此,同样继续重复步骤s233、s220以及s231b,以迭代的方式逐渐更新模型参数mp。如此一来,类似地,损失差也逐渐最小化(即,第二损失以及第三损失逐渐最大化),直到损失差接近或等于差阈值。
[0101]
基于上述实施例,藉由同时利用步骤s224a中的第二损失以及s220'中的第三损失,可以在步骤s230中去除属于显性伪相关以及隐性伪相关的提取特征。
[0102]
如图1所示,在机器学习装置100的训练过程中,根据第一损失以及第二损失更新分类模型111的模型参数mp,以避免提取特征以及训练标签之间的显性伪相关或隐性伪相关,其中第二损失可以是独立性损失或平均处理效应损失。此外,藉由利用独立性损失以及平均处理效应损失调整模型参数mp可以去除显性伪相关以及隐性伪相关,从而大大提高分类模型111的预测精确度。
[0103]
在电脑视觉以及电脑预测领域,深度学习的准确度主要依赖于大量标记的训练数据。随着训练数据的质量、数量以及种类的增加,分类模型的性能通常会相对提高。然而,分类模型在提取特征以及训练标签之间总是存在显性伪相关或隐性伪相关。如果我们能去除显性伪相关或隐性伪相关,效率会更高且更准确。在本公开的上述实施例中,提出根据独立性损失以及平均处理效应损失调整模型,去除分类模型中的显性伪相关或隐性伪相关。因此,根据独立性损失以及平均处理效应损失调整模型参数可以提高模型的整体性能。
[0104]
于应用层面上,本公开文件的机器学习方法与机器学习系统可以用在各种具有机器视觉、图像分类、数据预测或是数据分类的领域,举例而言,此机器学习方法可以用在医疗影像的分类,像是可以识别正常状态、患有肺炎、患有支气管炎、患有心脏疾病的x光影像,或是可以识别正常胎儿、胎位不正的超音波影像。机器学习方法还可用于预测未来股票数据的上涨或下跌。另一方面,此机器学习方法也可以用在自动驾驶收集之影像的分类,像是可以识别正常路面、有障碍物的路面及其他车辆的路况影像。还有其他与此类似的机器学习领域,举例而言,本公开文件的机器学习方法与机器学习系统也可以用在音谱识别、光谱识别、大数据分析、数据特征识别等其他有关机器学习的范畴当中。
[0105]
虽然本公开的特定实施例已经公开有关上述实施例,此些实施例不意欲限制本公开。各种替代及改良可藉由相关领域中的一般技术人员在本公开中执行而没有从本公开的原理及精神背离。因此,本公开的保护范围由所附申请专利范围确定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1