如何从多项式拟合中提取方程?

2023-12-31

我的目标是将一些数据拟合到多项式函数并获得包括拟合参数值的实际方程。

我适应了这个例子 http://scikit-learn.org/stable/auto_examples/linear_model/plot_polynomial_interpolation.html根据我的数据,结果符合预期。

这是我的代码:

import numpy as np
import matplotlib.pyplot as plt

from sklearn.linear_model import Ridge
from sklearn.preprocessing import PolynomialFeatures
from sklearn.pipeline import make_pipeline


x = np.array([0., 4., 9., 12., 16., 20., 24., 27.])
y = np.array([2.9,4.3,66.7,91.4,109.2,114.8,135.5,134.2])

x_plot = np.linspace(0, max(x), 100)
# create matrix versions of these arrays
X = x[:, np.newaxis]
X_plot = x_plot[:, np.newaxis]

plt.scatter(x, y, label="training points")

for degree in np.arange(3, 6, 1):
    model = make_pipeline(PolynomialFeatures(degree), Ridge())
    model.fit(X, y)
    y_plot = model.predict(X_plot)
    plt.plot(x_plot, y_plot, label="degree %d" % degree)

plt.legend(loc='lower left')

plt.show()

但是,我现在不知道在哪里提取各自拟合的实际方程和拟合参数值。我在哪里可以访问实际的拟合方程?

EDIT:

变量model具有以下属性:

model.decision_function  model.fit_transform      model.inverse_transform  model.predict            model.predict_proba      model.set_params         model.transform          
model.fit                model.get_params         model.named_steps        model.predict_log_proba  model.score              model.steps

model.get_params不存储所需的参数。


线性模型的系数存储在intercept_ and coeff_模型的属性。

通过关闭正则化并输入已知模型,您可以更清楚地看到这一点;例如

import numpy as np
from sklearn.linear_model import Ridge
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import PolynomialFeatures

x = 10 * np.random.random(100)
y = -4 + 2 * x - 3 * x ** 2

model = make_pipeline(PolynomialFeatures(2), Ridge(alpha=1E-8, fit_intercept=False))
model.fit(x[:, None], y)
ridge = model.named_steps['ridge']
print(ridge.coef_)
# array([-4.,  2., -3.])

另请注意,PolynomialFeatures默认情况下包含一个偏置项,因此将截距拟合为Ridge对于小的来说是多余的alpha.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从多项式拟合中提取方程? 的相关文章

