关于机器学习/深度学习的一些事-答知乎问(六)

如何使用频率域变换对序列数据进行增强?

时频变换是常见的信号分析思路,同样可用于数据增强。在频率域添加噪声是方法之一。比如可以对传感器信号应用短时傅里叶变换STFT得到具有时序关系的谱特征,再在谱特征上应用两种数据增强方法。一是对每一个属性做局部平均,将局部平均序列拼接在原始序列的后面;二是打乱时序顺序,以增加数据的方差,这种方法会使得数据尺寸发生变化。由于STFT 变换得到的谱特征仍然具有时序关系,这种数据增强方法也被认为是在时间-频率域上进行的。

赋值调整傅里叶变换AAF及由其衍生的IAAFT可实现只在频率域进行数据增强,这类方法很好地保留了时域和频域特征,但不适合短周期信号。

对于音频数据,SpecAugment是一种在时间-频率域上做数据增强的方法,在信号的对数梅尔频谱上操作。下图a展示了一段信号的对数梅尔频谱,频谱图的横轴是时间轴,纵轴是频率大小。在时间轴上,可以进行时间规整或时间掩蔽,分别如图(b)和图(c)。

图片

时间规整是在序列中随机选择一个时间点,拉伸该点之前(之后)的信号,压缩该点之后(之前)的信号,保证序列的长度不发生改变;时间掩蔽是在整个序列中用指定值填充一随机片段。在频率轴也可以进行类似的掩蔽操作,形成图(d)的效果,被称为频率掩蔽。实验证明该方法在语音识别任务上可以显著降低字错误率。上述方法都是针对单个序列做数据增强,生成的效率更高,但只利用序列本身的性质,没有考虑数据集整体的分布。

时间序列数据增强方法(几何变换)?

几何变换是最简单和常用的数据增强方法,如变换取值维度的翻转、缩放或变换时间维度的窗口规整等,分别如图(b)~(d)所示。

图片

图中蓝色虚线是原始序列,红色实线是变换序列。类似“翻转”方法也可以应用在时间维度上,被称作时间镜像操作。窗口规整、下采样等操作会改变序列长度,可能需要引入额外操作来保持整体长度不变。

应用不同几何变换会产生不同的结果。例如,对于异常检测任务,缩放操作可能会将异常值缩放到正常范围内,窗口规整就不会;窗口规整或下采样操作可能会丢失异常点;翻转操作不适合预测任务,因为操作彻底改变了原序列的趋势。总而言之,几何变换方法相对简单、直观,易于结合具体任务分析不同操作的合理性,但每次只对一个序列进行操作,没有考虑数据集整体的分布特点。

此外,再说一下窗口裁剪。对序列数据进行裁剪,被称为窗口裁剪或窗口切片,通过一个滑动窗口在序列上不断滑动取样,生成多个长度更短的新序列。可将新序列拉长到与原序列长度相同,如图(e)所示;或在采样过程中引入随机性,只保留部分新序列。将这种方法应用在异常检测任务时要小心异常点是否被裁去。

对于自然语言文本,类似的做法是随机删除。针对文本数据的很多数据增强方法会改变文本长度,但自然语言模型对于文本长度并不敏感,长度的变化不影响数据进入后续的训练流程。

域适应方法如何进行创新?

(1)双向域适应

域适应的发展仍然面临更高难度挑战,例如,在域适应问题中,SVHN→MNIST 的准确率能够从 70.7% 提高到 99.3% 。而对于 MNIST→SVHN 的反向域适应,如果没有针对特定问题的超参数调 优,准确率最高只能达到81.7%,这表明反向域适应存在较大的难度。

(2)超参数调优

反向验证和针对特定问题的匹配方法已经应用于超参数调优,这些方法并不需要目标标签。由于计 算成本的增加或反向验证精度与测试精度不一致的问题存在,大多数方法并没有将反向验证广泛使用。

(3)结合改进的图像到图像的迁移方法

结合改进的图像到图像的迁移方法也被应用在域适应中。例如,由于区域差异较大,PixelDA 方法难以直接应用。因此,类似于XGAN(图像到图像的转换,可以支持差异较大的域转换)方法被开发出来,此类方法允许域之间存在更实质性的差异,并且可以直接扩展到域适应问题中。

(4)异构数据挖掘

