梯度下降的原理:梯度下降
普通梯度下降bgd的方法简单暴力,但是调整速度比较慢。
如果不想等所有数据都计算完了才开始调整w,而是计算完数据的一部分(batch_size)后就立即调整w,说白了就是在训练过程中进行权重的更新。
这样就成了随机梯度下降
主要优点有:
* 收敛速度更快,
* 避免过拟合的问题。
代码更新如下:
'''
随机全梯度下降方法
改进:进行到一部分的时候即更新权重
'''
import numpy as np
import math
print(__doc__)
sample = 10
num_input = 5
#加入训练数据
np.random.seed(0)
normalRand = np.random.normal(0,0.1,sample) # 10个均值为0方差为0