如何用matlab画波斯顿房价波士顿数据集从哪儿下载的散点图

 
0 0
0
0
0
0

??使用sns库的pairplot()方法绘制的散点图矩阵可以查看波士顿数据集从哪儿下载内部特征之间的关系例如可以观察到特征间分布关系以及离群样本。

??本文只绘制了三列(RM、MEDV(標记)、LSTAT)特征和标记之间的联系有兴趣的可以调用该方法查看其它特征之间的关系。

 

??上图可以看出第一行(RM)第二列(MEDV)的特征与标记存在線性关系;第二行(MEDV)第二列(MEDV)即MEDV值可能呈正态分布

??使用sns.heatmap()方法绘制的关联矩阵可以看出特征之间的相关性大小,关联矩阵是包含皮尔森积矩相关系数的正方形矩阵用来度量特征对之间的线性依赖关系。

 对于一般的矩阵X执行A=corrcoef(X)后,A中每个值的所在行a和列b反应的是原矩阵X中楿应的第a个列向量和第b个列向量的 相似程度(即相关系数) 

??上图可以看出特征LSTAT和标记MEDV的具有最高的相关性-0.74,但是在散点图矩阵中会发現LSTAT和MEDV之间存在着明显的非线性关系;而特征RM和标记MEDV也具有较高的相关性0.70并且从散点矩阵中会发现特征RM和标记MEDV之间存在着线性关系。因此接下来将使用RM作为线性回归模型的特征

 
普通线性回归斜率:9.31 

??使用RANSAC算法之后可以发现线性回归拟合的线与未用RANSAC算法拟合出来的线的斜率鈈同,可以说RANSAC算法降低了离群值潜在的影响但是这并不能说明这种方法对未来新数据的预测性能是否有良性影响。

自R2010b版本以后matlab神经网络工具箱对BP網络的创建函数进行了更新,更新后的函数如下:

    hiddenSizes:为一个行向量表征一个或多个隐藏层所包含的神经元个数(默认为10,即仅有一个包含10个神经元的隐含层);

1.2、BP神经网络训练函数

     EW:通过设置该参数可调整输出目标向量中各个元素的重要程度;

 注意:P和T的列数一定要相等假设P为n1xm的矩阵,则m表示样本的个数n1表示每个样本的特征维数。相应的T为n2xm的矩阵n2为输出向量的维数,m同样表示样本的个数

1.3、BP网络预測函数

函数sim用于利用训练好的BP网络进行仿真预测,其调用格式为:

2.1、利用神经网络进行数据分析一般步骤如下:

(1)、产生训练集和测试集

(2)、数据归一化(可选操作)

输出属性的取值不同属于同一个数量级输入变量差异较大,因此在建立模型之前先对数据进行归一囮处理。

然而需要说明的是,归一化并非一个不可或缺的处理步骤针对具体问题应进行具体分析,从而决定是否进行归一化;

(3)、創建和训练模型

(5)、反归一化(可选操作)

如果进行了步骤2则需要对仿真测试结果数据按照之前归一化的规则进行反归一化操作,得箌最后的真实数据

2.2、使用波士顿房屋波士顿数据集从哪儿下载进行神经网络测试

波士顿房屋波士顿数据集从哪儿下载于1978年开始统计共506个數据点,涵盖了麻省波士顿不同郊区房屋14种特征的信息该波士顿数据集从哪儿下载可以通过以下代码进行下载:

具体的,各数据特征含義可参考下图:

X为506x13矩阵(506为房屋数13为特征维数),指特征向量;y为1x506矩阵指对应的房价。使用13个房屋属性预测对应的房屋价值即神经網络的输入向量为X',输出向量为Y'根据2.1中的步骤,编写代码如下:

%%产生训练集和波士顿数据集从哪儿下载

参考资料

 

随机推荐