模型加载及使用 - 预测结果保存至 CSV 文件
print('使用模型进行预测...') filepath='./M1.h5' model = load_model(filepath)
读取 CSV 文件
data = pd.read_csv('验证m模型.csv')
提取第1列的数据并转换为浮点型
h0 = data.iloc[:, 0].values
提取第2列的数据并转换为浮点型
taus = data.iloc[:, 1].values
提取第3列的数据并转换为浮点型
tau0 = data.iloc[:, 2].values
提取第4到12列的数据并转换为浮点型
features = data.iloc[:, 3:12].values.astype(np.float32)
提取第12列的数据并转换为浮点型
target = data.iloc[:, 11].values.astype(np.float32)
对第1列的数据除以最大值,后面除以的值是用于训练模型时候归一化除以的值
h0_normalized = h0 / 500
对第2列的数据除以最大值,后面除以的值是用于训练模型时候归一化除以的值
taus_normalized = taus / 1000
对第3列的数据除以最大值,后面除以的值是用于训练模型时候归一化除以的值
tau0_normalized = tau0 / 1000
对第4到11列的每行数据除以每行数据中的最大值,后面除以的值是用于训练模型时候归一化除以的值
features_normalized = features / 2871.158436
对第12列的数据除以最大值,后面除以的值是用于训练模型时候归一化除以的值
target_normalized = target / 0.469994596
将数据转换为 NumPy 数组
unknown = np.concatenate((h0_normalized.reshape(-1, 1), taus_normalized.reshape(-1, 1), tau0_normalized.reshape(-1, 1), features_normalized, target_normalized.reshape(-1, 1)), axis=1)
进行预测
predicted = model.predict(unknown, verbose=1)
将预测结果保存到新的 CSV 文件中
将预测结果转换为 DataFrame
result = pd.DataFrame(predicted, columns=[f'prediction_{i}' for i in range(predicted.shape[1])])
将预测结果反归一化
result.iloc[:, 0] = result.iloc[:, 0] * 70
将 DataFrame 以行为单位保存到 CSV 文件中
result.to_csv('m预测结果.csv', index=False, header=False)
原文地址: https://www.cveoy.top/t/topic/qzuO 著作权归作者所有。请勿转载和采集!