一种基于BP神经网络的固态电解质离子电导率预测方法与流程

文档序号:17161426发布日期:2019-03-20 00:47阅读:210来源:国知局
一种基于BP神经网络的固态电解质离子电导率预测方法与流程

本发明涉及人工智能领域,具体提供一种基于bp神经网络的固态电解质离子电导率预测方法。



背景技术:

锂离子电池因其能量密度高,倍率特性好而广泛应用。但因电解液存在安全隐患,使用范围受到一定限制。固态电解质材料可以抑制负极处锂枝晶的生长,且具有不可燃烧的特性,可以在根本上解决锂电池使用安全问题,是下一代锂电池关键材料。传统材料研制主要采用“试错”实验方法,按照“提出假设-实验验证”的方式进行大量的重复迭代实验,从而使实验材料不断逼近目标材料。但是这种方法效率较低,新材料开发速度远远落后于新产品开发速度。20世纪以来,一种新材料从研发开始到实际应用需要大约10年,已无法满足诸如锂电池等领域对新材料的需求。

随着近年来出现了使用机器学习预测材料性质的技术,如使用支持向量机预测合金的形成玻璃能力、使用逻辑回归预测固态电解质的导电能力等,均已经获得初步成效。但是,上述技术任存在如下缺陷:一、在数据量非常大的时候,支持向量机训练对硬件设备的需求常常过大。二、逻辑回归模型容易欠拟合,分类精度可能不高。三、以上两种数学模型均只适合预测特定的材料性质,不具有普遍适用性。

因此,找到一种能实现对多类数据、不同硬件普遍适用的高精准率材料预测模型便是当务之急。



技术实现要素:

本发明的目的在于克服现有的固态电解质离子电导率预测方法存在的上述缺陷,提供一种基于bp神经网络的固态电解质离子电导率预测方法,包括以下步骤:

步骤1:采集数据,预处理后得到bp神经网络模型所需要的总样本,将总样本集以2:8的比例随机划分为测试集样本和训练集样本;

其中,预处理的步骤如下:

(1.1)在采集的每组数据中提取化学式、原子坐标、晶格长度、体积字段作为输入参量;

(1.2)根据得到的输入参量计算出每组数据的10个特征;该10个特征包括平均原子体积,锂离子临近原子个数的标准偏差,锂离子键标准偏差,锂离子键平均值,锂离子临近原子个数的平均值,亚晶格的平均化学键离子性,平均亚晶格相邻原子数,阴离子结构配位数,阴离子体积,以及平均最小锂离子间隔距离;

步骤2:根据步骤1构建bp神经网络模型;

构建bp神经网络模型构建步骤如下:

(2.1)构建输入层和输出层,并计算用于组成输入层和输出层的神经元个数;其中,输入层和输出层的神经元个数计算用公式为:

tout=f(tin1,tin2,…,tinn)

式中:tout是神经网络需要预测的数据值,tin1~tinn分别是神经网络输入层输入的n个数据值;根据该公式将输入层的神经元设定为10个,输出层神经元设定为2个;

(2.2)构建隐含层,且隐含层包括第一隐含层和第二隐含层;计算用于组成第一隐含层和第二隐含层的神经元个数,其隐含层的神经元个数使用下式来确定:

式中,h为隐含层神经元数目,m为输入层神经元数目,n为输出层神经元数目,a为1~10之间的神经元常数;根据该公式将第一隐含层的神经元设定为64个,第二隐含层的神经元设定为32个;

(2.3)根据步骤(2.1)和步骤(2.2)得到的入层、隐含层、输出层和每层神经元个数,并通过公式y=sigmoid[w2*sigmoid(w1*x-o1)-o2],得到bp神经网络模型;

式中:x为bp神经网络输入矩阵;y为bp神经网络输出矩阵;w1和w2分别为bp神经网络中输入层到隐层、隐含层到输出层的连接权值矩阵;o1、o2为bp神经网络中输入层到隐层、隐含层输出层的阈值矩阵,sigmoid为各层激励函数;

步骤3:在bp神经网络模型中选择传递函数、训练函数和学习函数,并对bp神经网络模型中各项参数进行初始化;

步骤4:在初始化参数中选取学习参数,并使用高斯分布对学习参数初始化,得到初始的权值和偏差;其中,所述学习参数包括学习率、阈值、训练次数、训练步长、激活函数、以及学习算法;

