千锋教育-做有情怀、有良心、有品质的IT职业教育机构

400-811-9990
当前位置:首页  >  关于学院  >  技术论坛  >  正文

Python人工智能学科需要的线性代数知识点汇总

时间:2018-08-24 14:53     来源:千锋教育 作者:千锋Python
分享: 更多

  人工智能算法与数学的进步密不可分,千锋Python培训老师对于那些需要的高等数学常识汇总:

  主要讲与人工智能和数据分析相关的线性代数知识。比如什么是矢量,什么是矩阵,矩阵的加减乘除。矩阵对角化,三角化,秩,QR法,最小二法。等等

  矢量:

  高中数学中都学过复数,负数表达式是:

  a+bi

  复数实际上和二维的矢量是异性同构的。所谓异性同构,是一个很严格的数学定义,这里不是重点,不做介绍。我们可以近似的把它理解为本质是一样的,只是外形不同,就如正直的绅士和善良的乞丐那样。唯一的不同仅仅是外形。回忆下高中我们是如何在一个平面上描述负数的。

图片1

  既然复数和二维矢量是一个东西,仅仅是外表不同,那么矢量在线性代数中如何描述呢。

  坐标描述:

图片2

  几何描述:

  二维的矢量在二维矢量空间中和复数在复平面中是一样的。一个箭头带着常常的尾巴,箭头代表着它的方向,尾巴说明它是有长度的。矢量像一支支离弦之箭,在矢量空间翱翔。矢量空间是一个十分重要的数学概念。它包括很多子空间,你比如欧几里矢量空间、拓扑矢量空间、赋范空间、预希耳伯特空间、酉空间(复数矢量空间)。每个空间都有它的特别之处和独有的操作法则。我们关注的重点是欧几里空间,可能以后会稍微提一下赋范空间,其它的这里不做描述,尽管他们有些十分十分重要,和数据分析也密切相关。比如拓扑矢量空间。但是它实在太难了,如果你不打算当数学家的话,还是不要去招惹它。如果你感兴趣,我们可以私下聊。

  我们一直在说二维矢量,那么多维矢量又是什么样呢。

  例如坐标描述四维矢量:

图片3

  几何描述在有限维度矢量空间均和二维空间一样。

图片4

  和复数中的模类似,在欧几里空间中存在范数2,它是由标积派生而出。标积的定义如下:

QQ截图20180824141950

  当图片5时:

1

  矢量的加:

2

  矢量加法适用结合律和交换律。

3

  矢量的减:

4

  矢量的三角不等式:

图片6

  此不等式成立的原因,三角形两边之和大于第三边。

  注:矢量可以在欧几里空间任意平移,不改变矢量本身。

  矢量的除法:

  目前数学上还没有这个定义,如果你能定义出矢量除法,并且合理。那菲尔茨奖肯定颁发给你。

  叉积:

  两个矢量的叉积又是矢量,其方向垂直于这两个矢量撑起的平面,其长度为:

图片7

  这个值恰恰也是上面平面的面积。

图片8

  在卡迪尔坐标下,叉积可表示成:

图片9

  叉积满足负交换律。

图片10

  交叉乘积:

  人们通过下面的等式定义交叉乘积:

图片11

  它的结果是一个标量。这个标量等于这三个矢量撑起平行六面体的体积(作业?)

图片12

  如果这三个矢量构成右手系统,则图片13是正值,反之,假如构成左手系统。则图片13是负值。如果这些矢量是线性相关。则图片14

  矢量的归一化:

图片15

  (选学)矢量的基底变换

  通常我们遇到矢量都是借助于欧几里空间的卡迪尔坐标系统标准基底来描述的。什么是基底呢。

  基底定义:基底是一个矢量空间的子集。这个子集不仅能够派生出整个矢量空间,也就是说任意一个这个矢量空间的矢量都可以通过这个基底唯一表达。这个我们称之为派生系统。而且子集中各元素线性不相关。(房子理论)

  如何派生出整个矢量空间?

  假设V是一个n维矢量空间,图片16,是一个V的一个基底。那么我们可以这样来表达整个V矢量空间。

图片17

  线性不相关:

图片18

  现在我们把基底限制到单位卡迪尔坐标系统标准基底基底图片19,也就是:

