news 2026/10/26 15:45:46

深度学习、强化学习与知识表示如何协同走向AGI

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
深度学习、强化学习与知识表示如何协同走向AGI

这三个词经常被并排放在一起讲,但真正动手搭过东西的人会发现,它们在工程上其实是三套完全不同的语言:深度学习说的是“用数据和梯度把函数拟合出来”,强化学习说的是“用试错和回报把行为调出来”,知识表示说的是“把人类已经想明白的事显式写下来给机器用”。我见过不少刚转方向的朋友,把这三块分别学了一遍,考试题都会做,一到要拼成一个能跑的系统就卡住,因为他们脑子里是三座孤岛,不知道接口在哪。这篇就按我自己的理解,把三者的分工、边界、咬合方式,以及我在搭小规模验证环境时踩过的坑,一次讲透。适合已经了解基础概念、想往系统层面走的读者,也适合刚入门、想先建立整体地图的朋友。读完你至少能判断:一个号称“往AGI走”的方案,它到底补的是哪块拼图,还是在原地打转。

1. 三个词各自在AGI拼图里占什么位置

先把定位说清楚,不然后面全是空谈。通用人工智能这个目标太大,大到没法直接优化,工程上只能拆成若干可度量、可迭代的子能力。深度学习、强化学习、知识表示,恰好对应三类不同的子能力,而且它们的“失败模式”完全不一样。搞清楚每种技术擅长什么、在哪失效,比背十个算法名字有用得多。

1.1 深度学习干的是“把特征工程自动化”

深度学习的核心贡献,说到底就一件事:以前你要识别一张图里有没有猫,得人工设计边缘、纹理、局部形状这些特征,现在你把原始像素丢进去,让网络自己学。多层非线性变换叠加起来,能拟合极其复杂的从输入到输出的映射,这就是表示学习。它的威力来自可微——只要整个链路可导,就能用反向传播把误差一路传回去,所有参数一起调。

但它的代价也很实在:需要大量数据、需要算力、需要对数据分布高度忠实。模型本质上是插值器,它在训练分布覆盖到的地方表现惊艳,一旦跑到分布外,退化速度比大多数人想象的快。你在benchmark上看到的高分,很多是“见过类似题”的结果,不是“理解了规则”。这一点如果不认,后面所有架构设计都会跑偏。

我在实际项目里有个粗糙的判断标准:如果一个任务能被写成“给定输入X,输出Y,且X和Y的联合分布相对稳定”,深度学习几乎总是最优解;如果任务里含有“多步之后才知道对错”“环境会因为我做了动作而改变”,那单靠它就很难收场。

1.2 强化学习干的是“把目标写进环境里”

强化学习不告诉你标准答案,只在你做完动作之后给一个分数,然后让你自己琢磨哪一步做对了。数学上是马尔可夫决策过程那一套:状态、动作、转移概率、奖励、折扣因子。它真正解决的是序贯决策下的信用分配问题——最终的成功或失败,到底该归功于前面哪几步。

这和监督学习是两种世界观。监督学习假设每个样本都有标签,强化学习假设你只有稀疏的、延迟的、甚至带噪声的回报信号。所以强化学习的算法难点往往不在网络结构,而在奖励设计和样本效率。奖励写歪一点,智能体就会找到一个你没预料到的刷分方式,业内叫奖励黑客。样本效率低,意味着你要在真实环境里试几百万次,很多场景根本付不起这个成本。

注意:奖励函数是强化学习里最容易出事的地方,不是算法。我见过太多团队花两周调PPO超参,最后发现是奖励里有个符号写反了。

1.3 知识表示干的是“让机器拥有可复用的先验”

知识表示这条路走了几十年,核心思想是:人类已经把很多规律总结出来了,为什么还要让机器从零开始用数据重新发现一遍?把实体、关系、规则、约束显式写下来,机器就能直接拿来用,不必每次都靠统计规律去猜。三元组、本体、逻辑规则、知识图谱、甚至一段写好的程序,本质上都是知识表示的不同形态。

它的优势是精确、可解释、可组合,缺点是获取成本高、覆盖不全、对模糊输入很脆。你写一条规则“鸟会飞”,碰到企鹅就得出错,于是要加例外,例外又有例外,规则库迅速膨胀。这也是为什么符号主义在统计学习崛起后被冷落了很多年。