随机推荐

  • Flipboard 或 iBooks 风格的动画

    有没有类似 iBooks 或 Flipboard 等模拟翻页的示例 YES 前几天我在 github 上看到了这个 http github com brow leaves http github com brow leaves 类似 iBo
  • Laravel 服务容器和服务提供者

    需要通过示例了解Laravel服务容器和服务提供者 The 服务容器是我们应用程序的地方bindings被存储 和服务供应商是我们注册绑定的类服务容器 在 Laravel 的旧版本中 我们没有这些提供程序 开发人员总是询问在哪里放置绑定 答
  • 如何从 List 获取 IntStream?

    我可以想到两种方法 public static IntStream foo List
  • 新 Firebase 中的 Firebase AngularFire

    我有一个角度应用程序 它利用 angularFire 库 firebase文档中指出支持angularfirehttps firebase google com support guides firebase web update your
  • 在烧瓶中嵌入散景图和数据表

    我正在尝试使用 Bokeh 文档中提供的一些示例将散景图和散景数据表嵌入到烧瓶生成的网站 同一页面 中 两个组件都独立工作 我尝试通过 gridplot 将它们放在一起 但这似乎只适用于绘图 而数据表是一个 小部件 我可能缺少一些非常基本的
  • 在 Visual Studio Code 中进行格式化时,将 HTML 属性包裹在用户设置的新行上

    在我们的团队中 有些人使用 Webstorm 其他人使用 Visual Studio Code 当用户将属性放在新行上时 Webstorm 会垂直对齐属性 它将与行中的最后一个属性对齐 Visual Studio Code 有一个设置 您可
  • 动画内在内容大小的变化

    我有一个 UIView 子类 它绘制一个半径变化的圆 带有漂亮的弹性动画 视图决定了圆的大小 我希望这个 UIView 子类更改其帧大小以匹配对圆半径的动画更改 并且我希望这些更改能够修改连接到视图的任何 NSLayoutConstrain
  • .net micro (µ) 希腊字母大写问题

    我有以下代码 string firstMicro aa u00b5 bb string secondMicro aa u03bc bb Assert IsFalse firstMicro secondMicro string upperFi
  • 如何显示 PHP 错误?

    我已经检查了我的 PHP ini 文件 php ini and display errors已设置 并且错误报告也已设置E ALL 我已经重新启动了我的 Apache 网络服务器 我什至将这些行放在脚本的顶部 它甚至没有捕获简单的解析错误
  • 负载平衡 Web 服务器上的 Orchard CMS

    我正在考虑在负载平衡服务器上运行 Orchard CMS 两台带有硬件负载平衡器的 Web 服务器和一个 SAN 文件共享 我一直无法找到这方面的任何信息 我想知道是否会存在更新和缓存问题 如果缓存页面 更新是否会传播到其他服务器 我还想知
  • Android:如何以对话框或弹出窗口的形式显示 wifi(选择要连接的 SSID)?

    我开发了一个应用程序 想要将 wifi 网络显示为对话框 弹出窗口 我的代码是 startActivity new Intent WifiManager ACTION PICK WIFI NETWORK It just show wifi
  • Certbot - 找不到合适的 TLS CA 证书捆绑包 [Archlinux]

    我正在尝试通过 certbot 软件包版本 0 21 1 1 从 Let s Encrypt It 生成证书 但出现错误 我正在使用 webroot 模块 OSError Could not find a suitable TLS CA c
  • 基于Ajax响应的Reactjs动态页面中404如何处理?

    我有带有动态 ID 的反应组件
  • 芹菜:“明显偏离”

    我的分布式系统上的芹菜有很大的问题 我有几台不同本地化的机器 并且我的日志文件中有很多警告 例如 与 celery host 发生重大偏差 我能够设置日期以返回相同的值 即使机器位于不同的国家 地区 但 python print utcof
  • 我不想在生成记录时显示 mysql 中的某些表和某些列

    由于我已经让管理员动态创建表单 当他创建表单时 我所做的是动态创建表单的表 一切都工作正常 现在我想显示用于生成报告的表格和列 我不想表现出来 用户登录 地点 地点 用于生成报告的表格和三列 user id 用户常用号 年份 这三列对于我动
  • 你的清单中的 android:description 标签出现在哪里?

    android label 参数显示在主屏幕上的图标下方 但我看不到 android description 标签显示在手机上的位置 主屏幕 应用程序设置菜单 我在Android官方文档中没有找到答案 任何想法 虽然我在 Android 操
  • HTML 复选框表单和 HTTP URL

    所以 我有这个 HTML 表单
  • 变量名中的 Perl 变量替换

    usr bin perl my var a sub a a var a a print var sub a n sub b b var b b print var sub b n DATA b 为什么打印b 而不打印a 这对我来说似乎是非常
  • 从 v8::Arguments 转换为 C++ 类型

    我正在尝试用 C 创建 Node js 模块 但我对 v8 Arguments 类感到困惑 假设我有一个用于发送电子邮件的 Javascript 类 它有一个具有以下签名的方法 Mailer sendEmail Array recipien
  • 如何从多项式拟合中提取方程?

    我的目标是将一些数据拟合到多项式函数并获得包括拟合参数值的实际方程 我适应了这个例子 http scikit learn org stable auto examples linear model plot polynomial inter