我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Python中如何深度学习CNN

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Python中如何深度学习CNN

本篇文章给大家分享的是有关Python中如何深度学习CNN,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

1.CNN概述

CNN的整体思想,就是对图片进行下采样,让一个函数只学一个图的一部分,这样便得到少但是更有效的特征,最后通过全连接神经网络对结果进行输出。

整体架构如下:

输入图片

→卷积:得到特征图(激活图)

→ReLU:去除负值

→池化:缩小数据量同时保留最有效特征

(以上步骤可多次进行)

→输入全连接神经网络

Python中如何深度学习CNN

2.卷积层

CNN-Convolution

卷积核(或者被称为kernel, filter, neuron)是要被学出来的,卷积核中的数就是权重(参数)

Python中如何深度学习CNN

做内积,把卷积核的每一个参数和图像中对应位置的数字相乘(对应位置的元素相乘,不同于矩阵乘法),再求和。相当于一个神经元,对输入的数据,进行权重的分配,而权重就是卷积核的数据。再求和,就是第一个神经元所得到的结果。把这个权重对图片所有数据进行处理,就得到第一个激活图或特征图(feature map)。我们可以增加卷积核的数量,就会得到多层激活图,可以更好的保留数据的空间尺寸。

Python中如何深度学习CNN

当卷积核与图片进行相乘相加的时候,如果卷积核此时正在计算的区域数字分布与卷积核类似,所得的求和结果会很大(称为卷积核被激活了),而其他地方会很小,说明图像在这个区域,有和卷积核类似的图案。

Python中如何深度学习CNN

一个卷积核只能识别一个特征。因此我们需要添加多个卷积核,卷积核越多,得到的激活图就越深,输入图像的信息就越多。

Python中如何深度学习CNN

对于彩色的图来说,不需要把颜色分开,卷积核的深度和图像深度是一样的,比如彩色是红绿蓝三层,那么卷积核也是三层。

卷积层相当于降采样的神经网络,如下图,本来应该连接36个神经元,但实际连接了9个。

Python中如何深度学习CNN

3.池化层

CNN-MaxPooling

在Max Pooling,也就是池化层之前,会需要进行一个ReLU函数转化,即把小于0的值全转为0,其他的不变。

池化层主要就是为了减少数据量,选一个尺寸之后,直接用尺寸中的最大值代替那个尺寸。这样可以减少数据从而减少运算量。

Python中如何深度学习CNN

如下图所示,输入数据原本是6*6,通过卷积层之后变成4*4,通过池化层之后变成2*2。对于实际的图片来说,维度可能很高,因此卷积层,池化层可以多次进行。

Python中如何深度学习CNN

4.全连层

将最后得到的高层次特征输入全连接的神经网络,即全连层。全连层就是一个全连接的神经网络,它的参数数量就是最后的池化层输出的数据数量。

同样的,前向传播后,计算损失函数后进行后向传播,得到各参数的梯度,对各参数进行更新,直到找到最佳参数。

因此,在全连接之前的所有层,不管多少层的卷积、池化,都是为了得到更好的特征的同时降低数据量。使得模型可以更好地训练。

以上就是Python中如何深度学习CNN,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Python中如何深度学习CNN

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python中如何深度学习CNN

本篇文章给大家分享的是有关Python中如何深度学习CNN,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1.CNN概述CNN的整体思想,就是对图片进行下采样,让一个函数只学一个
2023-06-25

Python深度学习 深度学习入门基于

《Python深度学习》由Keras之父、现任Google人工智能研究员的弗朗索瓦•肖莱(François Chollet)执笔,详尽介绍了用Python和Keras进行深度学习的探索实践,涉及计算机视觉、自然语言处理、生成式模型等应用。书
2023-01-31

Python PyTorch:深度学习入门指南

这篇指南将提供必要的知识和资源,帮助您使用PyTorch开始深度学习之旅。涵盖了PyTorch的基本概念、安装、使用说明以及一些有用的资源,以便您充分利用PyTorch的强大功能。
Python PyTorch:深度学习入门指南
2024-02-02

python深度学习tensorflow怎么使用

本篇内容主要讲解“python深度学习tensorflow怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python深度学习tensorflow怎么使用”吧!1、编辑器编写tensorf
2023-07-02

python常用机器学习及深度学习库有哪些

本篇内容介绍了“python常用机器学习及深度学习库有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!前言目前,随着人工智能的大热,吸引了
2023-06-30

python深度学习库系列教程——pyt

全栈工程师开发手册 (作者:栾鹏)python教程全解OpenCV安装pip install --upgrade setuptoolspip install numpy Matplotlibpip install opencv-python
2023-01-31

Python深度学习之Pytorch初步使用

目录一、Tensor二、Pytorch如何创建张量2.1 创建张量2.2 tensor与ndarray的关系2.3 常用api2.4 常用方法三、数据类型3.1 获取数据类型四、tensor的其他操作4.1 相加4.2 tensor与数字的
2022-06-02

Python-OpenCV深度学习的示例分析

这篇文章将为大家详细讲解有关Python-OpenCV深度学习的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1. 计算机视觉中的深度学习简介深度学习推动了计算机视觉领域的深刻变革,我们首先解释深
2023-06-22

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录