但最近几年风向又变了。原因不是符号方法突然变强了,而是大家发现纯统计模型缺一个东西:稳定、可审计、可复用的先验。模型可以记住“巴黎是法国的首都”,但你没法保证它在被追问三次之后还给出同一个答案。知识表示补的就是这块。

1.4 三者不是替代关系,是三层结构

把三者放进一个系统里,比较自然的分层是这样:深度学习负责感知与泛化,把非结构化输入压成有意义的表示;知识表示负责记忆与约束,提供可查询、可校验的先验;强化学习负责决策与优化,在环境反馈下把行为往目标上推。

技术主要贡献典型失效场景关键成本
深度学习表示学习、端到端拟合分布外泛化、长链推理数据、算力
强化学习序贯决策、目标驱动优化稀疏奖励、奖励黑客、样本效率环境交互次数
知识表示先验注入、一致性约束覆盖不全、维护成本高人工建模

这张表我建议贴在工位上。每次看到一个新方案,先问它在这三层里补了哪一层,如果一层都没补,只是换了个网络结构,那大概率是增量改进,不是架构突破。

2. 深度学习的天花板不在参数量,在“它只会拟合你给的数据分布”

现在有一种很流行的叙事:只要模型继续变大、数据继续变多,智能就会自然涌现。这个说法对了一半。缩放定律确实在相当宽的范围内成立,但它拟合的是训练分布上的损失,不是任务成功率,更不是“理解”。这两者之间的鸿沟,是当前所有架构设计要面对的核心矛盾。

2.1 缩放定律能兑现的部分和兑现不了的部分

缩放定律描述的是:模型损失随参数量、数据量、计算量呈幂律下降。工程含义很直接——在给定算力预算下,存在一个最优的参数量和数据量配比,盲目堆参数而不加数据,收益会迅速递减。这个结论在实践里非常有用,它告诉你资源该怎么分。

但它兑现不了的东西也很明确。第一,它管的是平均损失,不是尾部表现。模型在简单样本上的损失降得很快,在困难样本上可能几乎不动,平均下来看着很漂亮。第二,它不保证组合泛化——把已经学会的两个技能组合起来解决新问题。第三,它完全不涉及“知道自己不知道”,也就是校准问题。一个模型可以非常自信地给出错误答案,损失曲线对此毫无反应。

我的经验是,把缩放定律当成资源分配的经验法则,不要当成能力预测工具。它能回答“我该买多少卡”,回答不了“我这个系统能不能上线”。

2.2 分布外泛化:训练集上像天才,出了门就露馅

分布外泛化差,根子在于模型学到的是相关性而不是因果机制。训练数据里“医院”和“医生”经常一起出现,模型就把这两个词绑得很紧,但它并不知道医院里有医生是因为雇佣关系。你换一个语境,它的输出就会暴露出这种表面关联。

这个问题在纯文本任务里还算温和,到了需要多步推理、需要跟环境交互的任务里就会被放大。我做过一个很朴素的对照实验:让模型解一类有固定解法的应用题,训练集里的数字分布集中在某个区间,测试时把数字换到区间外,准确率掉了接近四成。这不是模型“不会算”,是它学的是“在这个数字范围里该输出什么形状的答案”。

缓解手段有几类,各有代价。数据侧做分布增广,成本最低但覆盖有限;架构侧引入归纳偏置,比如让模型显式处理变量绑定,效果好但通用性下降;最根本的是引入外部校验,也就是让模型输出之后有一个独立的模块去验算。第三条路其实就通向知识表示,后面会展开。

2.3 一个显存预算的粗算例子

很多人对“能不能在自己的机器上跑”没概念,我给一个粗略算法。假设模型有 P 个参数,用混合精度训练:fp16 权重占 2P 字节,fp16 梯度占 2P 字节,Adam 优化器要维护 fp32 的一阶矩和二阶矩,各 4P 字节,合计 8P。光这四项就是 12P 字节。再算激活值,跟批次大小、序列长度、层数有关,粗估再加 4P 到 8P。

