You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

U-net裂缝分割模型训练异常求助:Loss与Accuracy反向变化

U-Net裂缝分割模型训练异常排查求助

我是AI与Python新手,尝试用U-Net构建裂缝识别与分割模型,但训练结果异常。以下是第5轮训练输出:

Epoch 5/25
20/20 [==============================] - 42s 2s/step - loss: -12.7775 - accuracy: 0.0591 - dice_coef: 1.3771 - iou: 2.9680 - val_loss: 0.9940 - val_accuracy: 0.4198 - val_dice_coef: 0.9033 - val_iou: 0.9226

训练过程中出现矛盾现象:随着轮次增加,loss与accuracy持续下降,但dice_coef与IOU却持续上升。

实现细节

训练数据集

数据集包含两类图像:

  • 主图像:带裂缝的场景图像
  • 掩码图像:对应主图像的二值灰度掩码,裂缝区域为前景

图像读取与预处理代码

Xtrain存储缩放至128x128的主图像;Ytrain存储转灰度、缩放至128x128并新增单通道的掩码图像:

def readimg(name_image, list_images):
    path_image = os.path.join('crack_dataset/img', name_image)
    if os.path.exists(path_image):
        image = cv2.imread(path_image)
        image = cv2.resize(image,(128,128))
        Xtrain.append(image)

def leimg_mask(name_image, list_images):
    path_image = os.path.join('crack_dataset/labelcol', nome_imagem)
    if os.path.exists(path_image):
        image = cv2.imread(path_image, cv2.IMREAD_GRAYSCALE)
        image = cv2.resize(image,(128,128))
        mask_array = image[:, :, np.newaxis]
        Ytrain.append(mask_array)

后续处理

将列表转换为NumPy数组,并对主图像做归一化:

Xtrain = np.array(Xtrain)
Ytrain = np.array(Ytrain)
Xtrain = Xtrain / 255.0

数据生成器

训练集启用数据增强,测试集无增强:

datagen = ImageDataGenerator(
    rotation_range=15,
    width_shift_range=0.1,
    height_shift_range=0.1,
    shear_range=0.2,
    zoom_range=0.2,
    brightness_range=[0.7, 1.3],
    fill_mode="nearest"
)
datagen_test = ImageDataGenerator()
X_train, X_test, y_train, y_test = train_test_split(Xtrain, Ytrain, test_size=0.2, random_state=42)

模型结构

采用标准U-Net架构,分为编码(下采样)和解码(上采样)两部分,包含卷积-池化模块与上采样-特征拼接模块。

训练代码

train_generator = datagen.flow(
    X_train, y_train, batch_size=16, shuffle=True
)

val_generator = datagen_test.flow(
    X_test, y_test, batch_size=16, shuffle=False
)
many_steps = len(train_generator)
history = model.fit(train_generator, steps_per_epoch=many_steps, epochs=25, validation_data=val_generator)

恳请帮忙排查问题!

内容的提问来源于stack exchange,提问作者Eric Yudi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 02:35:00