skSymbolRegressor

首发版本:3.00.6

语法

skSymbolRegressor(skengine, method, config)

详情

创建符号回归器。

注:

社区版 License 暂不支持 Shark。如需使用,请前往官网下载页面,在 Shark 区域单击申请试用

参数

skengine 句柄,指定负责符号回归训练的 Shark 引擎。可以使用 getGlobalSharkEngine 函数获取引擎句柄。

method STRING 标量,指定实现符号回归的方法。目前只支持 "gplearn",表示基于遗传编程(Genetic Programming)实现符号回归。

config 字典,指定符号回归器配置,包括以下键:

  • "functionSet":函数名称向量,指定初始化表达式树和进化时可使用的函数集合。可包含 Shark 支持的内置函数,例如 addsubmuldivmean,也可包含使用 @gpu 标记的自定义函数。不指定时使用内部默认函数集,包括 sincostanasinacosatansinhcoshtanhasinhacoshatanhreciprocalexplognegsqrtcbrtabsaddsubmuldivpow
  • "selection":字典,指定选择策略,包括以下键:
    • "name":STRING 标量,目前只支持 "tournament",表示锦标赛选择算法。
    • "param":字典,指定锦标赛的规模,比如 {"size":5} 表示规模为 5,每次抽取 5 个候选表达式进行比较,选出最好的一个表达式晋级。默认值为 3,必须大于 0。
  • "mutations":字典元组,指定变异、繁殖策略及其权重。元组中的字典包含以下键:
    • "name":STRING 标量,指定策略名称,可选值包括 "crossover"、"subtree"、"hoist"、"point"、"reproduction",每种策略的具体含义可以参考 Introduction to GP
    • "weight":INT 标量,指定策略抽样权重。权重越大,训练中被选中的概率越高。
    • "param":字典,指定策略参数。 目前仅 point 策略支持设置 "rate",比如 {"rate":0.2}。默认值为 {"rate":0.1}。
  • "verbose":BOOL 标量,指定是否输出回归器创建阶段的配置日志,默认值为 false。

返回值

一个符号回归器句柄。