恒星光谱数据增强方法及系统

文档序号:27449681发布日期:2021-11-18 00:39阅读:334来源:国知局
恒星光谱数据增强方法及系统

1.本发明属于天文光谱智能处理技术领域,尤其涉及一种恒星光谱数据增强方法及系统。


背景技术:

2.天文学是一门历史悠久的观测科学,随着斯隆数字巡天(sdss)和大天区面积多目标光纤光谱天文望远镜(lamost)等多光纤光谱大型巡天计划的出现,天文光谱数据规模正以指数级爆炸性增长,由此导致了天文光谱数据自动分类方法研究的必要性和迫切性日益增强。通过分析光谱数据可以得到天体位置和状态的信息,这些信息有助于挖掘出宇宙中特殊的、未知的天体,对恒星演化研究和宇宙奥秘探索都有着积极的意义。
3.天文光谱数据分类就是要从上千维的光谱数据特征中选择和提取对分类识别最有效的特征来构建特征空间,例如选择特定波长或波段上的光谱流量值等作为特征,并运用算法对各种天体进行区分。目前常用的光谱分类模型可以分为基于距离计算的天文光谱分类与基于神经网络的天文光谱数据分类。
4.关于基于距离计算的天文光谱数据分类,美国学者gray利用含有标准光谱模板的知识库,基于距离差值实现分类。赵永恒教授和罗阿理教授团队通过从光谱数据中提取特定波长的关键数据实现分类任务。陈淑鑫等学者采用基于距离计算的模板匹配完成天文光谱数据分类。但是,上述方法的计算复杂度一般都是数据量和数据维度的平方,不适合海量高维数据的分类。以来自lamost的光谱数据为例,目前已经有超过1000万条的光谱数据,很多光谱的数据维度都在数千以上,面对这样高维的天文大数据,传统的人工或半人工的数据分类越来越困难。
5.关于基于神经网络的天文光谱数据分类,有基于使用全连接网络和自组织映射方法进行天文光谱分类。wang等学者通过伪逆学习逐层训练的方法,构建了神经网络分类模型。fabbro和zou等学者构建了深度神经网络,通过卷积的方法来进行分类。上述方法可以对部分光谱进行较好地分类,但是基于神经网络的分类方法需要大量的训练数据,而这常常不能得到满足。例如,lamost第4版数据集中,识别的碳星还不到3000。
6.在天体实际分布中,各类天体种类不是均衡的,其特征差异也很大,目前大多数研究或者单独挖掘稀有光谱数据或者直接对全体数据集进行分类,导致数据识别的效率和精度并不能让人满意。


技术实现要素:

7.为了解决现有技术存在的问题,本发明提供一种恒星光谱数据增强方法,能够为了克服现有的深度神经网络过于依赖充足的训练数据的不足,生成模拟的缺失数据,补全不完整的数据分布。
8.本发明所要解决的技术问题是通过以下技术方案实现的:
9.第一方面,提供了一种恒星光谱数据增强方法,包括:
10.对恒星光谱进行预处理,对处理后的光谱数据按照类别设置标签;
11.构建条件生成对抗网络模型并采用设置标签的的光谱数据对网络模型进行训练;
12.基于训练好的条件生成对抗网络模型进行数据增强。
13.结合第一方面,进一步的,所述对恒星光谱进行预处理包括:
14.对于光谱样本集中d中的每个每个恒星光谱样本s
i
,设置统一的维度m,在维度m处将s
i
截断得到使其每个维度都有值;
15.其中,d={s1,s2,s3,...s
i
...,s
n
},s
i
代表第i个恒星光谱样本,n代表真实的恒星光谱的个数;
16.根据式(1)得到归一化后的恒星光谱样本数据
[0017][0018]
结合第一方面,进一步的,所述根据输入向量n

=(n,c)生成条件生成对抗网络模型包括:
[0019]
通过reshape层、卷积层、上采样层、压平层和全连接层搭建生成模型;
[0020]
通过生成模型将输入向量n

