MIT-6-S087-生成式人工智能笔记-全-

MIT 6.S087 生成式人工智能笔记(全)

课程 P1:基础模型与生成式人工智能导论 🧠

在本节课中,我们将学习人工智能领域一个核心的范式转变——基础模型与生成式人工智能。我们将从宏观视角探讨其背后的核心理念、历史背景,并理解为何这种“从观察中学习”的方法正在推动当前所有的技术突破。


世界是如何构成的?秩序与混乱的视角

为了理解人工智能的演进,我们首先需要思考一个更根本的问题:我们如何认识世界?一种观点认为世界本质上是有序的,遵循着像数学和物理定律一样简单、完美的规则。我们作为人类,只是通过不完美的感官去感知这个有序世界的扭曲倒影。这种“自上而下”的设计思维,推动了科学和工业革命。

然而,当我们处理日常生活中的复杂互动——如人际关系、语言、社会行为时,世界显得异常混乱,难以用简单的方程式概括。在这个混乱的现实中,我们进化出的最佳导航工具是大脑。它灵活、适应性强,擅长从海量、无序的经验中提炼模式和意义。

上一节我们探讨了认识世界的两种哲学视角。本节中我们来看看,在人工智能领域,我们如何尝试在计算机中复现这种从混乱中学习的能力。


人工智能的学习范式:监督、强化与无监督学习

在尝试让计算机理解世界时,我们主要定义了三种学习范式,它们对应着人类获取知识的不同方式。

以下是三种主要的学习范式:

  1. 监督学习:这类似于有老师指导的学习。人类专家需要预先将世界“结构化”和“标记”好(例如,为图片打上“猫”或“狗”的标签),然后让计算机从这些标记数据中学习。其核心是学习一个从输入 X 到输出 Y 的映射函数:Y = f(X)
  2. 强化学习:这类似于通过“试错”和“奖励”来学习。计算机(智能体)通过与环境互动来优化一个长远目标(如赢得游戏、减少饥饿)。它根据行动后获得的延迟奖励或惩罚来调整策略。
  3. 无监督/自监督学习:这是从观察中学习。计算机直接从大量未标记的原始数据(如文本、图像)中自行发现结构、模式和关系,无需人类预先提供标签或明确目标。

然而,前两种范式存在显著局限。监督学习依赖昂贵且有限的人工标注,且难以泛化到复杂多变的真实世界。强化学习在现实世界中则过于危险和缓慢,因为从零开始探索的成本极高(例如,一辆自动驾驶汽车需要经历无数次致命事故才能学会安全驾驶)。

因此,从观察中学习的无监督/自监督方法,成为了在混乱世界中构建通用理解能力最可行、最根本的路径。这正是当前基础模型崛起背后的核心驱动力。


核心洞见:意义源于关联

我们如何能仅通过观察来学习呢?关键在于理解:意义并非孤立存在,而是源于概念之间的关联

例如,我们理解“狗”这个概念,并不是因为有一个关于“狗”的完美定义,而是通过观察它与“遛狗绳”、“主人”、“追逐飞盘”、“与猫敌对”等一系列其他概念的共现关系。同样,我们理解“爱”,也因为它与“关怀”、“奉献”、“幸福”等概念紧密相连。

一个模型如果能够压缩海量数据中所有概念之间的复杂关系网络,它就能获得对这些概念最精确、最丰富的理解。这就是基础模型的基本思想:训练一个拥有巨量参数的模型,让它从几乎无限的未标记数据中学习所有可能的关系,从而形成一个通用的“世界模型”。

这个模型随后可以被应用到任何涉及这些概念的任务中,展现出强大的泛化能力。


自监督学习算法举例

那么,具体如何让机器“从观察中学习”呢?自监督学习通过设计巧妙的预测任务,让模型从数据本身生成监督信号。

以下是两种经典的自监督学习思路:

  1. 预测未来(语言建模):在文本数据中,我们可以让模型根据前面的词语预测下一个词语。为了准确完成这个看似简单的任务,模型必须隐式地学习语法、词义、常识甚至文化背景。例如,为了预测“瑞典的首都是[MASK]”,模型必须知道答案是“斯德哥尔摩”。公式可以简化为:给定一个词序列 [w1, w2, ..., w(t-1)],模型学习预测 P(wt | w1, w2, ..., w(t-1))
  2. 对比学习:在图像数据中,我们可以从一张图中随机裁剪出两个部分,并告诉模型这两个部分(正样本)是相关的,而来自不同图片的裁剪部分(负样本)是不相关的。通过拉近正样本、推远负样本,模型学会了理解哪些视觉元素通常一起出现(如“狗”和“飞盘”),从而构建起对物体和场景的语义理解。

应用案例:从科学到商业

这种“从关联中学习”的范式具有极强的普适性。让我们看两个不同领域的例子。

科学应用 - 基因组学
我们可以将DNA序列视为一种“文本”。训练一个模型根据之前的碱基对预测下一个碱基对。在这个过程中,模型会自动学习识别基因(重复序列)、调控元件等基因组特征。这些学习到的特征可以极大地帮助下游任务,如预测蛋白质结构。

商业应用 - 消费者理解
传统的市场营销依赖于人工定义用户画像(如“年轻单身人士”),这种方法粗糙且耗时。相反,我们可以通过自监督学习分析消费者的行为序列数据(如购买记录、浏览点击)。模型会自动发现:购买红酒和奶酪的人,可能与购买汽水和糖果的人属于不同的群体;而一个家庭则可能同时具有这两类特征。这能带来更精准的产品推荐和更深层的商业洞察。


总结与展望

本节课我们一起学习了基础模型与生成式人工智能的核心理念。我们从“世界是混乱的”这一前提出发,认识到从观察中学习的无监督/自监督方法是构建通用智能最可行的路径。其关键在于理解意义源于关联,并通过设计预测任务让模型在海量数据中自行发现这些关联。

我们回顾了监督学习和强化学习的局限性,并介绍了自监督学习的基本原理(如语言建模和对比学习)。最后,我们看到了这种范式在基因组学和商业分析中的强大应用。

本质上,我们的大脑也在持续运行着类似的“无监督学习算法”,通过不断预测和调整来理解世界。在接下来的课程中,我们将深入探讨这些算法的具体细节,并看看它们如何组合起来,塑造人工智能的未来。


课程网站:future-ai.mit.edu

