没有合适的资源?快使用搜索试试~ 我知道了~
软件X 18(2022)101019原始软件出版物BOXVIA:贝叶斯优化可执行和可视化应用程序石井昭光a,上条龙之介a,山中昭则b,山本昭康ca东京农工大学工学研究生院机械系统工学系,2-24-16,日本东京都小金井市中町184-8588b东京农工大学工学研究所先进机械系统工程学系,2-24-16,Naka-cho,邮编:184-8588c日本东京184-8588小金井市中町2-24-16东京农工大学工学院高级应用物理系ar t i cl e i nf o文章历史记录:2021年10月21日收到收到修订版,2022年1月30日接受,2022年保留字:贝叶斯优化GUI可视化Pythona b st ra ct贝叶斯优化(BO)作为一种强有力的概率优化方法,在各个研究领域引起了广泛的关注为了进一步促进BO的使用,我们开发了一个基于图形用户界面的Python应用程序,称为BOXVIA。BOXVIA支持在不构建计算环境和/或不需要编程技能的情况下使用BO。此外,BOXVIA通过某些有用的功能帮助用户有效地解释BO过程的结果,这些功能可用于可视化均值函数、标准差和采集函数。©2022作者(S)。由爱思唯尔公司出版这是CC BY许可下的开放获取文章(http://creativecommons.org/licenses/by/4.0/)中找到。代码元数据当前代码版本1.1.0此代码版本使用的代码/存储库的永久链接https://github.com/ElsevierSoftwareX/SOFTX-D-21-00205Code Ocean compute capsuleBSD 3-Clause'' New '' or '' Revised '' license(BSD-3-Clause)使用git的代码版本控制系统使用Python的软件代码语言、工具和服务编译要求,操作环境依赖Python3.7;以下库的最新版本:GPyOpt,Matplotlib,Pandas,Dash,Dash_bootstrap_components如果可用,链接到开发人员文档/手册https://github.com/Yamanaka-Lab-TUAT/BOXVIA#tutorial如有疑问,请发送支持电子邮件至akmt. gmail.com或a-yamana@cc.tuat.ac.jp软件元数据当前软件版本1.1.0此版本可执行文件的永久链接https://github.com/Yamanaka-Lab-TUAT/BOXVIA/releases/tag/v1.1.0合法软件许可证BSD 3-Clause计算平台/操作系统Linux,macOS,Microsoft WindowsWeb浏览器:Google Chrome、Safari、Firefox或Edge如果可用,请链接到用户手册-如果正式发布,请包括参考文献列表中对出版物的参考https://github.com/Yamanaka-Lab-TUAT/BOXVIA#tutorial如有疑问,请发送支持电子邮件至akmt-ishii@gmail.com或a-yamana@cc.tuat.ac.jp*通讯作者。电子邮件地址:akmt-ishii@st.go.tuat.ac.jp(AkimitsuIshii)。https://doi.org/10.1016/j.softx.2022.1010191. 动机和意义贝叶斯优化(BO)是一种数据驱动的优化方法,用于查找函数的最大值/最小值2352-7110/©2022作者。 由Elsevier B.V.出版。这是一篇开放获取的文章,使用CC BY许可证(http://creativecommons.org/licenses/by/4.0/)。可在ScienceDirect上获得目录列表SoftwareX期刊主页:www.elsevier.com/locate/softxAkimitsu Ishii,Ryunosuke Kamijyo,Akinori Yamanaka etal.软件X 18(2022)1010192===≥其由于BO能有效地优化高维和不可微的目标函数,它在各个研究领域的应用越来越广泛[1]。例如,在材料科学领域,BO已用于探索新材料[3,4]和优化实验参数以改善材料性能[5,6]。BO通过使用高斯过程回归(GPR)回归目标函数的输入和输出之间的关系来建模目标函数[7]。通过GPR建模的预测函数及其不确定性可以使用均值函数和标准差来表示。最大化/最小化目标函数的输出的输入候选是基于采集函数的最大值来建议的,采集函数的最大值是使用均值函数和标准偏差来计算的。BO通过迭代以下循环来计算目标函数的最大值/最小值:经由GPR对预测函数进行建模,计算采集函数,以及使用由采集函数建议如果局部优化和全局搜索被捕获函数充分平衡,BO将有效地找到目标函数的全局最大值/最小值从BO获得的均值函数和标准差分布的可视化此外,采集函数的可视化分布使得能够识别获得目标函数的最大值/最小值的区域。在下文中,通过BO获得的三个函数被称为“已 经 开 发 了 许 多 用 于 BO 的 Python 库 , 例 如 GpyOpt [8] ,BayesianOptimization [9],GPflowOpt [10],BoTorch[11],PyGPGO [12],BayesO [13]和COMBO [14]。尽管这些库对于BO来说是有用的工具,但是它们需要编程技能和Python兼容的计算环境。这些先决条件阻碍了缺乏编程专业知识的研究人员使用BO,特别是为了克服这一挑战,开发了COMBO的免编程应用程序[15],并引起了材料信息学的关注。然而,现有的用于BO的Python语言/应用程序需要额外的编程来可视化BO的结果函数的分布。相比之下,GPyOpt库能够可视化BO的结果函数,用于包括多达两个维度的优化问题,而无需额外的编程。然而,当BO用于使用许多输入的实验时,理解使用GPyOpt的BO的结果函数是困难的。据作者所一个应用程序,可以执行BO和可视化其高维结果的功能,而无需构建一个计算环境和/或需要编程技能将是一个有效的工具,鼓励研究人员使用BO。为此,我们开发了一个新的基于GUI的应用 程 序 BO , 称 为 贝 叶 斯 优 化 可 执 行 和 可 视 化 应 用 程 序(BOXVIA)。通过使用BOXVIA,用户可以将BO应用到他们的研究/开发中,而无需构建计算环境和编程技能。此外,它能够可视化BO的三维或更高维的合成函数。2. 软件描述BOXVIA是使用Dash库开发的[16,17],它允许使用Python创建Web应用程序。在BOXVIA中,使用GPyOpt库是因为它为BO提供了各种功能,例如,向输入参数添加约束并同时建议多个输入候选项。通过整合BOXVIA的源代码、BOXVIA中使用的Python库以及使用pyinstaller [18]运行Python程序的计算环境,BOXVIA作为独立于计算环境和编程的可执行应用程序提供。使用Dash库开发的应用程序运行在网页浏览器。因此,BOXVIA可以在任何操作系统上使用(例如,Linux、Windows、macOS)。此外,BOXVIA不限于特定的Web浏览器;其在最新版本的Google Chrome,Safari,Firefox和Edge上的可操作性已得到确认。2.1. 软件构架BOXVIA需要一个逗号分隔变量(CSV)文件,该文件至少包含一个输入和输出的组合,目标函数。在CSV文件中,输入参数和输出的名称写在第一行,数值从第二行开始输入,输出必须写在最右边的一列。图1示出了BOXVIA过程的流程图。当导入CSV文件时,BOXVIA会自动识别优化问题的维数,即需要优化的输入参数个数,用d表示。 用于可视化BO的结果函数的图的类型取决于d。因此,不同的Python程序适用于d1,2和3,而用户可以操作BOXVIA任何d而不会混淆,因为可用性保持不变。输入参数的最大数量为20。值得注意的是,当d较大时,可视化BO结果的计算成本增加。当d≤5时,当前版本的BOXVIA可以以合理的计算成本可视化BO结果。2.2. 软件功能BOXVIA的设计是从上到下运行的BOXVIA的功能在以下章节中依次描述2.2.1. 导入CSV文件当用户导入CSV文件时,CSV文件中包含的数据将显示为表格。通过单击标记为“删除底部数据”的按钮,可以删除表的底部行实现此按钮是因为2.2.2. BO设置条件图 2显示了使用d 5导入示例CSV文件后显示的BOXVIA GUI。BOXVIA可以为BO设置以下条件。(1) 批量大小-BO建议的输入参数候选数。在BOXVIA中使用的GPyOpt中,采集函数可以通过称为本地惩罚的批处理方法建议多个输入[19]。(2) 采集类型(Acquisition type)-采集功能的类型。BOXVIA中有两个常用的采集函数:预期改善(EI)和置信下限(LCB)[1]。Akimitsu Ishii,Ryunosuke Kamijyo,Akinori Yamanaka etal.软件X 18(2022)1010193=-图1.一、使 用 BOXVIA启动贝叶斯优化并可视化均值函数、标准差和采集函数分布的流程图。(3) 抖动或权重-采集函数的超参数,确定局部优化和全局搜索之间的权衡[1,20]。此参数在EI中称为“抖动",在LCB中称为”权重“。该超参数的较大值鼓励全局搜索,而较小的值鼓励局部优化。抖动和权重都必须大于或等于0。默认情况下,抖动0.01和权重2,这是GPyOpt的默认值。(4) 核函数-GPR中使用的核函数类型[7]。BOXVIA可以使用多种类型的核函数,包括Matérn 5/2、Matérn 3/2和径向基函数(RBF)核函数,这些核函数通常用于BO。BOXVIA选择Matérn 5/2作为默认值,就像GPyOpt一样。(5) 目标函数的最大化。如果用户选中此选项,BO将搜索最大值;否则,BO将搜索目标函数的最小值。(6) 无噪声-无噪声评估[8],用于GPR中的预测功能。选中此选项时,导入的输出数据将被设置为无错误,并且输出数据所在位置的标准偏差将被强制视为一个小数量。(7) 避免重新评估-避免对相同的输入数据进行重新评估。如果选中此选项,BOXVIA不会建议输出已经存在的位置(8) 约束(Constraints)-优化问题的约束。用户可以为输入参数候选者定义不等式约束。这些不等式的右边约束必须为零。算术运算符是按照Python语法规范的。可以使用多行同时定义多个约束。当前版本的BOXVIA只能管理GPyOpt接受的代数形式的约束函数如果问题不需要约束,则允许空框。(9) 轴属性-从CSV文件导入的输入参数的名称显示在“轴名称”中。通过单击“添加"按钮,输入参数的名称将插入到”约束“中。每个输入参数的可能值范围通过“Range”设置。在“类型”中,用户选择建议的参数是连续的还是离散的。如果选择了离散类型,则建议以“Interval”中设置的时间间隔输入候选参数值得注意的是,优化结果根据所使用的采集和内核函数而变化[1,21]。因此,如果BOXVIA的默认设置优化失败,用户应根据其优化问题确定最佳功能。提供上述条件后,2.2.3. 删除BO建议的输入参数候选项BO建议的输入参数候选项显示在一个表中。用户可以编辑表格并写入与建议的输入相对应的输出。用户还可以通过单击“添加到导入数据表”按钮将数据追加到此表中,如第2.2.1节所述。此功能允许用户在不编辑原始导入CSV文件的情况下重新启动BO循环。Akimitsu Ishii,Ryunosuke Kamijyo,Akinori Yamanaka etal.软件X 18(2022)1010194=≤≥≥==−−≤ ≤ = −−=−图二、导 入 C S V 文 件 时 显 示 的 表 格 的 图形用户界面以及用于执行贝叶斯优化的设置。2.2.4. 可视化BO当d2时,BO的合成函数显示为二维(2D)图形。如果d2,则用户可以将图形类型从2D热图改变为三维(3D)表面。图形类型通过名为“3D surface”的开关切换当d3时,在显示图形之前必须配置以下设置。在“显示轴”中,选择三个输入参数作为3D图形的轴。在“显示数据类型”中,用户选择要显示的分布类型:均值函数如果选择“无”,则仅将导入的数据显示为标记。在“显示2D平面”中,横截面的方向显示为选择2D热图图形。配置这些设置后,单击名为“制作/绘制图形”的按钮,将显示3D和2D图形。用户可以使用图表下方的滑块调整横截面的位置和颜色条的范围。当d4时,不也可以调整用作3D图形的轴。3. 说明性实例本文介绍了BOXVIA的应用程序的三个例子,使用CSV文件与d1,2和5。示例CSV文件位于BOXVIA的GitHub存储库中这些文件包含使用Styblinski-Tang函数[ 22 ]生成的随机数据 当输入参数xi(i1,2,.. .,d和5X15)是(X1,X2,.. .,xd)( 2.903534,2.903534,.. . 、2.903534),首先,1是进口的。图3示出由BOXVIA生成的BO的一维合成函数的分布的可视化。在上图中,绿色和粉色区域分别表示均值函数和标准差。从CSV文件导入的数据用蓝色标记表示,其中输出值最小的数据用绿色标记表示。下图描绘了归一化到0到1的范围的采集函数。垂直的红线表示要评估的输入候选项的位置,如建议的那样Akimitsu Ishii,Ryunosuke Kamijyo,Akinori Yamanaka etal.软件X 18(2022)1010195== −=12 ≤图3.第三章。 一维均值函数、标准差和采集函数的可视化分布。见图4。 通过BOXVIA可视化输入参数约束下的二维均值函数、标准差和采集函数的分布作为(a)二维热图和(b)三维表面。的BO。可视化结果表明,BO预测的最小值约为x13,而采集功能增加时,标准偏差大。BOXVIA生成的图形使用户能够明确地得出结论,即输入候选项是基于全局搜索建议的。其次,我们将d2的CSV文件导入BOXVIA.在这个例子中,我们定义了两个输入参数之间的约束x1和x2,如x2 + x29、通过输入文本- “约束"部分中的9”。图图4示出了针对d 2经由BO针对优化问题获得的结果函数的可视化结果,作为2D热图(图4(a))和3D表面图(图4(a))。4(b))。通过BO建议的输入数据在图表中显示为红色标记或红线。在约束为零的区域中,获取函数强制等于零。Akimitsu Ishii,Ryunosuke Kamijyo,Akinori Yamanaka etal.软件X 18(2022)1010196== −== −图五. 图形用户界面显示可视化设置菜单和可视化的三维和二维图形。图表下方显示的滑块分别启用选择红色平面的位置、设置颜色条范围和选择“显示轴”中未选择的轴的值。(For解释有关本图例中的颜色参考,请参阅本文的网页版本不满意。通过3D表面图形的2D热图图形之外的可视化帮助用户直观地理解BO的结果函数的分布。作为最后一个示例,5进口进入BOXVIA。图图5示出了显示五维平均函数的可视化结果的GUI。在“显示轴”下选择x1、x2和x3x52.9显示。此外,还显示了x12.2处横截面上的平均函数横截面的位置由左侧面板中的红色平面指示图6示出了包含建议输入的3D域中的BO的合成函数的分布。图6(a)和(b)中的3D图形的轴被显示为x 3、x 4和x 5,而图6(b)中的那些轴被显示为x 3、x 4和x5。6(c)显示为x2、x4和x5。图图6(a)示出了BO的结果函数的分布,其中当点击名为“制作/绘制图”的按钮时,颜色条范围自动设置,而图6(b)示出了BO的结果函数的分布。图6(b)示出了具有用户定义的颜色条范围的分布用户可以通过调整颜色条来清除BO结果函数的趋势。此外,如图所示。 6(c),BOXVIA可以可视化通过操纵图1所示的GUI,在具有用户选择的轴的3D空间中的高维分布的任意部分区域。 五、4. 影响尽管由于BO在各个研究领域的适用性越来越强,已经开发了许多用于BO的Python库,但构建计算环境和编程技能的先决条件BOXVIA可以缓解这些困难。用户只需要一个CSV文件,几次鼠标点击,和某些数值输入,使用BOXVIA优化目标函数。此外,BOXVIA还可以可视化通过BO获得的均值函数、标准这样的可视化向用户提供了大量有用的信息,诸如未搜索的输入的分布和可以改进输出的输入的位置。特别是对于多变量优化问题,通过BOXVIA的可视化提供了重要的帮助,在理解高维目标函数的分布,这是人类难以想象的。我们Akimitsu Ishii,Ryunosuke Kamijyo,Akinori Yamanaka etal.软件X 18(2022)1010197见图6。通过BOXVIA可视化平均函数、标准差和采集函数的分布。(a)中的分布在默认颜色范围内绘制,(b)中的分布通过调整颜色条的范围相对于(a)中的分布进行阈值化。(c)中的分布在3D中绘制包含与(a)和(b)中相同的建议输入但具有与(a)和(b)中不同的轴的空间。(For对于图中颜色的解释,请读者参考本文的网络版本相信BOXVIA可以帮助研究人员进一步进行实验研究;例如,在材料信息学中使用BOXVIA可以帮助实现新的高性能材料的快速开发。5. 结论本文介绍了世界上第一个基于GUI的BO应用程序BOXVIA,它可以轻松地优化目标函数,并灵活地可视化BO的结果。BOXVIA使研究人员能够将BO纳入他们的研究中,而不考虑他们的编程技能和计算环境。研究人员可以使用BOXVIA获得待优化的高维目标函数的分布,这可能有助于他们的研究的新发现和进一步发展。我们相信,BOXVIA的广泛使用将促进材料科学、化学、应用物理、机器人、生命科学和医学等各个研究领域的过程信息和实 验 设 计 的 改 进 和 加 速 。 最 后 , 当 前 版 本 的 BOXVIA 使 用GPyOpt,这限制了可用的算法类型和功能因此,我们计划不断更新BOXVIA,通过配备创新 BO算法[23]和管理多目标优化问题来提高其可用性。竞合利益作者声明,他们没有已知的竞争性财务利益或个人关系,可能会影响本文报告的工作致谢这项工作得到了战略基础研究计划、进化科学和技术核心研究(CREST)、[革命性材料开发]通过融合强实验与理论/数据科学进行革命性材料开发、“基于超导材料信息学的多晶超导材料和磁体开发”的支持。(资助机构:日本科学技术厅,日本)[批准号:JPMJCR 18 J 4]。这项工作也得到了日本卫生研究所研究员补助金(资助机构:日本卫生研究所KAKENHI)的支持[批准号:JP 21J14085]。引用[1]Brochu E,Cora VM,de Freitas N.昂贵成本函数的贝叶斯优化教程,应用于主动用户建模和分层强化学习。2010,arXiv:1012.2599v1.[2]Shahriari B,Swersky K,Wang Z,Adams RP,de Freitas N.把人类从循环中 解 放 出 来 : 贝 叶 斯 优 化 的 回 顾 。 Proc IEEE 2016;104 : 148-75.http://dx.doi.org/10.1109/jproc.2015.2494218网站。Akimitsu Ishii,Ryunosuke Kamijyo,Akinori Yamanaka etal.软件X 18(2022)1010198[3] Yamawaki M,Ohnishi M,Ju S,Shiomi J.通过贝叶斯优化进行石墨烯热电体的多功能结构设计。SciAdv2018;4:eaar4192.http://dx.doi.org/10.1126/sciadv.aar4192网站。[4] 张毅,阿普利德维,陈伟.混合定量和定性变量的材料设计贝叶斯优化。SciRep 2020;10:4924. http://dx.doi.org/10.1038/s41598-020-60652-9网站。[5] Osada K, Kutsukake K , Yamamoto J , Yamashita S, Kodera T, NagaiY,et在各种约束条件下Si薄膜外延生长的自适应贝叶斯优化。今日通讯材料2020;25:101538.网址://dx.doi.org/10.1016/j.mtcomm.2020.101538网站。[6] Subianto S,Li C,Rubin de Celis Leal D,Rana S,Gupta S,He R,et优化高熵系统:使用两亲聚合物的高疏水表面的软件辅助开发。ACS Omega2019;4:15912-22. http://dx.doi.org/10.1021/acsomega.9b01978网站。[7] 拉斯穆森CE,威廉姆斯CKI。机器学习的高斯过程。剑桥:麻省理工学院出版社.[8] GPyOpt作者 GPyOpt:一贝叶斯优化框架Python中。2016年,https://github.com/SheffieldML/GPyOpt。[2021年9月[9] NogueiraF.贝叶斯优化:开放源约束Python的全局优化工具。2014年,https://github.com/fmfn/BayesianOptimization。[2021年9月24日]。[10]Knudde N,van der Herten J,Dhaene T,Couckuyt I. GPflowOpt:使用TensorFlow的贝叶斯优化库。2017年,arXiv:1711.03845v1。[11]Balandat M,Karrer B,Jiang DR,Daulton S,Letham B,Wilson AG,etal. Botorch:A framework for efficient Monte-Carlo Bayesian optimization.2020年,arXiv:1910.06403v3。[12] Jiménez J,Ginebra J. PyGPGO:Python的贝叶斯优化。J Open SourceSoftw 2017;2:431. http://dx.doi.org/10.21105/joss.00431网站。[13]Kim J,Choi S. BayesO:Python中的贝叶斯优化框架。2017年,中国科学院出版社。http://bayeso.org[2021年9月24日]。[14]杨文,李文. COMBO :一个用于材料科学的高效贝叶斯优化库。MaterDiscov 2016;4:18-21. http://dx.doi.org/10.1016/j.md.2016.04.001网站。[15]Terayama K,Tsuda K,Tamura R.基于机器学习的可执行文件的高效推荐工具 。 日 本 应 用 物 理 杂 志 2019;58 : 098001 。 http://dx.doi.org/10.7567/1347-4065/ab349网站。[16]很明显。Dash Python用户指南2021年,https://dash.plotly.com。[2021年9月[17]侯 赛 因 ·S用 dash bio 实 现 生 物 信 息 学 数 据 的 可 视 化 。 In: Proc. ofthe18thpython in science conf.. 2019年。[18]Pyrocket 开 发 团 队 。 Pyinstaller 。 2021 年 , http://www.pyinstaller 。 org.[2021年9月24日]。[19][10]杨文,杨文,杨文.通过局部惩罚进行批量贝叶斯优化。2016年第19届人工智能与统计国际会议论文集。[20]de Ath G,Everson RM,Rahat AAM,Fieldsend JE.贪婪是好的:贝叶斯优化 中 的 探 索 和 利 用 权 衡 。 ACM Trans Evol Learn Optim 2021;1 : 1-22.http://dx.doi.org/10.1145/3425501网站。[21]日格利亚夫斯基、希利林斯卡斯、选择高斯随机场的协方差函数,旨在建模全局优化问题。Optim Lett 2019;13:249-59. http://dx.doi.org/10.1007/s11590-018-1372-5网站。[22]高智明,赵杰,李世荣,胡永荣.改进的蜉蝣优化算法。J Phys:Conf Ser2020;1684:012077. http://dx.doi.org/10.1088/1742-6596/1684/1/012077。[23]Calvin J.,J.,Bi-objective Decision Making in Global Optimization Based onStatistical Models 。 J Global Optim 2019;74 : 599-609. 得 双 曲 正 切 值 .doi.org/10.1007/s10898-018-0622-5网站。
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功