拓展到真实光谱数据d同样的数据维度,得到生成的光谱数据f;
[0021]
通过reshape层、卷积层、丢弃层、压平层和全连接层搭建卷积神经网络判别模型;
[0022]
将生成的光谱数据f与真实光谱数据d混合,按照类别生成标签向量l,送入卷积神经网络判别模型;
[0023]
通过深度学习迭代学习,得到训练好的条件生成对抗网络模型。
[0024]
结合第一方面,进一步的,条件生成对抗网络模型的训练样本的批大小设为512,选用交叉熵损失函数,然后使用激活函数为修正线性单元,由激活函数完成非线性变换,通过adam优化算法进行参数寻优,其中学习率为设为0.001,衰减项设置为1e

08,动量设置为0.9,迭代次数设置为100。
[0025]
结合第一方面,进一步的,所述条件生成对抗网络模型的生成模型部分包括:
[0026]
第一层:为一reshape层,其输入数据为输入向量n

[0027]
第二层:为一卷积层,包含4个大小为4
×
1的卷积核,步长设为1;
[0028]
第三层:为一大小为2
×
1的上采样层;
[0029]
第四层:为一包含8个大小为4
×
1的卷积核的卷积层,步长为1;
[0030]
第五层:为一大小为2
×
1的上采样层;
[0031]
第六层:为一个包含16个大小为4
×
1的卷积核的卷积层,步长为1;
[0032]
第七层:为一平压层;
[0033]
第八层:为一包含3700个神经元节点的全连接层。
[0034]
结合第一方面,进一步的,所述条件生成对抗网络模型的卷积神经网络判别模型包括:
[0035]
第一层:为一reshape层,其输入数据为混合后的恒星光谱数据;
[0036]
第二层:为一包含4个大小为3
×
1的卷积核的卷积层,步长为(2,1);
[0037]
第三层:为一dropout丢弃层,随机丢弃前面卷积层40%的神经元;
[0038]
第四层:为一含8个大小为3
×
1的卷积核的卷积层,步长为(2,1);
[0039]
第五层:为一dropout丢弃层,随机丢弃前面卷积层40%的神经元;
[0040]
第六层:为一包含16个大小为3
×
1的卷积核的卷积层,步长为(2,1);
[0041]
第七层:为一dropout丢弃层,随机丢弃前面卷积层40%的神经元;
[0042]
第八层:为一压平层;
[0043]
第九层:为一包含128个神经元的全连接层;
[0044]
第十层:为一包含1个神经元的全连接层。
[0045]
第二方面,提供了一种恒星光谱数据增强方法,包括:
[0046]
光谱数据预处理模块,用于对恒星光谱进行预处理,对处理后的光谱数据按照类别设置标签;
[0047]
模型训练模块,用于构建条件生成对抗网络模型并采用设置标签的的光谱数据对网络模型进行训练;
[0048]
数据增强模块,用于基于训练好的条件生成对抗网络模型进行数据增强。
[0049]
本发明有益效果主要如下:
[0050]
(1)现有的单一的数据增强模型只适用于单个类别的数据进行增强,如果需要对多种类别的数据进行增强,需要重复训练多个数据增强模型,训练任务将会有很大的计算代价,本发明引入类别控制向量,使用条件生成对抗网络将大大减小运算代价,提高了运算速度;
[0051]
(2)由于恒星光谱数据维度高、特征多。卷积网络在提取特征表示上具有优势,上采样层可以逐层放大输入向量。本发明提出了一种基于卷积神经网络的条件生成对抗网络来进行恒星光谱数据增强,针对数据的高维度特点,发挥卷积的优点,有效地提高了生成数据的真实性。
附图说明
[0052]
图1是本发明恒星光谱数据增强方法的流程图;
[0053]
图2是本发明中恒星光谱预处理的流程图;
[0054]
图3是本发明中条件生成对抗网络的结构示意图。
具体实施方式
[0055]
为了进一步描述本发明的技术特点和效果,以下结合附图和具体实施方式对本发明做进一步描述。
[0056]
实施例1
[0057]
本发明所提出的一种恒星光谱数据增强方法,如图1

