【漫话机器学习系列】122.相关系数(Correlation Coefficient)

深入理解相关系数(Correlation Coefficient)

1. 引言

在数据分析、统计学和机器学习领域,研究变量之间的关系是至关重要的任务。我们常常想知道:当一个变量变化时,另一个变量是否也会随之变化?如果会,它们之间的关系有多强? 相关系数(Correlation Coefficient)是用来衡量两个变量之间线性关系的一种重要指标。

本文将深入解析:

  • 相关系数的定义与公式
  • 计算方法及示例
  • 相关系数的范围及解释
  • 相关系数的应用
  • 相关系数的局限性

2. 相关系数的定义

相关系数(Correlation Coefficient),通常指皮尔逊相关系数(Pearson Correlation Coefficient),用来衡量两个变量之间的线性关系。它的数学表达式如下:

Cor(X, Y) = \frac{\sum (x_i - \bar{x})(y_i - \bar{y})}{\sqrt{\sum (x_i - \bar{x})^2} \cdot \sqrt{\sum (y_i - \bar{y})^2}}

3. 公式解析

让我们详细拆解皮尔逊相关系数公式中的各个部分:

Cor(X, Y) = \frac{\sum (x_i - \bar{x})(y_i - \bar{y})}{\sqrt{\sum (x_i - \bar{x})^2} \cdot \sqrt{\sum (y_i - \bar{y})^2}}

其中:

  • x_iy_i​ 分别表示两个变量 X 和 Y 在第 i 个样本中的取值。

  • \bar{x}\bar{y}​ 分别是变量X 和 Y 的均值

    \bar{x} = \frac{1}{n} \sum x_i, \quad \bar{y} = \frac{1}{n} \sum y_i
  • 分子部分 \sum (x_i - \bar{x})(y_i - \bar{y}) 计算的是协方差(Covariance),用于衡量 X 和 Y 共同变化的程度:

    Cov(X, Y) = \frac{1}{n} \sum (x_i - \bar{x})(y_i - \bar{y})
  • 分母部分是两个变量的标准差的乘积:

    \sqrt{\sum (x_i - \bar{x})^2} \quad\quad \sqrt{\sum (y_i - \bar{y})^2}

    它的作用是对数据进行标准化,使得相关系数的值始终在[-1, 1]之间。


4. 相关系数的取值范围及解释

皮尔逊相关系数 Cor(X, Y) 的取值范围是 [-1, 1],其含义如下:

相关系数 Cor(X,Y)Cor(X, Y)Cor(X,Y)解释
Cor(X, Y) = 1完全正相关,即 X 增加时 Y 也以完全线性的方式增加。
0 < Cor(X, Y) < 1正相关,即 X 增加时 Y 也有增加的趋势,相关性越接近 1,线性关系越强。
Cor(X, Y) = 0无相关关系,即 X 和 Y 之间没有线性关系(但可能存在非线性关系)。
-1 < Cor(X, Y) < 0负相关,即 X 增加时 Y 倾向于减少,相关性越接近 -1,线性关系越强。
Cor(X, Y) = -1完全负相关,即 X 增加时 Y 以完全线性的方式减少。

简单来说:

  • 接近 1:强正相关
  • 接近 0:弱相关或无相关
  • 接近 -1:强负相关

5. 计算示例

假设我们有两个变量 X 和 Y 的五个样本点:

样本编号XY
123
236
349
4512
5615

步骤 1:计算均值

\bar{x} = \frac{2 + 3 + 4 + 5 + 6}{5} = 4
\bar{y} = \frac{3 + 6 + 9 + 12 + 15}{5} = 9

步骤 2:计算协方差

\sum (x_i - \bar{x})(y_i - \bar{y})

样本编号x_iy_ix_i - \bar{x}y_i - \bar{y}(x_i - \bar{x})(y_i - \bar{y})
123-2-612
236-1-33
349000
4512133
56152612

\sum (x_i - \bar{x})(y_i - \bar{y}) = 12 + 3 + 0 + 3 + 12 = 30

步骤 3:计算标准差

\sqrt{\sum (x_i - \bar{x})^2} = \sqrt{(-2)^2 + (-1)^2 + 0^2 + 1^2 + 2^2} = \sqrt{10}
\sqrt{\sum (y_i - \bar{y})^2} = \sqrt{(-6)^2 + (-3)^2 + 0^2 + 3^2 + 6^2} = \sqrt{90}

步骤 4:计算相关系数

Cor(X, Y) = \frac{30}{\sqrt{10} \times \sqrt{90}}

计算得到:

Cor(X, Y) \approx 1

结果表明,变量 X 和 Y 之间存在很强的正相关关系


6. 相关系数的应用