5

  例子:假如矢量V1=(1,7,9)是关于标准基底的矢量,试用基本基底展开这个矢量。

图片20

  我们把上面的例子普通化到n维空间,得到如下公式,

图片21

  如果我们选择非标准基底,结果会怎样呢?

  假如矢量V1=(1,7,9)是关于标准基底的矢量,现有另一个也是关于标准基底矢量空间基底,((1,1,0),(0,1,0),(0,0,1),请尝试用这个基底来表示V1。

  办法:我们尝试把V1分别分解到这三个矢量上;公式如下:

图片22

  这里矢量图片23是我们的V1,图片24是我们这里的基底矢量中的某一个。由此可得:

图片25

  求上面等式可得:

图片26

  这个就是矢量V1在新基底下的列矢量表述形式。

  我们可以看到同一个矢量在不同的基底下列的表述完全是不一样的。这就要求我们,在做矢量运算时,一定要注意两点:

  1. 这个矢量是在哪一个基底下被描述的。

  2. 各矢量之间的运算必须在同一基底下才是正确的。

  上面所讲的内容就是矢量的基底变换。它主要应用于一些与矢量运算,矩阵运算相关的数据处理,人工智能问题。通过基底变换很多复杂的矩阵变得十分简单。节省大量的运算时间。

  注意:标积中的两个矢量必须关于相同基底,不同基底必须转化成相同基底才能运算。

  矩阵

  (选学)域(体)和环:

  (代数学)域,有些书也称作体,是一个带有‘+’和‘*’操作的特殊集合。并且这个集合里的任意元素都满足下列特性。

  1. 加法特性:

  A.图片28结合律

  B.图片29交换律

  C.中性元素‘0’元素存在且满足0+a=a(中性元素就是说任何元素与其做+操作结果还是该元素本身)

  D. 逆元素—a存在,即满足图片30(任何元素的逆元素与该元素进行加操作结果都等于中性元素)

  2. 乘特性

  A.图片31结合律

  B.图片32交换律

  C. 中性元素‘1’元素存在且满足1*a=a(中性元素就是说任何元素与其做‘*’操作结果还是该元素本身)

  D. 逆元素图片33存在:对于任意存在图片34且满足:图片35任何元素的逆元素与该元素进行加操作结果都等于中性元素)

  3. 分配率(‘+’和‘*’操作结合)

  左分配律:图片36

  右分配律:图片37

  实数,有理数,和复数都是典型的域。

  环,环是另一个代数概念,他的定义与体区别不多,唯一的不同在‘*’操作上。环在乘特性处只满足结合律,也就是说他没有乘操作中性元素和逆元素,也不满足交换律。

  整数是一个典型的环。

  线性函数,

  假设V,W 是两个关于域K(注:没有特殊说明本讲义的体是实数)的矢量空间,一个映射图片38叫做线性映射(函数)。如果对于V中任意两个元素x和y以及K中元素a,f 满足下列条件:

图片39

  矩阵是矢量空间的线性映射的一种表现形式。它是矢量线性映射最佳表现形式。因此直到现在他还是研究多元性线性问题的一种主要手段。

  矩阵的书写:

图片40

  其中(a11 a12 ... a1n)... (am1 am2 ... amn)是行矢量,(a11 a21 ... am1) ... (a1n a2n ... amn)列矢量。

  矩阵的加减乘:

  +:

图片41

  例:

图片42

  例:

6

  减法和加法没有任何区别。因为A-B=A +(-B)

  其它矩阵“+”操作:

7

  *:

  1. 与标量相乘

图片43

  例子

图片44

  2. 矩阵相乘:

  假设A,B,C是三个矩阵,且A*B=C。则下列等式满足:

图片45

  通过这个等式我们可以确定整个矩阵C的元素。

  例:

图片46

  例:

图片47

  通常

图片48

  常用的乘操作公式:

8以及图片49是三个矩阵,那么下列等式总是有效。

9

  矩阵转置

  简单表示法

10

  一般表示法:

11

  其它与转置矩阵有关的公式:

12

  逆矩阵

  一个实数平方矩阵图片50叫正则矩阵如果存在一个矩阵图片51满足下列等式:

