如何教机器识别图像中的物体?近年来,这一领域取得了巨大进展。例如,在神经网络的帮助下,可以以非常高的成功率将动物图像归类到相应的物种。这是通过用许多样本图像训练神经网络来实现的。网络会逐步调整,直至最终尽可能精确地得出正确答案。
然而,通常情况下,这一过程中形成了哪些结构,神经网络中发展了哪些机制最终达成目标,仍是个谜。由维也纳工业大学(TU Wien)拉德·格罗斯(Radu Grosu)教授领导的一个团队和由麻省理工学院(MIT)达妮埃拉·鲁斯(Daniela Rus)教授领导的一个团队,如今对这一问题进行了深入研究,并取得了一些惊人的结果:人工神经网络中形成的结构与动物或人类神经系统中出现的结构惊人地相似。
“我们使用的是所谓的卷积神经网络。这些是人工神经网络,常用于处理图像数据,”维也纳工业大学计算机工程研究所的扎哈拉·巴巴耶(Zahra Babaiee)说道。她是这篇论文的第一作者,并与麻省理工学院的达妮埃拉·鲁斯共同完成了一部分工作,与佩曼·M·基亚萨里(Peyman M. Kiasari)和拉德·格罗斯在维也纳工业大学完成了另一部分工作。
这些网络的设计灵感来源于我们眼睛和大脑中的生物神经网络。在那里,视觉印象由多层神经元处理。例如,当眼睛中的光信号激活某些神经元时,这些神经元会变得活跃,并将信号传递给它们后面一层的神经元。
在人工神经网络中,这一原理在计算机上以数字方式被模仿:所需的输入(例如数字图像)会逐像素传递到人工神经网络的第一层。这一层中神经元的活跃性仅仅取决于它们是被较亮还是较暗的像素所呈现。然后,利用第一层神经元的活动值来确定下一层神经元的活动:下一层中的每个神经元都根据一个非常特定的个体模式(根据一个非常特定的公式)将第一层中的信号组合起来,从而得出一个值,用于确定下一层中神经元的活动。
“在卷积神经网络中,并非一层中的所有神经元都对下一层中的每个神经元起作用,”扎哈拉·巴巴耶解释道。“即使在大脑中,一层中的每个神经元也并非无一例外地与前一层的所有神经元相连,而只是与特定区域内相邻的神经元相连。”
因此,在卷积神经网络中,使用所谓的“过滤器”来决定哪些神经元对某个特定的后续神经元有影响,哪些没有。这些过滤器不是预先确定的,而是在神经网络的训练过程中自动形成的。“当用成千上万张图像对网络进行训练时,这些过滤器和其他参数会不断进行调整。算法会尝试前一层的神经元以何种权重组合能得到最佳结果,直到图像以尽可能高的可靠性被归类到正确的类别,”扎哈拉·巴巴耶说道。“算法是自动这样做的,我们对其没有直接影响。”
然而,在训练结束时,可以分析以这种方式形成了哪些过滤器。这揭示了一些有趣的模式:过滤器的形状并非完全随机,而是分为几个简单的类别。“有时过滤器会以这样的方式发展,即一个神经元尤其受到它前面的直接神经元的强烈影响,而几乎不受其他神经元的影响,”扎哈拉·巴巴耶说道。其他过滤器呈十字形,或者显示两个相反的区域——一个区域的神经元对下一层神经元的活动产生强烈正向影响,另一个区域的神经元则产生强烈负向影响。
“令人惊讶的是,这些模式已经在生物神经系统中观察到,例如在猴子或猫身上,”扎哈拉·巴巴耶说道。在人类身上,视觉数据的处理可能也是以同样的方式进行的。生物进化产生了与自动机器学习过程中出现的相同过滤功能,这可能绝非巧合。“如果你知道这些结构在视觉学习过程中一次又一次地形成,那么你就可以在训练过程中考虑到这一点,并开发出比以往快得多地达到所需结果的机器学习算法,”扎哈拉·巴巴耶希望如此。