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

基于自归一化分类模型的脉冲星候选体识别方法及系统

文献发布时间:2024-04-18 20:00:50


基于自归一化分类模型的脉冲星候选体识别方法及系统

技术领域

本公开涉及脉冲星候选体识别技术领域,具体涉及基于自归一化分类模型的脉冲星候选体识别方法及系统。

背景技术

本部分的陈述仅仅是提供了与本公开相关的背景技术信息,不必然构成在先技术。

脉冲星是一种高磁化的旋转中子星,其存在为引力波的间接证据提供了第一个实例,同时也提供了研究中子星天体物理学中极端现象的可能性。因此,识别宇宙中的脉冲星是研究脉冲星和引力波的前提条件。

随着调查规范的不断改进以及新一代射电望远镜的问世,脉冲星候选数量和数据量呈指数增长。对于如此庞大的数据规模,仅凭相关领域专家的人工视觉分类将面临极大的挑战。

机器学习自从问世以来,其理论与技术已经趋向于成熟,并已成功应用于脉冲星候选星筛选等天文领域。因此,利用机器学习技术识别脉冲星已成为一个重要的研究方向。

发明人发现,现有在脉冲星候选体识别领域,现有的方法依靠人工效果较低,传统的机器学习技术识别率不够,并且容易出现梯度消失和梯度爆炸的问题;又或者需要考虑脉冲星数据集正度样本的数量不平衡带来的影响,导致脉冲星候选体的识别准确率较低。

发明内容

本公开为了解决上述问题,提出了基于自归一化分类模型的脉冲星候选体识别方法及系统,提出了自归一化编码器分类模型的方法,处理脉冲星候选体训练集,并进行迭代训练以实现脉冲星候选体的识别分类。不需要考虑脉冲星数据集正负样本的数量不平衡,对脉冲星候选体数据集的众多特征进行无监督降维,构建具有高准确率的神经网络模型,从而实现对脉冲星候选体的准确识别。

根据一些实施例,本公开采用如下技术方案:

基于自归一化分类模型的脉冲星候选体识别方法,包括:

获取脉冲星巡天观测数据;

将所述脉冲星巡天观测数据输入到自归一化神经网络模型中,输出识别的脉冲星候选体;

其中,在所述自归一化神经网络模型中,对高维的脉冲星巡天观测数据进行特征提取,提取出低维的脉冲星候选体数据特征,再将所述低维的脉冲星候选体数据特征进行维度还原,还原为与输入的脉冲星巡天观测数据相同的维度进行输出,并自动补充缺失或模糊的信息,实现数据重构,最后输出识别的脉冲星候选体。

根据一些实施例,本公开采用如下技术方案:

基于自归一化分类模型的脉冲星候选体识别系统,包括:

数据获取模块,用于获取脉冲星巡天观测数据;

预测识别模块,用于将所述脉冲星巡天观测数据输入到自归一化神经网络模型中,输出识别的脉冲星候选体;

其中,在所述自归一化神经网络模型中,对高维的脉冲星巡天观测数据进行特征提取,提取出低维的脉冲星候选体数据特征,再将所述低维的脉冲星候选体数据特征进行维度还原,还原为与输入的脉冲星巡天观测数据相同的维度进行输出,并自动补充缺失或模糊的信息,实现数据重构,最后输出识别的脉冲星候选体。

根据一些实施例,本公开采用如下技术方案:

一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质用于存储计算机指令,所述计算机指令被处理器执行时,实现所述的基于自归一化分类模型的脉冲星候选体识别方法。

根据一些实施例,本公开采用如下技术方案:

一种电子设备,包括:处理器、存储器以及计算机程序;其中,处理器与存储器连接,计算机程序被存储在存储器中,当电子设备运行时,所述处理器执行所述存储器存储的计算机程序,以使电子设备执行实现所述的基于自归一化分类模型的脉冲星候选体识别方法。

与现有技术相比,本公开的有益效果为:

本公开提供基于自归一化分类模型的脉冲星候选体识别方法,不需要考虑脉冲星数据集正负样本的数量不平衡,对脉冲星候选体数据集的众多特征进行无监督降维,构建具有高准确率的神经网络模型,为了进行脉冲星的识别分类,需要首先处理脉冲星巡天观测数据,生成脉冲星候选体数据集,一共有W个脉冲星候选体。接着,对脉冲星候选体数据集进行正负类样本的二分类标记;在完成脉冲星候选体数据集的二分类标记之后,使用自编码器提取数据的特征表示,进行无监督降维;使用深度学习框架,搭建了一个自归一化神经网络模型,该模型包括一个输入层、八个隐藏层和一个输出层。为了初始化该模型的可学习参数,选择了截断正态分布。这种初始化方法可以确保模型参数的均值接近于零,且标准差不会太大,从而帮助更好地训练模型。通过使用这种自归一化神经网络模型,可以更有效地处理复杂的数据集,并取得更好的性能表现。

附图说明

构成本公开的一部分的说明书附图用来提供对本公开的进一步理解,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。

