更新时间: 试题数量: 购买人数: 提供作者:

有效期: 个月

章节介绍: 共有个章节

收藏
搜索
题库预览
实验一 #导入必要的库 import tensorflow as tf from tensorflow.keras import layers, models import numpy as np import matplotlib.pyplot as plt #1. 加载并预处理MNIST数据集, print("正在加载MNIST数据集...") (x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.load_data() x_train = x_train.astype('float32') / 255.0 x_test = x_test.astype('float32') / 255.0 #y_train = tf.keras.utils.to_categorical(y_train, 10) #y_test = tf.keras.utils.to_categorical(y_test, 10) print(f"训练集形状:{x_train.shape}") # (60000, 28, 28) print(f"测试集形状:{x_test.shape}") # (10000, 28, 28) #2. 构建简单的全连接神经网络模型 model = models.Sequential([ layers.Flatten(input_shape=(28, 28)), #将28x28图像展平为784,把图像拉直,方便全连接网络处理 layers.Dense(128, activation='relu'), #全连接层,128个神经元 layers.Dropout(0.2), #防止过拟合 layers.Dense(10, activation='softmax') #输出层,10个类别 ]) #3. 编译模型 model.compile( optimizer='adam', loss='sparse_categorical_crossentropy', #标签是整数,不用one-hot metrics=['accuracy'] ) #4. 训练模型 history = model.fit( x_train, y_train, epochs = 5, batch_size=32, validation_data=(x_test, y_test), verbose=1 ) #5. 评估模型 print("\n评估模型...") test_loss, test_acc = model.evaluate(x_test, y_test, verbose=0) print(f"测试集准确率:{test_acc}") 实验二 import matplotlib.pyplot as plt import numpy as np '''1.绘制折线图''' #数据 x = [1, 2, 3, 4, 5] y = [2, 3, 5, 7, 11] plt.figure(figsize=(6, 4)) plt.plot(x, y, marker='o', color='b', label='价格') plt.title('练习1画折线图') plt.xlabel('X-axis') plt.ylabel('Y-axis') plt.legend() plt.grid(True) #保存为高分辨率图片(比如用于报告或论文)300-600dpi用于打印一般足够 plt.savefig('1折线图.png') plt.show() '''2.绘制柱状图''' #数据 categories = ['A', 'B', 'C', 'D'] values = [23, 45, 56, 78] #绘制柱状图 plt.figure(figsize=(6, 4)) plt.bar(categories, values, color=['red', 'green', 'blue', 'orange']) plt.title('练习2画柱状图') plt.xlabel('类别') plt.ylabel('值') plt.savefig('柱状图.png', dpi = 300) plt.show() 实验三 import matplotlib.pyplot as plt import numpy as np labels = ['A', 'B', 'C', 'D'] sizes = [15, 30, 45, 10] #设置每个扇区的颜色 colors = ['#ff9999', '#66b3ff', '#99ff99', '#ffcc99'] explode = (0, 0, 0.2, 0) #绘制饼图 plt.pie( sizes, explode=explode, labels=labels, colors=colors, autopct='%1.1f%%', shadow=True, startangle=90 ) plt.axis('equal') #添加标题 plt.title('自定义饼图') plt.savefig('4饼图',dpi=300,bbox_inches = 'tight') plt.show() '''绘制散点图''' #随机生成数据 np.random.seed(42) #或np.random.uniform(-30,30) 随机生成[-30,30)范围浮点数 x = np.random.rand(50) y = np.random.rand(50) colors = np.random.rand(50) sizes = 1000 * np.random.rand(50) plt.figure(figsize=(6, 4)) plt.scatter(x, y, c=colors, s=sizes, alpha=0.6) #绘制散点图 plt.title('练习5散点图') plt.xlabel('X-axis') plt.ylabel('Y-axis') plt.colorbar() #显示颜色条 plt.savefig('5散点图(二维).png',dpi=300,bbox_inches='tight') plt.show()【缺少答案,请补充】
1 2