(注:本教程根据提供的讲座转录文本整理,去除了语气词,并按照要求的结构、格式和风格进行了重构与润色,力求忠实于原意且清晰易懂。)

课程 P2:基础模型与生成式AI的工作原理 🧠

在本节课中,我们将深入探讨基础模型的训练原理以及生成式AI的工作机制。我们将从语言模型开始,逐步扩展到视觉和其他模态,理解如何从无标签数据中学习世界的结构,并最终将这些知识应用于各种任务。


回顾:从观察中学习

上一节我们介绍了AI的核心是从观察中学习,其意义是上下文化和关系化的。数学本身无法完全处理世界的复杂性,因此需要新的网络和AI方法。

监督学习依赖于人类标记数据,难以扩展。强化学习在没有起点的情况下过于危险和缓慢。因此,我们需要从无标签数据中学习,这种方法可以很好地扩展,只需数据本身即可学习结构。

通过关联概念(例如“狗”与“猫”),我们可以获得对意义的非常关系化的理解。本节我们将更详细地探讨这些不同的学习方法。


语言的特殊性与早期方法 🗣️

语言是人造的,我们不仅用它交流,也用它思考。它是一种高效的通用媒介,用于传输和验证想法。理解语言是创建自主代理乃至更接近人类智能的关键。

几年前,自然语言处理的研究是孤立的:每个特定任务(如翻译、问答)都有独立的研究团队、数据集和模型。这促使我们思考:是否存在一个可以优化的、关于语言理解的底层目标?我们能否学习一种通用的语言表示,然后将其用于所有下游任务?

我们希望有一个AI模型能够消化语言,将其意义编码为某种表示(例如数字向量),然后将这种表示输入到所有任务中。如果能够特征化并捕捉文本的真实含义,这将非常有用。

如何表示词义?

词义是高维且微妙的。例如,“猫”、“小猫”、“狗”、“幼犬”这些词之间的关系不仅涉及物种,还涉及年龄等属性。仅用一个数字无法捕捉这些细微差别。

因此,我们使用高维向量(即数组的数组)来表示词义。向量的不同维度可以对应不同的语义属性(如物种、年龄)。这样,含义相近的词在向量空间中的位置也更接近。

然而,词义是高度上下文化的。以“bank”为例,在“river bank”和“financial bank”中含义截然不同。因此,我们需要学习如何将整个文本序列映射到一个能捕捉其上下文意义的向量中。

通过上下文学习意义

意义由其相伴的词语定义。我们可以利用这一点来学习:从互联网上获取句子,随机遮蔽其中一个词,然后训练模型根据周围的词来预测被遮蔽的词。

例如,给定句子“我去 [MASK] 游泳”,如果模型能预测出“河流”,则说明它理解了此处的“bank”指河岸。同样,对于“我去 [MASK] 存钱”,模型应预测“金融”。通过这种方式,模型学会了根据上下文关联词语的意义。

这种方法被称为掩码语言建模,是训练大规模语言模型的基础,能产生对文本和语言非常好的特征表示。


从表示学习到文本到文本模型 📝

我们首先学会了在高维嵌入空间中编码文本意义。但语言本身就能传达意义,为何不直接进行文本到文本的转换呢?这样在工程上更统一。

我们可以将所有下游任务都重新表述为文本到文本的问题:

  • 翻译:输入“翻译成德语:My name is...”,输出德语文本。
  • 分类:输入“评论:这部电影很棒。情感:”,输出“积极”。
  • 问答:直接以文本形式提供问题和答案。

谷歌的T5模型就采用了这种范式。它将所有任务都视为文本到文本转换,简化了工程架构,并允许模型在不同任务间获得协同效应。

MLM 与 CLM

我们主要讨论两种预训练目标:

  1. 掩码语言模型:随机遮蔽句子中的词,根据所有上下文词(前后)进行预测。
  2. 因果语言模型:只根据之前的词预测下一个词。

MLM因为能看到双向上下文,通常对语言理解更好。CLM虽然只能看到上文,但训练更高效,并且被专门优化用于生成下一个词。正是CLM的这种特性,催生了像ChatGPT这样的模型。

生成式突破:预测下一个词

因果语言模型的核心任务是:基于之前的单词预测下一个单词。当这个简单任务被扩展到巨大规模时,奇迹发生了。

如果我们有一个能很好预测下一个词的模型,那么对于任何以提示开头的任务,最合理的“完成”就是正确的答案。例如,提示“河岸是什么?”,模型生成的下一个词序列就构成了答案。这使它成为一个通用的多任务解决器。

总结:语言的意义由上下文定义。我们可以通过预测被遮蔽的词来学习这种意义。预训练(如MLM/CLM)与下游任务对齐得越好,模型性能越佳。最终,简单的“预测下一个词”任务,在足够大的规模下,涌现出了解决多种任务的能力。


视觉与其他模态的表示学习 👁️

在视觉领域,我们也可以应用类似的思想,但方法有所不同。

对比学习

核心思想是:出现在同一张图片中的物体,平均而言比随机图片中的物体更相关。我们可以利用这一点进行学习。

具体做法是:取一张图片,生成两个不同的裁剪区域。训练模型将这两个来自同一图片的裁剪映射到向量空间中相近的位置,而将来自不同图片的裁剪映射到远离的位置。为了防止所有向量坍缩到一起,我们需要同时拉近正样本对、推远负样本对。

在实践中,这通常被构建为一个分类任务:给定一个裁剪,模型需要从一组候选裁剪中选出与之配对的正样本。这种方法能产生非常好的图像表示。

对比学习具有普适性,只要我们能定义正负样本对,就可应用于语言、音频等多种模态。

通过“游戏”学习

另一种视角是让模型通过解决特定“游戏”来学习理解概念。如果模型能解决游戏,就意味着它理解了背后的概念。

  • 乱序重组:打乱句子中的单词或图片中的拼图块,让模型恢复正确顺序。这迫使模型理解语法、语义或视觉结构。
  • 去噪(扩散模型):向图片添加噪声,让模型尝试去除噪声以恢复原图。模型需要理解图像内容才能完成此任务。迭代去噪的过程就是“扩散”。像Stable Diffusion这样的模型可以从纯噪声生成图像。
  • 压缩(自编码器):将图像压缩为低维向量(瓶颈),再从这个向量重建图像。模型必须学会保留最重要的信息。
  • 对抗游戏(GAN):一个生成器网络尝试生成逼真的图像,一个判别器网络尝试区分真实图像与生成图像。二者对抗训练,最终生成器能产生非常逼真的输出。

