机器学习之简单线性回归算法(三)生成数据及预测

操作要求

利用python编写如下程序,
为对单变量线性回归有较深刻的认识,现自行设计数据集。数据集的要求如下,训练集:xdata为100个在(0,1)范围内服从正态分布的随机数,ydata满足:ydata=2*xdata+3+random1,其中random1也是(0,1)范围内服从正态分布的随机数。测试集:选择训练集中前30个数据作为测试集。
请通过Python实现一元线性回归模型,并用此模型预测y,具体要求如下:
完成数据集的读取
实现线性回归的代价函数
实现梯度下降函数
要求输出迭代过程中的代价函数值
通过梯度下降计算回归模型,用所得模型对测试集的数据进行预测
以横轴为真实值,纵轴为预测值,画出散点图进行对比

代码及注释


import numpy as np
from matplotlib import pyplot as plt

# 数据集的要求如下,
# 训练集 xdata为100个在(0,1)范围内服从正态分布的随机数,
#       ydata满足:ydata=2*xdata+3+random1,其中random1也是(0,1)范围内服从正态分布的随机数。
# 测试集:选择训练集中前30个数据作为测试集

# 生成训练集xdata
xdata = np.ones((100,2))
for i in range(100):
    xdata[i,1] = np.random.random()
# print(xdata)

# 生成训练集ydata
ydata = np.zeros((100,1))
  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值