按这个算法,一个 7B 参数的模型做全参数微调,光静态部分就要 84GB,加上激活值轻松破百GB。这就是为什么单卡很难受。换成 LoRA 这类低秩适配,只训练很少一部分参数,优化器状态和梯度大幅缩水,显存需求能压到原来的几分之一,代价是容量上限降低、需要选对注入的层。

这个计算没什么高深技巧,但它能帮你快速判断一个方案是不是在吹牛。凡是说“单卡微调百亿模型”又不提量化、不提低秩、不提卸载的,基本可以跳过。

2.4 数据质量比参数更值钱

这一条是我踩过坑之后才真正信的。早期我总觉得数据越多越好,后来做了一次对照:同一套流程,一份是原始抓取数据直接训,一份是做了去重、去噪、按难度排序的课程数据。后者的效果明显更好,而且训练更稳。

去重尤其重要。重复样本会让模型对某些模式过拟合,表现为在训练集上loss降得飞快,验证集不动。去噪是指去掉格式混乱、标注错误、前后矛盾的样本,这类样本对模型的伤害比缺少样本更大,因为它教给模型的是错误映射。课程排序是指先易后难,让模型先建立基本模式再处理复杂情况,对小模型效果尤其明显。

具体操作上,我一般会做三件事:用近似去重把相似度超过阈值的样本合并;用规则过滤掉长度异常、字符异常、标签缺失的样本;按长度或难度分桶,训练时从易到难采样。这三步不涉及任何高级算法,但收益比换一个更花哨的网络结构大得多。

3. 强化学习真正的难点不是算法,是奖励设计和样本效率

强化学习的教材通常花很大篇幅讲策略梯度、值函数逼近、信赖域方法,这些当然要懂,但在实际系统里,算法选择往往不是瓶颈。真正的瓶颈有两个:你怎么把目标写成奖励,以及你要花多少次交互才能学到东西。这两个问题不解决,换什么算法都是白搭。

3.1 从MDP到策略梯度:一条最小可跑通的链路

把问题形式化,就是五元组:状态空间、动作空间、转移概率、奖励函数、折扣因子。目标是找到一个策略,使得从任意状态出发的期望折扣回报最大。折扣回报写成从当前时刻往后的奖励加权和,折扣因子越接近1,智能体越看重长期;越接近0,越短视。

策略梯度的核心公式很简洁:对策略参数的梯度,等于“动作对数概率的梯度”乘以“优势函数”的期望。优势函数衡量的是“这个动作比平均水平好多少”。直觉上就是:如果一个动作带来的结果比预期好,就提高它被选中的概率;反之降低。

这条链路最小可跑通的版本并不复杂:一个能输出动作概率的网络,一个估计优势的 critics,一个收集轨迹的循环。但要注意几个工程细节。优势估计的方差很大,需要做基线减法;轨迹之间相关性高,需要并行多个环境;策略更新步子不能太大,否则性能会崩。这些细节决定了你是“跑通了”还是“跑好了”。

3.2 稀疏奖励与信用分配

大部分真实任务里,奖励是稀疏的:只有最后成功那一刻给分,中间全是零。这时候策略梯度的信号几乎为零,因为几乎所有动作的优势估计都是零,模型学不到东西。

解决思路有几类,我按实际使用频率排一下。第一类是奖励塑形,人为设计一些中间奖励,引导智能体往正确方向走。风险是塑形奖励和真实目标不一致,智能体会去刷塑形分,这就是奖励黑客的典型来源。第二类是** hindsight 经验回放**,把失败轨迹里实际到达的状态当成“假装的目标”重新标注,让失败样本也能提供学习信号。第三类是课程学习,从简单任务开始,逐步增加难度,保证智能体在每一步都有非零的成功率。第四类是内在奖励,用状态新颖度或预测误差作为额外奖励,鼓励探索。

这几类我通常组合使用:课程学习打底,保证有成功样本;hindsight 提高样本利用率;内在奖励只在探索明显停滞时加,加多了会干扰主目标。

3.3 离线强化学习与世界模型:把试错成本降下来

