CNN模型

CNN

卷积网络

输入层:是一张像素图片 h高 * w宽 * c  c是通道数,rgb是3通道

把图像分割,每一块

卷积层Conv:提取特征,发现边缘、方向等信息

卷积核:每块像素 和卷积核 相乘 获取边缘信息  一般选择1x1 3x3 5x5

卷积核当中的参数0 1,是自己设置的,根据输出的结果,有差异,然后更新参数

可以通过padding用0填充 保证在卷积过程中特征图大小不变

stride步长 增大 特征图会变小

多通道:

卷积核需要设置3x3x3

filter卷积核

输出特征图的大小

卷积核的创建代码

Pytorch

import torch
import torch.nn as nn
import torch.nn.functional as F# 定义一个卷积层
class ConvolutionalLayer(nn.Module):def __init__(self, in_channels, out_channels, kernel_size):super(ConvolutionalLayer, self).__init__()# 创建卷积核self.conv = nn.Conv2d(in_channels, out_channels, kernel_size)def forward(self, x):# 应用卷积操作x = self.conv(x)return x# 创建一个实例
conv_layer = ConvolutionalLayer(in_channels=3, out_channels=32, kernel_size=3)# 打印卷积层的参数
print(conv_layer)

tensorflow

strides=(1,1)表示x和y方向的步长为1

same会补零,valid会直接换下一行  padding会在原图像周围填充

卷积核的数量(输出通道数),(3, 3)是卷积核的大小,activation='relu'指定了激活函数,input_shape=(None, None, 3)指定了输入数据的形状,其中None, None代表高度和宽度可以是任意值,3代表输入数据的通道数

import tensorflow as tf# 创建一个3x3的卷积层
model = tf.keras.Sequential([tf.keras.layers.Conv2D(32, (3, 3), activation='relu', input_shape=(None, None, 3))
])# 打印模型摘要
model.summary()

池化层:压缩特征,大幅降低参数量级(降维、防止过拟合),对特征图进行下采样

池化层代码

最大池化: 4个2x2的窗口  选每个窗口中的最大值

pool_size池化窗口的大小

平均池化:

全连接层:输出想要的结果,经过卷积层的特征提取和池化层的降维后,将特征图转化reshape成一维向量,送到全连接层进行分类或回归操作

全连接层代码

使用tf.keras.dense实现

激活函数RELU:通过函数把特征保留并映射出来(保留特征,去除一些数据中是的冗余),这是神经网络能解决非线性问题关键。激活函数还可以构建稀疏矩阵,也就是稀疏性,这个特性可以去除数据中的冗余,最大可能保留数据的特征,也就是大多数为0的稀疏矩阵来表示(这个特性主要是对于Relu)

CNN基础——激活函数_cnn激活函数-CSDN博客

BP算法:信号的向前传播和误差的反向传播

参数量:

卷积层:

参数量 = (卷积核宽 卷积核高 输入通道数 + 1) 输出通道数

全连接层:

参数量 = (输入神经元数目 + 1) 输出神经元数目

LeNet-5

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/669772.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

每日OJ题_DFS解决FloodFill⑦_力扣LCR 130. 衣橱整理(原剑指Offer13机器人的运动范围)

目录 力扣LCR 130. 衣橱整理(原剑指Offer13机器人的运动范围) 解析代码 力扣LCR 130. 衣橱整理(原剑指Offer13机器人的运动范围) LCR 130. 衣橱整理 难度 中等 家居整理师将待整理衣橱划分为 m x n 的二维矩阵 grid&#xff…

springboot3项目练习详细步骤(第一部分:用户业务模块)

目录 环境准备 用户模块 注册 注册接口文档 ​编辑 实现结构 Spring Validation 登录 登录的接口文档 实现登录逻辑 JWT令牌 完善登录认证 拦截器 获取用户详细信息 接口文档 Usercontroller类中编写方法接口 忽略属性返回 优化代码ThreadLocal 更新用户基本信…

风扇开启执行逻辑

执行流程 public static void businessExecutionWork(){//以下为业务逻辑部分System.out.println("1、根据电池包控制风扇服务执行 开始!");//1、获取电池包电压、电流、环境温度//获取电池包电压、电流、环境温度ObtainBatteryDataService obtainBatteryDataServic…

Anaconda安装教程

1Anaconda 简介 Anaconda是一个数据科学平台,提供一个发行版的 Python 以及大量常用的数据科学包、库和工具。通过包含诸如 NumPy、Pandas、SciPy、Matplotlib等核心库,以及 Jupyter Notebook等开发工具,使数据分析、机器学习和数据可视化变…

新篇章!沃飞长空成为同中信海直签约的唯一中国eVTOL企业

随着城市地面交通的愈发拥堵,人们逐渐把目光投向天空。打个“空中的士”上班的城市空中出行场景,受到越来越多方的期待,相应的,eVTOL(飞行汽车)行业的相关投资与合作也愈发火热。 4月30日,国内领先的eVTOL&#xff08…

SpringBoot集成阿里云短信验证码服务

一:前言 最近在项目开发过程中,需要去写一个发送手机短信验证码的功能。在网上查了一下,有很多服务器可供选择,本文的话是基于阿里云服务的短信验证码功能实现。 关于注册和开通服务这些需要操作的,请各位小伙伴参考官…

Linux专栏10:Linux权限详解(上)

博客主页:Duck Bro 博客主页系列专栏:Linux专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞👍收藏⭐评论✍ Linux权限详解(上) 编号:10 文章…

百度语音识别开发笔记

目录 简述 开发环境 1、按照官方文档步骤开通短语音识别-普通话 2、创建应用 3、下载SDK 4、SDK集成 5、相关接口简单说明 5.1权限和key 5.2初始化 5.3注册回调消息 5.4开始转换 5.5停止转换 6、问题 简述 最近想做一些语音识别的应用,对比了几个大厂…

“给力”用日语怎么说?柯桥成人日语培训

在日语中,给力这个词可以翻译成几个不同的表达方式,具体取决于语境。以下我将给出几个常见的日语翻译以及例句帮助理解: スゴイ 这个词意思为“太棒了”,是表达给力的最常见说法。 例如: これはスゴイ映画だね。这电影太给力了! 最高 意思为“最棒的”,也可以用来表达给力。 例…

华中科技大学雷达站部署

一:项目地址 GitHub - HUSTLYRM/HUST_Radar_2023: 华中科技大学狼牙战队 RoboMaster 2023赛季 雷达站 二:安装依赖 2.1创建虚拟环境 首先是程序是基于python3.8完成,所以创建虚拟环境的时候,选择3.8的虚拟环境 conda create -…

五款优秀的局域网监控软件推荐:实时监控电脑屏幕的神器

在现代社会,计算机和网络已经成为工作中不可或缺的部分。随着局域网的普及,如何有效地监控和管理局域网内的电脑成为了许多企业和管理者关心的问题。本文将为您推荐五款优秀的局域网监控软件,帮助您实时监控电脑屏幕,提高工作效率…

pubg绝地求生吃鸡加速器推荐 pubg吃鸡加速器免费低延迟

《绝地求生》(PUBG) 是由韩国Krafton工作室开发的一款战术竞技型射击类沙盒游戏。2022年1月12日,该游戏于主机和PC上可免费下载游玩。绝地求生已经上线了好久的时间,仍然保持的很好的热度,无时无刻都在涌入新手玩家。游戏有多张地图可供玩家选…