如何解决用于查找参数的非线性回归函数的预测能力比原始函数差
我在下面为数据帧DATA
编写函数
Proposed <- function(N_b,Lanes,m,A,x.sqr,e_1,e_2,e_3,e_4,e_5,stiff.girder,stiff.deck,a,b) {
e <- data.frame(e_1,Lanes)
CSi <- m * ((Lanes/N_b) + (max(A * apply(e,1,function(v) combn(v[1:5],v["Lanes"],sum))) / x.sqr) *
b(stiff.girder/stiff.deck)^a)
return(CSi)
}
提供了数据框DATA
的10个示例行:
> dput(DATA[c(1,12,25,37,48,65,72,88,105,150),])
structure(list(S = c(12,15,9),UG = c(100,108,116,124,84,92,100,108),N_b = c(5,5,5),A = c(24,24,30,18),x.sqr = c(1440,1440,2250,810),e_1 = c(21.8,21.8,29,14.6),e_2 = c(9.8,9.8,17,2.6),e_3 = c(-2.2,-2.2,-9.4),e_4 = c(-14.2,-14.2,-7,0),e_5 = c(0,-19,Proposed.Girder5 = c(0.957666666666667,0.957666666666667,1.088,0.834888888888889),Lanes = c(3,3,3),CSi = c(0.742449335304872,0.734447719305166,0.722337006161516,0.721976546016961,0.749024136565506,0.73505100465713,0.897852022262764,0.827056816324764,0.871528696680774,0.598622660546617),m = c(0.85,0.85,0.85),stiff.girder = c(1468.26598316295,1597.46911879011,1764.91577675565,1839.67918718373,1243.17197319875,1311.82097094897,1655.80939443547,1828.80171434252,2067.33917075424,1417.62382417312
),stiff.deck = c(1574314011.2142,2090649045.7422,2715324154.1262,3458657438.6382,825391754.6382,1156000948.2702,1611451118.376,2127786152.904,3495794545.8,2074906886.38717)),row.names = c(1L,12L,25L,37L,48L,65L,72L,88L,105L,150L),class = "data.frame")
我将此功能与nlsLM
一起应用于数据帧DATA
,以找到参数a
和b
:
library(minpack.lm)
nlsLM <- nlsLM(CSi ~ Proposed(N_b,b),data = DATA,start = c(a = 0.01,b = 0.01))
summary(nlsLM)
在完整尺寸的数据帧DATA
上的结果是:
Formula: CSi ~ Proposed(N_b,b)
Parameters:
Estimate Std. Error t value Pr(>|t|)
a 8.047e-01 2.569e-01 3.132 0.002 **
b 9.773e+04 7.398e+04 1.321 0.188
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.1922 on 196 degrees of freedom
Number of iterations to convergence: 17
Achieved convergence tolerance: 1.49e-08
但是,与在DATA$CSi
函数中没有* b(stiff.girder/stiff.deck)^a
时相比,这实际上并没有使数据更接近Proposed
。我不确定为什么回归使情况变得更糟?!代码中有什么问题吗?或者stiff.girder/stiff.deck
项不是试图将函数Proposed
中的数据激发到DATA$CSi
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。