生成与表示,以及多模态共享空间 🔄

以上方法大致可分为两类:

  1. 表示学习:专注于将数据嵌入到有用的特征空间,用于分类等任务。
  2. 生成学习:专注于从噪声或提示生成新数据。

一个理想的系统是拥有一个共享的嵌入空间。无论输入是图像、文本还是音频,都被映射到同一个向量空间中。这样,我们可以:

  • 将图像的嵌入输入文本生成器,得到描述图像的文本。
  • 将文本的嵌入输入图像生成器,得到文本描述的图像。

这对于多模态理解和应用至关重要,就像人类大脑能关联不同感官接收的信息一样。在商业上,这可以实现跨领域的推荐,例如根据用户的食品购买习惯,推荐其可能喜欢的时尚物品。


语言作为思维与验证的媒介 🤖💭

为什么语言模型如此强大?因为语言不仅是交流工具,更是我们思考和规划的高效媒介。即使不能说话,智能体也可能拥有用于内部推理的语言。

这在训练自主代理(如机器人)时尤其有用。传统方法将任务映射到难以解释的高维动作向量。而如果让模型输出一个语言描述的计划,人类或另一个语言模型就可以轻松验证和纠正这个计划。

例如,一个机器人计划“从冷冻室拿刀,在刀上涂黄油”。我们一看就知道这不合逻辑。我们可以让语言模型纠正这个计划:“从抽屉拿刀,在面包上涂黄油”。语言作为一种高效的媒介,极大地便利了想法的验证、纠正和迭代改进。

自主代理:迭代与工具使用

自主代理本质上是一个可以迭代运行自身输出的大型语言模型。它分析输入,生成输出,再以输出为输入进行分析和改进,如此循环。这类似于人类反复打磨想法的过程。

此外,代理还可以被赋予使用工具的能力,例如:

  • 互联网搜索:获取实时信息。
  • 计算器:执行精确计算。
  • 调用其他专业模型:处理图像、代码等。

通过结合规划、自我反思和工具使用,自主代理的能力得到了极大增强。


智能的协同与集中化趋势 ⚙️

新AI显示,智能是高度协同的。试图将语言、视觉、推理等能力完全分开,往往会损害整体性能。一个统一的大脑比多个孤立的小脑更强大、更高效。

这暗示着AI市场可能呈现“赢家通吃”的趋势,因为能够整合更多数据、更多任务、更多模态的单一大型模型,其性能优势会越来越大。这带来了巨大的机遇(解决复杂问题),也带来了挑战(权力集中、系统脆弱性、伦理问题)。


总结与预告 📚

本节课我们一起学习了:

  1. 如何通过掩码语言建模和对比学习等无监督方法,从数据中学习意义和表示。
  2. 语言模型从表示学习到文本到文本,再到因果预测下一个词的演进过程。
  3. 视觉和其他模态的表示学习方法,如对比学习、扩散模型。
  4. 生成学习与表示学习的区别与联系,以及多模态共享空间的重要性。
  5. 语言作为思维和验证媒介的关键作用,以及如何基于此构建自主代理。
  6. AI智能协同与集中的趋势。

在下一节课中,我们将亲手操作,深入解析Transformer模型的具体架构,并探讨文本到图像模型(如Stable Diffusion)的工作原理。敬请期待!

课程三:基础模型与生成式人工智能:ChatGPT与大型语言模型 🧠🤖

在本节课中,我们将学习ChatGPT与大型语言模型的核心概念。我们将从基础的无监督学习开始,逐步深入到GPT模型的预训练、Transformer架构的工作原理,以及如何通过人类反馈和强化学习来优化模型,使其成为强大的对话工具。


概述

生成式人工智能通过无监督学习从海量数据中直接学习世界的结构和关系。ChatGPT是这一领域的杰出代表,它基于“预测下一个词”这一简单任务,通过巨大的模型规模和工程技巧,展现出了令人惊叹的多任务处理能力和类人对话水平。本节课将拆解其背后的技术原理。


无监督学习与基础模型

上一节我们介绍了生成式AI的宏观图景,本节中我们来看看其核心技术基础——无监督学习。

在基础生成式AI中,我们应用无监督学习,即学习没有标签的数据。这允许我们获取任何想要的数据,因为没有人工标注的限制,从而可以极大地扩展数据规模。

通过从观察中直接学习数据,模型能获得一种非常情境化和关系化的意义理解。这与监督学习(学习带标签的示例)和强化学习(专注于优化特定目标)形成对比。

核心公式:无监督学习的目标是学习数据 X 本身的概率分布 P(X),而不是条件分布 P(Y|X)


GPT的预训练:预测下一个词

理解了学习范式后,我们进入核心环节:GPT模型是如何被“教”会的。这个过程称为预训练,OpenAI将99%的计算资源都投入于此。

我们要做的就是:从互联网上获取文本序列,然后尝试根据之前的单词来预测下一个单词。

核心流程

  1. 输入一个词序列(例如 “I went for a”)。
  2. 模型只看到前面的词(如 “I went for”),并尝试预测被隐藏的下一个词(如 “a”)。
  3. 模型会对词汇表中的所有单词生成一个概率分布,表示每个词是下一个词的可能性。
  4. 我们揭示正确的下一个词(“a”)。
  5. 通过反向传播算法,模型增加正确单词的预测概率,并降低其他单词的概率。
  6. 在大量的文本序列上重复此过程,模型逐步学会更准确地预测。

代码概念

# 伪代码示意训练步骤
input_sequence = “I went for”
target_word = “a”
predicted_distribution = model(input_sequence) # 模型输出所有词的概率
loss = calculate_loss(predicted_distribution, target_word) # 计算损失
model.update(loss) # 反向传播更新模型参数

训练完成后,我们就得到了一个语言模型。给定一个提示(如 “I went for”),模型可以生成一个下一个词的概率分布。我们可以选择概率最高的词(argmax)或进行随机采样,将其加入序列,然后重复此过程,从而生成更长的文本。


Transformer:模型的强大引擎

我们已经知道如何训练模型,那么这个模型的“发动机”是什么样子的呢?这就是Transformer架构,它是模型高效运行的关键。

为了处理文本序列,早期常用循环神经网络(RNN),它按顺序处理单词,后一步依赖前一步的结果。这种结构虽然直观,但难以并行计算,训练速度慢,且难以记住长距离的信息依赖。

