很多与深度学习算法相关的面试,面试官可能都会问一类问题,那就是你是如何理解矩阵乘算法的。
更有甚者,会让你当场手写矩阵乘算法,然后问细节,问如何优化,面试现场,残忍至极。
那矩阵乘法的本质到底是什么呢?为什么在神经网络中,甚至如今大火的大模型中,有那么多矩阵乘法出现呢?
1、矩阵乘法的本质
我查了很多资料,得出一个结论:矩阵乘法的本质,是数据整合和再创造的输出。
举个例子。
你是一个鸡尾酒调酒师,家里储存了很多鸡尾酒的原料,有金酒、利口酒、柠檬汁和可乐等等。
今天家里来了 3 位客人,他们分别喜欢喝“自由古巴”、“长岛冰茶”以及“龙舌兰日出这 3 款鸡尾酒,并向你下了单。
希望你给他们调配出来各自喜欢的鸡尾酒。
巧的是,这 3 款鸡尾酒的原料都是金酒、利口酒、柠檬汁和可乐。
你作为一个调酒师,分分钟就把客人的爱好的鸡尾酒给调出来了。
怎么做的呢?你知道配方:
- 自由古巴: 20%金酒 + 45% 利口酒 + 10%柠檬汁 + 25%可乐
- 长岛冰茶: 60%金酒+ 30%利口酒 + 5% 柠檬汁 + 5% 可乐
- 龙舌兰日出:30%金酒 + 10%利口酒 + 30%柠檬汁 + 30%可乐
你在调配鸡尾酒的过程中,是按照这个配方来调配的。
这里的原料,比如利口酒和可乐,就是输入资源,配比(比如可乐的 25% )就是赋予该资源的权重。
将相同的原料按照不同的配比混合起来,就得到了不同口味的鸡尾酒。
这种做法,可以抽象一下,写成一个公式:
- 自由古巴 = 0.2 x 金酒 + 0.45 x 利口酒 + 0.1 x 柠檬汁 + 0.25 x 可乐
- 长岛冰茶 = 0.6 x 金酒 + 0.3 x 利口酒 + 0.05 x 柠檬汁 + 0.05 x 可乐
- 龙舌兰日出 = 0.3 x 金酒 + 0.1 x 利口酒 + 0.3 x 柠檬汁 + 0.3 x 可乐
我们知道矩阵乘法的规则是,左矩阵的第一行乘以右矩阵的第一列,得到第一个值,第一行乘以第二列得到第二个值,…,以此类推
上面这种连乘的操作,就可以用矩阵乘法来表示。
左矩阵是一行四列,代表原料。
右矩阵是四行三列,每一列代表对应原料的配比。
按照矩阵乘法的规则,他们的结果应该是一个一行三列的矩阵,分别代表调配出来的三种鸡尾酒。
看到这是不是有点熟悉了。
矩阵乘法,通过相乘累加的操作,实际上是对数据(鸡尾酒的原料)的整合和创新输出(创造出了新的口味,如自由古巴)。
2、深度学习中的矩阵乘法
回到深度学习算法中,矩阵乘法的右矩阵通常是权值矩阵,是作为模型的参数被训练出来的。
一个模型,在对多种数据集训练之后,模型就学习到了一个权值矩阵,实际上一个模型中会学到很多个权值矩阵,这里用一个举例子说明。
这个权值矩阵可以很好的匹配多种输入数据,并对输入数据进行整合和再创。
卷积和全连接算法,或多或少都是一种矩阵乘法,将其转换为矩阵乘法之后,那么和权值矩阵对应的另一个矩阵,就是输入数据。
假设输入的数据是一张图片,那么图片中一个通道维度代表图片的一个特征,通过矩阵乘法对通道进行乘累加操作,便可以实现特征之间的整合和再创。
也就是所谓的特征融合,跟调酒是不是很像?
更显而易见的例子体现在全连接层上,全连接层通过矩阵乘法的运算,把所有的特征全部进行了融合,最终可能就会得到某一个类别。
如何学习大模型
现在社会上大模型越来越普及了,已经有很多人都想往这里面扎,但是却找不到适合的方法去学习。
作为一名资深码农,初入大模型时也吃了很多亏,踩了无数坑。现在我想把我的经验和知识分享给你们,帮助你们学习AI大模型,能够解决你们学习中的困难。
我已将重要的AI大模型资料包括市面上AI大模型各大白皮书、AGI大模型系统学习路线、AI大模型视频教程、实战学习,等录播视频免费分享出来,需要的小伙伴可以扫取。
![](https://img-blog.csdnimg.cn/img_convert/af9844e1463618b39db76211079c665a.png)
一、AGI大模型系统学习路线
很多人学习大模型的时候没有方向,东学一点西学一点,像只无头苍蝇乱撞,我下面分享的这个学习路线希望能够帮助到你们学习AI大模型。
二、AI大模型视频教程
三、AI大模型各大学习书籍
四、AI大模型各大场景实战案例
五、结束语
学习AI大模型是当前科技发展的趋势,它不仅能够为我们提供更多的机会和挑战,还能够让我们更好地理解和应用人工智能技术。通过学习AI大模型,我们可以深入了解深度学习、神经网络等核心概念,并将其应用于自然语言处理、计算机视觉、语音识别等领域。同时,掌握AI大模型还能够为我们的职业发展增添竞争力,成为未来技术领域的领导者。
再者,学习AI大模型也能为我们自己创造更多的价值,提供更多的岗位以及副业创收,让自己的生活更上一层楼。
因此,学习AI大模型是一项有前景且值得投入的时间和精力的重要选择。