【CNN】初识CNN之图像分类-2【正在写】

7次阅读
没有评论

共计 1390 个字符,预计需要 4 分钟阅读。

以下需自备梯子

安装环境

先决条件

Python安装这里就不赘述了,确认一下安装情况:

python
pip --version
【CNN】初识CNN之图像分类-2【正在写】
执行结果

本次环境为Windows下的Python 3.11.0。

安装Keras(前端)

pip install --upgrade keras
【CNN】初识CNN之图像分类-2【正在写】
安装完成

安装TensorFlow(后端)

# Requires the latest pip
pip install --upgrade pip

# Current stable release for CPU and GPU
pip install tensorflow

注意:Windows下升级pip也许要用到:

python.exe -m pip install --upgrade pip
【CNN】初识CNN之图像分类-2【正在写】
安装完成

代码部分

解释

神经网络

人工神经网络(英语:artificial neural network,ANNs)又称类神经网络,简称神经网络(neural network,NNs),在机器学习认知科学领域,是一种模仿生物神经网络(动物的中枢神经系统,特别是大脑)的结构和功能的数学模型计算模型,用于对函数进行估计或近似。神经网络由大量的人工神经元联结进行计算。大多数情况下人工神经网络能在外界信息的基础上改变内部结构,是一种自适应系统,通俗地讲就是具备学习功能。现代神经网络是一种非线性统计性数据建模(概率模型)工具,神经网络通常是通过一个基于数学统计学类型的学习方法得以优化,所以也是数学统计学方法的一种实际应用,通过统计学的标准数学方法我们能够得到大量的可以用函数来表达的局部结构空间,另一方面在人工智能学的人工感知领域,我们通过数学统计学的应用可以来做人工感知方面的决定问题(也就是说通过统计学的方法,人工神经网络能够类似人一样具有简单的决定能力和简单的判断能力),这种方法比起正式的逻辑学推理演算更具有优势。【以上来自维基百科】

【CNN】初识CNN之图像分类-2【正在写】
神经网络图例

对于某个神经网络,它一般由输入层(绿色)、隐藏层(蓝色)、输出层(黄色)构成,而且输入层与输出层的节点数一般是固定的。

【CNN】初识CNN之图像分类-2【正在写】
神经元图例

对于每个神经元,它由输入、权重、求和、非线性函数构成,它往往有多个输入值和单个输出值,而它满足:

【CNN】初识CNN之图像分类-2【正在写】

注意,对于有多值输出的神经元,它们的所有输出值是相等的。

CNN神经网络

由于对于每一个图像,它都由像素点构成,而传统图像是由3个像素点矩阵(即R、G、B)组合而成的,每个像素点上的值为0~255,表示该点对应的RGB通道的亮度。对于任意的一张图片,它有三个参数宽、高、深,如下图,这组成了图片中的所有数据。

【CNN】初识CNN之图像分类-2【正在写】
图片的构成

在传统神经网络中,由于需要把图片拉成成一长条像素进行输入,显然破坏了二维图片的空间结构

首先我们来速成一下一些名词:

CNN(卷积神经网络)

  • 是什么:专门用来处理图片的一种AI模型
  • 好比:就像人眼看图片时,先看局部细节,再组合成整体理解

由于图片

卷积层

  • 作用:提取图片的特征,比如边缘、颜色、纹理等
  • 好比:用放大镜在图片上滑动,观察每个小区域的特征

池化层

  • 作用:缩小图片尺寸,保留重要信息,减少计算量
  • 好比:看地图时从细节视图切换到概览视图

全连接层

  • 作用:把提取的特征组合起来,做出最终判断
  • 好比:把各种线索综合起来得出结论

Dropout

  • 作用:随机”关闭”一些神经元,防止模型死记硬背
  • 好比:考试时不让只背答案,要真正理解

BatchNormalization

  • 作用:让训练过程更稳定,学习更快
  • 好比:把学习材料整理得更有条理,便于学习
正文完
 
再看一点
lvshujun
版权声明:本站原创文章,由 lvshujun 于2025-11-01发表,共计1390字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请联系站长并注明出处。
评论(没有评论)