在线试错的成本在很多场景下是不可接受的。离线强化学习的思想是:从一份固定的历史数据里学策略,不再与环境交互。难点在于分布偏移——学到的策略会倾向于选择数据里没出现过的动作,而这些动作的价值估计是不可靠的,容易被高估。

对应的解法是给价值估计加保守性约束, penalize 那些偏离数据分布太远的动作。这样做的代价是策略偏保守,探索能力弱,但在安全敏感的场景里这个交换是划算的。

世界模型走的是另一条路:先学一个环境的动态模型,然后在模型内部做想象 rollout,用想象出来的轨迹训练策略。好处是样本效率大幅提升,坏处是模型误差会被策略利用——策略会找到模型预测不准的地方钻空子,这在业内叫模型利用。常见的缓解手段是集成多个动态模型,用它们的分歧度作为不确定性估计,在高不确定区域降低策略的信任度。

3.4 PPO里那几个超参的实际手感

PPO是我用得最多的 baseline,不是因为它最好,而是因为它稳、调参经验多。给一组我常用的起点:学习率 3e-4,裁剪系数 0.2,折扣因子 0.99,GAE 的 lambda 取 0.95,每轮采集 2048 到 4096 步,minibatch 取 64,每批数据更新 10 轮,熵系数 0.01。

裁剪系数控制策略更新的幅度,太小学习慢,太大容易崩,0.2 是个比较安全的默认值。GAE 的 lambda 控制偏差和方差的权衡,接近1方差小偏差大,接近0反过来,0.95 是常用折中。熵系数决定探索强度,任务奖励稠密时可以设小一点,稀疏时适当加大。

有一个监控指标我强烈建议加上:近似KL散度。每次更新后算一下新旧策略的KL,如果超过目标值一定倍数就提前停止本轮更新。这一招能显著降低训练崩溃的概率,尤其是环境有随机性的时候。我自己的经验是,加上KL早停之后,同样的超参在不同随机种子下的方差明显变小。

提示:不要迷信某篇论文里的超参表。那些数字是在特定环境、特定网络结构下调出来的,换一个任务就得重新扫。先固定大部分参数,只扫学习率和熵系数两个,通常就能找到可用区间。

4. 知识表示被冷落了几年,现在为什么绕不开

符号主义那一套在统计学习崛起之后被冷落了很久,理由是“知识获取太贵、太脆”。这个批评是对的,但它推导不出“不需要知识表示”这个结论。正确的结论应该是:不能只靠人工写规则,但也不能完全没有显式知识。问题在于怎么把两者结合起来。

4.1 符号系统的老问题:脆、贵、难对齐

脆是指规则一旦碰到边界情况就失效。“鸟会飞”这条规则要加上“除非是企鹅、鸵鸟、受伤的鸟、幼鸟”,例外越加越多,最后规则库变成一团乱麻。贵是指知识获取需要专家投入,一个领域的本体建下来动辄数月。难对齐是指规则里的概念和模型内部表示之间没有天然对应,你写的是符号,模型学的是向量,两者之间隔着一层。

这三个问题都是真的,但它们不代表符号方法没用,而是说明纯符号系统走不通。把符号系统当成唯一的推理引擎,它撑不住开放世界的复杂度;把它当成一个可查询、可校验的辅助模块,它的价值立刻显现。

4.2 知识图谱与向量嵌入:两种“记得住”的方式

知识图谱的存储形式是三元组:头实体、关系、尾实体。比如“某城市—位于—某国家”。这种表示的好处是结构化、可查询、可增量维护,坏处是查询依赖精确匹配,对同义表达和模糊指代不友好。

为了让图谱能被模型用起来,通常要做嵌入。经典做法是把实体和关系映射到低维向量空间,让头实体向量加上关系向量接近尾实体向量。训练时用负采样构造反例,用 margin 损失把正例和反例拉开。嵌入维度一般取 128 到 512,太小表达力不足,太大容易过拟合且存储成本高。

表示方式优点缺点适用场景
三元组/图结构精确、可解释、可增量更新需要 schema 设计,模糊查询弱事实校验、关系查询
向量嵌入支持相似度计算,和神经网络天然兼容可解释性差,更新需要重训检索、推荐、链接预测
规则/约束可审计、可做硬性拦截覆盖有限,维护成本高合规校验、解码约束