步骤5:利用现有的“输入-输出”训练集样本数据对bp神经网络模型进行训练,并对所建立的神经网络模型的训练集使用二次函数拟合,得到最佳的预测网络;其二次函数拟合公式如下:

式中:wmax为初始训练集,wmin为最终训练集,kmax为最大迭代次数,k为当前迭代次数;

步骤6:判断训练集拟合度是否达到预期效果;否,重新构建bp神经网络模型;是,执行步骤7;

步骤7:利用现有的“输入-输出”测试集样本数据对bp神经网络模型的拟合度进行测试;

步骤8:在经过拟合度测试后的bp神经网络模型中输入待预测样本进行预测,得到固态电解质离子电导率。

进一步的,所述步骤1中采集643组材料数据,每组数据包含10个特征、1个标签;对643组材料数据进行归一化处理后得到643组总样本集,将624组总样本集以2:8的比例随机划分为测试集样本和训练集样本;

所述步骤3中bp神经网络模型的各项参数包括:将sigmoid作为激活函数、交叉熵作为损失函数、梯度下降法作为损失函数。

再进一步的,所述步骤4中的学习速率设置为0.0003,阈值设置为0.5、训练次数设置为2500次、训练步长设置为100,学习算法使用交叉熵和梯度下降。

所述步骤6中对bp神经网络模型的拟合度进行测试具体包括以下步骤:将测试集样本作为输入样本,并在经过步骤5的训练调整之后的网络层连接权值及神经元阀值条件下,通过正向传播,由输入层-第一隐含层-第二隐含层-输出层进行计算,输出值同为标签,对比输出层的实际输出标签值与训练样本中的标签值,即可计算出训练好的bp神经网络模型对测试集样本的拟合度。

本发明较现有技术相比,具有以下优点及有益效果:

本发明可以准确地预测含li、na、mg、al等元素的固态电解质离子电导率性能,再根据预测的结果,对其相应的成分和结构进行制备,可以减少电极材料设计过程中的盲目性,节省大量的时间和成本。

附图说明

图1为本发明的人工神经网络结构示意图。

图2为本发明的方法流程示意图。

具体实施方式

下面结合实施例及其附图对本发明作进一步地详细说明,但本发明的实施方式并不限于此。

实施例

如图2所示,本发明的一种基于bp神经网络的固态电解质离子电导率预测方法,包括以下步骤:

步骤1:从材料数据库中采集643组材料数据,每组数据包含10个特征、1个标签;对643组材料数据进行归一化预处理后得到643组总样本集,将624组总样本集以2:8的比例随机划分为测试集样本和训练集样本;

具体的,在采集的材料数据后的一化预处理包括提取每组数据中化学式、原子坐标、晶格长度、体积字段作为输入参量,并根据输入参量计算出每组数据的10个特征;该10个特征包括平均原子体积,锂离子临近原子个数的标准偏差,锂离子键标准偏差,锂离子键平均值,锂离子临近原子个数的平均值,亚晶格的平均化学键离子性,平均亚晶格相邻原子数,阴离子结构配位数,阴离子体积,以及平均最小锂离子间隔距离。其中,10个特征作为人工神经网络的输入,标签值则为人工神经网络的输出。

步骤2:根据步骤1构建bp神经网络模型;

具体的,如图1所示,首先构建输入层和输出层,并确定组成输入层和输出层的神经元个数;其中,输入层和输出层的神经元个数计算用公式为:tout=f(tin1,tin2,…,tinn)该式中:tout是神经网络需要预测的数据值,tin1~tinn分别是神经网络输入层输入的n个数据值。其中,通过预训练,比较bp神经网络收敛精度以及收敛速度,确定最优的隐含层神经元数量。该输入层包含10个特征输入的10个神经元,输出层包含标签值的2个神经元。

其次构建隐含层,且将隐含层设定为两层,即隐含层包括第一隐含层和第二隐含层,其构成括第一隐含层和第二隐含层的神经元个数使用公式来确定:该式中,h为隐含层神经元数目,m为输入层神经元数目,n为输出层神经元数目,a为1~10之间的神经元常数。其中,通过预训练,比较bp神经网络收敛精度以及收敛速度,确定最优的隐含层神经元数量。如图1所示,其中,第一隐含层的神经元设定为64个,第二隐含层的神经元设定为32个。