3所示,主要包括以下步骤
[0058]
a.恒星光谱数据预处理
[0059]
先采用流量标准化对恒星光谱数据进行预处理,将恒星光谱数据统一缩放到[0,1之间,再分析不同类别的恒星光谱数据的维度,截取统一长度的光谱数据,最后按照光谱类别构建对应的标签;
[0060]
b.搭建与训练条件生成对抗网络
[0061]
所述模块包括条件生成对抗网络模型的建立与模型训练两个部分:将随机噪声向
量与控制向量输入生成模型,由生成模型生成光谱数据,然后将真实恒星光谱数据与生成的恒星光谱数据输入卷积神经网络判别模型中,再训练判别模型去判别输入数据是真实数据还是生成数据,最后基于判别模型的识别进行对抗训练学习;
[0062]
c.基于训练好的生成模型进行数据增强
[0063]
基于上面训练好的条件生成对抗网络模型,去除模型的判别器部分,得到用于数据增强的生成模型,最终使用该模型对恒星光谱数据进行数据增强,得到数据增强后分布均衡的恒星光谱。
[0064]
如图2、所述的a.恒星光谱预处理算法具体包括:
[0065]
输入:光谱样本集d={s1,s2,s3,...s
i
...,s
n
},s
i
代表第i个恒星光谱样本,n代表真实的恒星光谱的个数;
[0066]
输出:归一化后的恒星光谱
[0067]
a1.对光谱数据集进行遍历,设置循环变量i从1到n,n表示真实恒星光谱数据的总数,初始时i=1;
[0068]
a2.对于光谱样本集中d中的每个每个恒星光谱样本s
i
,设置统一的维度m(这里的维度指光谱的波长),在维度m处将s
i
截断得到保证所有的s
i
其每个维度都有值;
[0069]
a3.计算每个恒星光谱样本的归一化数据
[0070]
a4.执行i=i+1;
[0071]
a5.当i<n时,跳转至a2,否则完成恒星光谱数据的预处理。
[0072]
进一步的,所述b.搭建与训练条件生成对抗网络包括:
[0073]
b1.基于高斯分布,生成随机噪声向量n,并配对的生成类别控制向量c;
[0074]
b2.将随机噪声向量n和类别控制向量c拼接成一个输入向量n

=(n,c);
[0075]
b3.搭建条件生成对抗网络模型:
[0076]
输入:随机噪声向量n和类别控制向量c拼接的输入向量n

=(n,c),真实的光谱数据d'={s'1,s'2,s'3,...s'
i
...,s'
n
},其中,s'
i
为阶段后的恒星光谱样本归一化后的值
[0077]
输出:条件生成对抗网络
[0078]
3.1)通过reshape层、卷积层、上采样层、压平层和全连接层等搭建生成模型;
[0079]
3.2)通过生成模型将输入向量n'拓展到真实光谱数据d同样的数据维度,得到生成的光谱数据f;
[0080]
3.3)通过reshape层、卷积层、丢弃层、压平层和全连接层搭建卷积神经网络判别模型;
[0081]
3.4)将生成的光谱数据f与真实光谱数据d混合,按照类别组成标签向量l,作为数据与标签送入卷积神经网络判别模型;
[0082]
3.5)损失函数及优化方法
[0083]
在上述模型构建后,训练该模型,其中设置训练样本的批大小为512,选用交叉熵损失函数,然后使用激活函数为修正线性单元,由激活函数完成非线性变换,通过adam优化算法进行参数寻优,其中学习率为0.001,衰减项1e

