【深度学习】一文弄懂CNN及图像识别(Python)

一、卷积神经网络简介

卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算的前馈神经网络,是基于图像任务的平移不变性(图像识别的对象在不同位置有相同的含义)设计的,擅长应用于图像处理等任务。在图像处理中,图像数据具有非常高的维数(高维的RGB矩阵表示),因此训练一个标准的前馈网络来识别图像将需要成千上万的输入神经元,除了显而易见的高计算量,还可能导致许多与神经网络中的维数灾难相关的问题。2c504b0ee1ec5d3f4498f20beb46e653.png

对于高维图像数据,卷积神经网络利用了卷积和池化层,能够高效提取图像的重要“特征”,再通过后面的全连接层处理“压缩的图像信息”及输出结果。对比标准的全连接网络,卷积神经网络的模型参数大大减少了。64a3b25b440387ccc53be8bea85c51bd.png

二、卷积神经网络的“卷积” 

2.1 卷积运算的原理

在信号处理、图像处理和其它工程/科学领域,卷积都是一种使用广泛的技术,卷积神经网络(CNN)这种模型架构就得名于卷积计算。但是,深度学习领域的“卷积”本质上是信号/图像处理领域内的互相关(cross-correlation),互相关与卷积实际上还是有些差异的。卷积是分析数学中一种重要的运算。简单定义f , g 是可积分的函数,两者的卷积运算如下:e3838fbdcafe033ec1590f8f7b3c4a8f.png

其定义是两个函数中一个函数(g)经过反转和位移后再相乘得到的积的积分。如下图,函数 g 是过滤器。它被反转后再沿水平轴滑动。在每一个位置,我们都计算 f 和反转后的 g 之间相交区域的面积。这个相交区域的面积就是特定位置出的卷积值。6a17e4a734a0da20ce0786ebe8402de4.png

互相关是两个函数之间的滑动点积或滑动内积。互相关中的过滤器不经过反转,而是直接滑过函数 f,f 与 g 之间的交叉区域即是互相关。f75728770283651bad49cefa6898d72b.png

下图展示了卷积与互相关运算过程,相交区域的面积变化的差异:4cc13971aa1bd2ffa0f3efada0b06b33.png

在卷积神经网络中,卷积中的过滤器不经过反转。严格来说,这是离散形式的互相关运算,本质上是执行逐元素乘法和求和。但两者的效果是一致,因为过滤器的权重参数是在训练阶段学习到的,经过训练后,学习得到的过滤器看起来就会像是反转后的函数。

2.2 卷积运算的作用

CNN通过设计的卷积核(convolution filter,也称为kernel)与图片做卷积运算(平移卷积核去逐步做乘积并求和)。86dcd69f863fd9e2a66626e32261bf00.png

如下示例设计一个(特定参数)的3×3的卷积核:6746d0a6de7273f623df2185bcd634a7.png

让它去跟图片做卷积,卷积的具体过程是:

  1. 用这个卷积核去覆盖原始图片;

  2. 覆盖一块跟卷积核一样大的区域之后,对应元素相乘,然后求和;

  3. 计算一个区域之后,就向其他区域挪动(假设步长是1),继续计算;

  4. 直到把原图片的每一个角落都覆盖到为止;

62008bc5257212b9f17596b4ab23e651.png可以发现,通过特定的filter,让它去跟图片做卷积,就可以提取出图片中的某些特征,比如边界特征。

进一步的,我们可以借助庞大的数据,足够深的神经网络,使用反向传播算法让机器去自动学习这些卷积核参数,不同参数卷积核提取特征也是不一样的,就能够提取出局部的、更深层次和更全局的特征以应用于决策。b7dbd87130d2bf947a9a1262e2736867.png

卷积运算的本质性总结:过滤器(g)对图片(f)执行逐步的乘法并求和,以提取特征的过程。卷积过程可视化可访问:https://poloclub.github.io/cnn-explainer/   或   https://github.com/vdumoulin/conv_arithmetic

三、卷积神经网络

卷积神经网络通常由3个部分构成:卷积层,池化层,全连接层。简单来说,卷积层负责提取图像中的局部及全局特征;池化层用来大幅降低参数量级(降维);全连接层用于处理“压缩的图像信息”并输出结果。fa108d1463da13f59db0ff75ac57f61c.png

