符号回归与画图
本文共389字。
版权声明:署名 | CC BY 4.0
符号回归得到的公式形式往往复杂。为了使结果更加直观,可以用树状图表示。
gplearn
本文所用到的符号回归Python库是gplearn,官方文档在这里,程序例子在这里。

gplearn生成的公式,比如
1 | sub(add(-0.999, X1), mul(sub(X1, X0), add(X0, X1))) |
可以转变为如图1所示的树状图。
Graphviz
Graphviz是一款由AT&TResearch和LucentBell实验室开源的可视化图形工具,可以很方便的用来绘制结构化的图形网络,支持多种格式输出。 Graphviz输入是一个用dot语言编写的绘图脚本,通过对输入脚本的解析,分析出其中的点、边及子图,然后根据属性进行绘制。 Graphviz layout以简单的文本语言描述图形,并以实用的格式制作图表,如用于网页的images和SVG;用于放入在其它文件中或显示在交互式图形浏览器中的PDF和Postscript。
首先需要先下载Graphviz软件。根据Graphviz官网, Ubuntu等系统可以包管理工具通过指令安装:
1 | sudo apt install graphviz |
Windows 10则选择最新的64位安装包: graphviz 2.50.0 win64.exe。
然后安装Graphviz的Python库:
1 | conda install graphviz |
或者
1 | pip install graphviz |
Python画图
1 | # ... gplearn imports ... |
参考官网给出的例子,使用上述代码可以在当前文件夹生成如图1所示的树状图,文件名为my_picture.pdf。
Fin.