博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
AI产品经理需要了解的线性代数通识
阅读量:2728 次
发布时间:2019-05-13

本文共 2433 字,大约阅读时间需要 8 分钟。

640?wx_fmt=gif

640?wx_fmt=jpeg

罗素在自传中这样写道: “我 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)就可以很好的解决资本市场独立数据与独立数据的自变量与因变量之间的关系,从而给他决策判断。
四、总结
在众多的数学学科中,线性代数是最为抽象的一门课,很多人学过以后一直停留在知其然不知其所以然的阶段,在机器学习等领域兴起才发现线性代数的应用无处不在。
其实各个学科直接都是相通的,抽象的思维锻炼也许是人工智能产品开发中必备思维。

————

编辑 ∑Gemini

 来源:搜狐新闻·人人都是产品经理

算法数学之美微信公众号欢迎赐稿

稿件涉及数学、物理、算法、计算机、编程等相关领域,经采用我们将奉上稿酬。

投稿邮箱:math_alg@163.com

转载地址:http://pqzxd.baihongyu.com/

你可能感兴趣的文章
ZooKeeper-3.3.4集群安装配置
查看>>
每天进步一点点——五分钟理解一致性哈希算法(consistent hashing)
查看>>
Java中使用Jedis操作Redis
查看>>
redis单主机多实例
查看>>
傅盛认知三部曲之三:战略就是格局+破局
查看>>
算法数据结构-B树
查看>>
从B 树、B+ 树、B* 树谈到R 树
查看>>
小明买了个饭团,原来背后的支付、结算、清算是这样的!
查看>>
svn服务器安装
查看>>
centos 安装 redis3.0.0 集群
查看>>
Java代码操作Redis的sentinel和Redis的集群Cluster操作
查看>>
ThreadPoolExecutor使用介绍
查看>>
死磕 Java 并发 :Java 内存模型之 happens-before
查看>>
IntelliJ Idea 常用快捷键列表
查看>>
MySQL创建用户与授权方法
查看>>
解决nginx https代理tomcat redirect问题
查看>>
Hystrix使用入门手册(中文)
查看>>
Eureka源码分析:Eureka不会进行二次Replication的原因
查看>>
RunTime.getRunTime().addShutdownHook用法
查看>>
ChannelOption属性说明
查看>>