相同条件下全连接和卷积神经网络的效果差异

#导入数据,查看数据属性
from keras.datasets import mnist
(train_images,train_labels),(test_images,test_labels)=mnist.load_data()

#构建训练模型
from keras import models#导入各种包
from keras import layers
network=models.Sequential()#模型选择sequential
network.add(layers.Dense(512,activation='relu',input_shape=(28*28,)))#512个隐藏节点,激活函数采用relu函数,输入784像素
network.add(layers.Dense(512,activation='relu'))#512个隐藏节点,激活函数采用relu函数,输入784像素
network.add(layers.Dense(512,activation='relu'))#512个隐藏节点,激活函数采用relu函数,输入784像素
network.add(layers.Dense(512,activation='relu'))#512个隐藏节点,激活函数采用relu函数,输入784像素
network.add(layers.Dense(10,activation='softmax'))#十个类别,分类函数采用softmax

#编译步骤
network.compile(optimizer='rmsprop',
               loss='categorical_crossentropy',
               metrics=['accuracy'])

#准备图像数据
train_images=train_images.reshape((6
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
卷积神经网络(CNN)是一种深度学习模型,主要用于图像识别、语音识别和自然语言处理等领域。它的核心是卷积层和池化层。 卷积层是CNN的核心组成部分,它通过对输入数据进行卷积操作来提取特征。卷积操作是将一个小的窗口(卷积核)滑动到输入数据上,对窗口中的数据进行加权求和,并将结果存储到输出特征图中。卷积核的大小和步长可以自行设定。卷积层通常包含多个卷积核,每个卷积核可以提取不同的特征,如边缘、角等。 池化层是用来降低特征图的大小,减少计算量和过拟合的发生。它的主要作用是在特定区域内取一个代表性的值,如最大值或平均值,并将其存储在输出特征图中。通常情况下,池化层的窗口大小和步长与卷积层相同。 除了卷积层和池化层,CNN还包括全连接层、激活函数和损失函数。全连接层将特征图展开成一维向量,并与权重矩阵相乘,以产生分类结果。激活函数用于将神经元的输出转换为非线性函数,以提高模型的表达能力。损失函数用于衡量模型的预测结果与实际结果之间的差异,以便进行优化。 CNN的工作原理是先通过卷积层提取图像的特征,然后通过池化层降低特征图的大小,最后通过全连接层将特征图映射到不同的类别。在训练过程中,CNN通过反向传播算法来调整权重和偏置,使损失函数最小化,从而提高模型的准确性。在测试过程中,CNN将输入数据传递给模型,并根据输出结果进行分类或预测。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值