神经网络——不止是深度学习

神经网络——不止是深度学习

神经网络(Neural Networks)计算智能(Computational Intelligence)的一个分支,比深度学习更加高级。虽然很多人在寻找最深层次的网络,但也有人在寻找不同类型网络,这类网络会具备独特的实现和用途。

在这篇文章中,我会对三种不同类型的神经网络——卷积神经网络(Convolutional Neural Networks)自组织特征图(Self-Organizing Feature Maps)极限学习机(Extreme Learning Machine)进行高度概括。如果你想了解更多数据分析相关内容,可以阅读以下这些文章:
教你如何用神经网络和机器学习进行动态定价
神经网络,一网多用
从0开始:神经网络分类器
机器学习面试,你必须知道这些数学知识

图源:Unsplash 摄影:eberhard grossgasteiger

学习动机

计算智能 (CI) 社区每年进行的研究数量非常惊人。CI 的一个特定分支就是风靡一时的神经网络(Neural Networks)神经网络之所以成为主流,是因为其性能和独特性可以让我们了解构建架构的深度。如今,深度学习似乎成为“人工智能”的代名词,这也让人们慢慢接受了它的存在。

第一次接触到深度学习时,我试图对多维声学信号(对感兴趣的领域作出反应时,根据记录的声音而创建的图像)进行分类。那时,AlexNet 是人们的不二之选;所以,我运用了卷积神经网络 (CNN) ,评估了相关数据。令我惊讶的是,效果非常好。这段经历让我认识到了这些黑匣子般的力量。然而,直到几年后我才了解到,神经网络不仅仅是深度分类/回归算法。IEEE 计算学会(IEEE Computational Society)将这一分支定义为“以人脑作为灵感来源,人工神经网络 (NN) 是一种大规模并行分布式网络,可以从案例中学习和概括。

神经网络研究领域包括前馈神经网络、循环神经网络、自组织神经网络、深度学习、卷积神经网络等。那么,你是不是也知道神经网络领域不仅与深度架构有关?我很高兴我能了解到其他领域,并将在这篇文章中与你分享。

卷积神经网络
(Convolutional Neural Networks)

图源:Unsplash 摄影:Joe Cainone

卷积神经网络 (CNN)(可以说是最流行的神经网络类型)主要关注于图像处理。在描述神经网络时,很多人都会举出将一张图像分类为猫或狗的例子。CNN 正是执行此任务的神经网络类型。要分解 CNN,让我们考虑其三个不同的方面——滤波器(Filters)、架构(Architecture)和优化功能(Optimization Function)

滤波器(Filters)

为了方便理解,在本文中,我们将滤波器视为 CNN 的一个构建块。每个滤波器都是一组在训练阶段经优化的权重。优化的目标是为了学习一组权重,这些权重代表我们想分类的对象类型。例如,滤波器的第一层可以学习边缘,随着我们进一步深入网络,这些滤波器被组合起来,形成更复杂的形状。然而,这并不是真正在发生的事情,因为我们不是为了学习形状而进行优化——我们是为了准确性而进行优化。

架构(Architecture)

如果滤波器是构建块,那么我们就是用它们构建架构的。架构由它具体的结构定义,可以是深的(多层滤波器)和宽的(每层有许多滤波器)没有完美的架构,这就是为什么有这么多的架构存在。我的研究领域之一,是融合 CNN 来进行图像分类。我们融合了七个网络,发现融合网络可以提高性能——这表明多架构更好。

但许多因素限制了哪种架构最适合你的情况。例如,你将在哪里部署你的 CNN?在你的手机上?还是在云端?更深的网络需要更多的计算能力,因此,在使用(或构建)架构时必须考虑这些因素。

优化功能

优化函数被用于驱动 CNN 的训练。对于图像分类,目标可能是对尽可能多的图像进行正确分类。但是,假设 CNN 正在尝试执行对象定位(在图像中查找对象),在这种情况下,优化函数将尝试在一个对象(并且仅该对象)周围找到并放置一个框。我们的创造力就限于优化函数可以做什么。

上图突出显示了 CNN 的三个组成部分

CNN 为解决一系列广泛的问题打开了大门。TensorFlow 和 Pytorch 等开源软件包不仅促进了 CNN 的使用,还促进了 NN 的使用。由于它们易于使用,我确实认为我们应该鼓励使用这些工具。你是可能在一个小时内建立出一个带有自定义优化功能的自定义架构的(我已经做过好几次了)

我们应该挑战高精度就足以部署模型的这个观念。作为这些技术的实践者,我相信我们每天都在做得更好,但我们应该继续追求卓越——尤其是当我们把很多东西留给数据时。

应用

和前文一样,我也会给你一个例子。几年前,我在一家提供碎片监测服务的公司工作。监视器通过每年分析数十万张图像,来确保正确的负载估计。因此,我用 CNN 来估计每个负载中碎片的数量(回归)和类型(分类)。此任务不需要创建自定义架构;然而,我迭代了几种现成的架构,来找到性能最好的架构。