6.1 经济学

  • 研究某种产品的价格与销量之间的关系。
  • 研究工资与消费水平的关系。

6.2 机器学习

  • 在特征工程中,去除相关性极高的特征,防止共线性问题。
  • 选择与目标变量最相关的特征,提高模型性能。

6.3 生物统计

  • 研究身高与体重的关系。
  • 研究药物剂量与治疗效果的关系。

7. 相关系数的局限性

  • 只能衡量线性关系,不能捕捉非线性关系。例如,如果数据是曲线相关的,皮尔逊相关系数可能接近 0,但实际上它们仍然存在关系。
  • 受异常值影响,如果数据集中存在极端值,可能会影响相关系数的计算结果。
  • 相关不代表因果,即使 X 和 Y 相关,也不能直接推断 X 导致 Y 发生变化。

8. 总结

  • 相关系数 Cor(X, Y) 衡量两个变量之间的线性关系
  • 取值范围在 [-1,1] 之间,绝对值越大,线性相关性越强。
  • 计算方法基于协方差标准差
  • 应用于经济学、机器学习、生物统计等多个领域。
  • 需要注意非线性关系异常值因果推断 的问题。

相关系数是数据分析中的重要工具,正确理解和使用它,可以帮助我们更好地解读数据之间的关系!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/982289.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

uniapp+微信小程序+地图+传入多个标记点显示+点击打开内置地图导航+完整代码

一、效果展示 二、完整代码 <template><view class"container"><map class"map-container" :latitude"latitude" :longitude"longitude" :markers"markers" :controls"controls" show-location m…

高效数据管理:WPF中实现带全选功能的DataGrid复选框列

目录 引言项目结构与准备工作XAML布局设计后台代码实现视图模型设计总结引言 在许多应用场景中,我们需要在表格中选择多行数据进行批量操作,如删除、导出等。为了提高用户体验,通常会在表格的第一列添加一个复选框,允许用户逐个或批量选择数据项。本文将详细介绍如何在 WP…

一周学会Flask3 Python Web开发-SQLAlchemy简介及安装

锋哥原创的Flask3 Python Web开发 Flask3视频教程&#xff1a; 2025版 Flask3 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili SQLAlchemy是Python编程语言下的一款开源软件。提供了SQL工具包及对象关系映射&#xff08;ORM&#xff09;工具&#xff0c;…

《Linux C 智能 IO 矩阵:输入输出的自适应数据流转》

1. 标准库IO简介 标准库IO特点&#xff1a;通过操作系统提供的接口&#xff08;API&#xff09;和操作系统进行交互。&#xff08;接近100个函数&#xff09; 1.1. IO的过程 操作系统&#xff1a;向上为用户提供操作接口&#xff0c;向下为统筹控制硬件。 操作系统的组成&#…

【大模型理论篇】--Mixture of Experts架构

Mixture of Experts&#xff08;MoE&#xff0c;专家混合&#xff09;【1】架构是一种神经网络架构&#xff0c;旨在通过有效分配计算负载来扩展模型规模。MoE架构通过在推理和训练过程中仅使用部分“专家”&#xff08;子模型&#xff09;&#xff0c;优化了资源利用率&#x…

智能云呼叫中心如何升级企业服务?带来新商机

当某国际零售品牌通过部署云呼叫中心将客服响应效率提升73%时&#xff0c;这场由云计算掀起的客户服务革命已悄然渗透到企业运营的毛细血管。在数字化转型的深水区&#xff0c;云呼叫中心正从"成本中心"蜕变为"价值引擎"&#xff0c;推动企业构建差异化的服…

java+jvm笔记

JUC synchornized原理&#xff08;java锁机制&#xff09;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 升级顺序&#xff1a; 无锁偏向锁&#xff0c;只有一个线程来访问轻量级锁&#xff0c;有两个线程交替访问重锁&#xff0c;两个及以上线…

CES Asia 2025增设未来办公教育板块,科技变革再掀高潮

作为亚洲消费电子领域一年一度的行业盛会&#xff0c;CES Asia 2025&#xff08;第七届亚洲消费电子技术贸易展&#xff09;即将盛大启幕。今年展会规模再度升级&#xff0c;预计将吸引超过500家全球展商参展&#xff0c;专业观众人数有望突破10万。除了聚焦人工智能、物联网、…

Sass 模块化革命:深入解析 @use 语法,打造高效 CSS 架构

文章目录 前言use 用法1. 模块化与命名空间2. use 中 as 语法的使用3. as * 语法的使用4. 私有成员的访问5. use 中with默认值6. use 导入问题总结下一篇预告&#xff1a; 前言 在上一篇中&#xff0c;我们深入探讨了 Sass 中 import 语法的局限性&#xff0c;正是因为这些问题…