Transformer采用了完全不同的思路:

  1. 并行处理:在处理序列时,Transformer允许每个单词直接与序列中的所有其他单词建立连接,计算它们之间的关系(即“注意力”)。这些计算可以同时进行,极大地提升了训练效率。
  2. 位置编码:由于上述并行处理失去了单词的顺序信息,Transformer通过为每个单词添加一个表示其位置的数字编码(位置编码)来弥补。模型需要自己学习如何使用这些位置信息。

核心优势:Transformer能够高效地集成序列中任意距离的信息,因为它有直接的连接路径。同时,其高度并行的特性使得利用GPU进行大规模训练成为可能,这是它能处理海量数据的前提。


从语言模型到聊天机器人:指令微调与RLHF

现在我们有了一个强大的语言模型(GPT),但它还不是一个优秀的对话助手。接下来我们看看如何通过“聊天”相关的优化,使其变成ChatGPT。

首先,我们在人类对话数据上对预训练模型进行指令微调。这使模型更专注于理解和生成对话风格的文本。

然而,仅靠微调仍存在几个问题:

  1. 模型不知道什么是“好”或“有帮助”的对话。
  2. 模型在生成时过于“贪婪”,只追求每一步的下一个词最优,可能损害整个回复的长期质量。
  3. 模型在生成过程中如果出现小偏差,可能会累积错误,导致回复失控。

为了解决这些问题,OpenAI引入了基于人类反馈的强化学习

以下是其工作流程:

  1. 收集人类反馈:用微调后的模型为大量提示生成多个回复。雇佣人类评估员对这些回复的质量进行排序。
  2. 训练奖励模型:利用上一步的人类排序数据,训练一个“奖励模型”。这个模型学会像人类一样,对给定的提示和回复给出一个质量分数。这解决了“区分对话好坏”的问题。
  3. 强化学习优化:将初始模型作为“智能体”,将奖励模型作为“环境”。智能体(初始模型)尝试生成回复,并从奖励模型获得一个延迟的分数反馈(只有完整回复后才评分)。通过强化学习算法(如PPO),模型被训练去最大化这个最终分数。
    • 探索与利用:模型需要在“生成已知的高分回复”(利用)和“尝试新回复以寻求更高分”(探索)之间平衡。
    • 长期优化:由于优化目标是整个回复的最终分数,模型学会了为长期质量牺牲短期概率,解决了“贪婪”问题。
    • 鲁棒性:这个过程也让模型对生成过程中的小错误更具韧性,学会了“回到正轨”。

这个过程可以迭代多次,每次都用更好的模型生成回复,收集新的人类反馈,训练新的奖励模型,从而持续提升模型性能。


总结

本节课我们一起学习了ChatGPT与大型语言模型的核心构建过程:

  1. 预训练:通过简单的“预测下一个词”任务,在海量无标签文本上训练一个基础语言模型。这是最耗费计算资源的步骤。
  2. Transformer架构:作为模型引擎,它利用自注意力机制实现并行计算,高效处理长序列,是模型能够规模化的关键技术。
  3. 指令微调与RLHF:通过人类对话数据微调,并引入基于人类反馈的强化学习,教会模型什么是好的对话、如何为长期质量进行优化以及如何保持生成鲁棒性,最终将其打磨成实用的对话助手ChatGPT。

ChatGPT的成功表明,一个简单的学习目标,结合前所未有的数据规模、创新的模型架构以及精巧的训练策略,可以催生出功能强大的通用人工智能工具。


下节预告:在下一节课中,我们将把目光转向图像生成领域,深入探讨另一个重要的基础模型——Stable Diffusion的原理。

课程 P4:图像生成与稳定扩散模型 🖼️

在本节课中,我们将学习文本到图像生成技术,特别是稳定扩散模型的工作原理。我们将从数据的重要性开始,然后深入探讨模型如何从噪声中迭代生成高质量图像,并理解其背后的关键设计思想。


数据:人工智能的基石 📊

上一节我们介绍了基础模型的概念,本节中我们来看看数据为何如此关键。所有我们看到的人工智能突破,很大程度上源于对数据的新视角和更大量的使用。

数据与人工智能是相互依赖的。如果你想在实际场景中应用AI,理解你的数据至关重要。同样,开发更好的模型也非常困难,如果你不理解数据。

如果我们把新的人工智能发展看作一座冰山:

  • 冰山的尖端是像GPT和稳定扩散这样的热门话题。
  • 下面一层是理解自监督学习、训练范式等,这些是使基础模型和生成式AI工作的基础。
  • 而最庞大、人们谈论较少的部分,是数据。正是数据推动了这场革命。

以OpenAI为例,开发ChatGPT本身可能只需要一个小团队几个月的时间。但真正无法复制的是互联网——这个人类历史上最伟大的数据收集成果。互联网使得训练这些模型成为可能。因此,数据及其访问权限,比模型本身更为关键。


条件图像生成的目标 🎯

现在,让我们转向今天的主题:基于文本提示的条件图像生成。目前最流行的两个模型是DALL-E和稳定扩散。

要成功创建图像,我们需要实现几个目标:

  1. 高真实感图像质量:生成的图像需要看起来真实。
  2. 高语言-图像对应关系:生成的图像必须与文本提示高度匹配。
  3. 捕捉概念的多样性:模型应能生成某个概念(如“狗”)的所有可能变体,这体现了模型对该概念的深入理解。
  4. 快速训练和推理:模型需要高效。

为了实现这些目标,我们将依赖工程技巧和大量带有文本标注的图像数据。


如何教会AI生成图像?✍️

假设我们要训练一个AI学习画人脸。如果我们只是让它反复生成同一张脸,那它可能只是记住了某个样本,而非理解了“人脸”的概念。我们希望它能够生成多样化的面孔。

深度学习模型本质上是确定性函数:相同的输入总是产生相同的输出。为了生成多样性,我们需要将随机性作为输入的一部分提供给模型。这样,每次运行时,模型都能利用不同的随机输入来生成不同的面孔。

然而,让模型一次性从纯噪声生成完美图像是非常困难的。这就像让人一笔画出一幅完整的肖像。更有效的方法是迭代改进,就像人类画家一样:先勾勒轮廓,再逐步添加细节。