虽然深度域适应技术已被成功应用于许多实际应用中,如图像分类、风格转换、目标检测、人脸识别、语义分割和行人重识别等。但现有的算法大多集中于同构深度数据挖掘,即源域和目标域之间的特征空间是相同的。而这一假设在许多应用中并不成立,如图像域到文本域的迁移。我们希望在没有这种苛刻假设的情况下传递领域知识,更好地解决目标域任务。虽然目前已有异构域适应的相关研究 被提出,但其实际效果并不佳,目前尚未有有效算法突破这一瓶颈。

(5)探索域边界

现有的深度域适应研究方法通常会明确给定分布已知的源域和目标域。但在实际情景中,如何准确定义分布未知的域边界对域适应建模至关重要。例如,在自动驾驶场景中,当前驾驶状态受多个因 素影响,如天气、光照、路面状况和车速等,而驾驶状态会随着客观因素的影响连续发生变化。此时面临的首要问题是对域边界进行检测,以判断何种驾驶状态下需要对模型进行迁移。遗憾的是,目前域边界探索研究还相对薄弱,将来有待更深入的研究。

(6)最优纳什平衡点

基于对抗的域适应模型通过博弈的训练策略实现训练,领域生成器与域判别器之间需要达到最优纳什平衡点,以确保模型能够筛选和生成高质量样本。但在实际场景中,生成对抗网络通常存在不同的平衡态,若模型训练未收敛到最优平衡点,则会导致模型学习不充分,即纳什平衡任务存在多个平衡点且多个平衡点之间关联性弱的问题。因此,如何寻找全部平衡点仍是目前学术界的公认难点之一,受该限制的影响,生成对抗机制在理论层面存在非最优平衡状态等诸多不利因素。遗憾的是,现有方法无法从理论证明角度出发推导模型的全局最优纳什平衡点,从而导致模型陷入局部平衡,限制模型实际表现。

目标检测失衡问题所面临的挑战是什么?

(1)抽象特征层语义提取方式。

较高层次的特征包括对象或者部分对象的高级语义相对低层次的信息(边缘、轮廓等)更难提取。例如一只熊猫头的图片高层语义特征只显示一张脸的轮廓。目前的解决方案大多采用特征融合(FPN、HRNet),但会引入高低层特征信息不对等和高低层特征之间在空间上存在不对齐的问题。因此设计可行的特征筛选机制和利用图像的帧来对齐高低层特征或许可以提高高层语义的利用率。

(2)分析异常值和不变量对回归损失函数的影响。

目前关于损失函数的研究方法中研究者根据具体问题描述损失函数的结果。例如,AP Loss 损失的计算是基于所有BBs 的置信度得分的单个示例的排名,因此损失是由整个集合得到而不是单个示例,却因单个或者个别异常值降低模型整体性能。因此是否可以借鉴LSTM中“过滤门”的思想减小异常值和不变量引导整体的性能。

(3)剖析损失函数失衡问题,损失函数在深度学习目标检测中直接反映一个模型的性能。

然而目前的研究都在优化损失失衡,未考虑失衡原因。基于距离度量的损失函数和基于概率分布计算的损失函数失衡的诱因不同。是否可以采用对抗训练的方式引入重构损失和分类损失对失衡问题引入额外约束探索此类问题。

(4)Anchors 相似性对失衡问题的影响,单阶段目标检测器的显著效果依赖于大量的锚,因此数据失衡问题在单阶段检测器中异常突出。Anchors 之间的相似性关系是否可以通过Anchor based 和Anchorfree 融合解决此类问题有待研究。

(5)量化与评估失衡问题,失衡问题发生在深度学习目标检测的每个环节。但在多样化的应用场景下如何量化失衡问题并且建模一个具有鲁棒性的评估模型将会是一个研究趋势。今后可以综合准确度、精度、召回率和平均精度等的计算方法评估每个环节的平衡度结果供研究人员参考。

深度学习目标检测算法针对失衡问题的优化策略是什么?

数据失衡问题主要改进思路是从采样的角度优化失衡问题,优势是直接且高效,局限性表现在内存和时间成本上。

(1)前景/背景失衡的优化方案在早期主要采用硬采样,核心思想是设置固定数量或者比例的正负样本优化失衡问题,优势是启发式抽样提高算法精度,局限性主要表现在时间成本上。软采样方案的核心思想是通过对训练过程的相对权重来设定样本损失权重,优势是训练更高效,局限性表现在泛化性上。无采样方法的核心思想是引入新的分支,根据前一批样本预测后一批样本的权重。优势是分类问题转化为排序问题更精确,局限性表现为超参数过量。近期出现的生成式方案主要是基于GAN的生成器和判别器组成的一系列方法,优势是提高召回率,局限性表现在训练时间上。

