我们在技术上是否能够使用当前技术在硬件上制造任意大型的神经网络?

人工智能 神经网络 循环神经网络 硬件 执行
2021-11-02 22:35:13

如果可以使用晶体管来实现神经元和突触,那么是什么阻止我们使用与制造 GPU 相同的方法来创建任意大的神经网络?

从本质上讲,我们已经看到了在顺序处理器上实现的虚拟神经网络是如何工作的(甚至 GPU 也是顺序机器,但具有大量内核)。

可以想象,使用 GPU 设计原则——基本上是让数千个可编程处理单元并行工作——我们可以制造更简单的“神经元处理单元”,并将数百万或数十亿个 NPU 放在一个大芯片中。它们将拥有自己的内存(用于存储权重)并通过共享总线连接到数百个其他神经元。它们可以具有例如 20 Hz 的频率,这将允许它们与许多其他神经元共享数据总线。

显然,这里存在一些电气工程挑战,但在我看来,所有大型科技公司现在都应该探索这条路线。

许多人工智能研究人员表示,超级智能将在 2045 年左右出现。我相信他们的推理是基于摩尔定律以及我们能够在我们拥有的最快计算机上运行的软件中实现的神经元数量。

但事实是,我们今天正在制造带有数十亿晶体管的硅芯片。SPARK M7 拥有 100 亿个晶体管。

如果实现一个(非可编程)神经元和数百个突触需要例如 100 000 个晶体管,那么我们可以在硬件中制作一个模拟 100 000 个神经元的神经网络。

如果我们设计这样一个芯片,如果我们想要更多的神经元,我们可以简单地把它做得更大,那么在我看来,任意大的神经网络只是一个预算问题。

我们在技术上是否能够使用当前技术在硬件上制造任意大型的神经网络?

请记住:我不是在问这样的网络是否真的会非常智能。我只是想问,如果我们决定付钱给英特尔来做这件事,我们是否真的可以制造出任意大型、高度互连的神经网络?

这意味着,在某些科学家能够在软件中创造通用智能的那一天,我们可以利用我们的硬件能力将这种通用智能发展到人类水平甚至更高。

4个回答

您描述的方法称为神经形态计算,这是一个非常繁忙的 领域

IBM 的TrueNorth甚至有尖峰神经元。

这些项目的主要问题是没有人完全知道如何处理它们。

这些项目不会尝试创建经过优化以运行神经网络的芯片。这当然是可能的,但昂贵的部分是训练而不是神经网络的运行。而对于训练,你需要大量的矩阵乘法,而 GPU 已经非常擅长了。谷歌的 TPU将是一种针对运行神经网络进行优化的芯片。)

要研究可能在大脑中实现的算法(我们对此几乎一无所知),您需要灵活性,这是这些芯片所没有的。此外,工程挑战可能在于提供大量突触,只需比较 TrueNorth 的每个神经元 256 个和大脑 10,000 个的平均突触数。

所以,你可以创建一个按照某种神经架构设计的芯片,它会更快、更高效等等……但要做到这一点,你需要知道哪种架构首先起作用。我们知道深度学习是有效的,所以谷歌使用定制的硬件来运行他们的应用程序,我当然可以想象定制的深度学习硬件将来会出现在你附近的智能手机上。要为强大的 AI 创建神经形态芯片,您需要首先开发强大的 AI。

如果神经元和突触可以用晶体管实现,

我希望你不是在谈论目前在机器学习领域赢得所有比赛的神经网络(MLP、CNN、RNN、深度残差网络……)。这些曾经被用作神经元的模型,但它们与真实脑细胞中发生的事情的关系非常松散。

尖峰网络应该更接近真实的神经元。我听说霍奇金-赫胥黎模型非常现实。然而——与我上面提到的模型相比——似乎没有一种有效的尖峰网络训练算法。

是什么阻止我们创建任意大的神经网络

  • 计算资源:训练神经网络需要很多时间。我们正在谈论计算机视觉中某些 CNN 模型的 GPU 集群约 12 天。
  • 训练数据:您添加到模型中的变量越多,您需要估计的数据就越多。神经网络并不神奇。他们需要可以使用的东西。

但事实是,我们今天正在制造带有数十亿晶体管的硅芯片。SPARK M7 拥有 100 亿个晶体管。

如果实现一个(非可编程)神经元和数百个突触需要例如 100 000 个晶体管,那么我们可以在硬件中制作一个模拟 100 000 个神经元的神经网络。

没那么简单:

  • 异步性:生物神经网络异步工作。这意味着一个神经元可能是活跃的,而其他所有神经元都不活跃。
  • 仿真:您假设只需要一个周期即可模拟生物神经元。但是,它需要数千个周期。你不能简单地使用更多的计算单元,因为有些东西是不可并行的。例如,想想函数f(x) = sin(x*x + 1)对于人类来说,基本上有三种计算:r1 = x*xr2 = r1 + 1r3 = sin(r2)即使你有 3 个人计算结果,你也不会比这个组中最快的一个人快。为什么?因为你需要最后一次计算的结果。

虽然单个晶体管可以近似单个神经元的基本功能,但我不同意任何电子元件都可以模拟突触/轴突。晶体管被蚀刻在平坦的表面上,并且只能与晶体管相邻或靠近晶体管互连。大脑中的轴突跨越很远的距离(与神经元本身的大小相比),并且不限于二维表面。即使我们能够将处理器上晶体管的数量与大脑中神经元的数量相近,我们也远没有连接数量那么接近。也可以说,与芯片上的二进制脉冲相比,大脑中的模拟信号每单位时间携带更多信息。此外,大脑实际上具有可塑性,即神经元之间的连接可以被削弱/丢弃或拉直/创建,

您可能需要考虑此列表

大脑和计算机之间的 10 个重要区别:

  1. 大脑是模拟的,计算机是数字的
  2. 大脑使用内容可寻址的记忆
  3. 大脑是一台大规模并行机器;计算机是模块化和串行的
  4. 处理速度在大脑中不是固定的;没有系统时钟
  5. 短期记忆不像 RAM
  6. 对于大脑或思维,无法区分硬件/软件
  7. 突触比电子逻辑门复杂得多
  8. 与计算机不同,处理和记忆是由大脑中的相同组件执行的
  9. 大脑是一个自组织系统
  10. 大脑有身体