AI-Deepseek + PPT

01--Deepseek提问 首先去Deepseek问一个问题&#xff1a; Deepseek的回答&#xff1a; 在汽车CAN总线通信中&#xff0c;DBC文件里的信号处理&#xff08;如初始值、系数、偏移&#xff09;主要是为了 将原始二进制数据转换为实际物理值&#xff0c;确保不同电子控制单元&…

解锁前端表单数据的秘密旅程:从后端到用户选择!✨

&#x1f604; 解锁前端表单数据的秘密旅程&#xff1a;从后端到用户选择&#xff01;✨ 嘿&#xff0c;技术爱好者们&#xff01;&#x1f44b; 你有没有在开发中遇到过这样的困惑&#xff1a;表单里的数据&#xff08;比如图片附件、识别点 ID&#xff09;从哪儿来的&#x…

【Linux】进程间通信 续

目录 管道的原理&#xff08;匿名管道&#xff09; 核心原理 站在内核的角度看管道的本质 接口 创建管道文件 代码示例 管道的特征 管道读写端的四种情况 管道的应用场景 命令行的管道。 使用管道实现进程池 初始化 控制子进程 退出 命名管道 命名管道的理解 …

宇树科技再落一子!天羿科技落地深圳,加速机器人创世纪

2025年3月5日&#xff0c;机器人行业龙头宇树科技&#xff08;Unitree&#xff09;在深圳再添新动作——全资子公司深圳天羿科技有限公司正式成立。这家注册资本10万元、法定代表人周昌慧的新公司&#xff0c;聚焦智能机器人研发与销售&#xff0c;标志着宇树科技在华南市场的战…

AI-Ollama本地大语言模型运行框架与Ollama javascript接入

1.Ollama Ollama 是一个开源的大型语言模型&#xff08;LLM&#xff09;平台&#xff0c;旨在让用户能够轻松地在本地运行、管理和与大型语言模型进行交互。 Ollama 提供了一个简单的方式来加载和使用各种预训练的语言模型&#xff0c;支持文本生成、翻译、代码编写、问答等多种…

SQLAlchemy系列教程:基本数据类型及自定义类型

在SQLAlchemy、Python SQL工具包和ORM中定义模型时&#xff0c;理解基本数据类型至关重要。本教程提供了在SQLAlchemy模型中有效使用内置基本类型的指南。 SQLAlchemy中的基本类型 SQLAlchemy支持一组与SQL数据库类型一致的基本数据类型。SQLAlchemy中的每种类型都为各种SQL类…

K8s The connection to the server 192.168.56.120:6443 was refused报错解决

虚拟机获取不到其他node节点的信息&#xff0c;通过使用docker ps -a 排查看到k8s的组件都是exited的状态&#xff0c;通过手动拉起docker 镜像id 起来之后&#xff0c;又变为exited的状态&#xff01;&#xff01;&#xff01; 解决方法&#xff1a;重置k8s集群 使用 kubeadm…

随机树算法 自动驾驶汽车的路径规划 静态障碍物(Matlab)

随着自动驾驶技术的蓬勃发展&#xff0c;安全、高效的路径规划成为核心挑战之一。快速探索随机树&#xff08;RRT&#xff09;算法作为一种强大的路径搜索策略&#xff0c;为自动驾驶汽车在复杂环境下绕过静态障碍物规划合理路径提供了有效解决方案。 RRT 算法基于随机采样思想…

【实战 ES】实战 Elasticsearch:快速上手与深度实践-2.3.1 避免频繁更新(Update by Query的代价)

&#x1f449; 点击关注不迷路 &#x1f449; 点击关注不迷路 &#x1f449; 点击关注不迷路 文章大纲 Elasticsearch数据更新与删除深度解析&#xff1a;2.3.1 避免频繁更新&#xff08;Update by Query的代价&#xff09;案例背景1. Update by Query的内部机制解析1.1 文档更…

Baklib内容中台赋能企业智管

内容中台构建全场景智管 现代企业数字化运营中&#xff0c;全域内容管理能力已成为核心竞争力。通过智能知识引擎驱动的内容中台架构&#xff0c;企业能够实现跨部门、多形态数据的统一归集与动态调度。以某制造企业为例&#xff0c;其利用中台系统将分散在CRM、ERP及内部文档…

今天来介绍和讨论 AGI(通用人工智能)

首先介绍&#xff0c;AGI&#xff08;通用人工智能&#xff09;是什么&#xff1f; AGI&#xff08;Artificial General Intelligence&#xff0c;通用人工智能&#xff09;指的是能够像人类一样理解、学习、推理和解决广泛任务的人工智能系统。与目前的AI不同&#xff0c;AGI可…