hello,大家好,我是小孟,欢迎来到我的频道,创作不易,喜欢的请三连:关注、点赞、收藏。研究一个技术,我喜欢追根溯源,并看看最开始的技术是如何发展的,经历了哪些创新,现有的技术还有什么问题。今天,带着这个问题,我们来聊一聊感知机。 我的另外一篇文章介绍了深度学习发展史,大家有兴趣可以阅读:深度学习:技术发展史科普 一、技术背景 我们都知道,我们的大脑是由物理神经元组成,神经元是大脑执行计算和信息传递的主要细胞类型,其基本结构包括细胞体、树突、轴突和突触等多个部分,如下图所示: 图1物理神经元 细胞体是神经元的中心,它包含了神经元的细胞核和其他重要的细胞器。树突是从细胞体延伸出来的一些突起,它们接收来自其他神经元的信息,并将这些信息传递给细胞体。轴突则是另一种突起,它们将神经元的输出信号传递给其他神经元或者是肌肉等目标器官。神经元之间的连接点叫做突触,通过突触,神经元之间可以进行信息传递。当一个神经元接收到来自其他神经元的信息时,这些信息会被转化为电信号并沿着树突传递到细胞体。在细胞体中,这些电信号会被集成起来,并根据神经元自身的特性产生一个输出信号。如果这个输出信号超过了一定的阈值,神经元就会通过轴突将这个信号传递给其他神经元或者目标器官。 大脑中的神经元之间相互连接,形成了一个复杂的网络结构,这个网络结构的复杂性使得大脑可以处理各种各样的信息,包括视觉、听觉、触觉等多种信息。通过这种方式,大脑中的神经元能够执行高级的计算任务,例如学习、记忆和决策等。 1943年,受大脑的神经元结构的启发,神经科学家WarrenMcCulloch和数学家WalterPitts提出一个基于神经元模型的计算机理论,称为McCullochPitts神经元模型。McCullochPitts神经元模型是一种二值逻辑模型,它基于一个假设,即神经元可以被看作是一个逻辑门。神经元可以接受来自其他神经元的输入信号,并将这些信号加权求和,并将其传递给一个阈值函数。如果加权和超过了阈值,则神经元会输出一个脉冲,否则它会保持静止。它指出神经元的行为可以被描述为一个逻辑函数,并且这个逻辑函数可以通过神经元之间的连接关系进行计算。 1957年,FrankRosenblatt提出了感知机模型,并在《心理学评论》(PsychologicalReview)杂志上发表了关于感知机的论文《ThePerceptron,aPerceivingandRecognizingAutomaton》。感知机模型是一种二元线性分类器,它受到McCullochPitts神经元模型的启发。感知机可以接收输入向量,并根据输入向量中的权重和偏差值计算加权和,然后将这个值输入到一个激活函数中。如果这个值超过了激活函数的阈值,感知机就输出1,否则输出0。这个模型可以用来处理线性可分问题,也就是能够用一条直线或者超平面将两类数据分开的问题。 二、作者简介 FrankRosenblatt(1928年1971年)是一位美国神经科学家和计算机科学家,他是神经网络领域的重要人物之一。Rosenblatt在神经科学和计算机科学领域的研究成果对于推动人工智能和机器学习领域的发展有着重要的影响。Rosenblatt的研究主要集中在神经科学和计算机科学的交叉领域,他的主要贡献是发明了感知机模型并应用于模式识别和分类问题上。 除了感知机模型,Rosenblatt还开发了Adaline(适应性线性元件)算法,这是一种用于连续输出的单层神经网络模型,可以用于回归问题。他还研究了神经元的计算和传递信息的机制,并发现了神经元学习规则中的Hebbian学习规则,这在神经网络的学习中起着重要的作用。Rosenblatt是一位非常有成就的科学家,他的研究成果对神经网络领域的发展和机器学习的进步都产生了重要的影响。虽然他在1971年去世,但是他的成果和思想仍然继续影响着当今的机器学习和人工智能领域。 三、技术核心原理 Rosenblatt在论文中提出了一个用来训练感知机的算法,称为感知机学习规则(perceptronlearningrule),它可以根据输入数据进行权重的更新。该规则的基本思想是通过反复将训练数据集的样本输入到感知机中,然后根据感知机的输出与期望输出之间的误差来更新感知机的权重和偏差值。具体来说,感知机学习规则可以分为以下步骤: 1、初始化权重和偏置值。对于有n个输入特征的感知机模型,可以将其权重和偏置值初始化为0或者随机数。 2、对于训练数据集中的每个样本,执行以下步骤: a。将输入向量乘以权重向量,再加上偏置值得到感知机的加权和。 b。将加权和输入到激活函数中,得到感知机的输出。 c。根据感知机的输出与期望输出之间的误差,调整权重和偏置值。如果感知机输出的值与期望输出的值相同,则权重和偏置值不需要更新。如果输出值与期望输出不同,则可以根据以下公式更新权重和偏置值: 其中,是第i个权重值,是学习率(learningrate),是期望输出的值,是感知机的实际输出,是第i个输入特征。 3、重复执行步骤2,直到模型收敛或达到预定的迭代次数。如下图所示: 图2感知机学习过程 这样,感知机可以逐渐调整自己的参数,最终能够正确地分类输入数据。 四、技术应用 论文的发表引起了广泛的关注,感知机被认为是第一个成功的神经网络模型之一,并且在计算机视觉等领域中有着广泛的应用。 在图像识别领域中,感知机模型被用来识别手写数字。通过将每个数字表示为一个固定长度的二进制向量,并将其输入到感知机中进行训练,最终实现了对手写数字的识别。在语音识别中,感知机模型被用来对语音进行分类和识别。通过将语音信号转化为特征向量,并将其输入到感知机中进行训练,最终实现了对不同语音的分类和识别。在控制系统中,感知机模型被用来设计自适应控制系统。通过将控制系统的输入和输出表示为向量,并将其输入到感知机中进行训练,最终实现了对控制系统的自适应调节。 五、发展遇到瓶颈 1969年,MarvinMinsky和SeymourPapert出版了一本名为《Perceptrons》的书籍,指出了感知机模型的局限性,即它只能处理线性可分问题,不能处理更复杂的非线性问题。 并通过一系列数学证明,证明了单层感知机无法解决一些简单的问题。其中最具代表性的是针对异或(XOR)问题的证明。异或问题是指对于两个二进制数的输入,输出是这两个数不同的位的集合。具体而言,对于输入(0,0),(0,1),(1,0),(1,1)四个点,异或问题的输出分别是0,1,1,0。Minsky和Papert证明了,如果使用只有一个阈值的单层感知机来解决异或问题,那么就需要对每一个输入设置不同的权重和阈值,而这是不可能实现的。他们还利用投影映射的概念,证明了单层感知机无法解决线性不可分问题。这个发现导致了感知机模型的研究进展受到了阻碍。 但是,书中提出了多层感知机的设计思路,并给出了一个两层感知机的例子。该例子包括了输入层、隐藏层和输出层,其中隐藏层的存在使得感知机可以解决线性不可分问题。 六、结束语 单层感知机是一个简单的神经网络,能够解决一些线性可分的任务,不能处理更复杂的非线性问题,但是却是神经网络发展的基石。是了解深度学习发展的基础源头,对于我们了解深度学习的发展非常有帮助。