3.1 卷积层(CONV)

3.1.1 卷积层基本属性

卷积层主要功能是动态地提取图像特征,由滤波器filters和激活函数构成。一般要设置的超参数包括filters的数量、大小、步长,激活函数类型,以及padding是“valid”还是“same”。

  • 卷积核大小(Kernel):直观理解就是一个滤波矩阵,普遍使用的卷积核大小为3×3、5×5等。在达到相同感受野的情况下,卷积核越小,所需要的参数和计算量越小。卷积核大小必须大于1才有提升感受野的作用,而大小为偶数的卷积核即使对称地加padding也不能保证输入feature map尺寸和输出feature map尺寸不变(假设n为输入宽度,d为padding个数,m为卷积核宽度,在步长为1的情况下,如果保持输出的宽度仍为n,公式,n+2d-m+1=n,得出m=2d+1,需要是奇数),所以一般都用3作为卷积核大小。

  • 卷积核数目:主要还是根据实际情况调整, 一般都是取2的整数次方,数目越多计算量越大,相应模型拟合能力越强。

  • 步长(Stride):卷积核遍历特征图时每步移动的像素,如步长为1则每次移动1个像素,步长为2则每次移动2个像素(即跳过1个像素),以此类推。步长越小,提取的特征会更精细。

  • 填充(Padding):处理特征图边界的方式,一般有两种,一种是“valid”,对边界外完全不填充,只对输入像素执行卷积操作,这样会使输出特征图像尺寸变得更小,且边缘信息容易丢失;另一种是还是“same”,对边界外进行填充(一般填充为0),再执行卷积操作,这样可使输出特征图的尺寸与输入特征图的尺寸一致,边缘信息也可以多次计算。

  • 通道(Channel):卷积层的通道数(层数)。如彩色图像一般都是RGB三个通道(channel)。

  • 激活函数:主要还是根据实际验证,通常选择Relu。

另外的,卷积的类型除了标准卷积,还演变出了反卷积、可分离卷积、分组卷积等各种类型,可以自行验证。

3.1.2 卷积层的特点

通过卷积运算的介绍,可以发现卷积层有两个主要特点:局部连接(稀疏连接)和权值共享。

  • 局部连接,就是卷积层的节点仅仅和其前一层的部分节点相连接,只用来学习局部区域特征。(局部连接感知结构的理念来源于动物视觉的皮层结构,其指的是动物视觉的神经元在感知外界物体的过程中起作用的只有一部分神经元。)

  • 权值共享,同一卷积核会和输入图片的不同区域作卷积,来检测相同的特征,卷积核上面的权重参数是空间共享的,使得参数量大大减少。d4e45ef375bf1a36791747ab2bef295a.png

由于局部连接(稀疏连接)和权值共享的特点,使得CNN具有仿射的不变性(平移、缩放等线性变换)

3.2 池化层(Pooling)

池化层可对提取到的特征信息进行降维,一方面使特征图变小,简化网络计算复杂度;另一方面进行特征压缩,提取主要特征,增加平移不变性,减少过拟合风险。但其实池化更多程度上是一种计算性能的一个妥协,强硬地压缩特征的同时也损失了一部分信息,所以现在的网络比较少用池化层或者使用优化后的如SoftPool。

池化层设定的超参数,包括池化层的类型是Max还是Average(Average对背景保留更好,Max对纹理提取更好),窗口大小以及步长等。如下的MaxPooling,采用了一个2×2的窗口,并取步长stride=2,提取出各个窗口的max值特征(AveragePooling就是平均值):

4ae12d9d55938ae74418e8097c93c921.png

3.3 全连接层(FC)

在经过数次卷积和池化之后,我们最后会先将多维的图像数据进行压缩“扁平化”, 也就是把 (height,width,channel) 的数据压缩成长度为 height × width × channel 的一维数组,然后再与全连接层连接(这也就是传统全连接网络层,每一个单元都和前一层的每一个单元相连接,需要设定的超参数主要是神经元的数量,以及激活函数类型),通过全连接层处理“压缩的图像信息”并输出结果。08b9f00341c75630489a4b0d4128128a.png

3.4  示例:经典CNN的构建(Lenet-5)

