批梯度下降:指的是每下降一步,使用所有的训练集来计算梯度值。
单变量
# -*- coding:utf-8 -*-
# @Time:4/18/19 9:08 PM
# @Author:CIGA
# @Filename:02_batch_gradient_descent.py
# @Software:PyCharm
"""
批梯度下降batch_gradient_descent
批梯度下降:指的是每下降一步,使用所有的训练集来计算梯度值
单变量
"""
import numpy as np
a = np.random.rand(100, 1)
X = 2 * a
y = 4 + 3 * X + a
"""
a = np.array([[1, 2, 3],[7,8,9]])
b=np.array([[4,5,6],[1,2,3]])
a
Out[4]:
array([[1, 2, 3],
[7, 8, 9]])
b
Out[5]:
array([[4, 5, 6],
[1, 2, 3]])
c=np.c_[a,b]
c
Out[7]:
array([[1, 2, 3, 4, 5, 6],
[7, 8, 9, 1, 2, 3]])
"""
"""
>>> np.ones((2, 1))
array([[ 1.],
[ 1.]])
"""
X_b = np.c_[np.ones((100, 1)), X]
# 学习率
learning_rate = 0.1
# 迭代次数
n_iterations = 1000
# 样本个数
m = 100
# 1.初始化theta&#x