图片52

  其中I是单位矩阵。矩阵B是唯一确定,并被称为A的逆矩阵。A的逆矩阵通常用图片53来表示。

  逆矩阵常见的性质:

13

  (通过这个公式,人们可以把难以求逆的矩阵分解成容易求逆的矩阵)

14

  逆矩阵的确定:高斯-约旦算法

15

  例子:

16

  例子:

17

  逆矩阵的确定:行列式法

  逆矩阵的确定:特征多项式法:

  (选学)矩阵和线性函数的关系

  假设K是一个域,V 和 W 是两个有穷维矢量空间,分别带有维数n和m。图片54图片55是V和W的基底。这两个矢量空间能分别与标准坐标空间Kn和Km同构,这是因为对于任意图片56都可以用下面唯一的等式表达:

图片57

  等式的右边可以立马写成列坐标的形式:

图片58

  通过上面的等式,我们能容易地证明V和W与Kn和Km同构(一一映射并且是线性的)。

  假设图片59是一个线性映射,那么V的一个基底矢量的象可以用下面的等式来表达:

图片60

  同样等式的右边也可以写成坐标的形式:

图片61

  我们把每次求出的图片62排成一排,组成下面的一个矩阵.

图片63

  我们也叫他映射矩阵.

  下面我们来证实上面映射矩阵的构成是合理的。

图片64

  图片65又可以写成坐标的形式:

QQ截图20180824145207

  观察(*)等式,我们可以立即把等式写成矩阵和矢量相乘的形式。

图片66

  学习Python开发,可以参考千锋推出的Python学习路线,该学习路线对从零基础小白到Python初级开发工程师,Python高级开发工程师,后面的Python大神级数据分析师都有一个明确清晰的指导,根据千锋提供的Python学习路线图和Python视频教程,可以让你对学习Python需要掌握的知识有个清晰的了解,并快速入门Python开发