最后,根据得到的输入层、隐含层、输出层和每层神经元个数,并通过公式y=sigmoid[w2*sigmoid(w1*x-o1)-o2],得到bp神经网络模型;该式中:x为bp神经网络输入矩阵;y为bp神经网络输出矩阵;w1和w2分别为bp神经网络中输入层到隐层、隐含层到输出层的连接权值矩阵;o1、o2为bp神经网络中输入层到隐层、隐含层输出层的阈值矩阵,sigmoid为各层激励函数。

步骤3:在bp神经网络模型中选择传递函数、训练函数和学习函数,并对bp神经网络模型中各项参数进行初始化。其中,bp神经网络模型的各项参数包括:将sigmoid作为激活函数、交叉熵作为损失函数、梯度下降法作为损失函数。

步骤4:创建好bp神经网络模型后,需为该网络模型选择适当的激活函数和学习算法,以激活整个网络的学习、反馈和最终的预测功能,因此需要初始化bp神经网络模型的各项参数,并在初始化参数中选取学习参数。其中,所述学习参数包括学习率、阈值、训练次数、训练步长、激活函数、以及学习算法。具体的,本实施例将sigmoid函数作为激活函数、交叉熵作为损失函数、梯度下降法作为损失函数,采用高斯分布初始化权值和偏差,学习速率设置为0.0003,阈值设置为0.5、训练次数设置为2500次、训练步长设置为100。

步骤5:利用现有的“输入-输出”训练集样本数据对bp神经网络模型进行训练,并对所建立的神经网络模型的训练集通过二次函数拟合,得到最佳的预测网络。其中,二次函数拟合公式为:式中:wmax为初始训练集,wmin为最终训练集,kmax为最大迭代次数,k为当前迭代次数。其中初始惯性权重wmax=0.6,最终惯性权重wmin=0.8,最大迭代次数kmax=2000。

其中,在bp神经网络模型搭建好和各项参数初始化以后利用现有的“输入-输出”训练集样本数据对bp神经网络模型进行训练,得到最佳的预测网络。bp神经网络模型的训练过程,是输入的变量正向计算与误差反向传播时各层中的权值矩阵不断反复地调整,使得拟合度高于要求精度的过程,其具体的训练方法如下:

在训练集样本数据中随机抽取训练步长个数的输入样本,在步骤3中初始化的参数条件下,初始时通过正向传播,由输入层-第一隐含层-第二隐含层-输出层进行计算,输出值同为标签,对比输出层的实际输出标签值与训练集样本中的标签值,即可计算该次训练的人工神经网络模型对训练集样本的拟合度,并判断网络拟合度是否满足要求;当拟合度达到预设精度或训练次数大于设定的最大次数时,则结束训练;当拟合度未达到预设精度时,系统将误差反向传播,按照设定的学习速率对权值进行调整,并重复输入样本进行计算,直到满足要求或者达到设定的最大训练次数。在本实例中,bp神经网络模型训练经过了2400次后,达到了97%以上的训练集拟合度,说明本发明的人工神经网络模型收敛速度快,训练效果好。

步骤6:判断训练集拟合度是否达到预期效果,本发明中的训练集拟合度达到95%左右;如果,训练集样本数据对bp神经网络模型的练集拟合度未达到95%,便重新构建bp神经网络模型;如果,训练集样本数据对bp神经网络模型的练集拟合度达到95%,进入步骤7对测试集样本数据对bp神经网络模型的拟合度测试。

步骤7:在bp神经网络模型搭建训练好以后,各项权重都有了确定的数值,利用现有的“输入-输出”测试集样本数据对bp神经网络模型的拟合度进行测试,具体的测试方法如下:将测试集样本作为输入样本,并在经过步骤5的训练调整之后的网络层连接权值及神经元阀值条件下,通过正向传播,由输入层-第一隐含层-第二隐含层-输出层进行计算,输出值同为标签,对比输出层的实际输出标签值与训练样本中的标签值,即可计算出训练好的bp神经网络模型对测试集样本的拟合度。

步骤8:在经过拟合度测试后的bp神经网络模型中输入待预测样本进行预测,得到固态电解质离子电导率。在本实例中,bp神经网络模型经过训练后,达到95%以上的测试集拟合度,真实存在的高离子电导率材料与通过bp神经网络预测的高离子电导率材料几乎相同,说明本发明的bp神经网络模型可以很好的预测固态电解质的离子电导率,且过程快速稳定,通过改变bp网络的神经元个数,可以匹配各种结构的数据,解决了现存机器学习预测模型普遍适用性低的问题。

如上所述,便可很好的实施本发明。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1