模型加载与使用:预测结果保存到 CSV 文件
"使用模型进行预测..."\nfilepath"="./M1.h5"\nmodel = load_model(filepath)\n\n# 读取 CSV 文件\ndata = pd.read_csv("验证m模型.csv")\n\n# 提取第1列的数据并转换为浮点型\nh0 = data.iloc[:, 1].values.astype(np.float32)\n\n# 提取第2列的数据并转换为浮点型\ntauss = data.iloc[:, 2].values.astype(np.float32)\n\n# 提取第3列的数据并转换为浮点型\ntau0 = data.iloc[:, 3].values.astype(np.float32)\n\n# 提取第4到11列的数据并转换为浮点型\nfeatures = data.iloc[:, 4:11].values.astype(np.float32)\n\n# 提取第12列的数据并转换为浮点型\ntarget = data.iloc[:, 12].values.astype(np.float32)\n\n# 对第1列的数据除以最大值,后面除以的值是用于训练模型时候归一化除以的值\nh0_normalized = h0 / 500\n\n# 对第2列的数据除以最大值,后面除以的值是用于训练模型时候归一化除以的值\ntauss_normalized = taus / 1000\n\n# 对第3列的数据除以最大值,后面除以的值是用于训练模型时候归一化除以的值\ntau0_normalized = tau0 / 1000\n\n# 对第4到11列的每行数据除以每行数据中的最大值,后面除以的值是用于训练模型时候归一化除以的值\nfeatures_normalized = features / 2871.158436\n\n# 对第12列的数据除以最大值,后面除以的值是用于训练模型时候归一化除以的值\ntarget_normalized = target / 0.469994596\n\n# 将数据转换为 NumPy 数组\nunknown = np.concatenate((h0_normalized, taus_normalized, tau0_normalized, features_normalized, target_normalized.reshape(-1, 1)), axis=1)\n\n# 进行预测\npredicted = model.predict(unknown, verbose=1)\n\n# 将预测结果保存到新的 CSV 文件中\n# 将预测结果转换为 DataFrame\nresult = pd.DataFrame(predicted, columns=[f"prediction_{i}" for i in range(predicted.shape[1])])\n\n# 将预测结果反归一化\nresult.iloc[:, 0] = result.iloc[:, 0] * 70\n\n# 将 DataFrame 以行为单位保存到 CSV 文件中\nresult.to_csv("m预测结果.csv", index=False, header=False)\n\n#pd.DataFrame() 的参数 columns 指定了列名,其中 predicted.shape[1] 表示预测结果的列数,即每个样本\n#的预测结果个数。to_csv() 方法的参数 header=False 表示不保存列名。这样就可以将预测结果以行为单位保存到 CSV 文件中了。
原文地址: https://www.cveoy.top/t/topic/qztv 著作权归作者所有。请勿转载和采集!