CNN神经网络的总结:

英文地址

CNN(Convolutional neural network) 简称卷积神经网络,主要是用于图像识别、图像分类、对象检测、人脸识别等。

  • 1.神经网络的输入一般是图片,我们处理图片数据的时候主要是将图片使用Pixel点来表示。一般是使用(h=Height, w=Weight,d=Dimension)来进行表示。例如:一个彩色图片可以表示为6*6*3(3代表的是RGB三种颜色),一个灰色图片就可以使用4*4*1来表示(1代表灰色或者黑色)。
  • 2.CNN模型在训练和测试的过程中,每一个图片都会经过卷积层(Kernals)、Pooling、Fully Connected layers(FC),最后要经过Softmax层对对象进行分类,判断出所属类别的概率的可能性。
  • 3.池化层的计算如图所示
  • Convolution is the first layer to extract features from an input image. Convolution preserves the relationship between pixels by learning image features using small squares of input data. It is a mathematical operation that takes two inputs such as image matrix and a filter or kernal
  • Convolution of an image with different filters can perform operations such as edge detection, blur and sharpen by applying filters. The below example shows various convolution image after applying different types of filters (Kernels).
  • 4.Strides(步长)

  • Stride is the number of pixels shifts over the input matrix. When the stride is 1 then we move the filters to 1 pixel at a time. When the stride is 2 then we move the filters to 2 pixels at a time and so on. The below figure shows convolution would work with a stride of 2.
  • 5.Padding(填充)
  • Sometimes filter does not fit perfectly fit the input image. We have two options:
    • Pad the picture with zeros (zero-padding) so that it fits (tensorflow中使用 same进行填充,外围进行填充)
    • Drop the part of the image where the filter did not fit. This is called valid padding which keeps only valid part of the image.(tensorflow中使用valide进行提取出有用的特征)
  • 5.Non Linearity(ReLU)去线性化
  • ReLU stands for Rectified Linear Unit for a non-linear operation. The output is ƒ(x) = max(0,x).
  • Why ReLU is important : ReLU’s purpose is to introduce non-linearity in our ConvNet. Since, the real world data would want our ConvNet to learn would be non-negative linear values.
  • There are other non linear functions such as tanh or sigmoid can also be used instead of ReLU. Most of the data scientists uses ReLU since performance wise ReLU is better than other two.
  • 6.Pooling Layer(池化层)
  • Pooling layers section would reduce the number of parameters when the images are too large. Spatial pooling also called subsampling or downsampling which reduces the dimensionality of each map but retains the important information. Spatial pooling can be of different types:
    • Max Pooling
    • Average Pooling
    • Sum Pooling
  • Max pooling take the largest element from the rectified feature map. Taking the largest element could also take the average pooling. Sum of all elements in the feature map call as sum pooling.
  • 7.Fully Connected Layer(全连接层)
  • The layer we call as FC layer, we flattened our matrix into vector and feed it into a fully connected layer like neural network.
  • In the above diagram, feature map matrix will be converted as vector (x1, x2, x3, …). With the fully connected layers, we combined these features together to create a model. Finally, we have an activation function such as softmax or sigmoid to classify the outputs as cat, dog, car, truck etc.,
  • 8.Summary
  • Provide input image into convolution layer
  • Choose parameters, apply filters with strides, padding if requires. Perform convolution on the image and apply ReLU activation to the matrix.
  • Perform pooling to reduce dimensionality size
  • Add as many convolutional layers until satisfied
  • Flatten the output and feed into a fully connected layer (FC Layer)
  • Output the class using an activation function (Logistic Regression with cost functions) and classifies images.

