t5 打卡

本文记录了在365天深度学习训练营中,作者K同学分享了运动品牌识别项目的实践,包括采用的新目录结构、TensorFlow模型搭建、动态学习率设置及训练过程。强调了对基础知识的巩固和模型结构的熟悉性。
摘要由CSDN通过智能技术生成

前言

经过三周的学习已经对tensorflwo框架有了大致掌握,这周学习一种新的打标签目录结构用于运动品牌识别
在这里插入图片描述

回顾

前几周打标签的目录结构为
data--------
|------class1
|------calss2
|……

这周目录标签结构为
data--------
|------test
| ----|-------calss1
| ----|-------class2
|------train
| ----|-------class1
| ----|-------class2
个人感觉后者目录结构更为清楚,推荐使用这种方式。

模型搭建与训练

这部分与前几周完全类似,不再赘叙
模型如下

model = models.Sequential([
    layers.experimental.preprocessing.Rescaling(1./255, input_shape=(img_height, img_width, 3)),

    layers.Conv2D(16, (3, 3), activation='relu', input_shape=(img_height, img_width, 3)), # 卷积层1,卷积核3*3
    layers.AveragePooling2D((2, 2)),               # 池化层1,2*2采样
    layers.Conv2D(32, (3, 3), activation='relu'),  # 卷积层2,卷积核3*3
    layers.AveragePooling2D((2, 2)),               # 池化层2,2*2采样
    layers.Dropout(0.3),
    layers.Conv2D(64, (3, 3), activation='relu'),  # 卷积层3,卷积核3*3
    layers.Dropout(0.3),

    layers.Flatten(),                       # Flatten层,连接卷积层与全连接层
    layers.Dense(128, activation='relu'),   # 全连接层,特征进一步提取
    layers.Dense(len(class_names))               # 输出层,输出预期结果
])

model.summary()  # 打印网络结构

动态学习率设置

# 设置初始学习率
initial_learning_rate = 0.1

lr_schedule = tf.keras.optimizers.schedules.ExponentialDecay(
        initial_learning_rate,
        decay_steps=10,      # 敲黑板!!!这里是指 steps,不是指epochs
        decay_rate=0.92,     # lr经过一次衰减就会变成 decay_rate*lr
        staircase=True)

# 将指数衰减学习率送入优化器
optimizer = tf.keras.optimizers.Adam(learning_rate=lr_schedule)

model.compile(optimizer=optimizer,
              loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
              metrics=['accuracy'])

开始训练模型

istory = model.fit(train_ds,
           validation_data=val_ds,
           epochs=epochs,
           callbacks=[checkpointer, earlystopper])

结果如下:
在这里插入图片描述

总结

这周主要对前面的知识加以巩固,这个学习框架十分固定,要对其十分熟悉,为后面学习深度网络打基础。

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值