小批量梯度下降法(Mini-batch Gradient Descent,Mini-Batch GD)是随机梯度下降法(Stochastic Gradient Descent,SGD)和批量梯度下降法(Batch Gradient Descent,BGD)的折中,相比较于SGD计算代价函数梯度的时候只考虑一个样本和BGD考虑所有样本,Mini-Batch GD计算代价函数梯度的时候考虑一小批样本,兼顾了寻优速度和收敛性。
函数原图像:

源码如下:
%% function test
clear;clc;close all
%% figure of function
rangeX = linspace(-20,20,200);
rangeY = linspace(-20,20,200);
[x0,y0] = meshgrid(rangeX,rangeY);
z = y0.*sin(x0) - x0.*cos(y0);
% plot
figure(1)
surf(x0,y0,z)
shading flat
colorbar
hold on
%% initialize
% generate scattered points
m=1000; %number of points
x

本文介绍了小批量梯度下降法在寻找复杂二维函数极值问题上的实践。这种方法结合了随机梯度下降和批量梯度下降的优点,以一批样本为单位计算梯度,既提高了寻优效率,又保持了较好的收敛性。通过源码和效果展示,证明了其在解决此类问题时的有效性。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