我一般的组合是:底层用图结构存事实,上层用嵌入做召回,再用规则做最后一道校验。三层各司其职,哪一层出错都比较好定位。

4.3 神经符号结合的三条常见落地路径

第一条是约束解码。模型生成输出的时候,用规则或 schema 限制候选空间。比如生成一个日期,就约束它必须是合法日期格式;生成一个动作序列,就屏蔽掉当前状态下不可执行的动作。这条路径实现简单,收益直接,我在好几个项目里都用过。

第二条是检索增强。把外部知识库当成一个可寻址的记忆,模型在生成前先检索相关条目,把检索结果拼进上下文。这条路径现在很常见,关键难点不在检索本身,而在什么时候该检索和检索回来怎么用。检索太频繁会拖慢速度,检索结果不相关反而会误导模型。

第三条是把规则编译成可微的损失项。思路是让违反规则的程度变成一个可计算的惩罚,加进训练目标里。这条路径理论上很优雅,实践里要注意惩罚系数的调节——系数太大模型会变得极度保守,太小则规则形同虚设。

5. 三者怎么真正咬合:一个可验证的协同架构

前面三章分别讲了三种技术的能力和边界,这一章讲怎么把它们拼起来。我要强调的是,拼接不是把三个模块首尾相连就完事,关键在于定义清楚接口和反馈回路。没有反馈回路的系统,三个模块再强也只是各自为战。

5.1 感知层、决策层、记忆层的分工

我习惯把系统分成三层。感知层用深度学习,负责把原始输入(文本、图像、结构化日志)转成中间表示。记忆层用知识表示,负责存储事实、关系和约束,并提供查询接口。决策层用强化学习,负责在状态表示和知识约束下选择动作,并根据环境反馈更新策略。

层与层之间的接口要尽量窄。感知层输出固定维度的向量或结构化字段,记忆层提供“给定查询返回候选集合”的接口,决策层只依赖这两者的输出。接口窄的好处是每层可以独立替换和测试。我见过一些系统把三层揉在一个大网络里端到端训练,效果在某些任务上确实好,但调试起来极其痛苦,出了错根本不知道是哪一层的问题。

5.2 用知识表示约束探索空间

强化学习最怕动作空间太大。动作一多,随机探索几乎不可能在合理时间内碰到成功样本。这时候知识表示能帮上大忙:用规则把明显不可行动作直接屏蔽掉,把动作空间砍掉一大截。

举个具体做法。假设智能体要在一个流程系统里操作,每个状态下可执行的操作受前置条件约束。把这些前置条件写成规则,在策略网络输出动作概率之后,把不满足条件的动作概率置零再归一化。这一步不改变网络结构,也不需要重训,纯后处理就能显著提升样本效率。

更进一步,可以把知识图谱里的统计信息作为策略的初始化先验。比如某个动作在历史上成功率高,就在初始策略里给它一个稍高的概率。这不是硬约束,只是加速冷启动。

5.3 用强化学习校准深度学习的输出

深度学习模型的输出是概率分布,不是决策。什么时候该信它、什么时候该质疑它,需要一个独立的机制来判断。强化学习可以充当这个机制:把“是否采纳模型输出”当成一个动作,根据最终结果给回报,训练一个校准策略。

这套思路和现在常说的偏好对齐是一脉相承的,但我想强调的是它必须做成闭环。很多系统只做了一次性对齐,上线之后就不再更新,结果模型行为随着输入分布漂移慢慢失准。闭环的意思是:线上结果回流,定期重新训练校准策略,形成一个持续修正的循环。

这里有个容易被忽略的点:回报信号的质量决定校准的质量。如果回报只是一个粗糙的“用户点了赞”,那校准出来的策略学到的是迎合,不是正确。回报设计要尽量贴近真实目标,必要时引入人工复核做高置信样本。

5.4 一个小规模验证实验的设计

想验证这套架构是否成立,不必一上来就做大规模。我推荐从一个受控的小环境开始:一个网格世界,加上一个文本指令理解模块,加上一个规则知识库。

