问题预览/关键词
- 什么是向量化?
- 向量化的好处是?
- 如何向量化多元线性回归函数的参数?
- 如何在Python中向量化参数?
- 计算机底层是如何计算向量化的?
- 向量化示例
笔记
1.向量化
一种在数学和计算中广泛使用的概念,它指的是以向量的形式处理数据,而不是单个元素。
2.好处
减少代码量,简化格式,显著提高数据处理的效率。
3.向量化参数
- 原有格式
- 三个参数w的向量化,用w加上面一个箭头来表示。
- 三个输入特征x的向量化。
- 参数b是标量(一个元素)
- 最终格式
4.Python代码向量化参数
- 使用Numpy数组存储w和b。
- 未向量化代码,取数据元素一个一个相乘(灰色部分)。
- 未向量化代码,for循环,相比一个一个计算好一些,但是效率依旧不高。
- 向量化,使用NumPy库的dot函数,一行代码就实现。
5.底层计算向量化
向量化会让计算机调用专门的硬件,并行处理显著提高效率,同时计算多个操作。
6.向量化示例
- w和d分别有16个元素,需要计算每个w元素减去对应的d元素和0.1乘积,然后更新对应的w。
- 未向量化,for循环。
- 向量化,w和d都是Numpy数组,计算过程会逐个元素计算,一行代码搞定。
总结
向量化既可以减少代码量,增加代码的可读性和维护性,同时底层会调用GPU计算,提高代码运行速度和效率。在Python中,我们会经常使用Numpy库的方法,例如np.array,np.dot,避免显式的循环,直接对数组进行数学和逻辑操作,来达到向量化的效果。