7d98b13dd6e63afdf2fa7233ec5f3d1e.pngLeNet-5由Yann LeCun设计于 1998年,是最早的卷积神经网络之一。它是针对灰度图进行训练的,输入图像大小为32321,不包含输入层的情况下共有7层。下面逐层介绍LeNet-5的结构:

  • 1、C1-卷积层

第一层是卷积层,用于过滤噪音,提取关键特征。使用5 * 5大小的过滤器6个,步长s = 1,padding = 0。

  • 2、S2-采样层(平均池化层)

第二层是平均池化层,利用了图像局部相关性的原理,对图像进行子抽样,可以减少数据处理量同时保留有用信息,降低网络训练参数及模型的过拟合程度。使用2 * 2大小的过滤器,步长s = 2,padding = 0。池化层只有一组超参数pool_size 和 步长strides,没有需要学习的模型参数

  • 3、C3-卷积层

第三层使用5 * 5大小的过滤器16个,步长s = 1,padding = 0。

  • 4、S4-下采样层(平均池化层)

第四层使用2 * 2大小的过滤器,步长s = 2,padding = 0。没有需要学习的参数。

  • 5、C5-卷积层

第五层是卷积层,有120个5 * 5 的单元,步长s = 1,padding = 0。

  • 6、F6-全连接层

有84个单元。每个单元与F5层的全部120个单元之间进行全连接。

  • 7、Output-输出层

Output层也是全连接层,采用RBF网络的连接方式(现在主要由Softmax取代,如下示例代码),共有10个节点,分别代表数字0到9(因为Lenet用于输出识别数字的),如果节点i的输出值为0,则网络识别的结果是数字i。

如下Keras复现Lenet-5:48d931dd81fc5c445419fbf564e5cf50.png

from keras.models import Sequential
from keras import layers 

le_model = keras.Sequential()
le_model.add(layers.Conv2D(6, kernel_size=(5, 5), strides=(1, 1), activation='tanh', input_shape=(32,32,1), padding="valid"))
le_model.add(layers.AveragePooling2D(pool_size=(2, 2), strides=(2, 2), padding='valid'))
le_model.add(layers.Conv2D(16, kernel_size=(5, 5), strides=(1, 1), activation='tanh', padding='valid'))
le_model.add(layers.AveragePooling2D(pool_size=(2, 2), strides=(2, 2), padding='valid'))
le_model.add(layers.Conv2D(120, kernel_size=(5, 5), strides=(1, 1), activation='tanh', padding='valid'))
le_model.add(layers.Flatten())
le_model.add(layers.Dense(84, activation='tanh'))
le_model.add(layers.Dense(10, activation='softmax'))

四、CNN图像分类-keras 

以keras实现经典的CIFAR10图像数据集的分类为例,代码:https://github.com/aialgorithm/Blog

  • 训练集输入数据的样式为:(50000, 32, 32, 3)对应 (样本数, 图像高度, 宽度, RGB彩色图像通道为3)

from keras.datasets import cifar10
from keras.preprocessing.image import ImageDataGenerator
from keras.models import Sequential
from keras.layers import Dense, Dropout, Activation, Flatten
from keras.layers import Conv2D, MaxPooling2D
import keras
import os

# 数据,切分为训练和测试集
(x_train, y_train), (x_test, y_test) = cifar10.load_data()
print('x_train shape:', x_train.shape)
print(x_train.shape[0], 'train samples')
print(x_test.shape[0], 'test samples')
  • 展示数据集,共有10类图像:02299361909924d384b08187d6d0e76f.png06f65f3b7ccfbf4007b134683f5eae72.png

# 展示数据集
import matplotlib.pyplot as plt
class_names = ['airplane', 'automobile', 'bird', 'cat', 'deer',
               'dog', 'frog', 'horse', 'ship', 'truck']

plt.figure(figsize=(10,10))
for i in range(25):
    plt.subplot(5,5,i+1)
    plt.xticks([])
    plt.yticks([])
    plt.grid(False)
    plt.imshow(x_train[i])
    # The CIFAR labels happen to be arrays, 
    # which is why you need the extra index
    plt.xlabel(class_names[y_train[i][0]])
plt.show()
  • 数据及标签预处理:

# 将标签向量转换为二值矩阵。
num_classes = 10  #图像数据有10个实际标签类别
y_train = keras.utils.to_categorical(y_train, num_classes)
y_test = keras.utils.to_categorical(y_test, num_classes)