这种迭代方法有几个好处:

  • 降低难度:模型可以从不同“难度”级别(即不同噪声水平)开始学习,逐步进步。
  • 利于训练:模型可以在训练中看到不同噪声水平的例子,从简单的开始学习。
  • 利于推理:在生成图像时,模型可以迭代运行,逐步优化自己的输出。

因此,我们的策略是:从一张充满噪声的图像开始,让模型逐步去除噪声并添加图像特征,经过多步迭代后,得到清晰的图像。这个过程被称为扩散


稳定扩散模型的工作原理 ⚙️

上一节我们介绍了迭代去噪的思想,本节中我们来看看稳定扩散模型如何具体实现这一过程。

训练阶段:创建“练习题”

我们无法雇佣人类为每张图片绘制不同抽象级别的草图,这太昂贵了。但我们可以用计算机廉价地模拟这个过程。

以下是训练数据的创建方法:

  1. 从互联网获取一张清晰图像(目标)。
  2. 让计算机生成一些随机噪声。
  3. 将噪声添加到清晰图像上,得到一张带噪的图片(输入)。
  4. 重复此过程,添加不同量的噪声,从而创建大量“输入-目标”对。

在训练时:

  • 输入:带噪图像 + 噪声水平信息 + 文本提示(通过预训练的语言模型编码)。
  • 模型任务:预测如何从带噪输入向清晰目标迈进一步。
  • 学习信号:通过损失函数比较模型的预测与真实目标,提供方向性反馈。

推理阶段:从无到有创作

当模型训练好后,我们可以用它来生成全新的图像:

  1. 用户输入一个文本提示。
  2. 计算机生成一张纯噪声图片。
  3. 将纯噪声和编码后的文本提示输入模型。
  4. 模型输出一个“去噪一步”的版本。
  5. 将这个输出作为新的输入,再次运行模型(这个过程可以重复多次,如100步)。
  6. 经过多次迭代后,得到最终的高质量图像。

这个过程完全自给自足,无需从网络下载任何图像。


稳定扩散的关键优化:潜在空间扩散 🔬

直接在像素空间进行扩散计算成本很高,因为图像分辨率高(例如1024x1024)。稳定扩散的核心创新在于将扩散过程转移到低维潜在空间中。

他们观察到,图像的许多细节(如皮肤纹理、毛发)是重复且相对容易生成的,而轮廓和主要特征才是难点。因此,他们使用一个自编码器

  • 编码器:将高分辨率图像压缩成一个低维的“潜在表示”(小图像),保留重要特征,舍弃一些细节。
  • 解码器:将低维潜在表示还原回高分辨率图像,并能巧妙地补全细节。

这样,所有昂贵的扩散训练和迭代推理过程都在这个小得多的潜在空间中进行,大大提升了效率。最终只需通过解码器一次,即可将结果放大到所需分辨率。


如何训练一个好的自编码器? 🧩

要让潜在空间扩散有效,我们需要一个高质量的自编码器,它能压缩图像而不丢失重要信息。简单地比较输入和输出图像的像素差(L2损失)效果不好,因为它无法捕捉人类感知的相似性(例如,稍微平移的图像像素差异大,但看起来仍然相似)。

稳定扩散结合了两种损失来训练自编码器:

  1. 基于GAN的感知损失(局部细节)

    • 使用一个“判别器”(批评家),它被训练区分来自真实图像和重建图像的小 patches
    • 自编码器的目标是生成能“欺骗”判别器的 patches,从而确保重建图像在局部细节上看起来真实。
  2. 基于感知的相似性损失(全局结构)

    • 利用在对比学习中预训练好的图像编码器(如CLIP)。
    • 这种编码器能将图像映射到一个特征空间,该空间中的距离与人类判断的图像相似度高度相关。
    • 自编码器的目标是使原始图像和重建图像在这个特征空间中的距离尽可能小,从而保证全局结构的相似性。

通过结合这两种损失,自编码器既能保留精细的局部细节,又能维持正确的全局结构。


总结 📝

本节课中我们一起学习了文本到图像生成,特别是稳定扩散模型的核心思想:

  • 数据是驱动AI进步的根本燃料,其重要性不亚于模型算法本身。
  • 图像生成通过迭代去噪(扩散) 实现,模型学习从噪声中逐步恢复出清晰、符合提示的图像。
  • 稳定扩散的关键优化在于在低维潜在空间进行扩散,通过自编码器压缩和重建图像,极大提升了计算效率。
  • 训练一个有效的自编码器需要结合对抗损失(GAN) 来保持局部细节真实感,以及感知相似性损失来保持全局结构正确。

稳定扩散模型巧妙地拼接了多个AI概念:自监督学习(语言模型)、扩散模型、生成对抗网络(GAN)和对比学习。它展示了如何利用人类直觉(如迭代绘画)来设计模型,并通过利用无标签的互联网数据实现强大功能。

课程五:基础模型与生成式AI生态系统 🌐

在本节课中,我们将学习基础模型的核心概念及其在商业和研究领域的应用。我们将探讨为何不会出现单一AI模型垄断市场的情况,并分析不同类型的基础模型如何共存与协作。课程还将通过实际案例,展示企业如何构建和利用自己的“核心智能”来获得竞争优势。

概述:什么是基础模型?🧠

我们从一个根本性问题开始:人类如何学习世界?婴儿如何成长为知识丰富的成年人?答案并非主要来自父母、老师(有监督学习)或单纯的试错(强化学习)。我们的大部分知识是通过自我学习获得的,即通过观察事物之间的关系和上下文来理解意义。

例如,你理解“狗”的概念,不是通过定义,而是通过关联:狗需要遛、与猫关系紧张、会追飞盘。这种对关系意义的理解是强大且跨模态的。基础模型正是基于这一洞察:用海量数据和参数训练一个巨大模型,让它学习万事万物之间的关系,从而获得最精确、最强大的意义理解能力,然后将其作为基础应用于各种任务。

从研究范式转变到商业应用 🔄

上一节我们介绍了基础模型的核心思想,本节我们来看看它如何改变了研究与实践。

在研究领域,过去是“一个任务,一个数据集,一个模型”。例如,翻译、问答、情感分析各有其独立的模型。但现在,研究转向构建统一的基础语言模型,它具备深层的语言智能,各种具体任务都成为其下游应用。这模仿了人类大脑的通用智能。

