PART2人工智能的发展历程(5%)【领会】
2.1人工智能的早期探索
2.1.1 20世纪40至50年代是人工智能的理论奠基阶段
1943年,图灵提出图灵机的概念。图灵机是一种抽象计算模型,通过简单规则实现复杂计算的可能性。1950年,图灵又提出著名的图灵测试,旨在通过测试机器能否模仿人类思维行为来评估其是否具有“智能”。
2.1.2 1956年是人工智能发展的一个里程碑:
1956年,JohnMcCarthy、MarvinMinsky、NathanielRochester和ClaudeShannon等人组织达特茅斯会议(DartmouthConference)。会上,McCarthy首次提出“人工智能”概念,并基于“学习的每个方面或智能的任何其他特征原则上都可以被精确描述,从而使机器能够模拟它”的猜想,明确AI研究的正式目标为:使机器能够模拟人类智能。
此次会议吸引了众多领域顶尖学者参与,其中AllenNewell和HerbertSimon此前开发的首个AI程序——逻辑理论家(LogicTheorist)在会上展示。该程序能够证明数学定理,是人工智能早期研究的重要成果。这一时期的AI程序通常依赖“规则”进行推理,并依据知识库来做出决策,在自然语言处理(如SHRDLU程序)和简单游戏(如国际象棋)等领域取得了初步应用成果。
2.2 BP神经网络
2.2.1基本概念
BP(BackPropagation)神经网络由Rumelhart和McCelland为首的科学家小组于1986年提出,是一种按误差逆传播算法训练的多层前馈网络,也是目前应用极为广泛的神经网络模型之一。它能够学习和存储大量输入-输出模式映射关系,无需事先明确描述这种映射关系的数学方程。
生活中,我们能通过观察大量图片,一眼认出猫和狗,但很难用精确的数学公式告诉别人如何区分。BP 神经网络也有类似能力,它不需要我们提前给出输入数据和输出结果之间的数学关系,只要给它足够多的 “例子”(输入 - 输出模式),它就能通过学习,记住这些数据之间的联系,从而在遇到新数据时,快速给出准确的判断或预测。
2.2.2工作原理
其学习规则采用最速下降法,通过反向传播不断调整网络的权值和阈值,使网络的误差平方和最小。BP神经网络的模型拓扑结构包含输入层、隐层和输出层。
输入层:负责接收外部数据,这些数据通常不做复杂处理或仅进行简单的分类处理。好比神经网络的 “眼睛和耳朵”,负责收集外部信息,比如图像的像素数据、文本的字词信息等,这些信息在这里只做简单整理,不做深度处理。
隐层:位于输入层和输出层之间,网络的深度即由隐层的数量决定。是神经网络的 “大脑中枢”,它的层数决定了神经网络的 “思考深度”。数据在隐层中经过层层分析、加工,逐步提取出关键特征。就像我们看一幅画,隐层会先识别线条、颜色,再组合成形状,最后判断出画的是猫还是狗。
输出层:输出神经网络最终处理结果,它接收隐层的处理结果,并通过特定函数转换为判断、分类、决策或评价分数等形式。接收隐层处理后的信息,通过特定的函数,将信息转化为我们需要的结果,比如对图像进行分类,给出风险评估分数,或是做出决策判断等。
在整个学习过程中,BP 神经网络会把输出结果和正确答案对比,算出误差。然后,误差会从输出层反向传播回前面各层,就像老师批改作业后,把错误信息反馈给学生。网络根据误差大小,调整每层神经元之间连接的 “权重”(可以理解为重要程度)和 “阈值”(触发条件),不断减少误差,直到输出结果足够准确。
2.3卷积神经网络
2.3.1基本概念
卷积神经网络(ConvolutionalNeuralNetworks,CNN)是一类包含卷积计算且具有深度结构的前馈神经网络,是深度学习的代表算法之一。可以把卷积神经网络想象成一个拥有层层 “筛子” 的智能工厂,输入的信息就像原材料,经过不同筛子(卷积层)筛选、提炼,每一层筛子都能提取原材料(信息)不同方面的特征。它具有表征学习能力,能按阶层结构对输入信息进行平移不变分类,这就好比无论一个苹果放在图片的左边、右边还是中间,CNN 都能 “认出” 它是苹果,不会因为位置变化而判断错误,因此也被称作 “平移不变人工神经网络”。
2.3.2发展历程
2.4循环神经网络(RNN)与长短期记忆网络(LSTM)
2.4.1循环神经网络(RecurrentNeuralNetwork,RNN)
循环神经网络(RecurrentNeuralNetwork,RNN)是一类以序列数据为输入,在序列演进方向进行递归且所有节点按链式连接的递归神经网络。可以把 RNN 想象成一个会 “记忆” 的接力选手,序列数据就像接力棒,选手在每一次接棒(处理当前数据)时,都会参考之前的记忆(之前处理的数据信息) ,而所有选手之间手拉手(节点链式连接),传递和更新这个 “记忆”。它具有权重共享特性,就好比每个选手都使用同一套接力技巧,这使得一个完全连接的循环神经网络理论上可以近似解决所有可计算问题。并且它具有记忆更新特性,即由上一时刻的隐含状态(上一棒选手的状态)和本时刻的输入(当前接力棒的情况)共同更新新的记忆(当前选手的状态)。
发展历程:
2.4.2长短期记忆网络(LSTM)
长短期记忆网络(LSTM)通过引入输入门、遗忘门和输出门来控制信息的流动,这就像给 “记忆” 装上了三个智能阀门。输入门决定哪些新信息可以进入 “记忆仓库”,遗忘门决定哪些旧信息需要被清理出去,输出门决定哪些信息可以被拿出来使用,有效解决了长期依赖问题,扩展了 RNN 的应用场景。双向循环神经网络(bidirectionalrecurrentneuralnetworks,BRNN)也在这一时期出现,它由两层循环神经网络组成,输入相同但信息传递方向相反,就像让两组接力选手同时从起点和终点出发,能同时利用过去和未来的信息解决当前问题。
发展历程:
2010年,RNN在语言建模、机器翻译、数据压缩和语音识别等领域展现出显著能力,进入新的发展阶段。
2014年,KyunghyunCho等人提出门控循环网络(gatedrecurrentunits,GRU),同年艾利克斯・格雷夫斯等人在神经图灵机(neuralturingmachine,NTM)方面的工作提升了RNN的学习表现。
2.5 词模型(Word2Vec等)
词模型旨在将自然语言中的单词映射到低维向量空间,使语义相近的单词在向量空间中距离较近,从而捕捉单词之间的语义关系。
Word2Vec是其中具有代表性的词模型,由谷歌在2013年提出。它通过构建浅层神经网络,基于大量文本数据进行训练,学习到每个单词的分布式表示。Word2Vec有两种主要模型架构:连续词袋模型(ContinuousBag-of-Words,CBOW)和跳字模型(Skip-Gram)。CBOW模型根据上下文单词预测目标单词,而Skip-Gram模型则相反,根据目标单词预测上下文单词。通过这种方式,Word2Vec能够有效学习单词的语义特征,在许多自然语言处理任务,如文本分类、机器翻译、语义相似度计算等中发挥重要作用。
2.6建模技术(Dropout、BatchNorm、ResNet等)
2.6.1 Dropout
Dropout 是一种正则化技术,由 Geoffrey Hinton 等人在 2012 年提出。在神经网络训练过程中,Dropout以一定概率随机忽略(置零)部分神经元及其连接,使得网络在每次训练时无法依赖特定神经元组合,从而减少神经元之间的共适应现象,降低过拟合风险,提高模型的泛化能力。
可以把神经网络想象成一个庞大的团队,每个神经元都是团队成员。在训练过程中,Dropout 就像在玩 “随机请假” 的游戏,以一定概率随机让部分神经元及其连接 “请假休息”(置零)。这样一来,团队每次工作时都无法依赖固定的成员组合,避免了某些成员过度 “抱团”,减少神经元之间的共适应现象。最终的结果是,降低了模型过拟合的风险,就像团队成员能力更均衡,让整个模型在新任务(泛化)中表现得更好。
2.6.2 BatchNorm(BatchNormalization)
BatchNorm 即批量归一化,由 Sergey Ioffe 和 Christian Szegedy 在 2015 年提出。它对神经网络每层的输入数据进行归一化处理,将数据归一到均值为0、方差为1的分布,使得网络在训练过程中对参数初始化和学习率的选择更加鲁棒,加快训练收敛速度,同时允许使用更大的学习率,提升训练效率,并且在一定程度上起到正则化的作用。
如果把神经网络的训练比作一场接力跑,每层输入数据就是接力棒。BatchNorm 的作用是给这些 “接力棒” 做标准化处理,将数据归一到均值为 0、方差为 1 的分布。这就好比给接力棒都套上统一规格的 “保护套”,让网络在训练过程中,对参数初始化和学习率的选择不再那么挑剔,变得更 “皮实”(鲁棒)。有了这个 “保护套”,不仅训练收敛速度加快,还能放心使用更大的学习率,提高训练效率,并且在一定程度上还能防止模型过度拟合,起到正则化的作用。
2.6.3 ResNet(ResidualNetwork)
即残差网络,由何恺明等人在2015年提出。随着神经网络层数的增加,训练过程中容易出现梯度消失或梯度爆炸问题,导致网络难以训练。ResNet通过引入残差块,在网络中建立短路连接,使得网络可以直接学习残差映射,有效解决了深度神经网络的训练难题,使得构建更深层次的神经网络成为可能。
当神经网络层数不断增加时,就像盖一栋非常高的大楼,在训练过程中容易出现 “建筑材料运输困难” 的问题,也就是梯度消失或梯度爆炸,导致大楼难以盖好(网络难以训练)。ResNet 通过引入残差块,相当于在大楼里搭建了 “快捷电梯”(短路连接),让网络可以直接学习残差映射,绕过一些复杂的计算步骤。这样一来,有效解决了深度神经网络的训练难题,使得搭建更深层次的 “神经网络大楼” 成为可能,在图像识别等领域就像高楼拥有绝佳视野一样,取得了卓越的性能表现。
2.7边缘检测与目标检测
2.7.1 边缘检测
边缘检测是计算机视觉中的一项基础任务,旨在识别图像中物体的边缘信息。就好比我们在一幅色彩斑斓的图画中,用铅笔轻轻勾勒出每个物体的轮廓线。这些轮廓线(边缘信息)能帮助计算机 “看清” 图像里物体的形状边界,就像我们通过轮廓来分辨画里的小猫、大树和房子一样,是计算机理解图像内容的重要一步。
常见的边缘检测算法有基于梯度的算法,如Sobel算子、Prewitt算子等,它们通过计算图像中像素点在水平和垂直方向上的梯度来确定边缘位置。还有Canny边缘检测算法,它是一种较为经典且效果较好的算法,通过高斯滤波平滑图像以减少噪声影响,然后计算梯度幅值和方向,再进行非极大值抑制以细化边缘,最后通过双阈值检测和边缘连接来确定最终的边缘。
2.7.2目标检测
目标检测是在图像或视频中识别出感兴趣的目标物体,并确定其位置和类别。想象你在热闹的菜市场找苹果,目标检测就如同你的眼睛和大脑配合,迅速从琳琅满目的商品中 “锁定” 苹果,不仅知道这是苹果(确定类别),还能准确指出苹果在摊位上的具体位置。对于计算机而言,它通过算法在图像或视频的海量信息里,精准找出我们指定的目标物体,给出其所在位置和类别,广泛应用于安防监控、自动驾驶等场景。
早期的目标检测方法主要基于手工设计的特征,如HOG(HistogramofOrientedGradients)特征结合SVM(SupportVectorMachine)分类器进行目标检测。
随着深度学习的发展,基于卷积神经网络的目标检测方法取得了巨大突破。如R-CNN(RegionswithCNNfeatures)系列算法,首先通过选择性搜索等方法生成一系列可能包含目标的候选区域,然后对每个候选区域提取卷积神经网络特征,并使用分类器进行分类和回归以确定目标的类别和位置。之后发展出的FastR-CNN和FasterR-CNN进一步提高了检测速度和精度。此外,还有YOLO(YouOnlyLookOnce)和SSD(SingleShotMultiBoxDetector)等单阶段目标检测算法。
2.8并行计算与分布式训练
2.8.1并行计算
就像是组织一群工人同时完成一项大工程,通过同时使用多个计算资源(如 CPU 核心、GPU 等)来执行计算任务,从而显著加速计算过程。打个比方,原本只有一个工人砌墙,速度很慢,但如果有十个工人一起砌墙,效率就能大幅提升。
在深度学习中,神经网络的训练涉及大量的矩阵运算,如卷积运算、矩阵乘法等,这些运算具有高度的并行性。利用GPU进行并行计算可以大幅提高计算效率,因为GPU具有大量的计算核心,能够同时处理多个数据块。例如,在卷积神经网络的训练中,不同的卷积核可以并行地对输入特征图进行卷积操作,大大缩短了训练时间。
2.8.2分布式训练
分布式训练是指将训练任务分布到多个计算节点(如多台服务器)上进行。类似将一个超大型工程拆解,分配到多个工地同时施工。
随着深度学习模型规模不断增大,训练数据量也日益庞大,单机训练面临计算资源不足和训练时间过长的问题。分布式训练通过将模型参数和训练数据分割到不同节点上,各个节点并行计算梯度,然后通过参数服务器等机制进行参数更新和同步,从而实现大规模模型的高效训练。
2.9大语言模型与生成式AI
2.9.1大语言模型
大语言模型是基于大量文本数据进行训练的语言模型,具有强大的语言理解和生成能力。以GPT(GenerativePretrainedTransformer)系列为代表,通过在大规模语料上进行无监督预训练,然后针对特定任务进行微调,能够在多种自然语言处理任务中取得优异表现。GPT-3及其后续版本更是展现出令人瞩目的语言生成能力,能够生成连贯、逻辑合理的文本,在文本创作、问答系统、机器翻译等领域有着广泛应用。大语言模型的成功得益于Transformer架构的应用,该架构基于自注意力机制,能够有效捕捉文本中长距离的依赖关系,摒弃了传统循环神经网络的一些局限性。
2.9.2生成式AI
生成式AI是一类能够生成新内容(如文本、图像、音频等)的人工智能技术。除了大语言模型在文本生成方面的应用,生成对抗网络(GenerativeAdversarialNetworks,GANs)是图像生成领域的重要生成式AI技术。GANs由生成器和判别器组成,生成器负责生成新的图像,判别器则判断生成的图像是否真实,两者通过对抗训练不断提升性能,使得生成器能够生成越来越逼真的图像。变分自编码器(VariationalAutoencoders,VAEs)也是一种生成式模型,它通过对输入数据进行编码和解码,学习数据的潜在分布,从而能够生成与训练数据相似的新样本。
扫码加好友,拉您进群



收藏
