《机器学习实战》第十章

人工神经网络是深度学习的核心。适合处理大型和高度复杂的机器学习任务。本章介绍了使用Keras实现神经网络。

1.导入TensorFlow,下载数据集

import tensorflow as tf
from tensorflow import keras
fashion_mnist = keras.datasets.fashion_mnist
(X_train_full, y_train_full), (X_test, y_test) = fashion_mnist.load_data()

数据集示例:

2.使用顺序API创建模型

model = keras.models.Sequential()
model.add(keras.layers.Flatten(input_shape=[28, 28]))
model.add(keras.layers.Dense(300, activation="relu"))
model.add(keras.layers.Dense(100, activation="relu"))
model.add(keras.layers.Dense(10, activation="softmax"))

 summary()方法显示模型的所有层

 3.编译模型

model.compile(loss="sparse_categorical_crossentropy",
 optimizer="sgd",
 metrics=["accuracy"]) 

4.训练和评估模型

history = model.fit(X_train, y_train, epochs=30,
                    validation_data=(X_valid, y_valid))

 最后验证准确率达到了89.04%

5.使用模型进行预测

X_new = X_test[:3]
y_proba = model.predict(X_new)
y_proba.round(2)

 

对于第一个图像,模型估计是第9类(脚踝靴)的概率为95%

plt.figure(figsize=(7.2, 2.4))
for index, image in enumerate(X_new):
    plt.subplot(1, 3, index + 1)
    plt.imshow(image, cmap="binary", interpolation="nearest")
    plt.axis('off')
    plt.title(class_names[y_test[index]], fontsize=12)
plt.subplots_adjust(wspace=0.2, hspace=0.5)
save_fig('fashion_mnist_images_plot', tight_layout=False)
plt.show()

 正确分类前三个图像

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值