这个项目花了几个星期,因为数据需要清理。需要删除数据中的例外情况,以确保我们不会对有缺陷的图像进行训练。我改变了这个用例的优化函数。对于这个应用程序来说,准确度分数还不够。对客户端来说,一个重要因素是,如果加载调用是错误的,它不会差太多。例如,如果卡车是满的,我们不可能会说他是空的。因此,我将最大绝对误差附加到优化函数。这个更新可最小化回归值的距离。我们的 CNN 可能会得到更多错误的图像,但它可以通过它们可能出错的程度来创建一个界限。

自组织特征图

图源:Unsplash 摄影:Marjan Blan@marjanblan

如果你谷歌“神经网络”,它会找到大约 162,000,000 个结果。其中,很少有自组织特征图 (SOFM)。无论是在应用程序还是设置方面,SOFM 与你今天听到的大多数神经网络相对不同。SOFM 推动了神经气体等其他算法的创建,但在本文中我们只会从基础开始。

SOFM 是一种无监督算法——这意味着我们没有标签(比如猫或狗)。大多数无监督算法会执行聚类或降维。当我们有很多维度的东西,而我们需要减少它时,就会发生降维。这里有一个粗略的例子,让我们想象一个立方体。它的宽度、高度和深度是定义它的一种方式。但是,如果我们将这些特征中的每一个相乘,我们就会计算出它的体积。我们已经从一个对象的三个描述变成了一个,所以,我们可以将它的数据维度从三个减少到一个。

但不幸的是,数据并不总是如此干净。大多数时候,当我们从高维空间减少时,我们会因为减少几个维度而丢失信息。同样,如果立方体是蓝色的,我们不能用它的体积值来表示它。因此,整个算法库都在试图降低数据的维数。在没有完美的归约工具的情况下,存在许多算法。NN 社区开发了 SOFM 来解决这个问题。

应用

我最喜欢 SOFM 的用途是,它们能够在二维空间中可视化高维的特征向量。SOFM 有两个阶段——训练和映射。在训练期间,随机生成的神经元“地图”开始训练过程。在每次迭代中,我们将训练数据提供给地图,它通过将具有相似输出的神经元分组来更新/组织自身。目标是,相似神经元的组/簇将自己与其他组分开。如果成功,我们将能够在二维图像中看到不同的簇。

在映射过程中,新样本(来自高维)被分类到它们所属的集群中。一个非常简单的例子就是像素颜色。像素可以用三个值表示——R、B 和 B。我们可以使用 SOFM 算法对这些像素进行聚类。在这个例子中,我们知道颜色会聚集在一起,但是如果我们对颜色一无所知,我们就能在查看地图后知道它们的相似性。下面这个图就展示了这个例子。

在这个例子中,我们从许多像素值中学习了一个特征图。(插图由作者提供)

无监督方法连接到应用程序可能会有挑战性,因为它们通常用于探索数据集,来更好地理解它们。在大数据时代,我们可能会有具有数千个特征的样本,而数据科学家无法消化这么多信息。因此,随着我们收集更多数据并需要快速理解它,无监督技术将变得至关重要。SOFM 可能是更好地洞察高维数据的关键。

极限学习机
(Extreme Learning Machines)

图源:Unsplash 摄影:Web Donut

极限学习机 (ELM) 是一种鲜为人知的神经网络类型。ELM 背后的理论和其他 NN 的训练不同。请记住,NN 通常使用反向传播来学习 NN 中的所有权重。

然而,在 ELM 中,在训练期间只会学习一组权重。层中的权重是固定的,并是随机初始化的,最后一层权重是唯一学习的。随机初始化的权重在数据通过网络传播时随机变换数据。网络中的最后一层最终会变成一个需要求解的线性方程。一些数学技巧是使这个工具工作所必需的。

通常,我会强调某种类型的应用程序,但你现在可能已经看到了一百种监督分类算法。相反,这里有一个关于 ELM 的有趣事实。ELMs其实挺“戏剧“的。戏剧在学术论文中并不经常出现,但在 ELM 中却出现了。学术界想要在坚实数学的基础上,有新方法而蓬勃发展。但ELM 可能不符合要求。ELM 遭到了强烈反对,因为 ELM 这个想法并不新鲜。他们声称 ,ELM 是其他方法,他们不需要一个新名称——极限学习机。

结论

除了世界上典型的主流 GoogleNet 和 GPT-4 之外,还存在许多不同类型的 NN。这些NN 绝对值得人们的赞扬,但是,记住整个神经网络的分支同样重要。我在这篇文章中只触及了皮毛,但这个领域每天都在进步。我迫不及待想看看接下来会发生什么!感谢你的阅读! 你还可以订阅我们的YouTube频道,观看大量数据科学相关公开课:https://www.youtube.com/channel/UCa8NLpvi70mHVsW4J_x9OeQ;在LinkedIn上关注我们,扩展你的人际网络!https://www.linkedin.com/company/dataapplab/ 

原文作者:Bryce Murray, PhD
翻译作者:Lia
美工编辑:过儿
校对审稿:Jiawei Tong
原文链接:https://towardsdatascience.com/neural-networks-more-than-deep-learning-a0c9e1629781