相关文章

  • 北京天丰利校区(总部)地址:北京市海淀区宝盛北里西区28号天丰利商城4层
    北京沙河校区:北京市昌平区沙阳路18号北京科技职业技术学院广场服务楼2、3层
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、物联网+嵌入式培训、360网络安全、大数据+人工智能培训、全栈软件测试培训、PHP全栈+服务器集群培训、云计算+信息安全培训、Unity游戏开发培训、区块链、红帽RHCE认证、好程序员
  • 深圳西部硅谷校区地址:深圳市宝安区宝安大道5010号深圳西部硅谷B座A区605-619
    深圳大学城校区地址:深圳市南山区留仙大道1201号大学城创客小镇16栋3楼
    咨询电话: 0755-23015275/23015546-801(硅谷) 0755-86660670-801(大学城)
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、物联网+嵌入式培训、360网络安全、大数据+人工智能培训、全栈软件测试培训、PHP全栈+服务器集群培训、云计算+信息安全培训、Unity游戏开发培训、区块链、红帽RHCE认证、好程序员
  • 上海校区地址:上海市宝山区同济支路199号智慧七立方3号楼2-4层
    咨询电话:400-811-9990 021-65233829-609
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、物联网+嵌入式培训、360网络安全、大数据+人工智能培训、全栈软件测试培训、PHP全栈+服务器集群培训、云计算+信息安全培训、Unity游戏开发培训、区块链、红帽RHCE认证、好程序员
  • 郑州校区地址:郑州市二七区航海中路60号海为科技园C区10层、12层
    咨询电话:0371-55191750
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、物联网+嵌入式培训、360网络安全、大数据+人工智能培训、全栈软件测试培训、PHP全栈+服务器集群培训、云计算+信息安全培训、Unity游戏开发培训、区块链、红帽RHCE认证、好程序员
  • 广州校区地址:广州市天河区元岗路200号慧通产业园B9三层
    咨询电话:020-38035223 020-38035220
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、物联网+嵌入式培训、360网络安全、大数据+人工智能培训、全栈软件测试培训、PHP全栈+服务器集群培训、云计算+信息安全培训、Unity游戏开发培训、区块链、红帽RHCE认证、好程序员
  • 大连校区地址:辽宁省大连市高新园区爱贤街10号大连设计城A座901
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、物联网+嵌入式培训、360网络安全、大数据+人工智能培训、全栈软件测试培训、PHP全栈+服务器集群培训、云计算+信息安全培训、Unity游戏开发培训、区块链、红帽RHCE认证、好程序员
  • 武汉金融港校区地址:武汉市东湖高新技术开发区光谷大道77号金融港B18栋3楼
    武汉智慧园校区地址:武汉市东湖高新技术开发区光谷大道61号智慧园21栋2楼
    咨询电话:027-59313371
    面授课程:HTML5大前端培训、全链路UI/UE设计培训、PHP全栈+服务器集群培训、JavaEE+分布式开发培训、大数据+人工智能培训、 Unity游戏开发培训、360网络安全、Python培训、云计算+信息安全培训、全栈软件测试培训、智能物联网+嵌入式培训
  • 成都校区地址:成都市武侯区科华北路62号力宝大厦N(北楼)18楼
    咨询电话:400-811-9990 028-83178771
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、物联网+嵌入式培训、360网络安全、大数据+人工智能培训、全栈软件测试培训、PHP全栈+服务器集群培训、云计算+信息安全培训、Unity游戏开发培训、区块链、红帽RHCE认证、好程序员
  • 西安校区地址:西安市雁塔区高新六路52号立人科技C座西区4楼
    咨询电话:029-85363390
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、物联网+嵌入式培训、360网络安全、大数据+人工智能培训、全栈软件测试培训、PHP全栈+服务器集群培训、云计算+信息安全培训、Unity游戏开发培训、区块链、红帽RHCE认证、好程序员
  • 杭州旺田校区:浙江省杭州市江干区九堡旺田书画城A座4层
    杭州龙驰校区:浙江省杭州市下沙经济技术开发区元成路199号龙驰智慧谷B座7层
    咨询电话:400-811-9990 0571-86893632/0571-86094032
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、物联网+嵌入式培训、360网络安全、大数据+人工智能培训、全栈软件测试培训、PHP全栈+服务器集群培训、云计算+信息安全培训、Unity游戏开发培训、区块链、红帽RHCE认证、好程序员
  • 青岛校区地址:青岛市市北区龙城路卓越世纪中心3号楼8层801
    咨询电话:0532-80911190
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、物联网+嵌入式培训、360网络安全、大数据+人工智能培训、全栈软件测试培训、PHP全栈+服务器集群培训、云计算+信息安全培训、Unity游戏开发培训、区块链、红帽RHCE认证、好程序员
  • 重庆校区地址:重庆市高新区科园一路2号大西洋国际12-1
    咨询电话:400-811-9990 023-68883009
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、物联网+嵌入式培训、360网络安全、大数据+人工智能培训、全栈软件测试培训、PHP全栈+服务器集群培训、云计算+信息安全培训、Unity游戏开发培训、区块链、红帽RHCE认证、好程序员
  • 长沙校区地址:湖南省长沙市岳麓区麓谷企业广场A2栋三单元306号
    咨询电话:0731-85513210
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、物联网+嵌入式培训、360网络安全、大数据+人工智能培训、全栈软件测试培训、PHP全栈+服务器集群培训、云计算+信息安全培训、Unity游戏开发培训、区块链、红帽RHCE认证、好程序员
  • 哈尔滨校区地址:哈尔滨市松北区创新一路699号 科技创新城19号楼B座五楼
    咨询电话:400-811-9990/0451-87173191
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、物联网+嵌入式培训、360网络安全、大数据+人工智能培训、全栈软件测试培训、PHP全栈+服务器集群培训、云计算+信息安全培训、Unity游戏开发培训、区块链、红帽RHCE认证、好程序员
  • 南京校区地址:南京市建邺区应天大街780号应天智汇产业园弘辉园1幢2楼
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、物联网+嵌入式培训、360网络安全、大数据+人工智能培训、全栈软件测试培训、PHP全栈+服务器集群培训、云计算+信息安全培训、Unity游戏开发培训、区块链、红帽RHCE认证、好程序员
  • 千锋教育服务号

    了解千锋动态
    关注千锋教育服务号

  • 千锋教育移动站

    扫一扫快速进入
    千锋移动端页面

  • 千锋互联服务号

    扫码匿名提建议
    直达CEO信箱