数据探索数据观测我们首先使用netCDF4库读取气象数据from netCDF4 import Datasetnc_path data/初赛训练集/nwp_data_train/1/NWP_1/20240101.ncdataset Dataset(nc_path, moder)数据集包含以下关键变量channel: 8个气象特征ghi, poai, sp, t2m, tcc, tp, u100, v100data: 维度为(1, 24, 8, 11, 11)的5维数组数据可视化通过绘制24小时的特征变化曲线我们发现了一些有趣的规律主要观察ghi与poai呈现明显的正相关关系功率(power)在凌晨时段较高上午急剧下降tp(降水)特征呈现单调递增趋势数据处理数据降维将11×11的网格数据降维为单一标量值mean_values np.array([np.mean(data[:, :, i, :, :][0], axis(1, 2))for i in range(8)]).T1.2.时间对齐气象数据时间精度为小时而功率数据为15分钟我们进行了时间对齐处理target target[target[时间].str.endswith(00:00)]1.特征工程我们创建了两个新特征def feature_combine(df):df[wind_speed] np.sqrt(df[u100]**2 df[v100]**2)df[h] df.index % 24 # 小时特征return df1.2.3.4.这些新特征能够更好地捕捉数据中的物理规律和时间模式。模型构建我们采用LightGBM模型使用5折交叉验证复制def cv_model(clf, train_x, train_y, test_x, seed2024):folds 5kf KFold(n_splitsfolds, shuffleTrue, random_stateseed)# ...交叉验证实现...1.2.3.4.关键参数设置params {boosting_type: gbdt,objective: regression,metric: rmse,num_leaves: 2**8,learning_rate: 0.1,# ...其他参数...}1.2.3.4.5.6.7.8.结果与展望完整的数据分析流程还深入理解了特征工程的重要性。未来可以在以下方面继续优化尝试更复杂的特征组合使用深度学习模型进行对比引入更多外部特征数据-----------------------------------©著作权归作者所有来自51CTO博客作者DeepSeaAI的原创作品请联系作者获取转载授权否则将追究法律责任从数据探索到模型构建的全流程实践https://blog.51cto.com/yuhaibao324/14679606
从数据探索到模型构建的全流程实践
数据探索数据观测我们首先使用netCDF4库读取气象数据from netCDF4 import Datasetnc_path data/初赛训练集/nwp_data_train/1/NWP_1/20240101.ncdataset Dataset(nc_path, moder)数据集包含以下关键变量channel: 8个气象特征ghi, poai, sp, t2m, tcc, tp, u100, v100data: 维度为(1, 24, 8, 11, 11)的5维数组数据可视化通过绘制24小时的特征变化曲线我们发现了一些有趣的规律主要观察ghi与poai呈现明显的正相关关系功率(power)在凌晨时段较高上午急剧下降tp(降水)特征呈现单调递增趋势数据处理数据降维将11×11的网格数据降维为单一标量值mean_values np.array([np.mean(data[:, :, i, :, :][0], axis(1, 2))for i in range(8)]).T1.2.时间对齐气象数据时间精度为小时而功率数据为15分钟我们进行了时间对齐处理target target[target[时间].str.endswith(00:00)]1.特征工程我们创建了两个新特征def feature_combine(df):df[wind_speed] np.sqrt(df[u100]**2 df[v100]**2)df[h] df.index % 24 # 小时特征return df1.2.3.4.这些新特征能够更好地捕捉数据中的物理规律和时间模式。模型构建我们采用LightGBM模型使用5折交叉验证复制def cv_model(clf, train_x, train_y, test_x, seed2024):folds 5kf KFold(n_splitsfolds, shuffleTrue, random_stateseed)# ...交叉验证实现...1.2.3.4.关键参数设置params {boosting_type: gbdt,objective: regression,metric: rmse,num_leaves: 2**8,learning_rate: 0.1,# ...其他参数...}1.2.3.4.5.6.7.8.结果与展望完整的数据分析流程还深入理解了特征工程的重要性。未来可以在以下方面继续优化尝试更复杂的特征组合使用深度学习模型进行对比引入更多外部特征数据-----------------------------------©著作权归作者所有来自51CTO博客作者DeepSeaAI的原创作品请联系作者获取转载授权否则将追究法律责任从数据探索到模型构建的全流程实践https://blog.51cto.com/yuhaibao324/14679606