卷积神经网络 – CNN受大脑结构的启发,但我们在这里的重点将不在神经科学上,因为我们在任何生物学方面都没有专门知识或学术知识。还要注意,它们与实际的人脑相距甚远。在这篇文章中,我们将变得虚假。
CNN是一类神经网络,已被证明在图像识别,处理和分类领域非常有效。在本文中,我们将以简单易懂的高级语言探索和讨论对卷积神经网络(CNN)的直观解释。
卷积神经网络是一种特殊的多层神经网络。
什么是 深度学习?
AILabPage 将深度学习定义为“ 不可否认的一种令人振奋的同步技术,它基于3个基本支柱,即大数据,计算能力,技能(丰富的算法)和经验,而实际上却没有任何限制”。
深度学习 是机器学习领域的一个子领域。深度学习完全与受 人脑启发的 Rtificial神经网络的结构和功能启发的算法有关 (仅受pls启发)。深度学习使用起来非常容易,无法预测不可预测的情况。在我们看来,“我们所有人都非常忙于通过结合使用非生物神经网络和自然智能来创造人工智能,而不是探索手头的东西。
深度学习,也称为机器学习的子集,是具有非常复杂技能的专家,可以从同一数据集获得更好的结果。它完全基于生物神经元系统的NI(自然智能)力学。它具有复杂的技能,这是因为它用于训练的方法,即深度学习是基于“学习数据表示”而不是“特定于任务的算法”的。其他方法就是这种情况
“我认为人们需要了解深度学习在幕后创造了很多东西,而且要好得多” –杰弗里·欣顿爵士
人脑 –这是每个人讨论的特殊/关键点,也是所有时间令人困惑的游戏。我们的大脑是如何设计的,以及它如何发挥作用,我们在这篇文章中无法介绍,因为我与神经科学家距离还很遥远,甚至梦不到与神经科学家接近。出于好奇,我很想将人工神经网络 与人脑进行比较 (带有有关此类主题的帮助谈话节目)。它使我着迷,人脑如何能够解码技术,数字,谜题,处理娱乐,理解科学,将人体模式设置为娱乐,攻击性,艺术等。大脑如何训练自己来命名特定对象只看2-3张图像,其中ANN需要数百万张。
什么是 卷积神经网络
卷积神经网络(CNN)–在许多人看来可能看起来像魔术,但实际上,它只是简单的科学和数学。CNN是一类神经网络,已被证明在图像识别领域非常有效,因此在大多数情况下,它被应用于图像处理。
CNN在计算机视觉应用程序中获得了广泛的采用和成功,但主要是与无监督学习相比,无监督学习受到了关注。
该网络是多层感知器进行处理和分类的一个很好的例子。这是一种深度学习算法,其中将输入作为图像,并有效地对其对象施加权重和偏差,最终使图像彼此区分。
根据Wiki – 在 机器学习中,卷积神经网络(CNN或ConvNet)是一类深层的前馈人工神经网络,最常用于分析视觉图像。
它们已经存在了几十年,但是当使用大型标签数据集时,它们显示出非常强大的功能。这需要快速的计算机(例如GPU)!
CNN背后的人工智能解决方案惊人地改变了企业和开发人员创造用户体验并解决实际问题的方式。 CNN也被称为神经科学在机器学习中的应用。他们采用称为“卷积”的数学运算; 这是一种特殊的线性运算。
卷积神经网络应用程序包括高质量AI系统,例如基于AI的机器人,虚拟助手和自动驾驶汽车。对于图像处理,滤镜会扫描图像,以传递为每个滤镜生成的特征图。添加越来越多的过滤层以及创建更多的特征图通常允许使用摘要来创建更深的CNN。
- 图像处理
- 承认
- 分类
- 视频标签
- 文字分析
- 语音识别
- 自然语言处理
- 文字分类处理
卷积神经网络应用程序解决了许多未解决的问题,这些问题如果没有CNN层就无法解决,包括高品质的AI系统,例如基于AI的机器人,虚拟助手和自动驾驶汽车。
如上所述使用CNN的其他常见应用,例如情绪识别和估计年龄/性别等。最著名的模型是卷积神经网络和递归神经网络
数据处理-卷积神经网络
CNN具有用于处理数据的网格拓扑。d ATA在这个点被称为网格状拓扑结构数据的处理在相邻数据点之间的空间相关性发生。
- 一维网格–时间序列数据–定期采样
- 2D网格–图像数据–像素网格
这些神经网络使用卷积方法,而不是至少一层中的一般矩阵乘法。卷积作用于
- 等值表示– 这只是意味着,如果输入发生变化,则输出也会以相同的方式发生变化
- 稀疏交互 -这使网络可以有效地描述来自简单构件的许多变量之间的复杂交互。
- 参数共享–将同一参数用于模型中的多个功能
创建上述结构是为了改进机器学习系统。CNN还允许处理可变大小的输入,并有效地描述来自简单构建块的许多变量之间的复杂交互。
这些神经网络的显着局限性是它们在API级别上的约束。输入(例如图像)和输出(例如概率类别)都是固定大小的向量。通过使用固定数量的图层进行映射,甚至可以通过其数据模型进行计算。
周围的一些历史-卷积神经网络(CNN's)
除了为机器人和自动驾驶汽车的视觉提供动力外,ConvNets还成功地识别了人脸,物体和交通标志。自1988年以来,Yann LeCun在先前的多次成功迭代之后被命名为LeNet5。LeNet是最早推动深度学习的卷积神经网络之一 。
2012年,Alex Krizhevsky在ImageNet竞赛中使用了卷积神经网络,从那时起,所有大公司都为此而奔波。CNN是计算机视觉领域最具影响力的创新。在1990年代,LeNet体系结构主要用于字符识别任务,例如读取邮政编码,数字等。
图像处理–人与计算机
对于人类而言,识别物体是我们从出生就开始学习的第一项技能。刚出生的婴儿开始将面孔识别为爸爸,妈妈等。识别变得轻松而自动化。
处理图像的人类行为与机器完全不同。人们只要环顾四周并立即刻画场景特征,就可以自动给每个图像添加标签,并且甚至无需自觉地注意到每个对象都带有标签。
对于计算机而言,识别对象有些复杂,因为它们将所有内容视为输入或输出,它们属于一个类或一组类。这就是所谓的图像处理,我们将在下一节中详细讨论。在计算机中,CNN可以进行图像识别,图像分类。它在对象检测,面部识别以及通过单词嵌入任务进行的各种文本分类中的成功中非常有用。
简而言之,计算机视觉就是基于视觉元素和图案自动理解任何图像或视频的能力。
输入和输出–工作原理
我们在这篇文章中的重点将仅放在图像处理上
CNN需要训练和测试模型。每个输入图像都经过一系列带有滤波器(核),池化,全连接层(FC)的卷积层,并应用softmax函数(逻辑函数的一般化,该逻辑函数将任意实数值的K维向量“压榨”为实数值) Kd向量)以将概率值介于0和1之间的对象分类。这就是CNN中每个图像都表示为像素值矩阵的原因。
卷积神经网络将输入图像分类为狗,猫,鹿,狮子或鸟等类别。
卷积+合并层充当输入图像的特征提取器,而完全连接的层充当分类器。在上图中的图像中,在接收到一个可爱的图像作为输入时,网络会在所有四个类别中为其正确分配最高概率(0.94)。但是,输出层中所有概率的总和应该为一。上图中显示的ConvNet中有四个主要操作:
- 卷积
- 非线性度(ReLU)
- 合并或子采样
- 分类(全连接层)
这些操作是每个卷积神经网络的基本构建块,因此了解此工作原理是对ConvNets或CNN有了良好理解的重要一步。
卷积神经网络–体系结构
如上图所示,用于构建卷积神经网络的层。简单的ConvNet是一系列的层,而ConvNet的每一层都通过可区分的功能将一个激活量转换为另一个激活量。我们使用四种主要类型的层来构建上面的ConvNet体系结构。
卷积层,ReLU,池化和完全连接层。
初始化
使用随机值初始化所有过滤器和参数/权重
卷积层
这将训练图像的原始像素值保留为输入。在上面的示例中,使用了宽度为32,高度为32且具有三个颜色通道R,G,B的图像(鹿)。它经过前向传播步骤,并找到每个类别的输出概率。该层通过使用输入数据的小方块学习图像特征来确保像素之间的空间关系。
- 假设上面图像的输出概率为[0.2,0.1,0.3,0.4]
- 特征图的大小由三个参数控制。
- 深度– 用于卷积运算的滤波器数量。
- 步幅–在输入矩阵上对矩阵进行滤波的像素数。
- padding –最好在边界矩阵周围输入零。
- 使用所有4个类的总和来计算输出层的总误差。
- 总误差= ∑½(目标概率–输出概率)²
- 连接到输入中局部区域的神经元的输出计算。这可能会导致16个滤镜的体积为[32x32x16]。
整流线性单元(ReLU)层
甲 非线性操作。该层应用逐个元素的激活功能。在每个卷积操作之后都使用ReLU。它按像素应用,并将特征图中的所有负像素值替换为零。这使卷的大小保持不变([32x32x16])。ReLU是非线性运算。
池化层
也称为子采样或下采样。池化层沿空间维度(宽度,高度)进行下采样操作,导致体积为[16x16x16],即减小每个特征图的维度,但保留最重要的信息。
- 校正后的要素地图上的最大池化操作。
全连接层
在“完全连接层”中-每个节点都连接到相邻层中的每个其他节点。FC层使用传统的多层感知器计算类分数,该感知器在输出层中使用softmax激活函数。结果是体积为[1x1x10],这10个数字中的每个数字都对应一个类别得分,例如CIFAR-10的10个类别。
该层的主要工作基本上是从Conv或ReLU或池层过程输出的输入量。将输出排列在N维向量中,其中N是程序必须选择的类数。
卷积神经网络–实际业务用例
许多现代公司都将CNN用作其业务的骨干,例如Pinterest将其用于家庭供稿个性化,将Instagram用于搜索基础结构。最大的3个用户如下。
- 自动标记算法– 标记或社交标记是指将相关关键字或短语与实体(例如文档,图像或视频)相关联的动作。我们的实验(上文)表明,用于自动标记和更复杂模型的有效时频表示可从更多训练数据中受益。
- 图片搜索 -在Google搜索结果中可以找到与用户输入或文本输入相似的图像。它在Chrome应用上运行良好。Google的算法依赖于200多个独特的信号或“线索”,使猜测搜索成为可能。这里的属性是网站,内容的年龄,基于IP地址的区域和PageRanks。遗憾的是,根据您的肤色,这存在很大偏差。您可以尝试一下。
- 产品推荐– 几乎所有的电子商务,零售,视频点播或音乐流媒体业务都使用大型推荐系统。推荐器系统中的算法通常分为两类-基于内容的过滤方法和协作过滤方法,尽管现代推荐器将这两种方法结合在一起。
图书推介及其他材料 称
注意事项:
所有积分(如果有)仅保留在原始贡献者上。在这篇文章中,我们已经介绍了卷积神经网络,这是一种机器学习,可以从未标记的历史数据中找到隐藏的宝石。最后一篇关于监督机器学习的文章。在下一个即将发布的帖子中,将讨论增强 机器学习。
反馈和其他问题
您对深度学习或机器学习有任何疑问吗?发表评论或通过电子邮件提出您的问题 。会尽我所能回答。
结论- 这篇文章试图用简单的术语解释卷积神经网络背后的主要概念。CNN是具有一些卷积层和其他一些层的神经网络。卷积层具有许多进行卷积运算的滤波器。CNN的构建过程始终涉及四个主要步骤,即卷积,池化,展平和完全连接,这已详细介绍。选择参数,应用带步幅的过滤器,如果需要则填充。在图像上执行卷积并将ReLU激活应用于矩阵。是CNN的主要核心流程,如果您弄错了,整个欢乐就结束了
============================关于作者=================== ====
在 以下位置阅读有关作者的信息: 关于我
谢谢大家,花时间阅读这篇文章。请分享您的意见/评论/评论家/协议或分歧。备注有关职位,主题和相关性的更多详细信息,请阅读 免责声明。
FacebookPage ContactMe Twitter ============================================== =====================
出色的帖子使您如此复杂的主题易于理解。谢谢
嗨,
这是最新的蓬勃发展的技术,它可以帮助您了解更多有关它的信息。
精彩的插图信息。谢谢你 毫无疑问,这对于我的未来项目将非常有用。希望看到同一主题的其他帖子!
Thank you for sharing…
Simple and easy to understand …
This is very high level info not much of details to learn.
Do we loose any information when using a feature detector at Convolution + Pooling layers which act as feature extractors?
I am student and worker at same time and I loved your narrative Convolutional Neural Networks are very similar to ordinary Neural Networks from the previous. Please help to answer in details how the flow to FCL happens, pls let me know bit by bit
Great post! Thanks. so much for the work for people like me really appreciate. I have few questions though if you can answer please
1 – What makes convolutional filters in the first convolutional layer “unique”?
2 – Are all 5×5 filters have same behaviour.
3 – Are they just being passed through different non-linear functions or something?
4 – Why don’t they produce the same representations?
5 – What informs such decisions? makes
Greate post, I think you are mising on showing or hiding the down side which are as below, you may add it tou your post if you want. CNNs have many drawback than a weakness.
Convolutional neural networks like any neural network model are computationally expensive. This can be overcome with better computing hardware such as GPUs and Neuromorphic chips.
IN CNNs has issues in class imbalance and overfitting when there many classes (+/- 50 classes).
Something that a lot of people are concerned about is that no theory gives bounds on the amounts of layers to be used, therefore, it is usually a trial and error thing.
This is super basic but very very informative and useful info for people to start with. I would love to see part-2 and subsequent parts to check for details. Seriously you are helping students and professional a lot, keep writing and keep learning. Many Many Thanks for London School
您惊人的有见地的信息对我,尤其是对我的同伴来说,意义重大。万分感谢; 来自我们所有人。ExcelR机器学习课程浦那