神经网络入门:分类与回归实例解析
1. 电影评论分类:二分类示例
在训练神经网络时,通常会发现训练损失随训练轮次(epoch)的增加而降低,训练准确率则随之提高,这符合梯度下降优化的预期。然而,验证损失和准确率可能并非如此,例如在某个特定轮次达到峰值后可能会下降,这就是过拟合现象。以电影评论分类为例,在第二个轮次之后,模型可能就开始对训练数据过度优化,学习到的特征只适用于训练数据,而无法泛化到未见过的数据。
为了防止过拟合,可以在适当的轮次停止训练,如在三轮之后。以下是重新训练一个新网络四个轮次并在测试数据上进行评估的代码:
import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers
from tensorflow.keras import models
# 构建模型
model = models.Sequential()
model.add(layers.Dense(16, activation='relu', input_shape=(10000,)))
model.add(layers.Dense(16, activation='relu'))
model.add(layers.Dense(1, activation='sigmoid'))
# 编译模型
model.compile(optimizer='rmsprop',
loss='binary_crossentropy',
metrics=['accuracy'])
# 训练模型
超级会员免费看
订阅专栏 解锁全文
3538

被折叠的 条评论
为什么被折叠?



