机器学习在材料研发中的应用
在机器学习预测模型的基础上,建立“白箱模型”或进行统计和可视化分析,可以辅助分析和理解目标量的主要影响因素。Raccuglia等[77]基于3955条模板亚硒酸钒杂化材料合成反应实验数据,以元素原子性质构建反应物的材料因子,以反应温度、反应时间、溶液pH值等为材料参数,训练支持向量机模型对能否成功合成杂化材料进行预测,准确率达89%,超过经验化学家78%的预测准确率。他们利用支持向量机模型的预测数据训练决策树模型,建立了可解释的if-then准则,分析了反应物和反应条件的阈值,得到了合成该类杂化材料新工艺,指导反应物及合成条件的选择和设计。Iwasaki等[78]使用因子分解渐近Bayesian推理分层专家混合(FAB/HME)的可解释机器学习方法指导新型热电材料开发,通过分段稀疏化线性建模,兼顾模型泛化能力和可解释性,如图4[78]所示,从机器学习模型训练到决策树,将搜索空间分为4类,对每类空间进行回归建模,发现自旋轨道相互作用较大的原子具有局域自旋极化,能够增强反常能斯特(Nernst)效应,利用这一发现指导自旋驱动的热电材料研发,制备出了Sebek系数(S)达13.04μV/K的Co48.9Pt51.1N7.2热电材料。Wu等[79]基于321个“近共晶”(亚共晶,过共晶)高熵合金数据,建立了成分和共晶偏离度的人工神经网络模型,通过对400个预测数据的元素分布规律统计和可视化分析,发现Al和Cr狭窄分布的现象,说明2种元素在共晶高熵合金形成过程中存在协同效应,提出了共晶高熵合金新设计原则,基于该原则设计的共晶高熵合金抗拉强度达到约1300MPa,延伸率约20%。Wen等[80]利用领域知识构建了高熵合金固溶强化的材料因子,利用多种机器学习算法对材料因子和高熵合金传统固溶强化模型(S-模型、T-模型、V-模型)的关键参量进行筛选,发现原子电负性差是高熵合金固溶强化的控制参量,建立了基于电负性差的高熵合金固溶强化数学表达式,模型精度相对于传统模型有所提升且简洁易用,如图5[80]所示。Si等[81]利用多个机器学习模型对14个材料特征进行筛选,发现原子半径差、价电子浓度、电负性差、经验参数Λ、经验参数Ω和剪切模量错配度等是决定Zr-Ti-Nb-O固溶体强度的关键特征,通过添加氧和金属原子间电负性差的参量,提升了传统屈服强度公式精度,同时发现价电子浓度、经验参数Λ、剪切模量错配度和局域模量错配度是合金塑性的主要影响因素,通过可视化断裂应变与关键特征,提出了高塑性固溶体的设计准则。Xie等[82]基于11101个数据样本,利用热轧钢板成分和生产工艺等27个材料参数为输入,建立深度神经网络模型预测热轧钢板屈服强度、抗拉强度、延伸率和冲击功等力学性能,均方根相对误差分别为4.7%、2.9%、7.7%和16.2%,基于预测模型,采用局部可解释算法(LIME)对深度神经网络模型进行了解释和知识提取,分析表明均匀化后的最后冷却温度是屈服强度和抗拉强度最重要的影响参量,Nb、Cr和V等是延伸率的重要影响元素,C含量主要影响材料的冲击功等。
图论在计算机中的应用与发展,离散数学在计算机学科中的应用探究
摘要
随着知识经济时代的到来及科技的发展,离散数学的思想逐渐对计算机学科中的影响越来越突出,并且离散数学作为计算机学科研究应用的有效工具,对于计算机学科的持续发展产生了重要影响,本文就离散数学在计算机学科中的应用现状进行分析,针对离散数学应用中存在的问题提出相应的解决措施,为相关研究人员和工作人员提供一定的借鉴意义。
【关键词】离散数学计算机学科应用探究
在离散数学的应用中,离散对象是离散数学中常见的内容,离散是指元素不能有效连接的元素,由于计算机学科的发展以及离散数学的独特性,离散学科的可行性研究是一个重要的研究领域,在离散数学的的研究中,需要进一步找出离散变量的存在性,并根据该变量的存在特点,找出该问题有规则的计算步骤,由于计算机属于一个离散结构,其研究对象均为离散式,因此,需要离散数学知识的支持,以便促进计算机学科的发展。
1离散数学应用于计算机学科中的必要性
离散数学作为计算机学科应用数学的一种有效工具,对于整个计算机学科的发展研究起着重要的推动作用,在计算机学科的形式语言中,可以通过离散数学的自动机理论来研究整个形式语言的发展,并且可以对计算机学科中的程序进行适当的探索产生灵感,在离散数学中的谓词演算、代数结构等理论,都可以为计算机学科的进一步发展提供相关的理论依据,促进计算机学科的研究进程,但是,如果对离散数学的内容没有清楚的理解,在计算机的学科研究中,可能会失去这一灵感来源。因此要重视离散数学对于计算机学科应用的重大意义。
2离散数学在计算机学科的内部具体应用
2.1在数据结构中的应用
在计算机的数据结构中
深度学习方法在负荷预测中的应用综述(论文阅读)
前言 本篇论文主要介绍了当下用于智能电网电力负荷预测的多种DL方法,并对它们的效果进行了比较。对于RMSE的降低效果上,集成DBN和SVM的方法RMSE降低显著,达到了21.2%。此外,PDRNN方法与ARIMA方法相比有很大的降低,达到了19.2%。而使用带有k-means的CNN相比于只使用CNN,下降百分比也达到了12.3%。
负荷预测相关代码:
深入理解PyTorch中LSTM的输入和输出(从input输入到Linear输出)PyTorch搭建LSTM实现时间序列预测(负荷预测)PyTorch中利用LSTMCell搭建多层LSTM实现时间序列预测PyTorch搭建LSTM实现多变量时间序列预测(负荷预测)PyTorch搭建双向LSTM实现时间序列预测(负荷预测)PyTorch搭建LSTM实现多变量多步长时间序列预测(一):直接多输出PyTorch搭建LSTM实现多变量多步长时间序列预测(二):单步滚动预测PyTorch搭建LSTM实现多变量多步长时间序列预测(三):多模型单步预测PyTorch搭建LSTM实现多变量多步长时间序列预测(四):多模型滚动预测PyTorch搭建LSTM实现多变量多步长时间序列预测(五):seq2seqPyTorch中实现LSTM多步长时间序列预测的几种方法总结(负荷预测)PyTorch-LSTM时间序列预测中如何预测真正的未来值PyTorch搭建LSTM实现多变量输入多变量输出时间序列预测(多任务学习)PyTorch搭建ANN实现时间序列预测(风速预测)PyTorch搭建CNN实现时间序列预测(风速预测)PyTorch搭建CNN-LSTM混合模型实现多变量多步长时间序列预测(负荷预测)PyTorch搭建Transformer实现多变量多步长时间序列预测(负荷预测)PyTorch时间序列预测系列文章总结(代码使用方法)TensorFlow搭建LSTM实现时间序列预测(负荷预测)TensorFlow搭建LSTM实现多变量时间序列预测(负荷预测)TensorFlow搭建双向LSTM实现时间序列预测(负荷预测)TensorFlow搭建LSTM实现多变量多步长时间序列预测(一):直接多输出TensorFlow搭建LSTM实现多变量多步长时间序列预测(二):单步滚动预测TensorFlow搭建LSTM实现多变量多步长时间序列预测(三):多模型单步预测TensorFlow搭建LSTM实现多变量多步长时间序列预测(四):多模型滚动预测TensorFlow搭建LSTM实现多变量多步长时间序列预测(五):seq2seqTensorFlow搭建LSTM实现多变量输入多变量输出时间序列预测(多任务学习)TensorFlow搭建ANN实现时间序列预测(风速预测)TensorFlow搭建CNN实现时间序列预测(风速预测)TensorFlow搭建CNN-LSTM混合模型实现多变量多步长时间序列预测(负荷预测)PyG搭建图神经网络实现多变量输入多变量输出时间序列预测PyTorch搭建GNN-LSTM和LSTM-GNN模型实现多变量输入多变量输出时间序列预测PyGTemporal搭建STGCN实现多变量输入多变量输出时间序列预测目录AbstractKeywordsI.INTRODUCTIONII.DifferentDeepLearningMethodsA.AutoencoderB.RecurrentNeuralNetworkC.LSTMD.CNNE.RestrictedBoltzmanMachine(RBM)F.DeepBeliefNetwork(DBN)G.DeepBoltzmanMachine(DBM)III.REVIEWONLOADFORECASTINGIV.CONCLUSIONAbstract简单来说,近十年来,深度学习在电力系统负荷预测方面应用已经十分广泛,本文主要探索了DL在电力系统和智能电网负荷预测中的不同应用,并且比较了众多方法的RMSE以及MAE,并最终发现,卷积神经网络CNN与k-means算法结合可以大大降低RMSE。
Keywords人工神经网络(ANN),预测,学习(人工智能),机器学习,智能电网。
引申:
DL入门(1):卷积神经网络(CNN)机器学习之K_means(附简单手写代码)I.INTRODUCTION深度学习也是机器学习的一种,它拥有很深的内部隐藏层,用于模仿人类内部的神经网络,使得其能像人脑一样思考。机器学习算法分为有监督学习和无监督学习,区别在于有监督学习作用于有特征的数据集,且每个特征都与标签相关联,而无监督学习作用于无标签的数据集,以便从数据集中学习到有用的属性。 简单来说,所谓监督学习(Supervisedlearning),是指利用一组已知类别的样本调整分类or回归的参数,使其达到所要求性能的过程,也称为监督训练或有教师学习。 监督学习可以理解为学生从老师那里获取知识、信息,老师提供对错指示、告知最终答案。学生在学习过程中借助老师的提示获得经验、技能,最后对没有学习过的问题也可以做出正确解答。“老师提供对错指示”这句话很关键,它告诉我们:我们的训练样本,都是有“标准答案的”,比如分类,你在训练的时候就已经知道了它的正确类别,比如回归,你在训练的时候同样也提前知道了真实值。 监督学习要实现的目标是“对于输入数据X能预测变量Y”。这个预测可以是分类,也可以是具体的一个数值。 无监督学习的样本是没有标记的,无监督学习的最典型代表就是聚类。聚类的目的在于把相似的东西聚在一起,而我们并不关心这一类是什么。 机器学习的局限性在于高维数据学习能力的不足,而表征学习(representationlearning)的目的是对复杂的原始数据化繁为简,把原始数据的无效的或者冗余的信息剔除,把有效信息进行提炼,形成特征(feature),所以这算是针对ML的一种改进。 此外,SVM在负荷预测中也有较为广泛的应用。相比于ML,DL更加复杂,在负荷预测中应用更加广泛,表1是2014-2016年发表的负荷预测论文中使用的DL方法的综述论文集合: 可以看到,机器学习方向有SVM和k-means参与到了预测之中,DL仍是主流。
II.DifferentDeepLearningMethods这部分主要介绍了用于智能电网负荷预测的常用DL方法及其计算图,我们一个一个来看。
A.Autoencoder自动编码器是一种无监督的数据维度压缩和数据特征表达方法。在大部分提到自动编码器的场合,压缩和解压缩的函数是通过神经网络实现的。 一个简单的自编码器结构如图1所示:它通过编码器函数h=f(x)h=f(x)h=f(x)以及解码器函数x~=g(h) ilde{x}=g(h)x~=g(h)来实现,自编码器算法通常用于降维、特征学习或损坏数据重建,用于这三种目的的自编码器分别被称为不完全自编码器、稀疏自编码器和去噪自编码器。 有关自编码器的详细介绍请看:DL入门(2):自编码器(AutoEncoder)
B.RecurrentNeuralNetworkRNN(循环神经网络)基本用于处理时序数据,因为它有内部存储器,可以用之前的输入更新网络中每个神经元的状态。然而由于U、W、b三组权值共享,往往在处理大型时序数据时会有梯度消失的问题,造成模型失效。 有关RNN的详细介绍请看:DL入门(3):循环神经网络(RNN)
C.LSTM如上所说,RNN会由于梯度消失而失效,LSTM(长短期记忆网络)的提出正好解决这个问题。LSTM相比于RNN,引入了输入门i、遗忘门f、输出门o以及内部记忆单元c,图2展示了LSTM的一般结构: 遗忘门f用于控制输入x和上一层隐藏层输出h被遗忘的程度大小,输入门i用于控制输入x和当前计算的状态更新到记忆单元的程度大小,而隐藏层输出是由输出门和内部记忆单元决定的。 有关LSTM的详细介绍请看:DL入门(4):长短期记忆网络(LSTM)
D.CNNCNN(卷积神经网络)在视觉和音频处理、视频识别和自然语言处理中得到了广泛的应用。与RNN处理时序数据不同,CNN通常用于处理网格数据拓扑,时间序列数据的构建是一个时间间隔的一维网格,图像数据的构建是像素的二维网格。 有关卷积的详细介绍请看:DL入门(1):卷积神经网络(CNN)
E.RestrictedBoltzmanMachine(RBM)受限玻尔兹曼机(RBM)是一种无向概率图模型,RBM有两层:可见的输入层v+隐藏层h,通常RBM是堆叠的,通过增加多层隐藏层可以形成深度玻尔兹曼机(DBM),如下图所示:
F.DeepBeliefNetwork(DBN)深度信仰网络(DBN)相比于RBM多了几层隐藏结构,这些层使用反向传播算法进行训练,图3b显示了三层配置的DBN,两个隐藏层和一个可见层,其中最上面的两层是无定向的,但是,所有其它层之间的连接应该指向数据层。
G.DeepBoltzmanMachine(DBM)与DBN类似,DBM和RBM相比有了更多的隐藏层,但是和DBN不同的是,DBM体系结构在所有层的变量之间都有完全无定向的连接,如图3c所示。
III.REVIEWONLOADFORECASTING这一节将简要概述SG中最新负荷预测问题的相关DL架构。 DL被应用于短期预测(STLF)、中期预测(MTLF)和长期预测(LTLF)。电力负荷预测受到多方面因素影响,比如时间,天气以及客户类型等,特别是对于短期预测来说更是如此。一般文献中对LTLF的研究时间间隔多为一个小时到几周,MTLF为一个月到五年,LTLF的平均使用周期为5~20年。 使用期限不同,相应地被应用到不同方面,STLF应用于实时控制、能量转移调度、经济调度和需求响应;MTLF用于规划近期的发电plan,并显示电力系统在时间间隔内的动态;LTLF用来根据规模和类型来规划发电plan,以满足未来的需求和成本效益。
自动编码器被用于电价的STLF,该作者提出用于短期预测的堆叠去噪自编码器,预测方法针对两种模型进行了在线预测和提前一天预测。结果发现,去噪自编码器有着较好的预测效果,特别是针对前一天的预测。同时,该论文将结果与经典神经网络(NN)、支持向量机(SVM)、多元自适应回归样条(MARS)和最小绝对收缩与选择算子(Lasso)等最新预测方法进行了比较。 另有一项研究将自动编码器和LSTM结合起来进行预测,并将结果与人工神经网络、LSTM和DBN等最先进的方法进行比较。将该方法应用于21个太阳能电站,其训练和测试结果的均方根误差均值(RMSE)均有所下降。 对自编码器+LSTM的方法的研究表明,该方法的RMSE为0.0713,其次是DBN的0.0714。
总结:去噪自编码器被用于短期的电价预测,针对前一天的预测有着很好的效果;另外,自编码器与LSTM结合比之一般的DL方法,RMSE也有所下降。
在大多数论文中,我们使用RMSE和平均绝对误差(MAE)来评价所提方法的性能,并将其与其他文献中的方法进行比较。其表达式如下:其中x是测量的输入时间序列,y是预测的输出时间序列,N是时间序列的样本个数。 研究者将汇集深度循环神经网络(PDRNN)用于家庭负荷预测,该研究表明,向神经网络添加更多层次可以提高的预测性能。研究数据来自爱尔兰的920名智能电表用户,结果与已有的负荷预测方法如ARIMA、SVR和DRNN进行了比较。与其他方法相比,该方法在均方根误差方面得到了改善,ARIMA是19.5%,SVR是13.1%,而DRNN是6.5%。 总结:往nn中添加更多层次可以提高预测性能,DRNN在对于智能电表用户的负荷预测中,相比于ARIMA以及SVR,其RMSE有了很大的提高。
在电力负荷预测中,LSTM使用也比较广泛,通常使用的有标准的LSTM算法以及基于LSTM的Seq2Seq算法。一项研究表明,标准LSTM在1小时的分辨率下成功,1分钟下却失败了;相比之下基于LSTM的Seq2Seq在两种情况下表现均不错。此外另有一项针对居民电力负荷短期预测的研究中,对于单个负荷的预测,研究人员表示LSTM优于最新的居民用电负荷预测方法。 总结:与标准LSTM相比,基于LSTM的Seq2Seq算法在更短期的预测中有着更好的预测性能。
CNN与k均值聚类的结合算是一个很好的尝试,研究人员将其用于短期预测上。K-means算法用于在一个大型的数据集上创建用于训练CNN的聚类。此研究选取的是2014年8月的夏季数据和2014年12月的冬季数据。本研究的对比结果表明,在夏季实验k-means为0.2194,冬季实验k-means为0.2399时,CNN的RMSE有很大的提高,其夏冬季的RMSE分别为0.2379和0.2839;若仅仅只是简单使用CNN,夏冬季的RMSE分别为0.2502和0.2614。此项研究表明:在聚类技术的帮助下,CNN优于其他方法。 总结:CNN和k-means结合可以显著改善预测性能。
在一项研究中,RBM在用户电力负荷预测中也有较好的表现。通过使用启发式方法来确定隐藏神经元的数量,有4个隐藏层和150个隐藏神经元。预测结果与文献中已知的黄化神经网络(SNN)、DSHW和自回归综合移动平均(ARIMA)等预测方法进行比较。与SSN相比,该方法减少了(MAPE)和(RRMS)17%和22%,与DSHW相比,减少了9%和29%。 总结:通过启发式策略确定RBM的隐藏神经元数量,在4个隐藏层150个隐藏神经元的条件下,其预测性能相比SSN和DSHW均有所提高。 深度信念网络DBN在STLF中也有一些应用,研究人员希望利用和SVR集成的方法来提高DBN的负荷预测性能。研究人员在3个电力负荷需求数据集和3个回归数据集上应用了该方法,结果表明:SVR和DBN集成效果优于单独使用SVR、前馈NN、DBN和集成神经网络。对南澳大利亚的负荷需求预测结果显示,集成方法的RMSE为30.598,SVR为44.674,前馈NN为38.8585。 总结:与单独使用SVR、前馈NN、DBN和集成神经网络相比,DBN和SVR集成可以显著改善预测性能。 研究者提出一种用于风速预测的深度玻尔兹曼机,作者使用原始风速数据来预测短期以及长期风速。该算法被用来预测提前一小时和一天的风速,与自回归(AR)、自适应神经模糊推理系统(ANFIS)和SVR、SVM相比,该方法的性能有所提高。该方法提前10分钟的均方误差(MSE)为0.2951,对应于SVR的MSE为0.6340。提前一天预测的MSE为1.2926,相比之下SVR的MSE为1.3678,有所改善。 总结:DBM在短期以及长期风速预测方面较之SVR有显著提高。
表2比较了每篇论文中提出的方法和目前最先进的通用基准方法,显示了后一种方法相比于前一种方法RMSE的下降百分比。观察上表可以发现,与模糊神经网络相比,集成DBN和支持向量机方法的RMSE降低最显著,达到了21.2%。此外,PDRNN方法与ARIMA方法相比也有很大的降低,达到了19.2%。而使用带有k-means的CNN相比于只使用CNN,下降百分比也达到了12.3%。
IV.CONCLUSION本文综述了应用于SG负荷预测的著名深度学习方法。这些学习算法中的大多数已经成功地进行了预测分析。但同时也有一些问题有待解决,比如预测很受负载类型、时间、天气、季节、客户行为和假期的影响。 神经网络技术广泛应用于负荷预测问题,本文重点综述了目前应用于SG负荷预测的各种DL方法的研究现状,可以总结如下:
堆叠降噪自编码器算法用于电价的STLF,其对于前一天的预测效果很好。自动编码器和LSTM算法相结合,为可再生能源发电厂的预测提供了良好的RMSE结果。爱尔兰智能电表的负荷预测方面,深度RNN显示出优于其他预测方法(如ARIMA、SVR)的性能。基于LSTM的Seq2Seq在1小时分辨率下表现良好。采用k-means的CNN对冬夏STLF有着较好的预测性能。RBM用于客户的负荷预测,与ARIMA、DSHW和SSN相比,RBM的性能较好。DBN和支持向量机相结合,获得了最佳的负荷预测性能。预测DBM应用于智能电网的风速预测,在RMSE方面,与AR和SVR相比表现出了良好的性能。原文链接:AReviewofDeepLearningMethodsAppliedonLoadForecasting