同样,在企业中,技术应用也常是孤立的:产品搜索、推荐系统、库存规划各有独立的团队和数据。然而,这些智能本质上是协同的。推荐应影响营销,搜索应反映库存。因此,企业也需要构建一个单一的“核心大脑”(即其专属的基础模型),来整合所有数据和流程,充分利用协同效应,实现最佳性能。未来能够生存和繁荣的企业,正是那些围绕自身业务构建了这种核心智能的企业。

生态系统的多样性:为何不是单一模型?🌳

既然基础模型如此强大,是否会出现一个单一的AI模型统治一切?答案是否定的。在可预见的未来,我们将看到一个由多种基础模型组成的生态系统。

以下是几个关键原因:

  • 领域特异性:一个在通用文本上训练的大型语言模型(LLM),在应用到物流、金融交易或生物化学等专业领域时,其直觉可能会失效甚至有害。这些领域需要从专属数据中重新学习,形成具有“护城河”的专用基础模型。
  • 成本与收益平衡:向一个通用大模型中添加某个边缘领域的专业知识,其带来的价值可能无法抵消因此增加的计算成本和模型性能稀释。
  • 人类大脑的启示:我们的大脑本身就是多个专用系统(如快速直觉系统、有意识的规划系统)的集合。AI生态系统也会类似,包含不同类型、专注于不同数据和应用的“大脑”,它们相互协作。

因此,未来的AI格局将是多元化的,不同类型的基础模型将基于其独特的算法优势数据渠道建立防御性。

企业如何构建自己的防御性大脑?🏢

理解了生态系统的多样性后,对于企业而言,关键在于识别并构建对自己最重要的那类基础模型。

企业不应满足于使用通用的AI助手(如ChatGPT),那只是有用的工具,而非核心竞争力。真正的竞争优势在于构建一个集成企业自身所有“秘密酱料”(专有数据、流程、知识)的核心智能模型。

以下是构建防御性大脑的关键步骤:

  1. 识别核心数据与优势:审视你的业务,你的独特优势在哪里?哪些数据能体现这些优势?(例如,零售商的交易行为数据,制造商的供应链数据)。
  2. 选择或构建基础技术:根据你的核心数据类型(行为、序列、文本、图像等),选择或合作开发相应的基础模型技术(如大型行为模型、时间序列模型等)。
  3. 深度集成与训练:将你的专有数据深度集成到该基础模型中,训练它理解你业务领域的深层关系和模式。
  4. 实现协同应用:利用这个统一的“大脑”驱动所有下游任务(搜索、推荐、规划、风控等),实现智能协同。

需要警惕的是那些声称做AI但存在以下问题的解决方案:

  • 不依赖你的数据:数据是构建专属智能的关键。
  • 需要大量手动调整:真正的智能应从数据中自动学习。
  • 仅解决单一功能:这分散了智能,无法形成协同效应。

案例研究 📈

让我们通过具体案例看看上述理论如何实践。

案例一:零售电商的个性化革命 🛒

我们为一家在线销售壁纸、海报的公司构建了基于消费者行为数据的核心模型(可视为一种“大型行为模型”)。

  • 应用:将该模型用于网站导航的深度个性化。
  • 结果:不同用户搜索“蓝色”时,会根据其历史行为得到截然不同的结果(如家庭场景或青少年风格),实现了真正的“千人千面”。这使得网站收入提升了14%,同时减少了人工运营成本。

这个案例的关键在于,通用模型可能无法捕捉垂直领域的细微偏好(例如,顾客更关注色彩搭配而非产地)。只有用专属行为数据训练的核心模型,才能驱动真正的销售增长。

案例二:劳动力市场的员工留存预测 👥

我们为一家拥有5万名客服员工的公司构建了理解员工行为的核心模型。

  • 挑战:公司年流失率很高,传统调查问卷数据分析收效甚微。
  • 方案:转向分析员工的行为数据(行动胜于言语),构建预测模型。
  • 结果:该模型能够以91%的准确率预测员工在未来两周内是否会离职,远超传统方法。这使公司能提前干预,显著降低流失成本。

行业思考:保险业的挑战 🏦

保险业严重依赖数据和预测,但其挑战在于通常不控制原始数据渠道(如房屋建造数据、个人健康实时数据)。因此,保险公司可能难以在特定领域构建具有绝对优势的专属基础模型。未来的发展可能取决于其能否在某一细分领域深耕,或与数据控制方深度合作。

总结与展望 🚀

本节课我们一起学习了基础模型生态系统的核心要义。

我们认识到,意义源于上下文关系,而基础模型通过海量数据学习这种关系。未来不会出现单一的垄断模型,而是一个由多种具备算法与数据双重护城河的专用基础模型组成的生态系统。

对于企业和研究者而言,关键在于:

  1. 识别驱动自身领域的核心智能类型。
  2. 构建集成能够封装自身独特数据和知识的基础模型。
  3. 利用这个结构化智能作为存在性竞争优势,而不仅仅满足于使用通用的AI工具。

这场AI革命正引发一场“物种灭绝”,无法捕获并结构化自身核心智能的实体将面临挑战。现在就是开始行动,定义你的数据战略,并为你的事业构建那个关键“大脑”的时刻。


注:本教程根据MIT 6.S087相关讲座内容整理,侧重于基础模型的商业生态系统逻辑阐释。

课程 P6:基础模型与生成式人工智能在生物学中的应用 🧬

在本节课中,我们将学习人工智能,特别是基础模型和生成式AI,如何变革生物学和医学研究。我们将探讨如何利用这些技术来理解人类生物学、开发新疗法,并最终战胜疾病。

概述:生物学与人工智能的融合

生物学和人工智能领域都在快速发展。本课程的目标是介绍这两个领域如何交汇,以及这种交汇如何引发该领域的剧变。核心焦点是健康、对生物学的理解以及医学应用。

我们的目标是利用人工智能真正理解人类生物学的工作机制,并以此为基础开发新的疗法来终结疾病。

主要范式转变

上一节我们介绍了课程的整体目标,本节中我们来看看推动这一变革的几个主要范式转变。

以下是当前生物学研究正在经历的三个关键转变:

  1. 从假设驱动到数据驱动:研究不再从一个具体的假设开始,然后收集有限的数据去验证它。现在,我们首先系统地收集海量数据,构建资源库,之后再提出问题。这实现了对生物学的全面、系统性观察。
  2. 从相关性到因果关系:传统流行病学常受限于相关性分析(例如,巧克力消费量与诺贝尔奖得主数量的关联)。借助遗传学,我们现在能够理解机制,建立从基因差异到表型的因果关系链。
  3. 从经典数据分析到机器学习:过去,每个生物学问题都需要设计特定的统计检验。现在,我们转向构建参数庞大的基础模型。这些模型通常是多模态的,能够学习深层次的表征,真正理解概念并产生新见解。

