问题标签 [gplearn]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何将 gplearn 的输出导出为 sympy 表达式或其他可读格式?
尽管这听起来像是一项简单的任务,但通过文档我还没有遇到过这样做的方法。
运行任意例程后(例如这些示例之一,我得到类似
我如何(或者我什至可以)将其转换为可以在外部使用gplearn
的表达式,例如sympy
表达式?
python - 用于从给定数据集生成新数据行的 gplearn 库
我正在使用 gplearn 库(遗传编程)从给定的数据集生成新规则。目前,我有 11 行数据和 24 列(特征),我将它们作为 SymbolicRegressor 方法的输入来获取新规则。但是,我只得到一个规则。一般来说,如果我提供 11 行数据作为输入,我不应该得到 11 条新规则。如果我做错了,那么正确的做法是什么?
输出是:
X7/(X15*(-X16*X20 - X19 + X2))
python-3.x - symbolicRegressor 的 Y_train 值
我将我的数据集拆分为X_train
、和Y_train
,然后我使用了 symbolicRegressor ...X_test
Y_test
我已经将 Dataframe 中的字符串值转换为浮点值。但是通过应用symbolicRegressor
我得到这个错误:
ValueError:无法将字符串转换为浮点数:'d'
其中“d”是来自 Y 的值。
由于我在Y_train
和中的所有值Y_test
都是字母字符,因为它们是“标签”,所以我不明白为什么要symbolicRegressor
尝试获取浮点数..
任何的想法?
python - 安装 gplearn
我尝试安装 GPLearn 以在 Python 中运行。
我使用 pip 通过以下命令安装 GPLearn:
一切似乎都很好
在VS2019中启动一个新的python项目并运行代码时
这给出了错误 No module named 'gplearn'。
用 Scikit-learn 尝试了完全相同的方法,效果很好。
python - SymbolicTransformer 生成的新特征不符合规则?
我有相同的功能。我将它们放入 SymbolicTransformer,适合。这是 fit 的结果:
[sqrt(X145), log(div(add(div(div(X270, X568), sub(X177, X147)), 否定(sqrt(X3)))), sqrt(div(log(X240), sub(X32) ,X481))))),blablabla ...]
X145之列:
变换后,从 sqrt(X145) 生成的新特征的列(新特征的第一列)为:
我想列 sqrt(X145) 是:
[sqrt(0),sqrt(5),sqrt(2),sqrt(10),sqrt(15)]
显然,我对 SymbolicTransformer 关于生成特征有一些误解。如果我错了,请纠正我。
feature-engineering - 如何保证 gplearn 的 SymbolicTransformer 的 _best_programs 的输出不同?
我正在使用 gplearn 的 SymbolicTransformer 来生成一些自动化特征。问题是,当我在拟合后通过查看 _best_programs 来检查特征的表达时,我发现大多数特征都有相同的表达。我想知道是否有办法确保我们在拟合后使用 SymbolicTransformer 输出不同的特征?
real-time - 遗传编程、在线学习、gplearn
我最近发现了全科医生,发现它很吸引人。显式学习数学表达式与隐式学习神经网络完全不同!我对 GP 如何与在线学习一起工作很感兴趣,我想因为有一个进化过程,所以在线学习感觉很自然。但是,我不确定我是否完全掌握了所有细节,这让我怀疑我的直觉是否正确。所以,我认为如果一次输入一个数据点,算法应该更新数学表达式,也许一次几个数据点可能会产生更好的结果。我认为 max_samples 参数gplearn
允许我指定一次查看的数据点百分比,但是所有数据点都必须可用吗?如果所有数据点都不可用怎么办?下面的循环会做什么?
每次运行 est_gp.fit 时,该方法都会遍历 N 个可能的函数并在每一代期间修改函数。但是,如果它对一个数据点这样做,当引入一个新的数据点时,它是否会从之前的数据点中取出获胜模型并将其投入到新的群体中?
(注意:在GitHub 上提出了相同的问题)。
genetic-algorithm - 如何为符号回归选择特征
如何为符号回归选择特征?我有 30 个特征,我只想对符号回归使用最敏感的特征。
例如,可以使用这个数据集,它类似于我的数据集。https://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_boston.html