全网最快入门———R语言机器学习实战篇4

简介: R 语言是为数学研究工作者设计的一种数学编程语言,主要用于统计分析、绘图、数据挖掘。 机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

R 语言是为数学研究工作者设计的一种数学编程语言,主要用于统计分析、绘图、数据挖掘。 机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

这节课讲解回归诊断!!!

项目实操——回归诊断

找到回归模型之后,我们仍需要解决以下的问题:

这个模型是否是最佳的模型?

模型最大程度满足OLS模型的统计假设?

模型是否经得起更多数据的检验?

如果拟合出来的模型指标不好,该如何继续下去?

我们需要从多个维度对回归分析的结果进行诊断

除了利用summary()函数统计出来的各个指标进行检验,还可以用plot()函数进行绘图,可以生成评价拟合模型的四幅图

下面我们来举个例子:

我们还是使用women这个数据集:

fit<-lm(weight~height,data=women)
par(mfrow=c(2,2))
plot(fit)

#par()函数可以修改plot()函数的绘图参数,par()函数的mfrow选项参数可以定制图形的分布,默认是一张图上显示一幅图,可以使这个参数等于c这个向量,mfrow=c(2,2)表示横排显示两幅,纵排显示两幅,这样就可以将四幅图显示在一个画面内。

不是所有的数据都可以使用OLS模型进行拟合的,需要满足以下的前提条件:

正态性:对于固定的自变量值,因变量需要呈正态的分布

独立性:自变量之间相互独立

线性:因变量与自变量之间为线性相关

同方差性:因变量的方差不随自变量的水平不同而变化,也可以称作不变方差

第一幅图是残差与拟合的图,这幅图用来表示因变量与自变量是否呈线性关系,图中的点是残差值的分布,线为拟合曲线。如果图中是一个曲线的分布,说明可能存在二次项的分布

第二幅图是R中比较常见的qq图,QQ图用来描述正态性,如果数据呈正态分布,那么在QQ图中就是一条直线

第三幅图是位置与尺寸图,用来描述同方差性,如果满足不变方差的假设,那么图中水平线周围的点应该是随机分布的

第四幅图是残差与杠杆图,提供了对单个数据值的观测,从图中可以看到哪些点偏差较远,可以用来鉴别离群点、高杠杆点和强影响点,高杠杆点表示它是一个异常的预测变量的组合;强影响点表示这个值对模型参数的估计产生的影响较大,如果删除或者转换就可能违背客观数据的事实

但是这四幅图没办法说明数据是否具有独立性

只能从收集的数据中验证,要判断收集的数据是否独立,我们可以拟合函数再加一个二次项,再绘制一次图看一下。

fit2<-lm(weight~height+I(height^2),data=women)
>opar<-par(no.readonly=TRUE)
>par(mfrow=c(2,2))
>plot(fit2)

结果明显好一些:

抽样法验证:

1、数据集中有1000个样本,随机抽取500个数据进行回归分析;

2、模型建好之后,利用predict()函数,对剩余的500个样本进行预测,比较残差值

3、如果预测准确,说明模型可以,否则就需要调整模型。

相关文章
|
3天前
|
数据可视化 API 开发者
R1类模型推理能力评测手把手实战
随着DeepSeek-R1模型的广泛应用,越来越多的开发者开始尝试复现类似的模型,以提升其推理能力。
|
2月前
|
机器学习/深度学习 传感器 运维
使用机器学习技术进行时间序列缺失数据填充:基础方法与入门案例
本文探讨了时间序列分析中数据缺失的问题,并通过实际案例展示了如何利用机器学习技术进行缺失值补充。文章构建了一个模拟的能源生产数据集,采用线性回归和决策树回归两种方法进行缺失值补充,并从统计特征、自相关性、趋势和季节性等多个维度进行了详细评估。结果显示,决策树方法在处理复杂非线性模式和保持数据局部特征方面表现更佳,而线性回归方法则适用于简单的线性趋势数据。文章最后总结了两种方法的优劣,并给出了实际应用建议。
131 7
使用机器学习技术进行时间序列缺失数据填充:基础方法与入门案例
|
3月前
|
机器学习/深度学习 数据采集
机器学习入门——使用Scikit-Learn构建分类器
机器学习入门——使用Scikit-Learn构建分类器
|
3月前
|
机器学习/深度学习 数据采集 数据可视化
Python数据科学实战:从Pandas到机器学习
Python数据科学实战:从Pandas到机器学习
|
3月前
|
机器学习/深度学习 TensorFlow API
机器学习实战:TensorFlow在图像识别中的应用探索
【10月更文挑战第28天】随着深度学习技术的发展,图像识别取得了显著进步。TensorFlow作为Google开源的机器学习框架,凭借其强大的功能和灵活的API,在图像识别任务中广泛应用。本文通过实战案例,探讨TensorFlow在图像识别中的优势与挑战,展示如何使用TensorFlow构建和训练卷积神经网络(CNN),并评估模型的性能。尽管面临学习曲线和资源消耗等挑战,TensorFlow仍展现出广阔的应用前景。
109 5
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
探索AI的奥秘:机器学习入门指南
【10月更文挑战第30天】本篇文章是一份初学者友好的机器学习入门指南,旨在帮助读者理解并开始实践机器学习。我们将介绍机器学习的基本概念,包括监督学习、无监督学习和强化学习等。我们还将提供一些实用的代码示例,以帮助读者更好地理解和应用这些概念。无论你是编程新手,还是有一定经验的开发者,这篇文章都将为你提供一个清晰的机器学习入门路径。
63 2
|
3月前
|
机器学习/深度学习 人工智能 算法
机器学习基础:使用Python和Scikit-learn入门
机器学习基础:使用Python和Scikit-learn入门
47 1
|
4月前
|
机器学习/深度学习 数据采集 人工智能
R语言是一种强大的编程语言,广泛应用于统计分析、数据可视化、机器学习等领域
R语言是一种广泛应用于统计分析、数据可视化及机器学习的强大编程语言。本文为初学者提供了一份使用R语言进行机器学习的入门指南,涵盖R语言简介、安装配置、基本操作、常用机器学习库介绍及实例演示,帮助读者快速掌握R语言在机器学习领域的应用。
180 3
|
4月前
|
机器学习/深度学习 并行计算 数据挖掘
R语言是一种强大的统计分析工具,广泛应用于数据分析和机器学习领域
【10月更文挑战第21天】R语言是一种强大的统计分析工具,广泛应用于数据分析和机器学习领域。本文将介绍R语言中的一些高级编程技巧,包括函数式编程、向量化运算、字符串处理、循环和条件语句、异常处理和性能优化等方面,以帮助读者更好地掌握R语言的编程技巧,提高数据分析的效率。
94 2
|
3月前
|
机器学习/深度学习 人工智能 TensorFlow
基于TensorFlow的深度学习模型训练与优化实战
基于TensorFlow的深度学习模型训练与优化实战
150 0