X和Y,未知的变量w和b定义好,构建出MSE的公式,然后丢到求解器直接对w和b求偏导即可,相对来说代码繁琐,但是过程更简单,没有任何数学推导;
代码实现
初始化数据集
X = np.array([1.51..., 1.64, 1.6, 1.73, 1.82, 1.87])
y = np.array([1.63, 1.7, 1.71, 1.72, 1.76, 1.86])
定义变量符号
所谓变量指的就是那些需要求解的部分...D X为父亲身高,Y为儿子身高
X = np.array([1.51, 1.64, 1.6, 1.73, 1.82, 1.87])
y = np.array([1.63, 1.7, 1.71, 1.72...[1.51,1.64,1.6,1.73,1.82,1.87]).reshape(-1,1)
y = np.array([1.63,1.7,1.71,1.72,1.76,1.86])
为X增加元素全为1的一列用于和...self.X = np.hstack((ones,X))
self.y = y
def train(self):
# 注意,虽然一般情况下下面二者是等价的,但是在矩阵无法求逆或某些其他情况下时