08,动量0.9,迭代次数设置为100来获得最佳模型;
[0084]
b4.通过深度学习迭代学习,得到训练好权重的条件生成对抗网络。
[0085]
其中,如图3所示,所述的条件生成对抗网络具体包括:
[0086]
生成模型:
[0087]
第一层:输入数据为拼接后的输入向量n',包括服从高斯分布的随机噪声向量n与类别控制向量c,随机噪声向量的维度为896,类别控制向量的维度为4,经过reshape层,将输入向量的维度改为(900,1,1);
[0088]
第二层:是一个包含4个大小为4
×
1的卷积核的卷积层,步长为1,经过leakyrelu激活函数处理,输入数据为(900,1,1)维度的输入向量,输出维度为(897,1,4)的数据;
[0089]
第三层:是一个大小为2
×
1的上采样层,得到维度为(1794,1,4)的数据;
[0090]
第四层:是一个包含8个大小为4
×
1的卷积核的卷积层,步长为1,经过leakyrelu激活函数处理,输入数据为(1794,1,4)维度的输入向量,输出维度为(1791,1,8)的数据;
[0091]
第五层:是一个大小为2
×
1的上采样层,得到维度为(3582,1,8)的数据;
[0092]
第六层:是一个包含16个大小为4
×
1的卷积核的卷积层,步长为1,经过leakyrelu激活函数处理,输入数据为(3582,1,8)维度的输入向量,输出维度为(3579,1,16)的数据;
[0093]
第七层:是一个压平层,输入数据为(3579,1,16)维度的输入向量,输出维度为57264的数据;
[0094]
第八层:是一个包含3700个神经元节点的全连接层,经过tanh激活函数处理,得到维度为3700的数据,该数据就是使用生成模式生成的恒星光谱数据。
[0095]
卷积神经网络判别模型:
[0096]
第一层:一个改变输入数据维度的reshape层,输入数据为混合后的恒星光谱数据,包含真实的恒星光谱数据与生成的恒星光谱数据,光谱数据的维度为3700,输出维度为(3700,1,1)的数据;
[0097]
第二层:是一个包含4个大小为3
×
1的卷积核的卷积层,步长为(2,1),经过leakyrelu激活函数处理,输入数据为(3700,1,1)维度的输入向量,输出维度为(1849,1,4)的数据;
[0098]
第三层:是一个dropout丢弃层,随机丢弃前面卷积层40%的神经元,控制模型大小;
[0099]
第四层:是一个包含8个大小为3
×
1的卷积核的卷积层,步长为(2,1),经过leakyrelu激活函数处理,输入数据为(1849,1,4)维度的输入向量,输出维度为(924,1,8)的数据;
[0100]
第五层:是一个dropout丢弃层,随机丢弃前面卷积层40%的神经元,控制模型大小;
[0101]
第六层:是一个包含16个大小为3
×
1的卷积核的卷积层,步长为(2,1),经过leakyrelu激活函数处理,输入数据为(924,1,8)维度的输入向量,输出维度为(461,1,16)的数据;
[0102]
第七层:是一个dropout丢弃层,随机丢弃前面卷积层40%的神经元,控制模型大小;
[0103]
第八层:是一个压平层,输入数据为(461,1,16)维度的输入向量,输出维度为7376的数据;
[0104]
第九层:是一个包含128个神经元的全连接层,经过relu激活函数处理,输入数据为7376维度的输入向量,输出维度为128的数据;
[0105]
第十层:是一个包含1个神经元的全连接层,经过sigmoid激活函数处理,输入数据为128维度的输入向量,输出维度为1的数据,代表判断输入的数据是真实数据还是生成数据,模型认为是真实恒星光谱就输出1,否则输出0。
[0106]
c.基于训练好的生成模型进行数据增强包括:
[0107]
c1.提取训练好的条件生成对抗网络中的生成模型:
[0108]
输入:训练好的条件生成对抗网络模型
[0109]
输出:生成模型
[0110]
1.1)拆分条件生成对抗网络:
[0111]
按照生成模型与卷积神经网络判别模型两部分拆分条件生成对抗网络。
[0112]
1.2)去除卷积神经网络判别器模型:
[0113]
只保留训练好的生成模型。
[0114]
c2.构造服从高斯分布的噪声向量n,将新的噪声向量n与类别控制向量c拼接后送入生成模型:
[0115]
c3.利用生成模型前向传播,从输入向量生成逼真的恒星光谱数据。
[0116]
相对于现有技术,在本发明中恒星光谱数据增强方法融合了生成对抗网络、博弈论等知识,针对天文光谱维度高的特点,针对性的调整网络模型,兼顾多类别的光谱数据增强,在计算代价减小的情况下也能各种恒星光谱数据。本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
[0117]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0118]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0119]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0120]
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然
可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1