老师,是否可以用损失函数的角度理解不同的梯度下降法。批量梯度下降法,对应的损失函数是包含对整个数据集求和的,所以后面的计算,不管是矩阵运算还是循环,时间复杂度高的根源,其实来自于损失函数里的求和。而随机梯度下降,虽然计算损失函数的代码不变,其实它的损失函数已经变成了一个样本的了,所以时间复杂度度大大下降了。
所以如果这样理解,顺序就是 1.损失函数 --> 2.求梯度 --> 3.复杂度,这个1,损失函数才是影响后续所有数据集的选取,计算复杂度的根源。而损失函数的定义,也就是我们评价一个算法好坏的度量,是人为主观定义的,在计算量/稳定性之间找到一个平衡,这样理解帮助我想通了很多问题,对吗?