print(y_train.shape, 'ytrain')

# 图像数据归一化
x_train = x_train.astype('float32')
x_test = x_test.astype('float32')
x_train /= 255
x_test /= 255
  • 构造卷积神经网络: 输入层->多组卷积及池化层->全连接网络->softmax多分类输出层。(如下图部分网络结构)702693968022686acc522fab9676e164.png

# 构造卷积神经网络
model = Sequential()

# 图像输入形状(32, 32, 3) 对应(image_height, image_width, color_channels) 
model.add(Conv2D(32, (3, 3), padding='same',
                 input_shape=(32, 32, 3)))
model.add(Activation('relu'))
model.add(Conv2D(32, (3, 3)))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))

# 卷积、池化层输出都是一个三维的(height, width, channels)
# 越深的层中,宽度和高度都会收缩
model.add(Conv2D(64, (3, 3), padding='same'))
model.add(Activation('relu'))
model.add(Conv2D(64, (3, 3)))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))

#  3 维展平为 1 维 ,输入全连接层
model.add(Flatten())
model.add(Dense(512))
model.add(Activation('relu'))
model.add(Dropout(0.5))
model.add(Dense(num_classes))   # CIFAR数据有 10 个输出类,以softmax输出多分类
model.add(Activation('softmax'))
  • 模型编译:设定RMSprop 优化算法;设定分类损失函数.

# 初始化 RMSprop 优化器
opt = keras.optimizers.rmsprop(lr=0.001, decay=1e-6)

# 模型编译:设定RMSprop 优化算法;设定分类损失函数;
model.compile(loss='categorical_crossentropy',
              optimizer=opt,
              metrics=['accuracy'])
  • 模型训练: 简单验证5个epochs

batch_size = 64
epochs = 5  

history = model.fit(x_train, y_train,
              batch_size=batch_size,
              epochs=epochs,
              validation_data=(x_test, y_test),
              shuffle=True)
  • 模型评估:测试集accuracy: 0.716,可见训练/测试集整体的准确率都不太高(欠拟合),可以增加epoch数、模型调优验证效果。

附 卷积神经网络优化方法(tricks):

超参数优化:可以用随机搜索、贝叶斯优化。推荐分布式超参数调试框架Keras Tuner包括了常用的优化方法。

数据层面:数据增强广泛用于图像任务,效果提升大。常用有图像样本变换、mixup等。更多优化方法具体可见:https://arxiv.org/abs/1812.01187

b1ebc13cc460c95a09a3d04ce3ca0445.png
# 保存模型和权重
num_predictions = 20
save_dir = os.path.join(os.getcwd(), 'saved_models')
model_name = 'keras_cifar10_trained_model.h5'

if not os.path.isdir(save_dir):
    os.makedirs(save_dir)
model_path = os.path.join(save_dir, model_name)
model.save(model_path)
print('Saved trained model at %s ' % model_path)

# 评估训练模型
scores = model.evaluate(x_test, y_test, verbose=1)
print('Test loss:', scores[0])
print('Test accuracy:', scores[1])

plt.plot(history.history['accuracy'], label='accuracy')
plt.plot(history.history['val_accuracy'], label = 'val_accuracy')
plt.xlabel('Epoch')
plt.ylabel('Accuracy')
plt.ylim([0.5, 1])
plt.legend(loc='lower right')
plt.show()
- END -

文章首发公众号“算法进阶”,文末阅读原文可访问文章相关代码


 
 
 
 
 
 
 
 
 
 
往期精彩回顾




适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑《统计学习方法》的代码复现专辑
AI基础下载黄海广老师《机器学习课程》视频课黄海广老师《机器学习课程》711页完整版课件

本站qq群955171419,加入微信群请扫码:

940bcb80ea761bfdcd5b2793e2cc158d.png