这些转变意味着,我们现在可以结合遗传学的因果关系和大数据的规模,来真正理解疾病的机制。我们从已知的与疾病相关的遗传区域出发,利用大规模数据(如单细胞测序)来揭示其背后的具体基因、蛋白质和细胞类型,从而阐明机制。

从基因到电路:理解与操纵

上一节我们了解了研究范式的转变,本节中我们来看看如何将这些新方法应用于具体问题,即从遗传变异理解到可操作的生物学“电路”。

遗传变异(DNA字母的差异)会影响被称为“基序”的特定DNA序列模式。这些基序被转录因子等调控蛋白识别并结合,进而控制增强子等调控区域的活性,最终影响目标基因的表达。这就构成了一个基因调控“电路”。

我的实验室专注于将这种方法应用于数十种疾病,包括心脏病、肥胖症、癌症、阿尔茨海默病、精神分裂症等。我们现在可以系统地研究人类身体的每一个方面,跨越数十种细胞类型、数百种组织、数百万个细胞和数百个个体。

以下是三个成功案例:

  • 肥胖症:我们解析了与肥胖最强遗传关联区域的一个单核苷酸变异(T替换为C)的机制。通过理解其影响的调控因子、下游靶基因和作用的细胞类型,我们能够将人类细胞从脂肪储存模式转变为脂肪燃烧模式。在动物模型中,敲除相关基因后,即使摄入高脂肪饮食,动物也无法增重。
  • 阿尔茨海默病:针对增加患病风险的APOE4等位基因,我们发现其改变了胆固醇生物合成。通过追溯并恢复胆固醇向形成髓鞘(保护神经元)的运输过程,我们在人类细胞和动物模型中成功恢复了髓鞘和认知功能。
  • 癌症免疫疗法:大约50%的患者对现有免疫疗法无反应。通过理解其背后的调控电路,我们能够预测并抑制导致治疗抵抗的关键上游调控因子,从而使癌症不再复发。

关键技术应用场景

上一节我们看到了从基因到电路的成功案例,本节中我们来深入探讨使这一切成为可能的具体人工智能技术。

1. 调控基因组学:理解DNA的语言

调控基因组学的目标是从DNA序列理解基因如何被调控。核心是被称为“调控基序”的短DNA模式,它们被特定的调控蛋白识别和结合。

我们可以通过实验在全基因组范围内测量这些蛋白质的结合位点。然后,我们将序列数据和结合数据放入深度学习框架(如卷积神经网络)中。模型学习识别预测区域活性的序列模式。

公式/代码示意:一个简单的卷积操作可以表示为识别基序:
feature_map = conv1d(DNA_sequence, motif_filter)
模型的美妙之处在于它具有机制上的洞察力,能告诉我们哪个模式在何处起作用。

这使我们能够预测从未见过的新突变的影响,为个性化基因组学铺平道路。

2. 单细胞分析与变分自编码器

我们的身体由数万亿个功能各异的细胞组成。单细胞测序技术允许我们测量数百万个细胞中每个细胞的基因表达。

我们可以构建深度学习模型(如变分自编码器),从序列和表达信息中学习。模型将高维表达数据压缩到一个低维的“瓶颈”层,然后再重构出来。

核心概念变分自编码器 学习数据的低维潜空间表示。这允许我们解耦变异的不同组成部分(如疾病状态、年龄、性别)。类似于图像处理中的“风格迁移”,我们可以尝试将患者的表达模式转换为健康个体的模式,从而理解并可能纠正疾病状态。

3. 电子健康记录与多模态学习

通过大规模测序,我们可以收集大量个体的基因型数据和数十种表型数据(即电子健康记录信息)。

我们可以利用这些数据,将一个人的电子健康记录分解为与特定表型组合相关的模块,并将其映射到血液或组织中变化的独特表达模式上。结合大型语言模型,我们可以自动解释这些模式,得出关于驱动生物变异的生物学见解。

4. 病理图像分析

对于病理切片等医学图像,AI可以自动注释图像内容(如肿瘤位置)。通过多模态学习,联合训练图像和与之配对的文本描述(来自医学论文),可以构建一个基础模型。

这个模型能够对从未见过的新图像甚至新的肿瘤类型进行推理,实现“零样本学习”,即无需针对该特定类别进行训练即可进行识别和信息检索。

5. 化学与分子设计

我们可以使用图神经网络来理解从原子到整个分子的功能。

核心概念图神经网络 将分子表示为原子(节点)和化学键(边)的图。通过卷积操作,每个原子的表示会聚合其邻居的信息。经过多层传播,最终获得对整个分子功能的预测。
h_v^(l+1) = UPDATE( h_v^(l), AGGREGATE( {h_u^(l), u in N(v)} ) )
这允许我们预测新分子的功能,甚至从头设计具有特定性质的新分子。

6. 蛋白质结构与功能

理解蛋白质如何从其氨基酸序列折叠成三维结构,以及结构如何决定其功能,是前沿领域。通过比较不同物种的蛋白质序列(共进化分析)和利用物理模拟,我们可以洞察序列-结构-功能的关系。

目前的前沿是构建能够整合蛋白质序列、结构和描述其功能的文本信息的基础模型。结合用户查询,这种模型可以预测蛋白质功能,并推理出干预哪些蛋白质或使用何种化学物质来治疗疾病。

超越生物学:思想空间的导航

上一节我们探讨了AI在生物医学各层面的应用,本节我们看看这项技术更广阔的愿景——理解并导航人类的所有知识。

我们所构建的工具允许将人类曾有过的任何想法、已发表的每篇论文、写过的每首诗,都映射到一个“思想空间”中。例如,我们可以将麻省理工学院的所有课程和论文可视化为地图上的“概念岛屿”。

主要的范式转变在于:我们不再为每个新数据集开发新的机器学习方法,而是构建多模态嵌入。这种方法不仅适用于生物空间,也适用于理念空间。目标是获得以前人类科学家无法达到的见解。

总结与展望