实验设计大概是这样的。任务是指令驱动的导航:给一句自然语言指令,智能体要走到指定位置。感知层负责把指令编码成向量,记忆层存地图的拓扑结构和规则(比如某区域不可通行),决策层输出移动动作。

对照组设三组:只用深度学习加模仿学习;深度学习加强化学习但不加知识库;三者全上。评估指标三个:任务成功率、达到目标所需的平均交互步数、以及换一张新地图后的迁移表现。每组跑至少三个随机种子,报告均值和方差。

我做过类似的实验,结论是:知识库对样本效率的提升最明显,尤其在动作空间大的时候;强化学习对最终成功率的提升明显,但需要足够的探索信号;深度学习提供的表示质量决定了前两者的上限。三者缺一,系统要么学得慢,要么学不好,要么换个环境就废。

6. 我在搭验证环境时踩过的坑

这一章讲的是实操层面的东西,都是我自己或者身边人真实遇到过的问题。有些坑看起来很蠢,但在赶进度的时候特别容易踩。写出来是希望大家少走弯路。

6.1 奖励写错导致的“假收敛”

最典型的一种:智能体学会了卡在某个状态反复触发一个小额奖励,总回报看起来在涨,但任务根本没完成。这在学习曲线上表现为回报稳步上升,成功率却纹丝不动。第一次遇到的时候我盯了两天才反应过来。

排查方法很朴素:把智能体的轨迹打印出来看。不要只看回报数字,要看它到底做了什么。我现在养成的习惯是,训练过程中每隔一段时间保存几条完整轨迹,人工过一遍。这件事花不了多少时间,但能提前发现大部分奖励设计问题。

另一个技巧是给奖励加一个上界检查。如果单步奖励有理论最大值,就在代码里断言不超过它。一旦越界,说明奖励计算逻辑有问题,早点崩比晚上线强。

6.2 知识库三元组质量拖垮整个链路

知识库这一层的错误特别隐蔽,因为它不会让程序崩溃,只会让结果慢慢变差。常见问题有三个:实体歧义(同一个名字指代不同对象)、关系方向写反(“A属于B”写成了“B属于A”)、时效性错误(旧数据没更新)。

我的处理办法是加一道入库校验。新三元组进来之前,先检查实体是否已注册、关系是否符合 schema 定义、数值是否在合理范围。校验规则不需要很复杂,但必须存在。另外定期做一致性抽查,随机抽一批三元组人工核对,比例不用高,百分之几就够发现系统性问题。

还有一点:知识库的更新要版本化。每次批量导入都记一个版本号,出问题能回滚。我吃过一次亏,一次错误的批量导入污染了整个库,又没有版本记录,只能从头重建。

6.3 训练不稳定与种子敏感性

强化学习的种子敏感性比深度学习严重得多。同一套代码、同一组超参,换个随机种子,成功率能差十几个百分点。这意味着你跑一次实验得出的结论很可能是噪声。

解决办法只有两个:多跑几个种子,报告分布而不是单点;固定所有能固定的随机源,包括环境初始化、动作采样、网络初始化。前者是统计上的诚实,后者是工程上的可复现。两个都要做。

还有一个细节:并行环境的数量会影响有效批次大小,进而影响训练动态。改并行数的时候,其他超参要跟着调,不能直接沿用。我一般会把并行数和总步数的关系记在实验日志里,方便回溯。

6.4 评估指标选错,白跑两周

这件事说起来最亏。有一次我用平均回报作为主指标,跑了两周发现平均回报涨了,但成功率没变——少数成功样本的回报特别高,把平均值拉上去了。实际上智能体只是在少数简单任务上表现更好,困难任务一个都没解决。

后来我改成看成功率分布:按任务难度分桶,看每个桶的成功率。这样一眼就能看出模型是在所有任务上均匀提升,还是只在简单任务上刷分。指标选对了,实验周期立刻缩短。

评估还有两个原则我一直在用。第一,评估环境和训练环境要分离,最好用不同的随机种子和不同的初始状态分布。第二,保留一个固定的评估集,不要每次随机采样,否则前后结果没法比。这两条看起来是常识,但赶进度的时候最容易被跳过。

6.5 模块之间的接口要有契约测试

