astroautomata/PySR
Symbolic Learning in Python and Julia
解决的问题
PySR 解决了寻找能够拟合数据集的可解释、解析式的问题。与作为“黑箱”的标准机器学习模型不同,PySR 通过符号回归发现实际的数学表达式,以优化给定目标,使变量之间的潜在关系变得明确。
工作原理
PySR 提供了对用 Julia 编写的高性能搜索引擎(SymbolicRegression.jl)的 Python 接口。它使用多线程搜索过程,涉及数十万次突变和方程评估,以找到最佳拟合的符号表达式。它还可用于“符号蒸馏”(Symbolic Distillation),将复杂的神经网络转换为更简单的解析式,以帮助解释深度学习模型。
适用人群
专为需要透明、人类可读数学模型而非不透明预测的研究人员和数据科学家设计,尤其适用于处理低维数据集或希望解释神经网络的用户。
特色亮点
- 与 scikit-learn 兼容:使用熟悉的
.fit()和.predict()API。 - 高性能:利用 Julia 承担符号搜索的繁重计算任务。
- 可微分输出:可将学习到的方程导出为 JAX 和 PyTorch 格式。
- 高度可配置:允许用户定义自定义的二元和一元运算符、损失函数以及复杂度约束。
- 集成支持:内置技能,支持代码代理在智能体循环中使用 PySR。
相关
- 项目
- 项目
- 项目
- 项目
- 项目