基于spss的非线性回归(non-linear regression)

一、简介

1、非线性回归

 非线性关系可以分为本质是线性关系的非线性关系完全非线性关系,有点拗口。在曲线回归总已经介绍,可以通过变量装换,转化为线性关系,并进行线性回归分析的就是本质是线性关系的非线性关系。如果无法通过变量装换,转化为线性关系,无法进行线性回归分析的叫完全非线性关系。这里我们介绍的非线性关系就是完全非线性关系的回归分析。

  1. 可线性化问题:处理可线性化处理的非线性回归的基本方法是,通过变量变换,将非线性回归化为线性回归,然后用线性回归方法处理。假定根据理论或经验,已获得输出变量与输入变量之间的非线性表达式,但表达式的系数是未知的,要根据输入输出的n次观察结果来确定系数的值。按最小二乘法原理来求出系数值,所得到的模型为非线性回归模型(nonlinear regression model)。
  2. 不可线性化问题:对实际科学研究中常遇到不可线性处理的非线性回归问题,提出了一种新的解决方法。该方法是基于回归问题的最小二乘法,在求误差平方和最小的极值问题上,应用了最优化方法中对无约束极值问题的一种数学解法——单纯形法。应用结果证明,这种非线性回归的方法算法比较简单,收敛效果和收敛速度都比较理想。

2、非线性回归模型

二、基于spss的操作

 案例分析:某省农科院新培育了一种高产量农作物,并在海南的试验田中进行实验种植,现有试验田施肥量及其对应的农作物产量数据,根据该数据文件推定施肥量与产量之间的关系。

1、分析步骤

(1)做散点图

 观察施肥量与农作物产量的关系;选择菜单【图形】-【旧对话框】-【散点/点状】,将施肥量选为自变量,产量选为因变量。

(2)估计初始值

 根据上图,施肥量和产量之间似乎存在线性关系。但是根据实际经验可知,这种推断不正确。因为作物产量不可能随着施肥量的增加而一直增加下去,当产量达到一定水平时,施肥量的增加不会带来产量的进一步提高,二者的关系可以用渐进回归模型: y = b 1 + b 2 ∗ e x p ( b 3 ∗ x ) y=b_{1}+b_{2}*exp(b_{3}*x) y=b1+b2exp(b3x)要确定回归方程,首先要估算b1、b2、b3的初始值。
由散点图看出,产量最大值接近13,不妨设b1=13;x=0时,y=6,故b2=6-13=-7;b3为散点图中两个分隔较宽的点之间的连线的斜率的倒数,在此取b3=-1.5。
(ps:这里我觉得可以用matlab或者py神经网络这些来输出个拟合函数作为初始值,就是不知道会不会出现输入值初始值=输出参数值的问题,可能是过拟合?)

(3)参数设置

 参数设置;选择【分析】-【回归】-【非线性】菜单,打开非线性回归对话框。按照下图输入数据。
在这里插入图片描述

(4)损失函数设置

 单击“损失”,设置损失函数。所谓损失函数是指一个包括当前工作文件中的变量以及所设定的参数并通过计算法使之最小化的函数。系统默认状态下,非线性回归过程根据算法将残差平方和最小化为损失函数。如果选择“用户定义的损失函数”,可以再“用户定义的损失函数”列表框中键入或者粘贴一个表达式。字符串常数必须包含在引号或撇号中,数字常数必须按以美式格式键入,并用句点作为小数分隔符。本案例选择系统默认设置。单击“继续”。
在这里插入图片描述

(5)参数约束设置

 参数约束设置;单击“约束,定义参数约束。“约束”是在对解的迭代搜索过程中对参数所允许值的限制。该对话框有两个设置选项:“未约束”和“定义参数约束”。
在这里插入图片描述

(6)保存设置

 保存设置;单击“保存”,该对话框提供4种用于保存的数据类型,允许作为新变量的观测值保存于当前文件中。
在这里插入图片描述

(7)算法设置

 单击“选项”,该对话框用于设置参数估计的算法和算法的迭代次数、迭代步长和收敛条件等。
在这里插入图片描述

2、结果解释

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

  1. 如上图所示,该案例经过多大20步的迭代估计之后,找到模型的最优解,即 b1、b2、b3的参数估计值13.348、-10.783和-0.418,此外还得到了三个参数值的标准误差和95%置信区间,以及三个参数估计值的相关系数,可以看出各个参数值之间的相关性很高,尤其是b1和b3的相关系数达到0.968,属非常显著的相关关系。

  2. 根据上表回归模型的方差分析结果,表中回归行的平方和代表该回归模型所能解释的模型的方差变化,而残差行的平方和代表该非线性回归模型所不能解释的方差变化。二者的和即为未修正的总计,它是总的残差平方和,而 R 2 = 1 − ( 残 差 平 方 和 ) / ( 已 更 正 的 平 方 和 ) = 0.907 R2=1-(残差平方和)/(已更正的平方和)=0.907 R2=1/=0.907说明该模型能解释因变量90.7%的变异量,即该非线性模型的拟合优度很高。根据以上分析可以确定,该分析所获得的回归模型显著。
    根据线性回归模型: y = b 1 + b 2 ∗ e x p ( b 3 ∗ x ) y=b_{1}+b_{2}*exp(b_{3}*x) y=b1+b2exp(b3x)
    可得回归方程: 作 物 产 量 = 13.348 − 10.783 ∗ e − 0.418 ∗ 施 肥 量 作物产量=13.348-10.783*e^{-0.418*施肥量} =13.34810.783e0.418

从散点图可以知道,目前采集到的数据还不足够,因为图中没有出现明显的平缓趋势。为了找到最合适的施肥量,可以通过得到的回归方程,做出自变量(施肥量)范围更广的曲线,找出曲线的平缓位置,这个位置对应的横轴值就是合理的施肥量。

参考文章

[1]微信公众号生活统计学:SPSS分析技术:非线性回归;科学种田!肥料应该用多少合适?
[2]百度百科:非线性回归

  • 22
    点赞
  • 250
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
在使用SPSS进行非线性回归拟合时,可以按照以下步骤进行操作: 1. 首先,可以绘制散点图来查看变量之间的关系,并确定是否适合使用非线性回归模型。 2. 在估计初始值阶段,可以根据理论或经验给出非线性回归模型的初始参数值。 3. 在参数设置中,可以指定非线性回归模型的函数形式,以及需要拟合的变量。 4. 在损失函数设置中,可以选择拟合过程中所使用的损失函数,例如最小二乘法。 5. 在参数约束设置中,可以设置参数的限制条件,以便更好地拟合数据。 6. 在保存设置中,可以选择保存拟合结果的相关信息。 7. 在算法设置中,可以选择使用的算法来进行拟合。 最后,可以解释拟合结果并进行分析。非线性回归模型在拟合复杂曲线模型方面具有优势,通过迭代方法可以获得较为稳定的结果,并且可以使用不同的误差测量方法来提供更强大的分析能力。特别适用于实验室数据的分析。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [基于spss非线性回归non-linear regression)](https://blog.csdn.net/weixin_45839604/article/details/108283601)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *3* [SPSS(七)非线性回归过程](https://blog.csdn.net/LuYi_WeiLin/article/details/90288992)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值