京公网安备 11010802034615号
经营许可证编号:京B2-20210330
作者 | SHAROON SAXENA
编译 | CDA数据分析师
Mathematics behind Machine Learning - The Core Concepts you Need to Know
“学习机器学习算法背后的数学有什么用?我们可以轻松地使用Python和R中广泛可用的库来构建模型!”
我已经记不清从数据科学爱好者那里听到这种消息的次数了。这种谬论太普遍了,在有抱负的数据科学专业人员中产生了一种错误的期望。
根据我的经验,主要是有以下两个原因:
现在让我们把这个问题解决掉——你需要理解机器学习算法背后的数学原理,才能成为一名数据科学家。没有别的办法。这是数据科学家角色的一个固有部分,每一位招聘人员和有经验的机器学习专业人士都将证明这一点。
因此,这就引出了一个问题,我们该如何着手学习呢?这就是我们将在本文中学习的内容。我们将讨论成为机器学习大师所需了解的各种数学方面,包括线性代数、概率等。
在本文中,我们将讨论以下主题:
有抱负的数据科学家经常向我提出的最常见问题之一是–数据科学与机器学习之间有什么区别?更重要的是,这两者背后的数学有什么区别?
我经常遇到以下问题:
尽管数据科学和机器学习有很多共同点,但是它们在数学上的关注仍然存在一些细微的差异。下面的雷达图概括了我的观点:
是的,数据科学和机器学习有很多重叠之处,但是它们的主要关注点相差很大。这种微妙的差异通常是我上面提到的问题的根源。
在数据科学中,我们的主要目标是探索和分析数据,生成假设并测试它们
这些步骤通常是为了找出数据中隐藏的推论,而这些推论可能在第一眼看上去并不明显。因此,我们必须严格依赖统计和概率的概念来比较和进行假设检验。
另一方面,机器学习更侧重于线性代数的概念,因为它是所有复杂过程发生的主要阶段(除了效率方面)。另一方面,多元微积分涉及数值优化方面,这是大多数机器学习算法背后的驱动力。
数据科学通常被认为是机器学习的前提。考虑一下–我们希望机器学习算法的输入数据是干净的,并且要根据我们使用的技术进行准备。如果您正在寻求端到端的工作(数据科学+机器学习),最好使自己精通数据科学和机器学习所需的数学结合。
如果你一直重复你过去做过的事情,你会得到你一直得到的结果。我在这里转述爱因斯坦的名言,但我相信你明白我的意思!
许多渴望学习机器学习的人会犯这样的错误,即他们在上学时使用的方法是一样的。这意味着要用笔和纸去钻研定理、推导和问题。
这种传统的方法离我们想要遵循的方向有一些远,除非你想要在17世纪的数学家之争中获胜。那时候他们向对方提出了一系列数学上很有趣的问题,并在第二天解决。但你可以想象到这种情况,听起来很厉害。但这不是在21世纪学习新概念的最佳方式。
那么我们应该如何才能在不陷入理论的情况下学习数学呢?
数据科学和机器学习中的数学不是关于处理数字的,而是关于发生了什么,为什么会发生,以及我们如何处理不同的事情来获得我们想要的结果的数学。
在本质上:
我们应该更关注对任何给定表达式的直觉和几何解释:
这有助于我们理解这些令人难以置信的表情背后的含义。所有手动解决问题的繁重工作都不是必需的,也不需要技能。使用NumPy这样的计算库来完成它们比测试您的耐力更有意义。
现在,让我们转移注意力来理解为什么我们需要学习这些不同的数学分支以及什么是用直观的方式学习数学的好资源。
有些人认为线性代数是21世纪的数学。我们可以看到这其中的意义——线性代数是机器学习和数据科学的支柱,它将在未来几年给其他所有行业带来革命性的变化。
正如之前已经讨论过的,线性代数是所有机器学习算法生成结果的舞台或平台。
但是为什么是线性代数呢?
线性代数是联立线性方程组表示的系统基础。
假设我们有两个线性方程式:
求解出x和y很容易,对吧?
我们可以通过简单地将方程式1与-2相乘,然后将两者相加来实现:
结果,变量x被消除,y获得为9。然后将y=9带入公式,得出x的值为0。
这里的问题是,这个操作需要人类的直觉。我们的机器无法模仿同样的直觉。他们只能理解特定表示形式的数据和集合格式的规则。
现在,为了建立与数据科学或机器学习的类比,每个方程表示来自数据集的单个观察。左边表示独立输入变量,右边表示目标因变量。
数据集通常包含成百上千的观测数据(如果不是上百万体量的数据集的话),更不用说还有很多变量要处理。所以你认为我们可以通过数据集找到x和y的最佳值吗?
绝对不是!我们当然更喜欢自动化来完成这项任务。这就是线性代数的用武之地。从广义上来说:
线性代数是计算机能够理解的知识的系统表示,线性代数中的所有运算都是系统规则。
这是我们上面解决的问题的代数表示。利用矩阵运算(规则集),我们可以在一眨眼的时间内求出x和y的值。这是线性代数在数据科学和机器学习中成为必需的主要原因。
大多数有抱负的数据科学和机器学习专业人士往往无法解释他们在哪里需要使用多元微积分。正如我在文章开头所提到的,不幸的是,这是一种非常常见的体验。
如果你马上说梯度下降,你就对了!但是你可能需要增加你现有的知识。
多元微积分,或者更精确的说是偏微分,被用来对一个给定函数(主要是凸函数)进行数学优化。
但我们为什么要这样做呢?我们知道我们计算了某个函数(成本函数或优化函数)的偏导数。但这有什么用呢?
很多人经常求出偏导数但却不知道为什么这么做!我们需要立即纠正这个错误。
我们考虑一下梯度下降的情况。我们知道梯度下降的代价函数为:
我们计算m(斜率)和c(截距)的导数为:
但为什么只有偏导数呢?我们可以计算积分或者其他的运算。这是因为分化给我们成本函数的变化率对丁成本单独对m和c。
但是你知道我们可以用向量的形式表示这些单独的偏导数吗?
这是偏导数的代数向量表示。
我相信你们大多数人以前一定见过这种表达方式,但没有意识到它的含义。这种表示法叫做雅可比向量。我在高中的时候就遇到过这种情况;是的,它确实让我的生活变得艰难!
下面是一些学习多元微积分的优秀资源。再一次,我将强调更多关于直觉的部分,而不是仅仅死记硬背定理和规则:
机器学习所需的概率概念是基本的(大部分),但它仍然需要直觉。常用的分布形式有伯努利分布、高斯分布、概率密度函数、累积密度函数等。我们用它们来进行假设检验,在这种情况下,对概率的理解是非常必要的。
你会发现许多数据科学家,甚至是经验丰富的老手,都无法解释声名狼藉的alpha值和p值的真正含义。他们经常被当作从冥王星来的陌生人,甚至没有人愿意问。
但概率中最有趣的部分是贝叶斯定理。从高中开始,我们在很多地方都遇到过这个定理。这是公式:
我们通常通过输入数字并计算答案来解决这个问题。但是你有没有想过贝叶斯定理到底告诉了我们什么,后验概率到底是什么意思?为什么我们还要一开始要计算它呢?
让我们考虑一个示例(没有数学理论!):
这是我们的朋友鲍勃(Bob)。作为他的同学,我们认为他是一个内向的人,经常独处。我们相信他不喜欢交朋友。
因此,P(A)被称为先验。在这种情况下,我们称其为鲍勃很少喜欢结交新朋友的假设。
现在,他在大学里遇到了爱德(Ed),与鲍勃不同,埃德是一个悠闲的人,渴望结交新朋友。
P(B)在这种情况下是Ed友好的概率。在一起度过的这一天Bob意识到Ed和他形影不离。结果,他们成了朋友。
P(B|A)就是他们成为朋友的代表:
现在,看一下右边和我们上面建立的例子,分子代表了Bob是友好的P(A)和Ed是朋友的概率P(B|A)所有这些值都朝着左边的结果计算,也就是:
完美!这正是我们在学校里所做的,对吧?我将进一步扩展它,你知道这个新值意味着什么?
大多数声称知道贝叶斯定理的人都会被困在这里。
这个新的价值只是我们对Bob的信念。换句话说,这是我们对Bob的新认识和P(A)的新值。 。
如果我要提取此这个例子,它将是这样的:
我们对鲍勃做了一个假设,我们发现的证据是他实际上交了一个新朋友!
在这种情况下我们该怎么做呢?我们只是改变了对鲍勃的假设,他不是一个很内向的人。如果我们继续观察Bob几次迭代,我们最终会很好地理解Bob的真正本质。
我知道你在想什么——这看起来就像我们在梯度下降和许多其他优化算法中做的事情。我们假设一些随机参数,观察预测值和真值,然后相应地调整参数。
朴素贝叶斯算法的工作原理与此类似,只是简单地假设所有的输入特征都是独立的。为了全面观察这一现象,我们需要深入研究贝叶斯网络或概率图形模型。它们本身可能非常强大,我可能会在以后的文章中探讨它们。
这将是我们在本文中比较熟悉的主题之一。统计构成了机器学习的基础,因此我在这里讨论它。
每当我们谈论统计数字时,我们脑海中总会浮现出一些熟悉的概念:
这些概念中的大多数都是相当初级的。除了最后一个,我看到经验丰富的机器学习专家对p值和alpha值之类的东西有着错误的直觉。其中大多数在我们的机器学习模型(如线性和逻辑回归)的性能中起着重要的作用。
我知道你可能会想知道——现在谁在使用线性模型?
好吧,大多数组织都高度重视模型的可解释性,而不是准确性。集成模型往往缺乏这种可解释性,因为它们更倾向于性能,并且广泛用于数据科学竞赛(而非行业)。
说实话,我是那些被这些花哨的算法吸引的爱好者之一,我更喜欢直接跳到它们。结果,我的预测模型得到了低于标准的结果。
机器学习不仅仅是建立预测模型,而是利用现有的统计工具从给定的数据中提取尽可能多的信息。
机器学习的数学是一个经常被忽视或用错误的视角处理的基本方面。在本文中,我们讨论了数据科学和机器学习所需的数学之间的区别。我们还学习了一些关于为什么以及在什么地方需要数学的指示。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
CDA数据分析师 出品 作者:李诗怡 1. 销售漏斗阶段判断 题目:销售漏斗模型中,通过广告、社交媒体等方式触达品牌信息(如浏览品 ...
2026-09-07在Python数据分析中,Pandas库的DataFrame是最核心、最常用的结构化数据表对象,类似于Excel的二维表格,具备规整的行列结构、字 ...
2026-09-07在数据分析、经营复盘、业绩预测与经济统计工作中,平均增速(平均增长率)是衡量数据长期变化趋势、业务发展快慢的核心指标。不 ...
2026-09-07 很多数据分析师精通Excel单元格操作,但当被问到“表结构数据的基本处理单位是什么”“字段和记录的本质区别”“为什么表结 ...
2026-09-07随着大数据技术的快速发展,商业竞争逐步从传统的经验式经营转变为数据驱动的精细化运营。海量的用户行为数据、交易数据、运营数 ...
2026-09-04CDA数据分析师 出品 作者:李诗怡 1. 波士顿矩阵(BCG Matrix) 定义: BCG于1970年提出的业务组合分析工具,以"市场增长率"(纵 ...
2026-09-04 数据分析师八成以上的时间在和数据表格打交道,但许多人拿到Excel后习惯性地先算、先分析,结果回头发现漏了一列关键数据, ...
2026-09-04数据透视表是Excel与Power BI中最核心的数据分析工具,具备快速汇总、维度拆分、动态筛选的能力,可高效完成数据归类与统计展示 ...
2026-09-03在Power BI数据分析可视化场景中,堆积柱状图+折线图是最常用的复合图表组合。堆积柱状图适合展示各细分维度当期数值、结构占比 ...
2026-09-03 很多数据分析师每天与Excel打交道,但当被问到“表格结构数据的基本处理单位是什么”“数据类型误判会引发哪些分析错误”“ ...
2026-09-03CDA数据分析师 出品 作者:李诗怡 一、8个核心数据清洗函数 1. TRIM:一键清除多余空格(最常用) 作用:仅保留文本中"单词/字 ...
2026-09-02数据分析的核心并非单纯操作工具、整理报表或绘制图表,而是依靠科学的思维逻辑挖掘数据价值、解释业务现象、指导经营决策。在完 ...
2026-09-02在社会经济、产业研究、区域治理与大数据实证分析中,面板数据是最具研究价值的数据类型。面板数据同时包含截面维度与时间维度信 ...
2026-09-02 很多数据分析师能熟练计算均值、标准差,但当被问到“如何用一张图让业务方3秒内看懂核心结论”“面对不同数据类型该怎么选 ...
2026-09-02在数据驱动决策的体系中,数据分析按照分析目的可分为描述性分析、诊断性分析、预测性分析与指导性分析四大类型。其中,诊断性分 ...
2026-09-01网络请求是Python爬虫开发、接口测试、数据拉取的核心基础功能,Python生态中主要依靠 urllib 和 requests 两大库实现HTTP请求操 ...
2026-09-01 很多数据分析师面对业务问题时,常常感到“知道要分析,却不知道用什么方法”。其实,数据分析并非无章可循——从三大基础范 ...
2026-09-01在数据库设计与业务数据维护中,自增ID是数据表最常用的主键字段,用于唯一标识每一条业务数据,正常状态下ID应保持连续递增。但 ...
2026-08-31在数理统计、数据分析、经济测算与日常量化评估中,平均值是刻画数据集中趋势、反映整体水平的基础核心指标。在实际应用中,最常 ...
2026-08-31在数据驱动的时代,数据分析早已不是“凭经验、靠感觉”的零散操作,而是一套具备固定逻辑、标准化流程的系统方法——这就是数据 ...
2026-08-31