这个AI学习的“拦路虎”,怎么破?

2018-07-20  来源:互联网 

全文共1440字,预计阅读时长3分钟

一提到线性代数就泪流满面?技能点都给了吐槽,作业总是不会做?

很多年以后,也许你仍然会记得一个大括号加上一堆数字所带给你的恐惧;很多年以后,你也可能会记得,在终于掌握了矩阵计算时还是对深度学习一头雾水的伤感。

而这,就是线性代数的滋味。

掌握线性代数是学习AI的前置要求。无论是想发家致富,还是想探寻计算机与代码的奥妙,又或者想为全人类的未来做贡献,只要试图入行AI,线性代数必定是一道必须迈过的坎。

不过,线性代数并不是无法逾越的鸿沟,或许很多时候,你只是没有找到正确的切入点。

重点是运算方法

学知识要从完全理解概念开始?这一理论在一般情况下十分正确。

但是对于线性代数而言,在初步了解概念之后,就应该将目光转入运算方法。

AI运算中,最主要的一种方式就是多变量线性回归,包含数据预处理、赋予权重、批量梯度下降这三个模块。

在数据预处理时,高维向量会被使用,作为特征参数的表达。列向量则将会用于表示权重,组成一个权重矩阵。

而所谓赋予权重的过程,实质上就是高维向量与列向量相乘的过程。

而其他模块同样也会涉及矩阵的计算,比如卷积操作过程。

因而,熟练掌握公式是最核心的需求。

归纳起来便是以下几种公式:

矩阵之间的加法和乘法运算。其中乘法运算最为高频。要注意的是,矩阵的乘法不满足交换律,但满足结合律。

矩阵与标量之间的运算,同样也包含加法和乘法两种。

矩阵的转置和逆运算。需要注意的是,不是所有的矩阵都存在逆矩阵。而矩阵的转置也有许多前提条件需要注意。

由此可见,在对于线性代数有基本了解之后,所需要理解的概念就只有矩阵、标量以及组成矩阵的向量和这三者集合的统称张量这四个概念。

理解只在于方法

其实,对于线性代数来说,就算熟记所有公式,也很难get到每一个计算背后的意义及其达成的效果。

但是通过逆向思考和刨根究底,对线代深入理解也很容易。

比如最常见的一个问题——线性变换到底该如何理解?

如果你翻阅教科书或是直接百度一下,你很有可能会得到这样的答案:线性映射是从一个向量空间V到另一个向量空间W的映射且保持加法运算和数量乘法运算,而线性变换是线性空间V到其自身的线性映射。

其实,你可以通过不断地向自己发问,从结果开始,从后向前进行思考。

线性变换得出的结果是怎样的?是图像的变换,是一种运动。

运动需要什么元素来定义?运动对象和运动方式。

而在线性空间里,对象的表示方式是什么?是向量。

那么该如何表示运动的方式?需要描述一个向量到另一个向量过程再到下一个向量的过程,简单来说就是点到点的变换。这一则信息就可以表述为[向量A 向量B 向量C ……],也就是一个矩阵。

而要让向量运动起来,则需要通过乘法。这时候你便可以得出,线性变换就是矩阵与向量的乘法运算。

读芯君开扒

线性代数其实很简单

在刚开始学习线性代数时,你一定会认为别人说的——线代比高数简单——是对你深深的欺骗,但实际上的确如此。

而让人产生这种感觉的根源,在于其对概念的故弄玄虚。

其实,要深入理解线性代数,遵从教科书的步伐将会带来很多困难。最直接而有效的方式,其实就是在大概了解线性代数的全局后,从最基本的概念开始研究,从空间、从线性空间、从矩阵……

同时需要注意的是,对于线性代数来说,最重要的不是概念本身,而是概念背后的实质。就像基的实质,就是坐标系;而矩阵的实质,就是点的集合……只有这样,才能拨云见日。

留言 点赞 发个朋友圈

我们一起探讨AI落地的最后一公里

作者:羊习习

参考文献链接:

http://m.sohu.com/a/232586862_114877

https://www.guokr.com/post/300903/

如需转载,请后台留言,遵守转载规范


文章评论

共有 51 位网对文章表示很赞! 查看完整内容