java二维矩阵怎么进行转置_线性代数基础—逆矩阵和矩阵转置

本文是吴恩达《机器学习》视频笔记第18篇,对应第1周第18个视频。

“Linear Algebra review(optional)——Inverse and transpose”

上两个小节分别讲了矩阵和矩阵的乘法、矩阵乘法的性质、单位矩阵,这一小节讲一些特殊的矩阵运算:矩阵的逆和矩阵转置。

同样的,我们对比实数运算来理解矩阵的逆运算和转置。

逆矩阵

在实数空间中,我们有一个特殊的数“1”,任何数和1相乘都等于它本身,如果一个数和它的倒数相乘等于1。当然,也并不是所有的数都有倒数的,比如0.

那么,在矩阵的世界中,有没有类似实数倒数的定义呢?那就是逆矩阵了。它怎么定义呢?如下:

d4c8bc54e15bb7d6132726d00edac36e.png

如果一个方阵存在逆矩阵,那它们满足:

. 要注意,只有方阵(即矩阵的行数=矩阵的列数)才可能存在逆矩阵。

那逆矩阵怎么算出来呢?当然是使用软件来做了。如果用Python的话,可以用Numpy来做。

本门课使用的是Octava,直接用函数pinv即可,代码如下:

A=[3 4; 2 16]
inverseOfA = pinv(A)

pinv(A)即是所求,关于Octava的使用将在第二周的课程中讲解。

我们需要注意的是:(1)只有方阵才有可能有逆矩阵;(2)并不是所有的方阵都有逆矩阵。那到底什么样的矩阵没有逆矩阵呢?此处并没有讲,后面机器学习问题碰到的时候再说。对于不存在逆矩阵的矩阵,学术上被称为“奇异矩阵”或者“退化矩阵”。

转置

如下图,A的转置矩阵用

来表示。

9b59ee4756b03553d535f0a3e0e27626.png

矩阵A的第一列,变成了A的转置后的第一行,就这么简单。更正式一点的定义如下:

3817844486bbb8a67e5afd61acb5030e.png

就是说,把矩阵的行标列标呼唤一下,就变成它的转置矩阵了。

到此为止,我们把机器学习中所要用到的线性代数的知识就都复习完了。包括了:加减、乘标量、乘向量、乘矩阵、求逆、求转置、矩阵乘法的性质这几部分内容,说起来很简单,但就是这样简单的线性代数基础可以发展成机器学习的算法,很奇妙。

注意:第一周的视频笔记全部完成,加作者好友可以索取所有的学习资料(包括讲义、视频、阅读材料等)。

f1b1f7d708790eed4055444b076a2a1b.png

https://u.wechat.com/MBzVP_L_B6WOE2sMJTX5AJs (二维码自动识别)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值