[ML]keras波士顿房价预测模型

from keras.datasets import boston_housing
from keras.models import Sequential
from keras.layers import Dense,BatchNormalization,Dropout,Reshape,Flatten
from keras.layers.convolutional import Conv2D,MaxPooling2D,Conv1D,MaxPooling1D
import numpy as np
import os

(x_train, y_train), (x_test, y_test) = boston_housing.load_data()

def build0():
    model=Sequential(name=‘boston‘)
    model.add(BatchNormalization(input_shape=(13,)))
    model.add(Dropout(0.5))
    model.add(Dense(1))
    return model

def build1():
    model=Sequential(name=‘boston‘)
    model.add(BatchNormalization(input_shape=(13,)))
    model.add(Dense(13))
    model.add(Dropout(0.5))
    model.add(Dense(1))
    return model

def build2():
    model=Sequential(name=‘boston‘)
    model.add(BatchNormalization(input_shape=(13,)))
    model.add(Dense(13,activation=‘tanh‘))
    model.add(Dropout(0.5))
    model.add(Dense(1))
    return model

def build3():
    model=Sequential(name=‘boston‘)
    model.add(BatchNormalization(input_shape=(13,)))
    model.add(Dense(13,activation=‘sigmoid‘))
    model.add(Dropout(0.5))
    model.add(Dense(1))
    return model

def build4():
    model=Sequential(name=‘boston‘)
    model.add(BatchNormalization(input_shape=(13,)))
    model.add(Reshape((13,1)))
    model.add(Conv1D(filters=13,strides=1,padding=‘same‘,kernel_size=2,activation=‘sigmoid‘))
    model.add(Conv1D(filters=26, strides=1, padding=‘same‘, kernel_size=2, activation=‘sigmoid‘))
    model.add(MaxPooling1D(pool_size=2,strides=1,padding=‘same‘))
    model.add(Conv1D(filters=52, strides=1, padding=‘same‘, kernel_size=2, activation=‘sigmoid‘))
    model.add(Conv1D(filters=104, strides=1, padding=‘same‘, kernel_size=2, activation=‘sigmoid‘))
    model.add(MaxPooling1D(pool_size=2, strides=1, padding=‘same‘))
    model.add(Flatten())
    model.add(Dropout(0.5))
    model.add(Dense(1))
    return model

def build5():
    model = Sequential(name=‘boston‘)
    model.add(BatchNormalization(input_shape=(13,)))
    model.add(Reshape((13, 1,1)))
    model.add(Conv2D(filters=13, strides=1, padding=‘same‘, kernel_size=2, activation=‘sigmoid‘))
    model.add(Conv2D(filters=26, strides=1, padding=‘same‘, kernel_size=2, activation=‘sigmoid‘))
    model.add(MaxPooling2D(pool_size=2, strides=1, padding=‘same‘))
    model.add(Conv2D(filters=52, strides=1, padding=‘same‘, kernel_size=2, activation=‘sigmoid‘))
    model.add(Conv2D(filters=104, strides=1, padding=‘same‘, kernel_size=2, activation=‘sigmoid‘))
    model.add(MaxPooling2D(pool_size=2, strides=1, padding=‘same‘))
    model.add(Flatten())
    model.add(Dropout(0.5))
    model.add(Dense(1))
    return model

for i in range(6):
    model=eval("build"+str(i)+"()")
    model.compile(‘adam‘,‘mae‘)#3.0895
    history=model.fit(x_train,y_train,batch_size=404,epochs=10000,verbose=1,validation_data=(x_test,y_test))
    print(history.history)

    f=open("result.txt",‘a‘)
    f.write(str(history.history[‘val_loss‘][-1])+"\n")
    f.close()

其中build4方法预测最准确mae loss最小

时间: 2024-11-03 00:35:32

[ML]keras波士顿房价预测模型的相关文章

02-08 多项式回归(波士顿房价预测)

目录 多项式回归(波士顿房价预测) 一.导入模块 二.获取数据 三.训练模型 3.1 报告决定系数 四.可视化 更新.更全的<机器学习>的更新网站,更有python.go.数据结构与算法.爬虫.人工智能教学等着你:https://www.cnblogs.com/nickchen121/ 多项式回归(波士顿房价预测) 一.导入模块 import pandas as pd import numpy as np import matplotlib.pyplot as plt from matplot

