Bootstrap

【经典代码】绘制不同模型的准确率和损失函数对比图

前提是模型训练过程的数据已经保存好

在这里插入图片描述

学习测试代码

# -*- coding: utf-8 -*-
# @Time : 2022/6/29 15:24
# @Author : xlf
# @File : test.py

import pandas as pd
from matplotlib import pyplot as plt
from sklearn import manifold, datasets
plt.rc('font', family='Times New Roman', size=16)

# 读取数据
cnn_lstm = pd.read_excel('analyse_data/csv/cnn_lstm.xlsx')
cnn_gru = pd.read_excel('analyse_data/csv/cnn_gru.xlsx')
cnn_bilstm = pd.read_excel('analyse_data/csv/cnn_bilstm.xlsx')
cnn_bigru = pd.read_excel('analyse_data/csv/cnn_bigru.xlsx')

# 提取数据
epoch_list = list(range(501))

# 提取准确度数据
cnn_lstm_accuracy = cnn_lstm.cnn_lstm_accuracy.tolist()
cnn_gru_accuracy = cnn_gru.cnn_gru_accuracy.tolist()
cnn_bilstm_accuracy = cnn_bilstm.cnn_bilstm_accuracy.tolist()
cnn_bigru_accuracy = cnn_bigru.cnn_bigru_accuracy.tolist()

# 提取损失值数据
cnn_lstm_loss = cnn_lstm.cnn_lstm_loss.tolist()
cnn_gru_loss = cnn_gru.cnn_gru_loss.tolist()
cnn_bilstm_loss = cnn_bilstm.cnn_bilstm_loss.tolist()
cnn_bigru_loss = cnn_bigru.cnn_bigru_loss.tolist()

# 绘制准确度对比图
plt.xlabel("Epoch")
plt.ylabel("Accuracy")
plt.plot(epoch_list, cnn_lstm_accuracy, linewidth='1', color='green', label='CNN_LSTM')
plt.plot(epoch_list, cnn_gru_accuracy, linewidth='1', color='blue', label='CNN_GRU')
plt.plot(epoch_list, cnn_bilstm_accuracy, linewidth='1', color='orange', label='CNN_BiLSTM')
plt.plot(epoch_list, cnn_bigru_accuracy, linewidth='1', color='red', label='CNN_BiGRU')
plt.rcParams.update({'font.size': 10})
plt.legend()
plt.show()

# 绘制损失值对比曲线
plt.figure(figsize=(10, 5))
plt.xlabel("Epoch")
plt.ylabel("Loss")
plt.plot(epoch_list, cnn_lstm_loss, linewidth='1', color='green', label='CNN_LSTM')
plt.plot(epoch_list, cnn_gru_loss, linewidth='1', color='blue', label='CNN_GRU')
plt.plot(epoch_list, cnn_bilstm_loss, linewidth='1', color='orange', label='CNN_BiLSTM')
plt.plot(epoch_list, cnn_bigru_loss, linewidth='1', color='red', label='CNN_BiGRU')
plt.legend()
plt.show()

结果展示

在这里插入图片描述

;