图1为本公开实施例的自归一化神经网络模型的训练流程图;

具体实施方式

下面结合附图与实施例对本公开作进一步说明。

应该指出,以下详细说明都是例示性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。

需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。

实施例1

本公开的一种实施例中提供了一种基于自归一化分类模型的脉冲星候选体识别方法,包括:

步骤一:获取脉冲星巡天观测数据;

步骤二:将所述脉冲星巡天观测数据输入到自归一化神经网络模型中,输出识别的脉冲星候选体;

其中,在所述自归一化神经网络模型中,对高维的脉冲星巡天观测数据进行特征提取,提取出低维的脉冲星候选体数据特征,再将所述低维的脉冲星候选体数据特征进行维度还原,还原为与输入的脉冲星巡天观测数据相同的维度进行输出,并自动补充缺失或模糊的信息,实现数据重构,最后输出识别的脉冲星候选体。

作为一种实施例,自归一化神经网络模型构建以及训练的步骤如下:

步骤1,构建三种数据集

1.1)为了进行脉冲星的识别分类,需要首先处理脉冲星巡天观测数据,使用数值模拟软件TEMPO生成了1万条脉冲星数据,生成脉冲星候选体数据集,一共有W个脉冲星候选体。接着,对脉冲星候选体数据集进行正负类样本的二分类标记;

1.2)在完成脉冲星候选体数据集的二分类标记之后,使用自编码器提取数据的特征表示,进行无监督降维;

1.3)经处理过的W个脉冲星候选体选取数量相等的脉冲星候选体以及非脉冲星候选体,用集合B来表示:B={(X1,y1),(X2,y2),(X3,y3),…,(XW-1,yW-1),(XW,yW)},其中Xw代表第w个脉冲星候选体,yw代表第w个脉冲星候选体的标签值,w=1,2,3,…W,;

1.4)为了构建一个有效的脉冲星分类器,需要先准备好数据集。将从集合B中随机选择C个脉冲星候选体和C个非脉冲星候选体作为训练集合T。接着,将从集合B中剩下的部分中随机选择D个脉冲星和D个非脉冲星候选体作为验证集合R。最后,将集合B中剩下的E个元素作为测试集合J。值得注意的是,这里的W表示总共选取的元素个数,即W=2C+2D+E。这种分割数据集的方法具有明确的逻辑和重点突出的特点。通过在训练集T中使用相等数量的脉冲星和非脉冲星候选体,可以确保训练集的平衡性。同时,验证集合R可以帮助在模型训练过程中进行模型的选择和调整,以便获得更好的性能。最后,测试集合J可以验证模型的真实性能,并确保其在未知数据上的泛化能力。

步骤2,搭建神经网络模型

2.1)使用深度学习框架,搭建了一个自归一化神经网络模型,该模型包括一个输入层、八个隐藏层和一个输出层。为了初始化该模型的可学习参数,选择截断正态分布。这种初始化方法可以确保模型参数的均值接近于零,且标准差不会太大,从而帮助更好地训练模型。通过使用这种自归一化神经网络模型,可以更有效地处理复杂的数据集,并取得更好的性能表现。

步骤3,训练神经网络模型

3.1)使用步骤1里面构建好的训练集对搭建好的自归一化神经网络模型进行训练,得到训练好的自归一化神经网络模型及其各层参数。

步骤4,验证神经网络模型

4.1)利用训练好的自归一化神经网络模型对验证集中的脉冲星候选体样本进行分类,如果准确率达不到预期数值,则继续训练。

步骤5,测试神经网络模型

5.1)对训练好的模型进行测试。

进一步的,在步骤2中,搭建自归一化编码器分类模型,自归一化编码器分类模型的关键点在于激活函数(SELU),通过SELU实现了自归一化,也就是对具有零均值和单位方差的输入变量,使用了SELU计算之后输出的数值仍将收敛于零均值和单位方差。错误的权重会导致每一层神经元的输入可能不会是零均值以及单位方差,从而导致梯度消失或者梯度爆炸,因此对需要对权重进行初始化。

2.2)使用深度学习框架,先搭建堆叠自编码器模型,该模型包括一个输入层,5个隐藏层,一个输出层,输入层为22个神经元,隐藏层的神经元个数依次为6、4、2、4、6,输出层的神经元为22。然后搭建一个自归一化神经网络模型,该模型包括一个输入层、八个隐藏层和一个输出层,输入层为8个神经元,隐藏层为8个神经元,输出层为1个神经元。为了初始化该模型的可学习参数,选择了截断正态分布。这种初始化方法可以确保模型参数的均值接近于零,且标准差不会太大,从而帮助更好地训练模型。通过使用这种自归一化神经网络模型,可以更有效地处理复杂的数据集,并取得更好的性能表现。

