用加性多元线性回归、随机森林、弹性网络模型预测鲍鱼年龄和可视化(三)

简介: 用加性多元线性回归、随机森林、弹性网络模型预测鲍鱼年龄和可视化

用加性多元线性回归、随机森林、弹性网络模型预测鲍鱼年龄和可视化(二)https://developer.aliyun.com/article/1485798


模型假设(AIC 和 BIC):

model_assumption

  • 在这种情况下,恒定方差和正态性看起来都不错。

RMSE 分数 - AIC

kable(log\_rmse(abaone\_mde_down')

RMSE 分数 - BIC

kable(log\_rmse(abalone\_model\_add\_bic,paste("Additive Model - Degree 4 - BIC")), digits = 4,format = 'markdown')

在使用AIC 和 进行变量选择后 BIC,我们从中选择了模型 BIC 并检查了 t 统计量和假设。有趣的是, BIC 模型丢弃了很少的预测变量,但也具有与我们开始使用的原始模型(多项式次数为 4 的模型)相似的测试 RMSE。这表明我们可以删除一些变量并仍然保持较低的 RMSE。这将我们带到下一个修改和引入BIC 上述模型选择的变量之间的交互项 。

来自BIC 模型的模型假设 也看起来更好。

接下来,我们将介绍交互项,并将尝试使用BIC 方法建议的预测变量来拟合模型 。

交互模型

log(Rings) ~  Height + Diameter + poly(Whole_weight, 4) +
  poly(Viscera\_weight, 4) + poly(Shucked\_weight,4) + poly(Shell\_weight, 4) + Sex + Diameter:poly(Shucked\_weight, 4) + poly(Shucked_weight,  4):Sex

RMSE 分数

方差分析 F 检验

anova

在拟合交互模型并使用最佳可加模型执行 F 检验后,我们看到该检验表明交互模型是一个显着模型,具有改进的调整 r 平方值。RMSE 也变低了 因为它更好地解释了可变性,我们现在将选择交互模型并尝试在交互模型上运行 AIC 和 BIC。

同时,我们会比较交互模型的多个度数,以计算和比较高阶项的 RMSE,并绘制训练和测试数据的均方根误差。

for(d in num_poly){
  ablone\_int\_poly=test_itmodel(d)
 
  rmse=et\_lg\_rmseaaloneint_poly)
  trainrse_int\[d\]=rmse$train
  test\_mse\_it\[d\]=rme$tst
}
plot(tran\_rse\_n

  • 我们可以看到,随着多项式次数的增加,RMSE 越来越低。尽管对于此分析而言,RMSE 的这种改进非常微小,我们可以忽略这种对模型简单性的改进。考虑到这一点,我们可以看到多项式次数为 4 的模型性能更好,因此我们将继续使用该模型。

交互模型上的 AIC 和 BIC

step(aalone_int, diretin="backar", trac=FALSE)
step(aalone_nt, diection="bacward", =loce=ALE)

RMSE 分数 - BIC/AIC

kable(log\_rmse(abalone\_model\_int\_bic,paste("Interaction Model - Degree 4 - BIC")), digits = 4,format = 'markdown')

在我们的交互模型上运行 AIC 和 BIC 后,我们看到该模型选择了相同的模型。由于这是我们迄今为止看到的最好的模型之一,具有合理的复杂性,我们将把它视为我们比较的候选模型之一,作为本分析的最佳拟合模型。

谈到候选模型,在详尽的搜索过程中,我们已经看到,当我们使用所有预测变量时,模型附带了最低的 AIC。我们可以尝试构建一个模型,其中包含所有具有交互作用和多项式次数的预测变量,并与我们选择的第一个候选模型进行比较,看看它的表现如何。因此,让我们拟合一个包含所有预测变量的模型。

在最初的数据分析中,我们发现Sex 因子水平为 female 和 的分类变量的分布 male 极其相似。因此,我们决定将这两个因子水平合并为一个,并且总因子水平为 2 infant 和 non-infant。我们创建了新变量 Infant。这里 non-infant 代表 female 和 male 两者。我们也通过这种方法进行了分析(可以在本报告的附录部分找到)。

让我们看看 Infant 模型分析,看看这个模型如何与我们上面选择的模型相抗衡。

婴儿模型分析

我们讨论过针对此分析采用不同的方法。我们引入了一个新的分类预测变量名称 Infant。我们使用现有的Sex 具有 3 个因子水平的分类预测变量,并创建了一个具有 2 个因子水平的新分类预测变量 。我们这样做是因为我们从原始分类预测变量female 和 中 确定了 2 个因子水平上的相似分布 male。新的因素水平现在是 I (婴儿 = 雌性和雄性组合)和 NI (非婴儿)。

这个新分类的分析与上面的分析完全一样,所以我们将用最少的解释和细节快速进行这个分析。

summary(abae\_d\_nf)

均方根分数

rmse  <- funcin(atual predicted) {
  sqrt(mean((actual - predicted ^ 2))
}

加性模型假设

model_assumption

Box-Cox 变换

boxcox(abon_adinf,lmda  seq(-0.1, 0.1, by = 0.1))

具有对数因变量转换的附加婴儿模型

summary(abaln\_ad\_log)

均方根分数

kable(log\_mseabalone\_d\_lo\_f,"")

加性模型假设

model_assumptions

多项式模型

lm(log(Rings) ~  Diameter + Length + Height + poly(Whol\_weiht,3) + poly(Viscra\_weight,3) + polyShuckwegt,3) + poly(Selweight,3) + Infant, data=abaone_rain

均方根分数

kable(log\_rmse(abalnead\_poly

多项式模型假设

model_assumption

方差分析 F 检验

``````
anova

交互模型

lm(log(Rings) ~  Height + Diaeter + poly(Whole_weight, 4) +
  poly(Viscera\_weght, 4) + poly(Shucke\_weght,4) + poly(Shel\_weight, 4) + Infant + Diameter:poly(Shckedweight, 4) + poly(Shckd\_weight,  4):Infant, data=aboe_tain)

均方根分数

kable(log\_rms(abaoe\_int_infan,"

交互模型假设

model_assumption

方差分析 F 检验

anova

在这里,我们选择性能最佳的交互模型作为我们的候选模型之一。该模型具有较低的复杂性以及最低的 rmse。

我们在这里看到的是,与前两个完整模型相比,该模型在未见数据(测试数据)上的 rmse 最低。除此之外,这个模型也没有前两个复杂,这些特性使得这个模型成为我们选择的候选模型之一。

现在,由于我们有一些我们喜欢的候选模型,让我们将它们相互比较并寻找最佳模型。

候选模型

从上面的分析中,我们选择了多项式次数为 4 的交互模型,因为我们已经看到它具有最低的测试 rmse 之一,并且具有良好的模型假设。我们将把它作为第一选择的候选模型之一。该模型包含一些预测变量,而不是具有高度多重共线性的预测变量。这个模型是 abalone\_model\_int_bic。

另一个选定的模型是所有预测变量都具有相似较低 rmse 的交互模型。虽然这个模型将有更多的参数,因此是一个比早期模型更复杂的模型,但由于我们的目标是预测,我们不关心模型的复杂性。这个型号是 abalone\_int\_full

另一种候选模型将是具有 2 个因子水平的分类变量的交互模型。在开始或我们的分析中,我们看到该预测变量的分布在级别之间相似 male , female 因此我们决定引入一个新变量,该变量基本上有 2 个级别,婴儿和非婴儿,其中非婴儿 = 雄性和雌性。该模型也是多项式次数为4的交互模型 。这个模型是 abalone\_int\_infant。注:(附录部分增加了使用婴儿预测器的加法模型和相关分析)。使用分类预测变量和具有3 值和 2 值的因子水平进行分析的整个过程 是相同的。

候选模型的 RMSE 比较

  • 候选模型1(abalone\_model\_int_bic)
``````
kable(log\_rmseabaone\_modlint_bic

  • 候选模型2(abalone\_int\_\_candidate_full)
kable(log\_rmse(aalone\_int_l,pte

kable(log\_rmse(abalone\_nt_nan
  • 候选模型 3 (abalone\_int\_infant)
  • 从上面我们可以看到, 候选模型 3 (abalone\_int\_infant) 在所有三个模型中表现最好。

候选模型的模型假设

  • 候选模型1(abalone\_model\_int_bic)

候选模型的模型假设

  • 候选模型1(abalone\_model\_int_bic)
model\_assumptions(abalone\_model\_int\_bic,"Candidate model 1")

  • 候选模型 2 (abalone\_int\_full)
``````
model_assumption

  • 候选模型 3 (abalone\_int\_infant)
model_assumption
  • 基于这些图,我们可以看到我们所有的候选模型都很好地满足了恒定方差和正态性假设。
  • 接下来,我们将比较所有这些候选模型的预测和置信区间,并观察数据中的任何影响点。让我们看看它。

异常观察样本:高杠杆、离群点和影响点

我们将查看每个候选模型的训练数据集中存在的异常观察结果。首先我们将分别寻找高杠杆点、离群点和影响点,然后通过公共数据点得到具有高杠杆、离群点和影响力的数据点。

候选模型1(abalone\_model\_int_bic)

## \[1\] 16
  • 我们看到有 16 个观察值是高杠杆、异常值和影响点。

候选模型2(abalone\_int\_full)

length(comon\_mdel\_2)
## \[1\] 15
  • 在这个模型中,我们看到有 15 个观察值是高杠杆、异常值和有影响的点。

候选模型3(abalone\_int\_infant)

length(comon\_odl\_3)
## \[1\] 19
  • 这个模型有 19 个这样的观察结果,它们是高杠杆、离群点和有影响力的点。


用加性多元线性回归、随机森林、弹性网络模型预测鲍鱼年龄和可视化(四)https://developer.aliyun.com/article/1485808

相关文章
|
5月前
|
网络协议 算法 Java
基于Reactor模型的高性能网络库之Tcpserver组件-上层调度器
TcpServer 是一个用于管理 TCP 连接的类,包含成员变量如事件循环(EventLoop)、连接池(ConnectionMap)和回调函数等。其主要功能包括监听新连接、设置线程池、启动服务器及处理连接事件。通过 Acceptor 接收新连接,并使用轮询算法将连接分配给子事件循环(subloop)进行读写操作。调用链从 start() 开始,经由线程池启动和 Acceptor 监听,最终由 TcpConnection 管理具体连接的事件处理。
183 2
|
5月前
基于Reactor模型的高性能网络库之Tcpconnection组件
TcpConnection 由 subLoop 管理 connfd,负责处理具体连接。它封装了连接套接字,通过 Channel 监听可读、可写、关闭、错误等
159 1
|
5月前
|
JSON 监控 网络协议
干货分享“对接的 API 总是不稳定,网络分层模型” 看电商 API 故障的本质
本文从 OSI 七层网络模型出发,深入剖析电商 API 不稳定的根本原因,涵盖物理层到应用层的典型故障与解决方案,结合阿里、京东等大厂架构,详解如何构建高稳定性的电商 API 通信体系。
|
2月前
|
机器学习/深度学习 数据采集 人工智能
深度学习实战指南:从神经网络基础到模型优化的完整攻略
🌟 蒋星熠Jaxonic,AI探索者。深耕深度学习,从神经网络到Transformer,用代码践行智能革命。分享实战经验,助你构建CV、NLP模型,共赴二进制星辰大海。
|
3月前
|
机器学习/深度学习 传感器 算法
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
209 2
|
3月前
|
机器学习/深度学习 并行计算 算法
【CPOBP-NSWOA】基于豪冠猪优化BP神经网络模型的多目标鲸鱼寻优算法研究(Matlab代码实现)
【CPOBP-NSWOA】基于豪冠猪优化BP神经网络模型的多目标鲸鱼寻优算法研究(Matlab代码实现)
|
4月前
|
算法 安全 网络安全
【多智能体系统】遭受DoS攻击的网络物理多智能体系统的弹性模型预测控制MPC研究(Simulink仿真实现)
【多智能体系统】遭受DoS攻击的网络物理多智能体系统的弹性模型预测控制MPC研究(Simulink仿真实现)
187 0
|
12月前
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
265 17
|
12月前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将从网络安全漏洞、加密技术和安全意识三个方面进行探讨,旨在提高读者对网络安全的认识和防范能力。通过分析常见的网络安全漏洞,介绍加密技术的基本原理和应用,以及强调安全意识的重要性,帮助读者更好地保护自己的网络信息安全。
226 10
|
12月前
|
存储 SQL 安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将介绍网络安全的重要性,分析常见的网络安全漏洞及其危害,探讨加密技术在保障网络安全中的作用,并强调提高安全意识的必要性。通过本文的学习,读者将了解网络安全的基本概念和应对策略,提升个人和组织的网络安全防护能力。