CNN神经网络的个人总结相关推荐

  1. cnn 一维时序数据_蚂蚁集团智能监控的时序异常检测:基于 CNN 神经网络的异常检测...

    1 背景在蚂蚁集团智能监控领域,时序异常检测是极重要一环,异常检测落地中,业务方参考业界标准输出 Metrics 指标数据,监控不同业务.应用.接口.集群的各项指标,包含 Metrics 指标(总量. ...

  2. CNN神经网络猫狗分类经典案例

    AI:CNN神经网络猫狗分类经典案例 猫狗的训练数据可以在kaggle下载: https://www.kaggle.com/tongpython/cat-and-dog/data 本例使用ImageD ...

  3. CNN神经网络猫狗分类经典案例,深度学习过程中间层激活特征图可视化

    AI:CNN神经网络猫狗分类经典案例,深度学习过程中间层激活特征图可视化 基于前文 https://zhangphil.blog.csdn.net/article/details/103581736 ...

  4. cnn是深度神经网络吗,cnn神经网络算法

    1.深度学习和有效学习的区别 深度学习和有效学习的区别分别是: 1.深度学习是:Deep Learning,是一种机器学习的技术,由于深度学习在现代机器学习中的比重和价值非常巨大,因此常常将深度学习单 ...

  5. 手写汉字数字识别详细过程(构建数据集+CNN神经网络+Tensorflow)

    手写汉字数字识别(构建数据集+CNN神经网络) 期末,P老师布置了一个大作业,自己构建数据集实现手写汉字数字的识别.太捞了,记录一下过程.大概花了一个下午加半个晚上,主要是做数据集花时间. 一.构建数 ...

  6. 基于TensorFlow实现的CNN神经网络 花卉识别系统Demo

    基于TensorFlow实现的CNN神经网络 花卉识别系统Demo Demo展示 登录与注册 主页面 模型训练 识别 神经网络 训练 Demo下载 Demo展示 登录与注册 主页面 模型训练 识别 神 ...

  7. 使用PyTorch搭建CNN神经网络

    使用pytorch搭建CNN神经网络 卷积运算的基本原理 单层卷积运算 valid convolution same convolution CNN的基本结构 数据输入层 卷积层 池化层 全连接层 数 ...

  8. cnn神经网络可以用于数据拟合吗_代码详解:最全面的卷积神经网络介绍,都在这里了...

    全文共8600字,预计学习时长40分钟或更长 图片来源:pexels.com 神经网络由具有权重和偏差的神经元组成.通过在训练过程中调整这些权重和偏差,以提出良好的学习模型.每个神经元接收一组输入,以 ...

  9. cnn神经网络_神经网络之CNN和RNN

    点击上方"认知计算与云安全",然后点击"关注"关键时刻,第一时间送达! 卷积神经网络(CNN)和递归神经网络(RNN)如今在ML中普遍使用.但是,它们通常用于完 ...

最新文章

  1. dataframe 拆分 分裂
  2. Jittor 的Op, Var算子
  3. 免费GPU哪家强?谷歌Kaggle vs. Colab
  4. 如何处理大数据:微博信息流数据库设计
  5. Android学习指南 第六讲:用户界面 View(二)
  6. mysql 排序_MySql的几种排序方式
  7. 服务器ubuntu系统版本选型原则,系统集成 - 选择Ubuntu服务器版操作系统的六大理由_服务器应用_Linux公社-Linux系统门户网站...
  8. [数据结构]用插入排序和选择排序的思想实现优先级队列
  9. ECSHOP 订单状态 记录
  10. pandas打印某一列_2. Python--pandas库
  11. C语言控制台窗口界面编程:printf格式化显示-修改字符字体、颜色和背景
  12. 协议森林02 小喇叭开始广播 (以太网与WiFi协议)
  13. 王码五笔98版forwin10_王码五笔98版-王码五笔98版64位 兼容王码五笔86版 - 快盘下载...
  14. java gps809_车载GPS对接809协议的数据对接
  15. HIVE如何进行随机抽样
  16. 软件测试AI语音智能音响,什么是智能音箱_ai音箱都有什么功能 - 全文
  17. C语言——分支语句和循环语句
  18. HDFS DataNode高密度存储机型的探索尝试
  19. mysql差异备份与多实例部署
  20. 【Educational Codeforces Round 6A】【水题】Professor GukiZ's Robot 曼哈顿距离

热门文章

  1. i2c_transfer函数
  2. 日常生活中的人际关系其实是个人内心的反映
  3. C++ Primer 学习笔记 第十章 泛型算法
  4. 秋季补肾的一些方法 - 生活至上,美容至尚!
  5. 计算机应用基础 性考,最新国家开放大学《计算机应用基础》形考作业一答案.docx...
  6. 阿里云SSL证书在Nginx服务器上部署方法
  7. three Quaternion 源码解读
  8. 阎王点赞!地府后台管理系统驾到,速来销生死簿名单!附地址
  9. 简单了解默克尔(Merkle)树
  10. html input dropdown,Vue.js 带下拉选项的输入框(Textbox with Dropdown)组件