第T3周:天气识别

>- **🍨 本文为[🔗365天深度学习训练营](https://mp.weixin.qq.com/s/AtyZUu_j2k_ScNH6e732ow) 内部限免文章(版权归 *K同学啊* 所有)**

>- 参考文章地址: [🔗深度学习100例-卷积神经网络(CNN)天气识别 | 第5天](https://mtyjkh.blog.csdn.net/article/details/117186183)

导入数据

## 导入相关的库
import os,PIL,pathlib
import matplotlib.pyplot as plt
import numpy as np
from tensorflow import keras
from tensorflow.keras import layers,models

data_dir = r'C:\Users\tensorflow\T3\data\weather_photos' # 这里需要修改为你数据存放的地址
data_dir = pathlib.Path(data_dir)
roses = list(data_dir.glob('*/*.jpg')) 
PIL.Image.open(str(roses[0]))

pathlib 是 Python 3.4 版本中引入的标准库,提供了一种面向对象的方式来操作文件系统路径。它简化了路径的构造和操作等任务,并且跨平台兼容性良好。

可以使用 pathlib 完成以下任务:

  • 构造一个文件或目录的路径
  • 检查路径是否存在,是文件还是目录
  • 获取路径的属性,如大小、创建时间、访问时间等
  • 遍历目录及其中的文件和子目录
  • 创建、删除、重命名文件或目录

pathlib 主要有以下几个类:

  • Path:主要用于表示文件系统路径,可以通过字符串初始化。
  • PurePath:与 Path 类似,但是只表示路径,不涉及具体文件系统操作。
  • PosixPath 和 WindowsPath:继承自 Path,分别用于 POSIX 和 Windows 文件系统。

神经网络

num_classes = 4 
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.Conv2D(64, (3, 3), activation='relu'), # 卷积层3,卷积核3*3 
layers.Dropout(0.3), # 让神经元以一定的概率停止工作,防止过拟合,提高模型的泛化能力。 layers.Flatten(), # Flatten层,连接卷积层与全连接层 
layers.Dense(128, activation='relu'), # 全连接层,特征进一步提取 
layers.Dense(num_classes) # 输出层,输出预期结果 ]) 
model.summary() # 打印网络结构

训练效果

 

深度学习数据集是越庞大越好吗?

在深度学习中,数据集的大小通常是越大越好,因为更多的数据可以提供更多的信息和样本,有助于模型更准确地捕捉数据之间的关系,并提高模型的泛化能力。具体来说,数据集越大,可以带来以下好处:

  1. 更好的泛化能力:更大的数据集可以提供更多的训练样本,使得模型可以更好地学习数据中的模式和关系,从而提高其泛化能力。

  2. 更低的过拟合风险:更大的数据集可以降低模型过拟合的风险,特别是当模型参数数量很大时。通过提供更多的样本,可以减少模型对噪声和不相关特征的依赖,使其更专注于真正与目标相关的特征。

  3. 更准确的评估:更大的数据集可以提供更准确的模型评估,因为更多的样本可以更好地反映模型的性能和偏差。

但是,数据集大小并不是唯一的影响因素。除了数据集大小之外,数据质量、数据平衡、数据的多样性等因素也会影响模型的性能。另外,更大的数据集也需要更多的计算资源和时间来处理。因此,需要在数据集大小、数据质量和计算资源之间进行权衡。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值