线性回归
2019-09-27 本文已影响0人
zidea
mxnet.jpg
回归问题
线性回归可以应用在股票预测,房价预测,无人车驾驶、还就就是推荐系统,淘宝或者京东,用户A购买商品 B 可能性也是。李宏毅老师是以预测宝可梦进化为例来讲的线性回归,所谓线性回归就是可以暂时理解根据以往经验(数据)总结出规律来预测未来。
抛出问题
我们先估计第一个特征方程
然后在估计一个两个特征的特征
今天我们是通过学习来找到这么方程然后,用方程来预测一些值,那么我们如何通过学习来找到这个函数呢。这也就是今天我们今天主要要学习的。
1.定义模型
什么是模型,所谓模型我们认为是一组函数的集合,
这里我们定义函数
在这个函数的参数 w 和 b 可能是任意数值,
这是一个线性模型
收集数据
import numpy as np
from matplotlib import pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
# create train data
X1 = np.random.uniform(50,100,100)
X2 = np.random.uniform(100,200,100)
fig = plt.figure()
ax1 = plt.axes(projection='3d')
fig=plt.figure()
Y = np.dot(X1,2) + np.dot(X2,3) + 5
print(Y)
ax1.scatter3D(X1,X2,Y, cmap='Blues')
plt.show()
图
评估
评估我们函数好坏,这里定义一个损失函数(用L表示),损失函数是接受我们一个模型一个函数作为参数,那么学过函数编程都知道这就是所谓高阶函数,我们f(x) 是 L的参数。这个函数输出就是通过数值表示这个函数有多好,和多不好。
因为我们这里 f(x) 是 b 和 w 决定的,所以我们就可以用 L(b,w)