如何打通机器学习的“三大玄关”,你该这样Get新技能!
demi 在 周四, 08/03/2023 - 17:49 提交
随着时下智能时代的发展,机器学习已成为不少专业人士的“必备技能”。尽管如此,可它在实用性上仍然存在一些问题。
卷积神经网络(CNN)是一种深度学习算法,特别擅长处理图像和视频数据。它通过模拟生物视觉系统的方式,利用卷积层、池化层等多层网络结构自动提取图像中的特征,进行分类、识别和预测。CNN被广泛应用于计算机视觉任务,如图像分类、人脸识别、物体检测等,已成为深度学习领域的重要模型之一。

随着时下智能时代的发展,机器学习已成为不少专业人士的“必备技能”。尽管如此,可它在实用性上仍然存在一些问题。

本文将用 C++ 编写一个 CNN 和一个名为 mlpack 的库来对MNIST数据集进行分类。

使用全连接层的网络来分类图像是很奇怪的,因为这样的一个网络架构不考虑图像的空间结构。所以一个很直接的考虑就是引入图像的一种空间关系来构建神经网络,也就是这里要介绍的卷积神经网络(CNN)。

清华大学 Jittor 团队提出了一种基于细分结构的网格卷积网络 SubdivNet。该方法首先将输入网格进行重网格化(remesh),构造细分结构,得到一般网格的多分辨率表示,并提出了直观灵活的面片卷积方法、上 / 下采样方法,并将成熟的图像网络架构迁移到三维几何学习中。

对小目标检测进行了分析,并结合已有的方法给出了一些思路。

近些年来,超分辨率技术(Super resolution)越来越流行,许多公司将超分辨率技术整合到他们的工作之中。超分辨率的概念早就已经出现,而近些年来机器学习的进步才又一次把超分带入到媒体应用的领域之中。在如今4K/8K视频的时代,超分辨率技术只会越来越重要。

本章节我们将介绍如何对图像上的每个像素进行分类,其思想是创建图像上所有检测到的目标区域的地图。 基本上,我们想要的是下面的图像,其中每个像素都有与之关联的标签。最后我们将学习卷积神经网络(CNN)如何为我们完成这项工作。

如今,深度学习是必经之路。大规模数据集以及深层卷积神经网络(CNN)的表征能力可提供超准确和强大的模型。但目前仍然只有一个挑战:如何设计模型?像计算机视觉这样广泛而复杂的领域,解决方案并不总是清晰明了的。计算机视觉中的许多标准任务都需要特别考虑:分类、检测、分割、姿态估计、增强和恢复以及动作识别。尽管最先进的网络呈现出共同的模式,但它们都需要自己独特的设计。

本文整理John Olafenwa的一篇博文,主要介绍了卷积神经网络采用的四种基本组件:Pooling、Dropouts、Batch Normalization、Data Augmentation ,分别解释了这些组件在现代CNN中所起的作用。另外,作者使用keras实现这几种组件,构建一个完整的CNN系统,更有助于读者理解这几种组件的作用和实现方法。

卷积神经网络(CNN)广泛应用于深度学习和计算机视觉算法中。虽然很多基于CNN的算法符合行业标准,可以嵌入到商业产品中,但是标准的CNN算法仍然有局限性,在很多方面还可以改进。这篇文章讨论了语义分割和编码器-解码器架构作为例子,阐明了其局限性,以及为什么自注意机制可以帮助缓解问题。