在自归一化神经网络模型中,采用堆叠自编码器作为特征提取器,自编码器是一种数据维度压缩和特征表达方法,是一种无监督的神经网络模型,它可以学习到输入数据的隐含特征,然后重构出原始输入数据。自编码器的执行过程主要包括两步:编码和解码,编码的主要步骤是将高维的数据作为输入,输入数据通过一个或多个隐藏层,将其压缩为一个低维的隐含向量,该隐含向量可以看作输入数据的一种或者压缩表示,它包含了输入数据的主要特征和信息,在这个过程中自编码器会丢弃一些冗余或者无用的信息,从而实现数据降维,解码的主要步骤是将一个隐含向量通过一个或多个隐藏层,将其还原成一个与输入数据相同维度的输出数据,这个输出数据可以看成输入数据的一种重建或近似表示,在解码的过程中自编码器会自动补充一些缺失或者模糊的信息,从而实现数据重构。然后根据输入值与重构值之间的误差采用SGD梯度下降法调整权重以及偏置参数,直到输出精度满足要求。

从处理好的脉冲星候选体数据集中选取1万个脉冲星候选体和1万个非脉冲星候选体,用集合B来表示:

B={(X1,y1),(X2,y2),(X3,y3),…,(Xn,yn),(X20000,y20000)},

其中Xn代表第n个脉冲星候选体,yn代表第n个脉冲星候选体的标签值,n=1,2,3,…20000,从集合B中选取6000个脉冲星候选体数据、6000个非脉冲星候选体数据组成训练集Q,再从集合B剩下的部分取2000个脉冲星候选体数据、2000个非脉冲星候选体数据组成测试集R,集合B中剩余的脉冲星候选体组成验证集S。

作为一种实施例,所述自归一化神经网络模型的训练方法为:

3.1)首先训练堆叠自编码器模型,对训练集进行分批输入。隐藏层的学习率设置为0.001,使用SELU激活函数对输入进行计算,数据输入后,经历编码与解码两个过程,编码计算过程如下:

y

式中,x

解码计算过程如下:

m

式中,m

3.1)输入层的输入为自编码器输出的22个脉冲星候选体数据特征,对训练集进行分批次输入。隐藏层的学习率设置为0.001,使用SELU激活函数对输入进行计算,输出层输出2个类型的目标:真实脉冲星和非脉冲星。

3.2)在训练集Q中随机选取50条脉冲星候选体数据和50条非脉冲星候选体数据,将随机选取的训练数据Q1,Q2...Qx,...Q100分别通过搭建好的神经网络模型,在输出层分别输出q1,q2...qx,...q100,Qx代表第x条数据,qx代表输出之后的第x个标签值,x=1,2...100,

3.3)调用均方误差计算实际标签值与理想标签值的损失函数值loss,如果loss<0.003,就停止训练,保存当前的模型,否则进行3.4)步骤。

3.4)使用SGD梯度下降法对隐藏层的权重参数以及偏置参数进行更新,保存迭代完成的权重参数以及偏置参数。

步骤4,验证神经网络模型

4.1)将验证集里的数据按次序输入到步骤3训练好的模型中,得到实际标签t

4.2)使用4.1)得到的实际标签值和理想标签值计算准确率,如果准确率大于事先设定好的98%,将把该网络模型作为最终的脉冲星分类模型,否则再重复步骤3,继续训练。

步骤5,对训练好的模型进行测试

5.1)使用训练好的自归一化神经网络模型对测试样本集的脉冲星候选体数据进行预测识别,使用的测试样本集为2000个脉冲星候选体数据以及2000个非脉冲星候选体数据。

5.2)将测试集里的数据按次序输入到训练好的神经网络模型中,得到测试集里的每个数据的实际标签值,实际标签值为1,则代表是脉冲星候选体,实际标签值为0,则代表非脉冲星候选体。

实施例2

本公开的一种实施例中提供了一种基于自归一化分类模型的脉冲星候选体识别系统,包括:

数据获取模块,用于获取脉冲星巡天观测数据;

预测识别模块,用于将所述脉冲星巡天观测数据输入到自归一化神经网络模型中,输出识别的脉冲星候选体;

其中,在所述自归一化神经网络模型中,对高维的脉冲星巡天观测数据进行特征提取,提取出低维的脉冲星候选体数据特征,再将所述低维的脉冲星候选体数据特征进行维度还原,还原为与输入的脉冲星巡天观测数据相同的维度进行输出,并自动补充缺失或模糊的信息,实现数据重构,最后输出识别的脉冲星候选体。

实施例3

本公开的一种实施例中提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质用于存储计算机指令,所述计算机指令被处理器执行时,实现所述的基于自归一化分类模型的脉冲星候选体识别方法。

实施例4

本公开的一种实施例中提供一种电子设备,包括:处理器、存储器以及计算机程序;其中,处理器与存储器连接,计算机程序被存储在存储器中,当电子设备运行时,所述处理器执行所述存储器存储的计算机程序,以使电子设备执行实现所述的基于自归一化分类模型的脉冲星候选体识别方法。

本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

上述虽然结合附图对本公开的具体实施方式进行了描述,但并非对本公开保护范围的限制,所属领域技术人员应该明白,在本公开的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本公开的保护范围以内。

技术分类

06120116541068