在本节课中,我们一起学习了人工智能,特别是基础模型和多模态学习,如何驱动生物学和医学研究的范式转变。我们从假设驱动转向数据驱动,从相关性转向因果关系,并利用强大的模型来理解从DNA语言到蛋白质功能,再到整个知识体系的复杂关系。

展望未来,多模态整合是方向。未来的医疗诊断将整合临床记录、影像、基因组、蛋白质组、患者主观描述等多维度信息,由AI辅助构建更完整的个人健康模型。尽管当前数据和算法可能存在偏见,但AI也提供了通过解耦变异成分和反事实分析来纠正这些偏见的希望。

最终,我们的挑战是利用这些工具系统性地理解生物学,实现个性化医疗,并导航人类知识的整个空间,从而加速科学发现和创新。

🧠 课程 P7:自主AI代理基础与实现

在本节课中,我们将学习自主AI代理的核心概念、发展历程以及实现其能力的关键技术。我们将从通用人工智能(AGI)的定义出发,探讨如何利用现有的大型语言模型(LLM),通过一系列技术(如思维链、强化学习、检索增强生成等)来构建能够执行复杂任务的智能代理。


什么是自主AI代理?🤖

自主AI代理是一个能够感知环境、进行决策并执行动作以实现特定目标的系统。在深度学习时代,其架构包含传感器和执行器。而在后生成式AI时代,架构变得更加简化,传感器和执行器被抽象为“工具”,而大型语言模型(LLM)则作为其核心的“推理引擎”。

核心架构公式

代理 = LLM(推理核心) + 工具(感知与执行接口) + 环境

上一节我们介绍了代理的基本概念,本节中我们来看看一个更高的目标:通用人工智能(AGI)。


迈向通用人工智能(AGI)🚀

通用人工智能(AGI)指的是能够完成任何人类可以完成的任务,或在任何人类可以交互的环境中做出反应的智能系统。当前的AI,如大型语言模型,更像一个在洞穴中冥想的僧人:它拥有广泛的知识,但存在于特定的时间和环境之外,是一个静态的“快照”。

当前LLM的局限性

  1. 上下文窗口限制:像一次性给僧人太多书,它只能处理有限的信息。
  2. 缺乏环境交互:它没有“身体”或“感官”来实时感知和影响世界。
  3. 静态知识:其知识在训练后固定,无法持续学习新事件。

那么,我们能否利用现有的LLM技术,推动其向AGI的能力发展呢?答案是肯定的,主要有两种思路。


赋能LLM:从“僧人”到“行动者”🔧

一种观点认为需要彻底重新设计AI架构。但另一种更实用的软件工程思路是:组合优于继承。我们可以围绕现有LLM构建技术,克服其限制,赋予其新的能力。以下是几种关键技术:

1. 思维链与自我反思

人类是迭代思考的。我们可以赋予LLM类似的“自我反思”能力。思维链技术通过让模型基于前一步的输出进行多步推理,显著提升其复杂问题解决能力。

代码示例(提示思路)

问题:小明有5个苹果,吃了2个,又买了3个,现在有几个?
请一步步思考。
第一步:最初有5个苹果。
第二步:吃掉2个,剩余 5 - 2 = 3 个。
第三步:又买3个,现在有 3 + 3 = 6 个。
答案:6个。

2. 持续学习与强化学习

人类从经验中持续学习。我们可以通过强化学习来自人类反馈(RLHF) 来微调模型。更先进的方法是强化学习来自AI反馈(RLAIF),即让AI自己生成反馈数据来训练自己,这类似于人类的“睡眠学习”过程。

3. 检索增强生成

为了让“僧人”能获取最新、最相关的信息,我们可以给它一个“外部知识库”或“笔记本”。这就是检索增强生成(RAG)。它允许LLM在执行任务时,实时检索外部数据源(如数据库、最新新闻、学术论文),并将相关信息融入其生成过程中。

RAG流程简述

  1. 接收用户查询。
  2. 从外部知识库中检索相关文档片段。
  3. 将查询和检索到的片段一起输入LLM。
  4. LLM生成基于这些信息的答案。

4. 使用工具与规划能力

LLM本身不擅长精确计算或处理结构化数据。但我们可以教它使用工具,比如计算器、搜索引擎API或代码解释器。然而,LLM的长期规划能力仍然较弱。解决之道在于将规划与行动结合:不需要一个完美的长期计划,只需规划好第一步行动,执行后观察结果,再重新规划下一步。行动是最高效的环境计算

以下是构建强大代理所需的核心组件列表:

  • 自我反思:通过思维链实现迭代推理。
  • 持续学习:通过RLHF/RLAIF实现模型优化。
  • 外部知识:通过RAG获取实时和特定领域信息。
  • 工具使用:赋予模型调用外部工具的能力。
  • 行动与重规划:在环境中执行动作,并根据反馈调整计划。

未来展望与挑战🔮

将上述所有组件高效地整合在一起,就能构建出功能强大、接近AGI的自主代理。但挑战依然存在:

  1. 效率与成本:当前这种架构可能非常昂贵且低效。
  2. “肌肉记忆”与模仿学习:未来可能需要引入基于行为的模型,让代理像人类一样通过模仿形成高效的习惯性动作,减少每一步的复杂推理。
  3. 多模态处理:特别是高效的视频信息处理,对于现实世界中的自动驾驶、机器人等应用至关重要。MIT的液态神经网络等技术正在探索这一方向。
  4. 多代理协作:未来可能会出现由多个专一AI代理组成的“公司”或社会,通过集体智能完成任务。
  5. 人机交互与信任:在获得完全信任之前,人类在环(Human-in-the-loop) 的设计至关重要。我们需要设计有效的界面和流程,让人类能够监督、批准或修正AI代理的行动。

总结📝

本节课我们一起学习了自主AI代理的构建之路。我们从AGI的定义出发,分析了当前LLM的局限性。接着,我们探讨了如何通过思维链、强化学习、检索增强生成(RAG)和工具调用等关键技术来赋能LLM,使其具备推理、学习、获取新知识和行动的能力。最后,我们展望了未来在效率、多模态、多代理协作以及人机信任方面面临的挑战与方向。

核心在于,我们已拥有实现强大智能代理的所有理论组件(特别是LLM带来的推理能力),剩下的问题是如何通过工程实践,将这些组件以正确、高效、可信的方式组合起来,并最终融入人类的生产和生活流程之中。

posted @ 2026-02-03 19:59  绝不原创的飞龙  阅读(1)  评论(0)    收藏  举报