风度78
关注 关注
  • 27
    点赞
  • 290
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
基于深度学习图像识别应用研究
12-22
重点研究了深度学习的特征提取,以及深度学习三个重要的网络模型,分别是可以实现无监督特征学习的深度信念网络 (Deep Belief Network,DBN),图像识别任务被广泛使用的卷积神经(Convolutional Neural Network,CNN),以及可以实现序列数据学习的循环神 经网络(Recurrent Neural Network,RNN),对它们的网络结构和训练方法展开 深入的研究。
基于深度学习图像识别
03-19
基于深度学习图像识别,图像分割、图像特征提取、分类器识别这三步骤。而由于文本信息的特殊性,没有固定的形状和合理的目标分界线,传统的图像识别方式 要识别自然场景下的文本信息是相对比较困难的。
又有人将Transformer可视化了,可交互、有源码
最新发布
python12222_的博客
08-15 1192
为什么说“又”呢?因为前面已经分享过一个可视化工具了,与那个工具相比,今天分享的Transformer Explainer更直观、交互性更强。在线地址:https://poloclub.github.io/transformer-explainer/源码:https://github.com/poloclub/transformer-explainer论文:https://arxiv.org/pdf/2408.04619。
CNN 卷积神经网络图像识别Python
顺其自然~专栏
07-25 227
卷积神经网络 (CNN) 是一种专门处理图像数据的前馈神经网络。它通过在图像上滑动各种卷积核,提取出图像的局部特征层层叠加最后得到复杂的图形特征。CNN深度学习视觉相关任务的基石,广泛应用于图像识别、视频分析等领域。
转:图像分类、物体检测、物体分割、实例分割、语义分割
weixin_34198583的博客
03-14 1348
0001,常识1 计算机视觉的任务很多,有图像分类、目标检测、语义分割、实例分割和全景分割等,那它们的区别是什么呢?1、Image Classification(图像分类)图像分类(下图左)就是对图像判断出所属的分类,比如在学习分类数据集有人(person)、羊(sheep)、狗(dog)和猫(cat)四种,图像分类要求给定一个图片输出图片里含有哪些分类,比如下图的例子是含有person、sh...
使用PaddlePaddle搭建卷积网络做文本数据分类
测试
05-23 699
PaddlePaddle是百度开源的深度学习框架,采用和cafee类似的layer搭建的方式构建深度神经网络,当前也在试图发布fluid新版本提供算子级别的网络构建技能,最近有一个文本分类的需求,试着使用paddle进行了实验,对paddle的使用体验为: 文档不全,特别简陋 模型库比较好,即使不懂的用法,可以搜索代码查找用法; github的问题回复比较及时 感觉Paddle是在大力推广...
Python 深度学习cnn
cry_smile的博客
02-14 222
卷积神经网络 1.CNN为什么每一卷积层后面都有 激活函数 神经网络比线性函数能够用非线性函数对数据集进行映射。没有激活函数,卷积网络就和线性网络没有什么区别了。 ...
PaddlePaddle一步一步搭建简单网络
zhuziying99的专栏
04-14 382
PaddlePaddle一步一步搭建简单网络 如何开始 对于新手入门来说,个人建议先看Fluid编程指南,明白了如何使用之后,再看线性回归、数字识别。 现实问题 我们有一堆数据x和数据y,数据x与数据y之间存在某种规律,我们的目标是当新的x出现后,我们通过这种规律确定y的值,根据y的值可以指导我们的决策。所以首先我们得先得到规律,这就要通过深度学习让机器学到,然后我们给出新的x值,通过已学习到的...
Python 教你如何给图像分类!Python就没有他做不到
爬遍所有网站
10-19 3401
在日常生活总是有给图像分类的场景,比如垃圾分类、不同场景的图像分类等;今天的文章主要是基于图像识别场景进行模型构建。图像识别是通过 Python深度学习来进行模型训练,再使用模型对上传的电子表单进行自动审核与比对后反馈相应的结果。主要是利用 Python Torchvision 来构造模型,Torchvision 服务于Pytorch 深度学习框架,主要是用来生成图片、视频数据集以及训练模型。 模型构建 构建模型为了直观,需要使用 Jupyter notebook 进行模型的构建,Jupyter no
python图像分类_python计算机视觉深度学习工具3图像分类基础
weixin_39851918的博客
11-21 550
什么是图像分类?图像分类的核心任务是从预定义的一类图像为图像分配标签。分析输入图像并返回标签对图像进行分类。标签始终来自一组预定义的可能类别。比如预定义的标签为:categories = {cat, dog, panda}image.png分类系统还可以通过概率为图像分配多个标签。比如狗:95%;猫:4%;熊猫:1%。更重要的是,W×H像素输入图像有三个通道,Red,Green和Blue,分析W...
深度学习目标检测系列:一文弄懂YOLO算法|附Python源码
阿里云云栖号
12-18 4485
在之前的文章,介绍了计算机视觉领域目标检测的相关方法——RCNN系列算法原理,以及Faster RCNN的实现。这些算法面临的一个问题,不是端到端的模型,几个构件拼凑在一起组成整个检测系统,操作起来比较复杂,本文将介绍另外一个端到端的方法——YOLO算法,该方法操作简便且仿真速度快,效果也不差。 YOLO算法是什么? YOLO框架(You Only Look Once)与...
python实现的CNN代码
12-10
本资料为基于python卷积神经网络(CNN)实现 layer文件夹包括卷积层、池化层、全连接层、relu层等基础层 没有调用tensorflow, pytorch等深度学习框架,手动实现了各层的反向传播BP算法
深度学习testCNNpython实现
09-24
深度学习TextCNN的keras和tensorflow实现,精简版。。。。
yolo python_深度学习目标检测系列:一文弄懂YOLO算法|附Python源码
weixin_39735012的博客
12-09 677
摘要:本文是目标检测系列文章——YOLO算法,介绍其基本原理及实现细节,并用python实现,方便读者上手体验目标检测的乐趣。在之前的文章,介绍了计算机视觉领域目标检测的相关方法——RCNN系列算法原理,以及Faster RCNN的实现。这些算法面临的一个问题,不是端到端的模型,几个构件拼凑在一起组成整个检测系统,操作起来比较复杂,本文将介绍另外一个端到端的方法——YOLO算法,该方法操作简...
yolo算法python代码_深度学习目标检测系列:一文弄懂YOLO算法|附Python源码
weixin_39636253的博客
12-05 938
摘要: 本文是目标检测系列文章——YOLO算法,介绍其基本原理及实现细节,并用python实现,方便读者上手体验目标检测的乐趣。在之前的文章,介绍了计算机视觉领域目标检测的相关方法——RCNN系列算法原理,以及Faster RCNN的实现。这些算法面临的一个问题,不是端到端的模型,几个构件拼凑在一起组成整个检测系统,操作起来比较复杂,本文将介绍另外一个端到端的方法——YOLO算法,该方法操作简...
python卷积神经网络cnn的训练算法_【深度学习系列】卷积神经网络CNN原理详解(一)——基本原理...
weixin_39639518的博客
12-19 1917
上篇文章我们给出了用paddlepaddle来做手写数字识别的示例,并对网络结构进行到了调整,提高了识别的精度。有的同学表示不是很理解原理,为什么传统的机器学习算法,简单的神经网络(如多层感知机)都可以识别手写数字,我们要采用卷积神经网络CNN来进行别呢?CNN到底是怎么识别的?用CNN有哪些优势呢?我们下面就来简单分析一下。在讲CNN之前,为避免完全零基础的人看不懂后面的讲解,我们先简单回顾一下...
一文弄懂神经网络的反向传播法——Back Propagation
迈微AI研习社 · 号主
10-08 547
点击上方“迈微电子研发社”,选择“星标★”公众号重磅干货,第一时间送达最近在看深度学习的东西,一开始看的吴恩达的UFLDL教程,有文版就直接看了(点击这里文章第三部分观看);后来发现有...
使用paddle动态图搭建网络(入门)
qq_51693245的博客
03-10 1632
前言 记录下如何用paddle2.0搭建一个网络,在动态图模式下用容易上手的高层api复现多种网络 使用paddle2.0动态图搭建网络(超简易) 环境 Aistudio项目 Notebook线上环境 paddle版本 : 2.0 使用动态图模式(默认) 参考 •多层感知机模型 •卷积网络 •学习目录 •以上均来自课程: https://aistudio.baidu.com/aistudio/course/introduce/11939?directly=1&shared=1 编写模型 ①感知机
paddle lenet5网络搭建
Vertira的博客
01-19 325
环境 python3.6,paddlepaddle-gpu1.5.2.post107 # -*- coding: utf-8 -*- # @Time : 2020/1/18 16:49 # @Author : Zhao HL # @File : lenet5_paddle.py import os,sys from PIL import Image import numpy as np import paddle from paddle import fluid # region par...
python深度学习图像识别
05-11
Python深度学习图像识别的常用工具包包括: 1. TensorFlow:Google开发的深度学习框架,具有高度的灵活性和可扩展性,可用于图像识别、自然语言处理等。 2. Keras:基于TensorFlow的高层次神经网络API,使得神经网络的搭建和训练变得更加简单。 3. PyTorch:Facebook开发的深度学习框架,具有易于使用、灵活和高效的优点。 4. OpenCV:计算机视觉库,提供了很多图像处理和计算机视觉算法,可以用于图像识别任务的图像预处理。 一般来说,深度学习图像识别的步骤包括: 1. 数据预处理:包括数据集的获取、清洗、裁剪、缩放等。 2. 模型搭建:选择合适的模型结构,如卷积神经网络CNN)、循环神经网络(RNN)等。 3. 模型训练:利用数据集对模型进行训练,并调整模型参数以提高识别准确率。 4. 模型测试和评估:使用测试集对模型进行测试,评估模型的性能,并根据测试结果进行模型调整。 Python深度学习图像识别需要掌握的主要技能包括Python编程、深度学习理论、图像处理技术等。同时需要不断地学习和实践,才能在图像识别领域有所突破。
写文章

