使用热图可视化多元线性回归预测
Visualizing multiple linear regression predictions using a heatmap
我正在使用多元线性回归来预测部署了无线传感器的场地的每个区域的温度,传感器如下:部署在 1000x600 平方米表面上的 42 个传感器并收集这 42 个中每个传感器的温度每小时位置,见图:
Sensors placement
我们这里有两个特征(位置又名:x 和 y),输出是温度,所以我根据 70% 的数据集拟合我的模型,但是为了以后的精度计算拟合我的模型后,我想预测所有表面的温度,特别是一张热图,它为我提供温度作为 x 和 y 的函数(见图:Heatmap)
我被困在可视化部分,因为我的数据集包含 42 个已知位置及其各自的温度,我如何绘制 [0,1000] 中的每个 x 和 [0,600] 中的 y 的预测
我是否必须制作一个 nx2 矩阵迭代 x 和 y 的所有值,然后将其输入我的拟合模型?或者有没有更简单的方法
您可以使用 np.meshgrid 创建一个点网格,然后使用您的模型在这个点网格上进行预测。
import numpy as np
import matplotlib.pyplot as plt
grid_x, grid_y = np.meshgrid(np.linspace(0, 1000, 100),
np.linspace(0, 600, 60))
X = np.stack([grid_x.ravel(), grid_y.ravel()]).T
y_pred = model.predict(X) # use your scikit-learn model here
image = np.reshape(y_pred, grid_x.shape)
plt.imshow(image, origin="lower")
plt.colorbar()
plt.show()
我正在使用多元线性回归来预测部署了无线传感器的场地的每个区域的温度,传感器如下:部署在 1000x600 平方米表面上的 42 个传感器并收集这 42 个中每个传感器的温度每小时位置,见图: Sensors placement
我们这里有两个特征(位置又名:x 和 y),输出是温度,所以我根据 70% 的数据集拟合我的模型,但是为了以后的精度计算拟合我的模型后,我想预测所有表面的温度,特别是一张热图,它为我提供温度作为 x 和 y 的函数(见图:Heatmap)
我被困在可视化部分,因为我的数据集包含 42 个已知位置及其各自的温度,我如何绘制 [0,1000] 中的每个 x 和 [0,600] 中的 y 的预测
我是否必须制作一个 nx2 矩阵迭代 x 和 y 的所有值,然后将其输入我的拟合模型?或者有没有更简单的方法
您可以使用 np.meshgrid 创建一个点网格,然后使用您的模型在这个点网格上进行预测。
import numpy as np
import matplotlib.pyplot as plt
grid_x, grid_y = np.meshgrid(np.linspace(0, 1000, 100),
np.linspace(0, 600, 60))
X = np.stack([grid_x.ravel(), grid_y.ravel()]).T
y_pred = model.predict(X) # use your scikit-learn model here
image = np.reshape(y_pred, grid_x.shape)
plt.imshow(image, origin="lower")
plt.colorbar()
plt.show()