(2)前景/前景问题的优化主要是针对数据集失衡和每个批次内的类别失衡问题。基于数据集的失衡代表作是pRoI Generator,生成新的图像和类别进行优化;基于批次内的类别失衡优化思路是提升捕捉类间关系实现不同样本之间的协作关系,使得样本之间达到平衡如Batch Former。综合评价两种改进方向各有优缺点,并且探索样本关系会一直是优化前景/前景失衡的热门话题。

(3)类别标签失衡的优化策略中重采样方法是具有优势的,因为它脱离于分类器且不需要任何特定的多标签分类器来预处理MLD。但标签之间失衡的差异以及标签之间的高并发会直接影响重采样结果。因此在低并发的情况下是最有优势的策略。分类器自适应是依赖分类器进行优化的策略,优势是直接从数据集的分布中学习且自适应输出结果。但由于分类器是根据实验环境设计则很难在不同的环境中适用。集成方法的创新点在于集合几个基本模型的优点来产生一个最优的预测模型,可以完成多样化的多标签预测,异构集成突破了同时解决样本失衡和标签相关性的问题,然而该方案存在计算复杂性问题。

(4)长尾数据失衡的优化方案中类-再平衡方法相对简单,却取得很好的效果。但该方法是以牺牲头类性能为代价来改善尾类性能。虽然整体性能有所提高,却无法从本质上解决缺少信息的问题。为了解决这一局限性,提出对所有类进行信息扩充,即信息增益。信息增益的代表方案是数据增强,一种运用类条件统计量来优化失衡问题的方案。该方案可以保证在不牺牲头部信息的条件下提高尾部性能。然而,简单地使用现有的与类无关的增强技术来改进长尾学习是不利的,因为头部类有更多的样本会被更多地增强,存在进一步增加失衡的风险。模型改进方案中解耦训练越来越受到关注。该方法在类-再平衡分类器学习的第二阶段不引入大量计算开销,却带来显著的性能提升。解耦训练的思想在概念上很简单,易于设计解决各种长尾学习问题的新方法,但同时也伴随着训练时间的问题。

目标检测中的分类与回归失衡是什么?

目标检测任务中包含分类任务和回归任务,分类的目的是目标识别,而回归的任务是位置的回归,实现目标定位。分类与回归都是监督学习,对输入的数据进行预测。其中分类的输出结果是分散的,例如目标所属的类别,猫、狗、熊等,最终的目的是得到一个决策面。回归的输出结果是连续的目标值,最终目的是得到一个最优拟合线。分类的分支任务是用来目标识别,回归的分支任务是用来实现目标定位。

分类与回归失衡是指训练过程中目标(损失)功能被最小化。根据定义,目标检测要同时解决分类和回归任务,如下图所示。

图片

然而不同的任务可能由以下情况导致失衡:

(1)如果分类损失函数相较于回归损失下降速度很快,会导致其中一个任务主导整个训练,如下图。

图片

(2)不同任务的损失函数范围不同,导致了任务之间的失衡,如下图。

图片

(3)各个任务的训练成本不同直接影响任务的学习速度,从而影响训练结果,如下图。

图片

域适应的应用领域和发展方向?

先简单说几个域适应的应用

(1)计算机视觉领域

现有的域适应方法大多面向计算机视觉任务,例如,将合成图像训练的模型适应于真实照片。在游戏行业中,游戏图像与真实场景之间存在领域差异,域适应成为解决该问题的主要手段。医学图像 领域中 ,域适应也能将心脏核磁共振图转化为CT图。此外,域适应方法也用于自主导航、胸部X射线分割、3D CT 扫描到 X 射线分割、目标检测、行人重识别等。

(2)自然语言处理领域

域适应还可用于自然语言处理问题,如情绪分析、文本分类、问题回答、机器翻译、词表征学习以及关系提取等。基于深度学习的域适应方法使得自然语言处理众多任务取得了重大进展。一方面,可以成功运用于分词、词性标注、成分分析、语义表示等任务;另一方面,可以提升问答系统、对话系统、阅读理解等应用系统的性能。

(3)时间序列数据领域

