pytorch神经网络因素预测_实战:使用PyTorch构建神经网络进行房价预测

本文介绍如何使用PyTorch构建一个前馈神经网络,进行房价预测。数据来自Kaggle的房价预测竞赛,通过特征工程处理数据,包括过滤缺失值和One-Hot编码。模型采用多层感知机,训练500轮,最终模型可用于测试数据集的预测。
摘要由CSDN通过智能技术生成

微信公号:ilulaoshi / 个人网站:lulaoshi.info

本文将学习一下如何使用PyTorch创建一个前馈神经网络(或者叫做多层感知机,Multiple-Layer Perceptron,MLP),文中会使用PyTorch提供的自动求导功能,训练一个神经网络。

本文的数据集来自Kaggle竞赛:房价预测(https://www.kaggle.com/c/house-prices-advanced-regression-techniques/)。这份数据分为训练数据集和测试数据集。两个数据集都包括每栋房子的特征,如建造年份、地下室状况等特征值。这些特征中,有连续的数值型(Numerical)特征,有离散的分类(Categorical)特征。这些特征中,有些特征值是缺失值“na”。训练数据集包括了每栋房子的价格,也就是需要预测的目标值(Label)。我们应该用训练数据集训练一个模型,并对测试数据集进行预测,然后将结果提交到Kaggle。

数据探索和预处理

首先,我们下载并加载数据集:

train_data_path ='./dataset/train.csv'

train = pd.read_csv(train_data_path)

num_of_train_data = train.shape[0]

test_data_path ='./dataset/test.csv'

test = pd.read_csv(test_data_path)

训练数据集共1460个样本,81个维度,其中,Id是每个样本的唯一编号,SalePrice是房价,也是我们要拟合的目标值。其他维度(列)有数值类特征,也有非数值列,或者叫分类特征。

先查看训练数据集的维度:

train.shape

输出为:

(1460, 81)

或者通过train.describe()来查看整个数据集各个特征的一些统计情况。

接着,我们要把训练数据集和测试数据集合并。将训练数据集和测试数据集合并主要是为了统一特征处理的流程,或者说对训练数据集和测试数据集使用同样的方法,进行同样的特征工程处理。

# 房价,要拟合的目标值

target = train.SalePrice

# 输入特征,可以将SalePrice列扔掉

train.drop(['SalePrice'],axis = 1 , inplace = True)

# 将train和test合并到一起,一块进行特征工程,方便预测test的房价

combined = train.append(test)

combined.reset_index(inplace=True)

combined.drop

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值