为什么对ChatGPT、ChatGLM这样的大语言模型说“你是某某领域专家”

“介绍神经网络的基本概念和结构,讨论训练实践、技巧以及网络规模的大小对模型能力的影响 。同时介绍嵌入()概念,将高维数据映射到低维空间 。通过本文,您将对神经网络有更深入的理解,有助于后面理解是怎么做的,为什么它有效 。”
01

神经网络
那么我们用于图像识别等任务的典型模型实际上是如何工作的呢?当前最流行且最成功的方法是使用神经网络 。神经网络发明于 20 世纪 40 年代,其形式与今天的使用非常接近,可以被认为是大脑工作方式的简单理想化 。
人脑中约有 1000 亿个神经元(神经细胞),每个神经元每秒能够产生高达一千次的电脉冲 。神经元连接在一个复杂的网络中,每个神经元都有树状分支,使其能够将电信号传递给可能数以千计的其他神经元 。粗略地估计,任何给定的神经元是否在给定时刻产生电脉冲取决于它从其他神经元接收到的脉冲——不同的连接贡献不同的“权重” 。
当我们“看到图像”时,发生的情况是,当来自图像的光子落在我们眼睛后部的(“光感受器”)细胞上时,它们会在神经细胞中产生电信号 。这些神经细胞与其他神经细胞相连,最终信号通过一系列神经元层 。正是在这个过程中,我们“识别”了图像,最终“形成了我们正在“看到 2”的想法(也许最终会大声说出“二”这个词) 。
上一节中的“黑盒”函数是此类神经网络的“数学化”版本 。它恰好有 11 层(尽管只有 4 个“核心层”):
(注:虽然上图有 11 层,但是主要的就是前四种核心层,最后一个输出用的层 。各层的大致作用简单了解如下:?????????????
卷积层,就是使用一系列过滤器对图片做卷积计算,提取特征 。并且典型的卷积层会使用ReLU激活函数来引入非线性因数 。
Ramp 激活函数,一种斜面函数 。激活函数是构建神经网络过程中的重要环节,若神经元的净激活net为正,称该神经元处于激活状态或兴奋状态(fire),若净激活net为负,则称神经元处于抑制状态 。
激活函数有三种线性函数:线性函数 ( Liner),斜面函数 ( Ramp),阈值函数 (),两个非线形函数:S形函数 () ,双极S形函数)
池化层:池化这个概念相对简单,类似于压缩图片 。
层的功能:层是把一个输入的大小为n * c * h * w变成一个简单的向量,其大小为 n * (chw) 。可以用代替~,相当于第一维不变,后面的自动计算 。
线性层:对一维信号(向量)进行线性组合,所以它挨着层 。
层:将多个标量映射为一个概率分布,其输出的每一个值范围在(0,1) 。用在神经网络的最后一层,作为输出层,进行多分类 。)
这个神经网络没有什么特别的“理论推导”;它只是1998 年作为一项工程而构建的东西,并且被发现可以工作 。(当然,这与我们描述的通过生物进化过程产生的大脑没有太大不同 。)
(注:因为是模仿人类大脑的工作原理,所以它叫神经网络 。它提出来很久了,经过三个阶段,直到最近,算法进步和算力的增长,深度学习的神经网络才迎来它的爆发期)?????????
好的,但是像这样的神经网络如何“识别事物”呢?关键是吸引子的概念 。想象一下我们有 1 和 2 的手写图像:
我们希望所有 1 都“被一个地方吸引”,而所有 2 都“被另一个地方吸引” 。或者,换句话说,如果图像在某种程度上“更接近 1 ”而不是 2,我们希望它最终位于“1 位”,反之亦然 。
作为一个简单的类比,假设我们在平面上有某些位置,用点表示(在现实生活中,它们可能是咖啡店的位置) 。然后我们可能会想象,无论从平面上的哪个点开始,我们总是希望到达最近的点(也就是我们总是去最近的咖啡店) 。我们可以通过将平面划分为由理想化“分水岭”分隔的区域(“吸引盆地”)来表示: