AI产品经理需要了解的线性代数通识

上一篇为大家介绍了《AI产品经理需要了解的概率论通识:4个概念3个问题》,本篇文章中,笔者将为你介绍AI产品经理需要了解的线性代数通识,一起来看看吧。

 

罗素在自传中这样写道:“我 11 岁时,我开始学习欧几里得几何学,哥哥做我的老师,这是我生活中的一件大事,就像初恋一样令人陶醉。我从来没有想象到世界上还有如此美妙的东西。”

高斯把数学置于科学之巅,希尔伯特则把数学看作“一幢出奇的美丽又和谐的大厦”。

在人们的印象中,数学与艺术很少有共同之处。数学以其卓越的智力成就被人们尊称为“科学的皇后”,

随着人类社会的发展,技术的进步,在AI时代,数学会成为最基本的学科,会成为所有算法模型的基础,而线性代数则是描述抽象状态和变化的规则。

张志华教授说过:“搞好机器学习,关键是数学,但你又不能把机器学习变成搞数学,那样就漫无边际了。”

数学浩瀚如海,神灵通天,对于绝大多数 AI 工程师来说,学习机器学习,对于其中涉及的数学知识形成理解,打牢基础,是必不可少的。

而线性代数正是这基础中的基础了,线性代数可使矩阵操作快速而简单,特别是通过GPU进行计算。而事实上,GPU的设计便是受启发自向量和线性代数。

一、什么是线性代数

瑞典数学家Lars Garding在其名著Encounter with Mathematics中说:“如果不熟悉线性代数的概念,要去学习自然科学,现在看来就和文盲差不多。”可见线性代数的重要性。

线性代数是代数学的一个分支,主要处理线性关系问题。线性关系意即数学对象之间的关系是以一次形式来表达的。

例如,在解析几何里,平面上直线的方程是二元一次方程;空间平面的方程是三元一次方程,而空间直线视为两个平面相交,由两个三元一次方程所组成的方程组来表示。

含有 n个未知量的一次方程称为线性方程,关于变量是一次的函数称为线性函数。

线性关系问题简称线性问题,解线性方程组的问题是最简单的线性问题。

线性代数可以将各种复杂问题转化为简单、直观、高效的计算问题。

神经网络(Neural networks)将权值(weights)存放于矩阵(matrices)中,线性代数使得矩阵操作快速而简单,特别是通过 GPU 进行运算。

类似于用像素的多维数组(arrays of pixels)来表示图形图像,视频游戏通过大规模且持续的矩阵计算,带来了极具吸引力的游戏体验。GPU 是并行操作整个矩阵中的各个像素,而不是一个接一个地去处理单个像素。

  • 线性(linear)指量与量之间按比例、成直线的关系,在数学上可以理解为一阶导数为常数的函数;
  • 非线性(non-linear)则指不按比例、不成直线的关系,一阶导数不为常数。

二、线性代数里的基本概念

1. 行列式

行列式这个“怪物”定义初看很奇怪,一堆逆序数什么的让人不免觉得恐惧,但其实它是有实际得不能更实际的物理意义的。

其实行列式的本质就是一句话:行列式就是线性变换的放大率!

2. 矩阵

用中括号把一堆傻了吧叽的数括起来,这个东西叫做矩阵。

这可能是我们大学期间的理解,其实理解矩阵就要先了解向量,向量是关于数字或数据项的一维数组的表示。

从几何学上看,向量将潜在变化的大小和方向存储到一个点。向量 [3, -2] 表示的是左移3个单位下移2个单位。我们将具有多个维度的向量称为矩阵。

三、线性代数的应用

1. 在搜索引擎中的应用

当人们在使用搜索引擎时,总会对搜索结果排名靠前的网页更信任。可是,怎样判断一个网页的重要性?

一个网页获得链接越多,可信度就越高,那么它的排名就越高。这就是谷歌PageRank网页排名算法的核心思想。

但是所有的网页都是连在一起的,互相连接。而你评估必须要有一个起点,但是,用任何网页作为起点都不公平,怎么办?