域适应在时间序列数据中应用广泛,既可用于学习提取不同年龄人口健康数据中的时间潜在关系,也可用于语音识别 、预测驾驶动作 、异常检测等。在领域泛化相关问题方法中,时间序列无线电数据被用于睡眠阶段分类,时间序列数据也可以结合预训练和微调等方式,解决源数据集与目标数据集标签空间不同的问题。

发展方向

(1)双向域适应

域适应的发展仍然面临更高难度挑战,例如,在域适应问题中,SVHN→MNIST 的准确率能够从 70.7% 提高到 99.3% 。而对于 MNIST→SVHN 的反向域适应,如果没有针对特定问题的超参数调 优,准确率最高只能达到81.7%,这表明反向域适应存在较大的难度。

(2)超参数调优

反向验证和针对特定问题的匹配方法已经应用于超参数调优,这些方法并不需要目标标签。由于计 算成本的增加或反向验证精度与测试精度不一致的问题存在,大多数方法并没有将反向验证广泛使用。

(3)结合改进的图像到图像的迁移方法

结合改进的图像到图像的迁移方法也被应用在域适应中。例如,由于区域差异较大,PixelDA 方法难以直接应用。因此,类似于XGAN(图像到图像的转换,可以支持差异较大的域转换)方法被开发出来,此类方法允许域之间存在更实质性的差异,并且可以直接扩展到域适应问题中。

(4)异构数据挖掘

虽然深度域适应技术已被成功应用于许多实际应用中,如图像分类、风格转换、目标检测、人脸识别、语义分割和行人重识别等。但现有的算法大多集中于同构深度数据挖掘,即源域和目标域之间的特征空间是相同的。而这一假设在许多应用中并不成立,如图像域到文本域的迁移。我们希望在没有这种苛刻假设的情况下传递领域知识,更好地解决目标域任务。虽然目前已有异构域适应的相关研究 被提出,但其实际效果并不佳,目前尚未有有效算法突破这一瓶颈。

(5)探索域边界

现有的深度域适应研究方法通常会明确给定分布已知的源域和目标域。但在实际情景中,如何准确定义分布未知的域边界对域适应建模至关重要。例如,在自动驾驶场景中,当前驾驶状态受多个因 素影响,如天气、光照、路面状况和车速等,而驾驶状态会随着客观因素的影响连续发生变化。此时面临的首要问题是对域边界进行检测,以判断何种驾驶状态下需要对模型进行迁移。遗憾的是,目前域边界探索研究还相对薄弱,将来有待更深入的研究。

(6)最优纳什平衡点

基于对抗的域适应模型通过博弈的训练策略实现训练,领域生成器与域判别器之间需要达到最优纳什平衡点,以确保模型能够筛选和生成高质量样本。但在实际场景中,生成对抗网络通常存在不同的平衡态,若模型训练未收敛到最优平衡点,则会导致模型学习不充分,即纳什平衡任务存在多个平衡点且多个平衡点之间关联性弱的问题。因此,如何寻找全部平衡点仍是目前学术界的公认难点之一,受该限制的影响,生成对抗机制在理论层面存在非最优平衡状态等诸多不利因素。遗憾的是,现有方法无法从理论证明角度出发推导模型的全局最优纳什平衡点,从而导致模型陷入局部平衡,限制模型实际表现。

知识图谱补全技术存在的主要问题有哪些?

模型关系复杂性高

知识图谱是通过关系来连接数据,而知识图谱中的关系 种类较为复杂,单一结构的模型在处理多种关系时,往往会出现很多问题。模型的结构在 一定程度上会对关系的处理产生影响,单一结构的模型在数 据处理上更有效率,而往往会受限于对关系种类的处理。

语义信息难以获取

知识图谱本质上也是图,作为一种非欧数据结构,采用传统的欧式几何处理方法会产生维度过高,计算复杂等问题。在知识图谱补全技术中,一些模型采用分割处理的方式,只对图谱中的一部分几何结构进行处理,这种方式往往割裂了不同三元组之间的关系,难以拟合图谱中语义信息的获取。

训练代价高

大规模知识图谱结构复杂,数据庞大,从数据收集、数据清洗、对比分析到图谱的构建,整个流程自动化程度不高,知识图谱补全技术往往将知识图谱拆分为多组三元组,因其结构及数据本身的复杂性,导致补全模型的训练效率低。这在神经网络 结构模型上表现较为明显,神经网络对一个三元组往往会有多层的信息传递和计算,这虽然增强了对关键信息捕捉的能力,但一定程度上加重了模型训练负担,使得模型训练代价高。

模型可扩展性、通用性差

