基于BP神经网络的n/γ甄别方法研究
2020-03-30宋海声吕柏阳牛德芳刘鹏浩杨雄斌秦秀波俞伯祥蒋杰臣
宋海声,吕柏阳,,李 婷,牛德芳,,庄 凯,刘鹏浩,杨雄斌,秦秀波,*,俞伯祥,蒋杰臣
(1.西北师范大学 物理与电子工程学院,甘肃 兰州 730000;2.中国科学院 高能物理研究所 北京市射线成像技术与装备工程技术研究中心,北京 100049;3.中国科学院大学 核科学与技术学院,北京 100049)
中子探测技术在违禁品检测、环境辐射检测、军事及深空探测等领域应用广泛[1]。由于中子与周围环境的非弹性散射、慢化中子的辐射俘获等原因,存在中子的场合,几乎均伴随着大量的γ射线本底,而中子探测器对γ射线是灵敏的,因此在探测中子时必须进行中子与γ射线(n/γ)的甄别,以排除γ射线的干扰。因此,对n/γ甄别方法进行研究,排除中子探测技术应用中的这一重大干扰因素,对中子探测技术的应用发展及星载中子探测仪器的开发均具有重要意义。
1979年,Brooks[2]发现中子和γ射线与闪烁体作用后,所产生的反冲质子和电子的光脉冲衰减时间不同,提出了基于模拟信号的脉冲形状甄别(PSD)方法。自20世纪以来,高速模数转换器(ADC)的出现及现场可编程门阵列(FPGA)的高速发展,使得完整记录数字化脉冲波形成为可能,国内外学者又相继提出了基于数字技术的PSD方法,如电荷比较法[3]、过零法[4]、上升时间法[5]、脉冲梯度法[6]、频域梯度分析法[7]、K-means聚类法[8]等数字化波形甄别的方法,但这些甄别方法只能单纯从时域或频域提取特征。近年来,由于人工神经网络在模式识别、预测估计等领域所取得的成果[9],也促使其逐渐在PSD方法中得到应用。1998年,Cao等[10]第1次将神经网络应用到n/γ的甄别上。2004—2009年,Esposito等[11]、Ronchi等[12]使用人工神经网络很好地解决了信号堆积的问题。2009年,Liu等[13]进一步开发了神经网络在n/γ甄别技术领域的应用。然而,无论使用哪种神经网络甄别n/γ,均需学习样本训练神经网络,学习样本的数量与准确性是提高甄别效果的重要因素之一。本文提出基于BP神经网络,并使用电荷比较法与频域梯度分析法在时域和频域同时提取脉冲波形特征,使得同时满足条件的脉冲作为学习样本。
1 实验方案
本工作使用的中子源是252Cf,闪烁体为芪晶体(直径1英寸,高1英寸的圆柱体)。实验平台示意图如图1所示,252Cf放射源产生的粒子在闪烁体中产生的闪烁光,经电源(V6533M,CAEN公司)电压为-1 500 V的光电倍增管(XP2020)转换产生负脉冲信号,将负脉冲信号接入放大器(V974,CAEN公司)中对信号进行2倍放大,然后将信号传输到16通道14位500 MS/s数字转换器(V1730,CAEN公司)中,经ADC转换为数字信号,最后将数字信号通过光路桥(V2718,CAEN公司)经光纤传入计算机记录分析。
图1 实验平台示意图Fig.1 Schematic diagram of experimental platform
2 算法实现
2.1 算法预处理
由于采集的模拟信号在经ADC模块转换为数字信号时有可能引入高频噪声,且脉冲信号的幅度存在差异,这些均会对数据的处理结果产生影响,因此原始信号进入计算机后首先需进行预处理。预处理的过程为:1) 幅度归一化;2) 平滑滤波[14];3) 基线调零。其中幅度归一化使用线性函数归一化方法,将信号的幅度转化到[0,1]的范围内,以消除幅度差异对脉冲波形甄别的影响。平滑滤波使用滑动均值(算术平均值)滤波的方式,以消除高频噪声对甄别结果的影响。图2为预处理过程中两种信号的对比。
a——原始信号;b——归一化信号;c——平滑信号;d——基线调零信号图2 预处理过程中两种信号的对比Fig.2 Comparison of two signals in pretreatment process
2.2 BP神经网络
由于BP神经网络应用等级递减的方法,可通过实际输出与期望输出之间的误差来校正每层中的权重系数。BP神经网络的主要特点是有非常强的非线性映射能力和灵活的网络结构,网络的中间层数、各层的神经元数可根据具体情况任意设定,且随结构的不同其性能也不同。3层结构的BP神经网络能实现对任意非线性函数进行逼近。因此,BP神经网络的能力可通过调整其结构来改变。图3为BP神经网络算法流程,其用以下步骤实现对中子和γ射线甄别。
1) 构造BP神经网络
本文构造的BP神经网络由输入层、隐含层和输出层组成,构造BP神经网络即为确定输入层、隐藏层、输出层的数量。由于大量的样本将导致网络的计算工作量加大,致使系统的工作效率降低,而样本数量太小,将导致网络无法区分两种粒子。为完成甄别工作的同时提高工作效率,需对样本数量折中处理。考虑到中子与γ射线引发的脉冲波形的上升部分几乎相同、下降部分明显不同的特点,可提取下降沿中包含的有用信息,即大部分脉冲信号均在15~35个采样点之间的位置衰减趋于平缓,所以选取脉冲波峰后的21个采样点作为构造神经网络和测试数据所需的输入,即设置输入层的节点数为21。在确认了样本输入层的节点数后隐含层的节点数存在经验值,定义隐含层的节点数H为:
(1)
其中:m为输入层节点数;n为输出层节点数;a为1~10之间的调节常数。
图3 BP神经网络算法流程Fig.3 Process of BP neural network algorithm
根据式(1)计算出隐含层的节点数为5。由于只需甄别出两种粒子,因此输出层的节点设置为1,则最终构造的BP神经网络是21×5×1的3层网络。
2) 训练BP神经网络
由于实验数据在n/γ的混合场中测试得到,所以训练BP神经网络首先需确定学习样本。在实际处理中使用电荷比较法与频域脉冲梯度法先对待测数据进行处理,选取出经过两种方法处理后同为中子或γ射线引起的脉冲信号作为学习样本。然后初始化给定训练网格所需的训练函数为trainlm函数(Levenberg-Marquardt算法),学习函数为learngdm,设定误差函数为MSE。通过计算学习样本的预期输出和实际输出之间的误差来校正每层的权重系数。在此过程中仅需判断MSE是否达到预设精度或学习次数是否大于设定的次数即可结束训练过程。通过BP神经网络训练,确定网络各节点间的权值系数,从而完成了BP神经网络训练的过程。
3) BP神经网络对测试样本进行甄别
将待测数据输入到已训练的BP神经网络中,给出模式类别,对信号进行甄别。
3 结果与分析
使用电荷比较法与频域脉冲梯度法对经过预处理的数据进行甄别,选取出经过两种甄别算法处理后分类相同的数据作为学习样本,使用Matlab中自带的BP神经网络算法,利用trainlm训练函数实现神经网络的训练过程。选取中子引起的脉冲数967个、γ引起的脉冲数5 033个作为学习样本,对应的这两种事件的网络输出设置为1和-1。训练过程中不断调节各神经元的权值,直到达到预设误差精度0.1,则终止训练。然后,将从中子与γ射线混合场中得到的10 000个脉冲信号峰值后21个采样点作为测试样本数据集输入训练的BP神经网络。BP神经网络的输出小于0时,判定为中子引起的脉冲信号;BP神经网络的输出大于0时,则判定为γ射线引起的脉冲信号。图4为BP神经网络甄别的结果。
为评估BP神经网络的辨别能力,将辨别误差率(DER)定义为由BP神经网络错误区分的事件数与测试数据集的事件总数之比[13]。中子和γ射线的DER通过式(2)计算:
(2)
其中:Nγ和Nn分别为γ射线和中子的测试数;Nγ-BP和Nn-BP分别为正确分类的γ射线和中子事件的数量。
将电荷比较法与频域脉冲梯度法甄别的中子和γ脉冲的信号重新输入到训练的神经网络中,通过计算DER来评估训练的BP神经网络的辨别能力,结果列于表1。由于选取的学习样本中中子计数较γ计数小,所以计算的γ的DER较中子的小。由表1可知,BP神经网络可较好地甄别n/γ。
a——学习样本;b——测试样本图4 BP神经网络甄别结果Fig.4 BP neural network discrimination result
表1 学习样本的甄别结果Table 1 Study sample discrimination result
将电荷比较法[15]、频域梯度分析法[16]、BP神经网络n/γ甄别方法进行对比,结果列于表2。3种甄别方法对同样的10 000个信号进行处理,均能较好地分开混合场中测到的中子与γ脉冲。BP神经网络甄别方法用时2.5 s,相比于电荷比较法及频域梯度分析法明显减少。本文通过使用电荷比较法与频域梯度分析法确定学习样本并使用BP神经网络完成n/γ甄别的过程,不仅实现了在脉冲波形的时域与频域提取特征值,还解决了训练神经网络所需要的学习样本单一问题。
表2 3种n/γ甄别方法结果对比Table 2 Result comparison of three n/γ discrimination methods
4 结论
本文实现了基于BP神经网络的甄别方法,并与其他PSD方法进行了对比。结果表明,BP神经网络甄别法能同时利用电荷比较法与频域梯度分析法选取学习样本,使得选取的学习样本能同时兼顾脉冲波形在时域与频域的特征。另外,BP神经网络甄别法在甄别时间上较电荷比较法与频域梯度分析法有所提高,随样本数的增加,BP神经网络甄别法在处理时间上的优势会更加明显。训练的BP神经网络经验证后确认辨别误差率较小,因此满足BP神经网络应用在n/γ甄别中的需求。