bp神经网络预测python代码_纯Python搭建一个深度神经网络并用于房价预测

本文详述如何使用Python从零构建一个深度神经网络模型,并应用到房价预测。通过介绍模型结构、前向传播、后向传播,以及训练过程,展示了神经网络在房价预测中的应用。
摘要由CSDN通过智能技术生成

背景

深度神经网络模型是当前火热的人工智能的基石,深度神经网络模型可以应用于房价预测、股票预测、人脸识别、自动驾驶等各种场景。本文将详细讲解如何使用python从零开始搭建一个神经网络模型,并应用于房价预测。

摘要

  1. 房价数据介绍

  2. 深度神经网络介绍

  3. 神经网络前后向传播计算详解

  4. 训练深度神经网络模型并预测房价

  5. 总结

代码

话不多说,先上代码。人生苦短,我爱python。

https://github.com/hellobilllee/dnn_house_price_prediction_scratch

房价数据介绍

本文将预测波士顿郊区自住房屋价格的中位数。使用波士顿房价(BostonHousePrice)数据集,一部分数据用于训练模型,另一部分数据用于验证模型的效果。数据下载地址:https://archive.ics.uci.edu/ml/machine-learning-databases/housing/

波士顿房价数据说明:此数据源于美国某经济学杂志,用于分析研究波士顿房价,共包含506行,14列。数据集中的每一行对应于影响波士顿某一城镇房价的各种数据,比如犯罪率、当地房产税率等。本数据集信息维度仅用于分析研究,在中国,是否是学区房等信息也是房产价格的重要参考指标。

9a46d24680da43632ae4bfc889a0b75d.png

数据示例

f0e197952a99c051e14df0b6ac6a59db.png

 数据名称解释

本文预测目标为MEDV(自住房屋房价中位数,也就是均价)。假设当前我们的深度神经网络模型已经训练好了,我们将某一城镇住房除需要预测的房屋均价外其它信息输入到网络当中,神经网络会输出一个预测的房屋均价值,可以通过比较预测值与实际值之间的偏差大小来评估神经网络的预测效果。

神经网络介绍

典型神经网络结构

典型的神经网络结构如下图所示,包含输入层、隐藏层(可以有多层)和输出层。每一层当中包含很多存储数据的节点,称之为神经元,每一个神经元都与下一层所有神经元连接,每一对连接都有对应的一个参数。这种连接维持了神经元之间信息的传递,信息的传递其实就是一个数学计算过程。

前向传播过程输入信息由输入层->隐藏层->输出层。

后向传播过程更新信息由输出层->隐藏层->输入层。

预测的时候,输入原始数据信息到输入层,经过中间层的数学计算,得到输出,即房屋均价;训练的时候,先进行前向传输预测得到房屋均价输出,然后根据输出与实际房屋均价的差距,进行后向传播,这个过程会调整网络之中的参数,从而使得下一次预测更为准确。

f549974bbc6424f1515d109375cf6c05.png

深度神经网络结构

前向传播计算公式

前向传播时每一层计算公式:

eaea485d689078d3cd2e900edcf31ba6.png

l 表示第l 层,W表示第l 层的参数矩阵,X表示第l -1 层的输入数据矩阵,f 表 示某类数学函数,也称激活函数。常用激活

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值