HDU杭电--机器学习实验报告(一)监督学习之线性回归

  • 实验目的

• 1、理解监督学习中回归之线性回归;

• 2、掌握Sklearn提供的线性回归模型。

  • 实验内容与要求
  1.   线性回归

• 线性回归(Linear Regression)是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法。

• 线性回归利用称为线性回归方程的最小平方函数对一个或多个自变量和因变量之间关系进行建模。这种函数是一个或多个称为回归系数的模型参数的线性组合。只有一个自变量的情况称为简单回归,大于一个自变量情况的叫做多元回归。

使用形如y=wTx+b的线性模型拟合数据输入和输出之间的映射关系的。

2.  线性回归的应用

• 背景:与房价密切相关的除了单位的房价,还有房屋的尺寸。我们

可以根据已知的房屋成交价和房屋的尺寸进行线性回归,继而可以

对已知房屋尺寸,而未知房屋成交价格的实例进行成交价格的预测。

• 目标:对房屋成交信息建立回归方程,并依据回归方程对房屋价格

进行预测技术路线。

• 为了方便展示,成交信息只使用了房屋的面积以及对应的成交价格。

其中:房屋面积单位为平方英尺(ft2)房屋成交价格单位为万

3.可行性分析(简单查看线性关系)

4.实验过程(线性回归)

  • 实验程序与结果

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
datasets_X = []
datasets_Y = []
with open('prices.txt', 'r') as file:
    for line in file:
        data = line.strip().split(',')
        datasets_X.append(int(data[0]))
        datasets_Y.append(int(data[1]))
m = len(datasets_X)
datasets_X = np.array(datasets_X).reshape((m, 1))
datasets_Y = np.array(datasets_Y)
X_range = np.linspace(datasets_X.min(), datasets_X.max()).reshape(-1, 1)
model = LinearRegression()
model.fit(datasets_X, datasets_Y)
plt.scatter(datasets_X, datasets_Y, color='red')
plt.plot(X_range, model.predict(X_range), color='blue')
plt.xlabel('House Size')
plt.ylabel('Price')
plt.title('Linear Regression')
plt.show()

四、实验结果分析

五、实验问题解答与体会

在这个实验中,我旨在根据原有的数据分析房屋尺寸与价格之间的关系,并建立一个预测房屋价格的模型。通过Python编程语言和相关库的支持,对数据进行了处理,包括从文件中读取数据、转换为适当的格式,并应用了线性回归模型。

数据首先从文件中读取,并进行简单的处理,将房屋尺寸和价格分别存储在 datasets_X 和 datasets_Y 中。然后,将数据转换为 NumPy 数组,并进行适当的格式转换以满足线性回归模型的要求。

通过这个实验,我体会到了数据处理的重要性、可视化对数据理解的帮助,以及模型选择与拟合的重要性。最终得到的线性回归模型可以简单预测房屋价格。

  • 16
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值