热门文章

  • 理论加实践,终于把时间序列预测ARIMA模型讲明白了 128343
  • 【Python基础】Matplotlib如何绘制多个子图的几种方法 118366
  • 【Python基础】matplotlib字体设置看这一篇就够了 58650
  • 【Python基础】Python中读取图片的6种方式 56812
  • 【机器学习基础】时间序列测试题的40题,看看你对时间序列的了解水平 55151

最新评论

  • 【深度学习】手把手教你使用CNN进行交通标志识别(已开源)

    2201_75985706: 请问这个path怎么设置呀

  • 紫东太初:自动化所开源图-文-音三模态的预训练大模型

    D.H.591: 请问你有试过他的视觉预训练模型吗

  • 【Python】手把手教你用Python爬取某网小说数据,并进行可视化分析

    2401_87312669: 请问可以分享源代码吗?

  • 【算法基础】数据结构导论第二章-线性表.pptx

    韩冰704: sjjg2

  • 【Python】推荐10个好用到爆的Jupyter Notebook插件,让你效率飞起

    YeyeZi_04: 我的出现的是ModuleNotFoundError: No module named 'notebook.nbextensions',咋整?

大家在看

  • 基于SpringBoot小区生活缴费系统的设计与实现(源码+LW+调试文档)
  • 吐血整理 ChatGPT 3.5/4.0 新手使用手册~ 【亲测好用】
  • 最新计算机专业开题报告案例99:基于深度学习算法的垃圾分类小程序的设计与实现 1097
  • 从0开始linux(5)——vim
  • 手势识别+人脸识别+姿态估计(关键点检测+教程+代码)

