在研究之外是否需要对神经网络有深入的技术理解?

人工智能 神经网络 楷模
2021-11-06 17:14:49

要理解神经网络的内部工作原理,需要大量的数学概念。如果您不擅长计算局部梯度,那么单独的反向传播是一项具有挑战性的技术。而这仅仅是旅程的开始。

但是我研究神经网络的次数越多,我就越觉得所有这些困难的数学概念只有在你对神经网络进行实际研究或想知道幕后发生的事情时才需要。如果您“只是”想利用神经网络实现 AI,则可以使用几个高级编程框架和库,包括用于最先进的神经网络(例如 VGG、GoogLeNet 和 ResNet)的模型动物园。

所以我的问题是,开发人员是否需要对当今的所有细节有深入的了解,或者我们是否达到了框架为我们处理这些细节的水平?

2个回答

这取决于你到底想成为什么。如果你只想运行神经网络,你不需要成为数学家。大多数数据科学家不懂数学,但他们知道如何运行机器学习框架。一般来说,只有博士懂数学。

在业界,大多数机器学习的职位(例如软件工程师、大数据工程师等)不需要高等数学。但是您应该非常擅长编程,并且了解矩阵操作等简单的事情。业内的数据工程师一般都有很好的编程能力,但是他们看不懂数学方程(或者只是简单的方程)。

然而,机器学习中的定量位置确实需要大量的数学知识。这在研究和工业中都会发生。

好消息——如果你没有博士学位(例如统计学),没人会期望你懂数学。

概括:

  • 如果你的工作更像是一个发展职位,数学是一个优势,但不是绝对必要的
  • 如果您的工作是研究,您确实需要高级数学知识(例如博士)
  • 如果您的工作不是研究,但仍以定量为基础。数学非常重要。

PS:我从事研究工作。我认识的每个从事机器学习工作的人都拥有博士学位。

在我看来,反向传播和阶跃函数(以及对人脑神经元的基本了解)绝对有用。Rusel-Norvig 在他们的“人工智能介绍”一书中有一个很棒的章节,将教授基础知识。你不需要博士学位。