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

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

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


方差分析 F 检验

anova(small,ablone_add)

根据Anova检验,我们可以拒绝无效假设。

现在让我们尝试对加性模型进行AIC和BIC的参数选择。

#在加性模型上运行AIC和BIC
step(abae_add, dtonbackward" trace0)

step(abalon_ad, direction="backward"

我们使用之前Anova F测试中的最佳模型(abalone_add)运行了AIC和BIC方法,AIC和BIC都选择了没有Length预测器的相同模型。

我们选择了BIC的模型(因为两个模型都是一样的),并将绘制拟合与残差和QQ正态图。

加性模型假设

assumptions(aln\_odad\_bic,"baln_meddbic")

这里我们看到,拟合图与残差图表明,模型违反了恒定方差,似乎有一种模式,即残差随着拟合值的增加而增加。

正态QQ图也有肥尾,表明误差可能不是正态分布。

表明我们可能需要寻找改进这个模型。尽管多重共线性对预测没有影响,但这看起来是一个极端的案例,有一个明显的模式违反了模型的假设。这可以通过几种技术来实现,例如变量选择和转换。让我们来看看变量选择方法,看看哪些变量可以用来创建另一个不违反恒定方差和正态性假设的模型。

穷举搜索

#穷举搜索 
allabaone\_add<- sumr(ruetsings  Sex + Legth  Diamter + Hight + Whole\_eght + Shllweigh + Shucke\_weght + Viscea\_weigh , data=ablontra))

for(i in c(1:8)){
  vr\_nm\[i\]=sum(all\_abwh\[i,\])-1
}
plot(var\_num,all\_a)

(besr <- which.max(adjr2))

alabaoe_ad$hch\[bsj2,\]

#画出模型参数与AIC的关系图
n * log(a\_aln\_dd$rs / n) + 2 * (2:p)

plot(aloe\_mo\_ac ~ I(2:), ylab = "AIC"
   ")

现在我们看到了一些有趣的结果。之前我们看到t检验显示一些预测因子是不显著的,但是当我们进行穷举搜索时,它表明我们确实需要所有的预测因子来创建AIC值最低的模型。从图中可以看出,AIC值随着8个参数的模型大小而下降,并且是最小的。我们将再次使用数据集中的所有预测因子来创建模型,并寻找变量转换技术。

接下来,为了稳定恒定的变化,我们将进行一些因变量和预测变量的转换。

因变量转换

Box-Cox 变换

稳定方差的方法之一是使用对数转换因变量。为了得到正确的顺序,我们使用了boxcox方法,该方法建议使用$0的值。因为在0的值上,对数可能性最大,而且区间非常接近。因此,我们将使用log(Rings)形式的转换,用于我们的加性模型。

boxcox(abloe_ad lambda = seq(-0.1, 0.1, by = 0.1))

Additive 模型与对数因变量转换

summary(abaone\_dd\_log)

将因变量进行对数转换后,我们看到t检验是显著的,它也增加了先前加法模型的调整r平方值。我们还看到,在这个模型中,几乎所有的预测因子都是显著的。让我们检查一下假设。

模型假设

下面的拟合与残差图和Q-Q图显示,对因变量进行对数转换后,结果有了很大的改善。

assumptionsba

均方根分数

kable(log_rmse(abalo)

然而,我们没有看到RMSE分数有任何改善。恒定方差问题似乎得到了改善,QQ图也看起来不错。

下一步,我们将对预测器进行一些转换,并评估模型,看看这是否有助于进一步提高预测的准确性。

Predictor 转换

回归分析

为了使我们能够进行任何预测器的转换,首先让我们看看每个预测变量和因变量的关系。转换将取决于数据的形状以及预测因子和因变量之间的关系。

scatter(abale\_tra$Lngt,abaone\_train$Rngs,"Lenth""Rngs"),

我们可以看到环和预测指标长度、直径、高度的关系几乎是线性的。我们还可以看到,重量预测指标之间的关系并不是真正的线性关系,而是可以从多项式转换中受益。因此,让我们使用高阶多项式创建一个模型,即所有重量预测指标Whole\_weight、Viscera\_weight、Shucked\_weight和Shell\_weight。

多项式

在模型中使用二阶项后,模型假设相同。

asumptons(abloe\_dd\_oly2,"Poly2 Log Model")

均方根分数

kable(log_rmse(abaoly2,"Poly2 Log Moel)

均方根分数

在这里,我们进行了一些变量转换。首先,我们按照Boxcox方法的建议对因变量进行了对数转换,并按照对数图的建议对权重预测因子进行了多项式转换。在拟合模型后,我们看到rmse比以前的模型要低,与以前拟合的加性模型相比,它也有更好的恒定方差和Q-Q图。由于我们已经进行了程度为2的多项式转换,让我们尝试拟合程度为3的另一个模型并检查其意义。

方差分析 F 检验

anova(abaloe\_addpoy2,aalon\_add_oy3)

均方根分数

kable(log\_rmse(abaloe\_dd_pol4

方差分析 F 检验

anova

均方根分数

kable(log_rmse(abloneaddpoly5

方差分析 F 检验

anova

  • 我们再次看到测试对于较低的 rmse 是显着的。让我们尝试拟合度数为 6 的模型。

均方根分数

kable(log\_rmseaban\_dd_poly6

方差分析 F 检验

anova

现在在用多项式次数为 6 进行拟合后,我们看到即使 F 检验表明它很重要,但检验的 RMSE 上升了。这表明我们现在可能已经开始过度拟合数据,即我们的模型非常接近地拟合数据,这是我们不希望发生的。

在此之前,我们看到多项式次数为 5 和 4 的测试和训练 RMSE 之间存在非常细微的差异。测试 RMSE 几乎相同。因此,我们愿意牺牲相对于更简单模型的 RMSE 非常微小的改进(第三个小数点)。因此我们选择多项式次数为 4 的模型,即模型 abalone\_add\_poly4。

for(d in um_poly){
  abalone\_add\_polyestmodel(d)  
  rmse=g\_log\_mse(balone\_ad\_poly)
  train_rmse\[d\]rmse$tran
  test_re\[d\]=rse$st
}
plot(train_rmse

我们看到多项式次数为 5 和 4 的测试和训练 RMSE 之间存在非常细微的差异。测试 RMSE 几乎相同。因此,我们愿意牺牲相对于更简单模型的 RMSE 非常微小的改进。因此我们选择多项式次数为 4 的模型,即模型 abalone\_add\_poly4。

既然我们已经选择了模型,让运行 AIC 和 BIC 方法进一步选择合适的模型,看看我们是否可以做进一步的改进。

现在让我们计算和比较高阶项的 RMSE,并绘制训练和测试数据的均方根误差。

多加法模型上的 AIC 和 BIC:

  • 既然我们已经选择了模型,让我们运行 AICBIC 方法来进一步选择合适的模型。
step(abane\_ad\_poy4, directin="backwrd", trac=FALSE)

Compare AIC 与 BIC 模型参数

_aic$call\[2\]

add_bic$call\[2\]

Anove F 检验

anova(abalone_mode

  • 选择的模型 BIC 中没有预测器 Length 。Anova F 检验的 p 值很大,因此我们无法拒绝原假设。abalone_model_add_bic 模型很重要,因此我们将继续推进并检查模型假设。

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

相关文章
|
5天前
|
算法 前端开发 数据挖掘
【类脑智能】脑网络通信模型分类及量化指标(附思维导图)
本文概述了脑网络通信模型的分类、算法原理及量化指标,介绍了扩散过程、路由协议和参数模型三种通信模型,并详细讨论了它们的性能指标、优缺点以及在脑网络研究中的应用,同时提供了思维导图以帮助理解这些概念。
12 3
【类脑智能】脑网络通信模型分类及量化指标(附思维导图)
|
5天前
|
机器学习/深度学习 前端开发 数据挖掘
基于Python Django的房价数据分析平台,包括大屏和后台数据管理,有线性、向量机、梯度提升树、bp神经网络等模型
本文介绍了一个基于Python Django框架开发的房价数据分析平台,该平台集成了多种机器学习模型,包括线性回归、SVM、GBDT和BP神经网络,用于房价预测和市场分析,同时提供了前端大屏展示和后台数据管理功能。
|
4天前
|
网络协议 Java 关系型数据库
16 Java网络编程(计算机网络+网络模型OSI/TCP/IP+通信协议等)
16 Java网络编程(计算机网络+网络模型OSI/TCP/IP+通信协议等)
28 2
|
10天前
|
机器学习/深度学习 算法 网络架构
神经网络架构殊途同归?ICML 2024论文:模型不同,但学习内容相同
【8月更文挑战第3天】《神经语言模型的缩放定律》由OpenAI研究人员完成并在ICML 2024发表。研究揭示了模型性能与大小、数据集及计算资源间的幂律关系,表明增大任一资源均可预测地提升性能。此外,论文指出模型宽度与深度对性能影响较小,较大模型在更多数据上训练能更好泛化,且能高效利用计算资源。研究提供了训练策略建议,对于神经语言模型优化意义重大,但也存在局限性,需进一步探索。论文链接:[https://arxiv.org/abs/2001.08361]。
12 1
|
12天前
|
机器学习/深度学习 测试技术 API
【Python-Keras】Keras搭建神经网络模型的Model解析与使用
这篇文章详细介绍了Keras中搭建神经网络模型的`Model`类及其API方法,包括模型配置、训练、评估、预测等,并展示了如何使用Sequential模型和函数式模型来构建和训练神经网络。
16 1
|
3天前
|
存储 安全 网络安全
云计算与网络安全:云服务、网络安全、信息安全等技术领域
【8月更文挑战第10天】 随着互联网技术的飞速发展,云计算已经成为现代企业不可或缺的一部分。然而,随之而来的网络安全问题也日益突出。本文将探讨云计算与网络安全之间的关系,包括云服务、网络安全、信息安全等技术领域。我们将分析云计算在带来便利和效率提升的同时,如何应对网络攻击和数据泄露的风险。通过深入剖析云计算的工作原理和安全机制,我们可以更好地理解如何保护我们的网络和信息安全。
|
3天前
|
负载均衡 安全 网络安全
网络安全与信息安全:保护我们的数字生活
【8月更文挑战第10天】在数字化时代,网络安全和信息安全已经成为我们生活中不可或缺的一部分。本文将深入探讨网络安全漏洞、加密技术以及安全意识等方面的内容,帮助读者更好地了解如何保护自己的数字生活。
|
2天前
|
SQL 安全 网络安全
网络安全与信息安全:防御前沿的探索
【7月更文挑战第42天】 在数字化时代,数据成为了新的石油,而网络安全和信息安全则是保护这些宝贵资源不被非法开采、泄露或破坏的关键。本文将深入探讨网络安全漏洞的概念、加密技术的重要性以及提升个体和企业安全意识的必要性。通过分析当前的网络威胁,我们揭示了安全漏洞的本质及其对个人和组织构成的风险。同时,文章还将介绍最新的加密技术和策略,它们如何帮助确保信息的机密性、完整性和可用性。最后,强调了建立强大的安全文化对于形成有效防御机制的重要性。
|
3天前
|
安全 网络安全 数据安全/隐私保护
网络安全与信息安全:保护数据,共筑防线
【7月更文挑战第41天】在数字化时代,数据成为了新石油。然而,随着网络攻击的日益猖獗,保护这些数据变得至关重要。本文将探讨网络安全漏洞的概念、加密技术的重要性以及提升个人和企业安全意识的必要性。我们将深入了解如何通过技术和教育手段来构建一个更加安全的网络环境。
|
3天前
|
存储 安全 算法
数字时代的守护者:网络安全与信息安全的现代策略
在数字化浪潮汹涌澎湃的今天,网络安全与信息安全成为了保护个人隐私、企业数据和国家安全的关键。本文将深入探讨网络安全的漏洞所在,揭示加密技术的神秘面纱,并强调安全意识的重要性。从黑客攻击的狡猾手段到防御措施的精妙布局,我们将一起走进这个充满挑战与机遇的数字世界,了解如何成为自己数据的守护者。
下一篇
云函数