大多数知识图谱补全模型都是对同一时间点的图谱内容进行补全,模型在训练时也只是针对训练集中已有的三元组,无法推测出数据中未知的三元组数据,这种静态的补全方式难以适应外界环境的 变化,模型的可扩展性差。

路径数量增长过快

在知识图谱中进行路径查找,可以进行更加复杂的知识推理,但在大规模的图谱中存在路径数量增长过快及冗余信息过多等问题。

医学知识图谱如何创新?

随便说几个

(1)注重医学知识图谱构建过程中各技术间的联合训练。 现有知识图谱构建过程中,已出现利用实体关系联合抽取的方法来同时提高实体、关系抽取的准确度。由于医学知识的逻辑性强,故知识推理的准确度会更依赖实体和关系的抽取结果。因此,可尝试将构建过程进行关联,即将实体、关 系抽取与知识推理相联合,以提高实体、关系抽取的准确度。

(2)尝试弱监督、无监督的医学知识图谱构建。现有医学知识图谱构建技术大多需要人工事先标注部分数据,这带来了不确定性,也不利于知识图谱的扩大。故可在知识图谱的构建中进一步引入弱监督、无监督的方法,以解决人工标注数据所带来的问题。

(3)多领域医学知识图谱融合。现有的医学知识图谱较多的是针对特定医学领域,缺少包含多病种、组织的知识图谱。但由于特定医学领域的专业性强,故直接构建多领域医学知识图谱存在诸多困难。为此可融合多个特定领域医学知识图谱,间接实现多领域医学知识图谱构建。

小目标检测算法的评估指标有哪些?

IoU 是目标检测中常用的评估指标,IoU 的发展随后经历了GIoU、DIoU、CIoU 等。上述评价指标对于普通中大目标已有较好的效果,但是由于IoU 对小目标过于敏感,效果仍显不足。因此采用一种合适的评价指标能够提高小目标的定位精度。

SIoU

传统的目标检测损失函数依赖于预测框和真实框的距离、重叠区域以及纵横比等边界框回归指标。现如今的方法没有考虑真实框与预测框之间方向的匹配度,在训练过程中预测框可能徘徊于真实值,导致收敛速度较慢、效率较低。

SIoU 损失函数由Angle cost、Distance cost、Shapecost、IoU cost 这4 个损失函数组成。最终的损失函数由框损失和分类损失两部分组成:

图片

由于SIoU 考虑了真实框与预测框之间的角度,辅助了两框之间距离的计算,因此加快了网络的收敛速度,防止网络在最优解附近跳动,但不能确保网络收敛于最优点。此外角度、距离以及形状三者的损失权重没有更好的定义,SIoU 在不同数据集上的效果不一。

NWD

先将边界框建模为二维高斯分布, 然后使用NWD(Normalized Wasserstein Distance)来度量导出高斯分布的相似性。NWD 无论目标之间是否重叠均能够度量其相似性,且对尺度不敏感,因此更适用于小目标的检测。

知乎学术咨询:

哥廷根数学学派 - 知乎

工学博士,担任《Mechanical System and Signal Processing》等期刊审稿专家,擅长领域:现代信号处理,机器学习,深度学习,数字孪生,时间序列分析,设备缺陷检测、设备异常检测、设备智能故障诊断与健康管理PHM等。

相关推荐

  1. 一些关于机器学习练习

    2024-04-21 21:26:01       36 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-21 21:26:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-21 21:26:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-21 21:26:01       82 阅读
  4. Python语言-面向对象

    2024-04-21 21:26:01       91 阅读

热门阅读

  1. Python模块之logging

    2024-04-21 21:26:01       96 阅读
  2. React中 useReducer的使用

    2024-04-21 21:26:01       36 阅读
  3. ubuntu在docker容器中安装strongswan

    2024-04-21 21:26:01       34 阅读
  4. 一些linux命令

    2024-04-21 21:26:01       31 阅读
  5. 物联网与服务器有什么样的联系?

    2024-04-21 21:26:01       36 阅读
  6. C++笔记打卡第17天(STL、容器)

    2024-04-21 21:26:01       36 阅读
  7. 苹果、安卓中的ipsec功能

    2024-04-21 21:26:01       33 阅读
  8. 部署轻量级Gitea替代GitLab进行版本控制(二)

    2024-04-21 21:26:01       36 阅读
  9. EF6(Entity Framework 6)基础知识

    2024-04-21 21:26:01       38 阅读