02-07 多元线性回归(波士顿房价预测)

目录 多元线性回归(波士顿房价预测) 一.导入模块 二.获取数据 三.训练模型 四.可视化 五.均方误差测试 更新.更全的<机器学习>的更新网站,更有python.go.数据结构与算法.爬虫.人工智能教学等着你:https://www.cnblogs.com/nickchen121/ 多元线性回归(波士顿房价预测) 一.导入模块 import pandas as pd import matplotlib.pyplot as plt from matplotlib.font_manager im

sklearn线性回归实现房价预测模型

目录 题目要求 单特征线性回归 方案一 方案二 多特征线性回归 两份数据 ex1data1.txt ex1data2.txt 题目要求 建立房价预测模型:利用ex1data1.txt(单特征)和ex1data2.txt(多特征)中的数据,进行线性回归和预测. 作散点图可知,数据大致符合线性关系,故暂不研究其他形式的回归. 两份数据放在最后. 单特征线性回归 ex1data1.txt中的数据是单特征,作一个简单的线性回归即可:\(y=ax+b\). 根据是否分割数据,产生两种方案:方案一,所有样本

波士顿房价数据集

机器学习:波士顿房价数据集 波士顿房价数据集(Boston House Price Dataset)(下载地址:http://t.cn/RfHTAgY) 使用sklearn.datasets.load_boston即可加载相关数据. from sklearn.datasets import load_boston 该数据集是一个回归问题.每个类的观察值数量是均等的,共有 506 个观察,13 个输入变量和1个输出变量. 每条数据包含房屋以及房屋周围的详细信息. CRIM:城镇人均犯罪率:  ZN

机器学习之路: python 线性回归LinearRegression, 随机参数回归SGDRegressor 预测波士顿房价

python3学习使用api 线性回归,和 随机参数回归 git: https://github.com/linyi0604/MachineLearning 1 from sklearn.datasets import load_boston 2 from sklearn.cross_validation import train_test_split 3 from sklearn.preprocessing import StandardScaler 4 from sklearn.linear

机器学习之路: python 回归树 DecisionTreeRegressor 预测波士顿房价

python3 学习api的使用 git: https://github.com/linyi0604/MachineLearning 代码: 1 from sklearn.datasets import load_boston 2 from sklearn.cross_validation import train_test_split 3 from sklearn.preprocessing import StandardScaler 4 from sklearn.tree import De

《用Python玩转数据》项目—线性回归分析入门之波士顿房价预测(二)

接上一部分,此篇将用tensorflow建立神经网络,对波士顿房价数据进行简单建模预测. 二.使用tensorflow拟合boston房价datasets 1.数据处理依然利用sklearn来分训练集和测试集. 2.使用一层隐藏层的简单网络,试下来用当前这组超参数收敛较快,准确率也可以. 3.激活函数使用relu来引入非线性因子. 4.原本想使用如下方式来动态更新lr,但是尝试下来效果不明显,就索性不要了. def learning_rate(epoch): if epoch < 200: re

波士顿房价处理

1. 导入boston房价数据集 2. 一元线性回归模型,建立一个变量与房价之间的预测模型,并图形化显示. 3. 多元线性回归模型,建立13个变量与房价之间的预测模型,并检测模型好坏,并图形化显示检查结果. 4.  一元多项式回归模型,建立一个变量与房价之间的预测模型,并图形化显示. 1 from sklearn.datasets import load_boston 2 import matplotlib.pyplot as plt 3 from sklearn.linear_model im

线性回归预测波士顿房价

预测波士顿的房价,上次已经通过房间数目预测了房价,这次用多元线性回归预测. 根据之前推导的多元线性回归的参数 接下来是多元线性回归的代码实现 def LinearRegression_(x,y): np.array(x) np.array(y) a = (np.linalg.inv(x.T.dot(x))).dot(x.T).dot(y) 上次大致了解了得个feature的name.下面是‘ZN’和‘RM’的散点图(由于我比较懒所以只实现这两个) 我们可以看出每个特征的数据范围相差较大,为了加快