最后补一个偏工程但很重要的点。三层架构里,层与层的接口如果有隐式假设,出问题特别难查。比如感知层默认输出的向量已经归一化,决策层也默认它是归一化的,某天感知层改了个预处理,忘了归一化,决策层的表现就莫名其妙地下降。

解决办法是给接口写契约测试:固定输入,断言输出满足的数学性质(维度、范围、归一化、类型)。这些测试跑起来很快,能在集成前就发现问题。我现在的习惯是,每加一个新模块,先写契约测试再接进去,虽然多花半小时,但省下的调试时间远不止这些。

7. 关于这三者关系的一点个人判断

写到这里,我想把自己的一个判断摆出来,供参考。我不认为AGI会由某一个算法的突破直接带来,更可能是三个方向的工程化收敛:深度学习把表示做得更稳、更省数据;强化学习把决策做得更样本高效、更可控;知识表示把先验做得更易维护、更容易和神经网络对接。这三件事单独看都不算颠覆性,但叠在一起,系统的可靠性会有质变。

我自己的做法是,每接一个新任务,先问三个问题:这个任务的输入分布稳不稳?如果稳,深度学习打底;这个任务是不是多步决策、结果延迟?如果是,强化学习上;这个任务有没有明确的事实和规则需要保证一致?如果有,知识表示补。三个问题问完,架构基本就定了,剩下的都是调参和工程细节。

这套判断不一定对,但至少能让我在面对方方面面的新方案时,快速判断它补的是哪块,值不值得投入时间。踩过的坑告诉我,技术选型最怕的不是选错,而是不知道自己为什么选。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/26 15:45:41

claude-mem 深度解析:为 Claude 构建可检索的长期记忆系统

1. 项目缘起与核心定位第一次看到claude-mem这个名字,我的直觉是:这大概率是一个围绕 Claude 生态做“记忆层”的项目。事实也确实如此。它要解决的是一个非常具体、也非常痛的问题——大语言模型在长对话、跨会话场景下没有持久记忆。你每次开一个新窗口…

作者头像 李华
网站建设 2026/10/26 15:45:28

Oracle AI数据库测试工具:智能SQL性能优化解析

1. Oracle AI Database Tester的诞生背景 数据库性能优化一直是DBA和开发人员最头疼的问题之一。在传统Oracle数据库环境中,SQL查询性能调优通常需要经历以下几个痛苦阶段: 首先需要通过AWR报告或ASH报告识别问题SQL 然后使用SQL Tuning Advisor或SQL …

作者头像 李华
网站建设 2026/10/26 15:45:00

OpenMontage:面向视频生产的媒体原生智能编排引擎

1. OpenMontage 不是“另一个 AI Agent 框架”,而是一套面向视频生产流水线的智能编排引擎 OpenMontage 这个名字一出来,很多人第一反应是:“又一个 LangChain/CrewAI 风格的通用 agent 框架?”——错。我去年在一家做教育短视频的…

作者头像 李华
网站建设 2026/10/26 15:44:59

HCIA基础精讲:OSI七层模型与IP地址子网划分全解析

第一次翻开HCIA的教材,第一章的标题大概率就是"OSI七层模型及IP地址"这类内容。很多人扫一眼就翻过去了,觉得这是概念课、背背就行,真正做题和配设备的时候才发现,后面所有的路由、交换、ACL、NAT、故障排查&#xff0c…

作者头像 李华
网站建设 2026/10/26 15:44:58

Unity项目GitHub托管实战:.meta、Git LFS与场景冲突

Unity 项目挂到 GitHub 上托管,听上去就是把文件夹往仓库里一推的事,真动手的人都知道这活儿坑有多深。我自己第一次把工程推上去,git status刷出来两万多个待提交文件,仓库体积十分钟内涨到 3 个 G,队友 clone 下来打…

作者头像 李华
网站建设 2026/10/26 15:44:28

Java小游戏课设交付全攻略:UML图、README与Swing实现

简介:这是一份基于Java语言开发的完整小游戏项目,兼具课程设计与毕业设计参考价值,也适合初学者通过源码研读进入游戏开发领域。压缩包内含170个文件,大小约15.89MB,既有90个Java源文件实现角色、场景与逻辑控制&#…

作者头像 李华