最新文章

  • 36岁当上985高校院长!女教授称“最强大的背景”是。。。
  • 神仙公司名单北京篇
  • 35岁中年博士失业,决定给找高校教职的后辈一些建议
2024
09月 42篇
08月 73篇
07月 76篇
06月 72篇
05月 74篇
04月 83篇
03月 80篇
02月 72篇
01月 68篇
2023年896篇
2022年813篇
2021年1087篇
2020年1178篇
2019年332篇
2018年39篇

目录

目录

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

天下网标王网站首页优化教程快捷的seo网站优化安新网站站外优化南沙网站seo推广优化方案濮阳优化网站多少钱优化网站效果沈阳网站快速排名优化永州网站排名优化软件河北广电网站优化价格表乐安网站优化平台云南靠谱的网站优化资阳网站优化性价比高绍兴市网站seo优化排名番禺网站排名推广优化费用绍兴网站优化公司报价番禺网站排名推广优化报价绍兴越城网站优化坪山网站制作枣庄泰安网站优化推广哪家好如何判断影响网站不利优化因素seo优化怎么提高网站排名巩义网站推广优化哪家正规风水网站制作优化北京SEO网站优化公司都匀网站优化价格上饶网络推广网站优化济南好的教育行业网站优化黄山网站优化排名定制价格网站标题优化推荐的书学校网站优化的建议香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

天下网标王 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化