谷歌的解决办法是:先同时把所有网站作为起点,也就是先假定所有的网页一样重要、排名相同。然后,进行迭代。

整个互联网就像一张大的网,每个网站就是一个节点,而每个网页的链接就是一条链接线。于是这个问题变成了一个二维矩阵相乘的问题,首先计算第一次迭代排名,然后再算出第二次迭代排名……

最终,排名会收敛,不再变化,算出了网页最终排名。简言之,网页排名的的计算主要是矩阵相乘。

2. 在机器学习中的应用

在计算机视觉应用中处理图像或照片,使用的每个图像本身都是一个固定宽度和高度的表格结构,每个单元格有用于表示黑白图像的 1 个像素值或表示彩色图像的 3 个像素值。

照片也是线性代数矩阵的一种,与图像相关的操作,如裁剪、缩放、剪切等,都是使用线性代数的符号和运算来描述的。

推荐系统也有应用线性代数,例如基于你在亚马逊上的购买记录和与你类似的客户的购买记录向你推荐书籍,或根据你或与你相似的用户在 Netflix 上的观看历史向你推荐电影或电视节目。

推荐系统的开发主要涉及线性代数方法。一个简单的例子就是使用欧式距离或点积之类的距离度量来计算稀疏顾客行为向量之间的相似度。

像奇异值分解这样的矩阵分解方法在推荐系统中被广泛使用,以提取项目和用户数据的有用部分,以备查询、检索及比较。

3. 在量化投资中的应用

量化投资是一个交叉复合学科,要求掌握数学、计算机编程、金融等方面的知识。

而在量化投资中广泛应用的隐马尔可夫模型(Hidden Markov Model, HMM)就可以很好的解决资本市场独立数据与独立数据的自变量与因变量之间的关系,从而给他决策判断。

四、总结

在众多的数学学科中,线性代数是最为抽象的一门课,很多人学过以后一直停留在知其然不知其所以然的阶段,在机器学习等领域兴起才发现线性代数的应用无处不在。

其实各个学科直接都是相通的,抽象的思维锻炼也许是人工智能产品开发中必备思维。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于计算机专业的学生而言,参加各类比赛能够带来多方面的益处,具体包括但不限于以下几点: 技能提升: 参与比赛促使学生深入学习和掌握计算机领域的专业知识与技能,如编程语言、算法设计、软件工程、网络安全等。 比赛通常涉及实际问题的解决,有助于将理论知识应用于实践中,增强问题解决能力。 实践经验: 大多数比赛都要求参赛者设计并实现解决方案,这提供了宝贵的动手操作机会,有助于积累项目经验。 实践经验对于计算机专业的学生尤为重要,因为雇主往往更青睐有实际项目背景的候选人。 团队合作: 许多比赛鼓励团队协作,这有助于培养学生的团队精神、沟通技巧和领导能力。 团队合作还能促进学生之间的知识共享和思维碰撞,有助于形成更全面的解决方案。 职业发展: 获奖经历可以显著增强简历的吸引力,为求职或继续深造提供有力支持。 某些比赛可能直接与企业合作,提供实习、工作机会或奖学金,为学生的职业生涯打开更多门路。 网络拓展: 比赛是结识同行业人才的好机会,可以帮助学生建立行业联系,这对于未来的职业发展非常重要。 奖金与荣誉: 许多比赛提供奖金或奖品,这不仅能给予学生经济上的奖励,还能增强其成就感和自信心。 荣誉证书或奖状可以证明学生的成就,对个人品牌建设有积极作用。 创新与研究: 参加比赛可以激发学生的创新思维,推动科研项目的开展,有时甚至能促成学术论文的发表。 个人成长: 在准备和参加比赛的过程中,学生将面临压力与挑战,这有助于培养良好的心理素质和抗压能力。 自我挑战和克服困难的经历对个人成长有着深远的影响。 综上所述,参加计算机领域的比赛对于学生来说是一个全面发展的平台,不仅可以提升专业技能,还能增强团队协作、沟通、解决问题的能力,并为未来的职业生涯奠定坚实的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值