如果逻辑和学习不是两件分开的事呢?如果它们只是同一个底层过程的两种模式呢?
这个问题正是 Pedro Domingos 教授论文 “Tensor Logic: The Language of AI” 的核心。论文提出了一个统一框架:符号推理与神经学习,都从同一个基底中涌现出来——张量方程。
我一直在实现这些想法,想看看这个范式在实践里会是什么样。结果意外地像大脑:需要保证时很硬,需要从数据中学习时又很柔。
A Python implementation of Tensor Logic - a unified programming language for AI that combines neural and symbolic reasoning through tensor equations.
核心洞察
传统 AI 一直像两个分开的世界:
符号 AI 给你规则、逻辑和可解释性。每一步推理都能追踪。但它很脆,不能从数据中学习,也很难处理不确定性。
神经 AI 能从样本中学习,也擅长处理模糊性。但它不透明,容易幻觉,而且无法保证逻辑一致性。
Tensor Logic 消解了这条边界:它把两种范式都表达为张量运算。像 这样的逻辑规则,会变成一次矩阵乘法:。Attention 机制变成了驱动逻辑推理的同一种 join 操作。一切都跑在同一个基底上。
四个类脑性质
1. 双系统处理:快思考与慢思考
像 Kahneman 的 System 1 和 System 2 一样,这个框架以两种模式运行:
Boolean 模式给出精确、确定性的逻辑。没有近似,没有幻觉。你问「Alice 是 Bob 的祖母吗?」系统会基于已有事实给出可证明的是或否。
Continuous 模式允许学习与不确定性。关系变成概率,规则变成软约束,整个系统变成可微的——可以通过梯度下降从数据中学习。
妙处在于,你可以无缝地在两种模式之间切换,甚至在同一次计算中途切换。先用 continuous 模式训练来发现模式,再锁到 Boolean 模式获得生产环境里的保证。
2. 路由与门控:皮质柱
大脑并不是把所有信息塞进一个巨大的整体里处理;它会把信号路由到专门回路中,让它们竞争、协作。Tensor Logic 通过这些结构来映照这一点:
- Relation banks:一组学到的变换,比如 "parent"、"colleague"、"influences",可以动态组合
- Attention heads:并行路径,各自关注输入的不同侧面
- Learned gates:小型神经控制器,决定每一步推理该应用哪些关系
系统不必硬编码 ,而是可以从例子中学会如何组合多步关系,并为每个查询选择正确的推理链。
3. 自下而上遇见自上而下:双向流动
大脑持续整合两股信息流:
Forward chaining(自下而上):从事实出发,应用规则,传播结果。「Alice 是 Bob 的父母,Bob 是 Carol 的父母,所以 Alice 是 Carol 的祖父母。」
Backward chaining(自上而下):从目标出发,反向寻找证据。「Alice 是 Carol 的祖父母吗?让我们检查是否存在一个 ,满足 。」
两股流都使用同样的张量运算,只是方向不同。这种双向推理,很像大脑皮层如何把前馈感知与反馈预测合在一起。
4. 自我修改:学会注意新模式
最像大脑的一点也许是:系统可以扩展自己的词汇表。
通过张量分解,特别是一种叫 RESCAL 的技术,系统可以发现藏在数据里的潜在关系。如果你喂给它一批家谱事实,它可能会在无人告知的情况下自动发现 "sibling" 或 "ancestor" 这样的概念。
这些被发明出来的谓词随后成为一等公民——可以用于之后的推理、组合与学习。系统真的在重塑自己能够思考的东西。
它打开了什么
这个架构不只是概念上优雅,它解决的是实际问题:
无幻觉的知识系统:在脏数据上训练 embedding,然后在推理时强制逻辑约束。得到神经网络的学习能力,同时保留数据库级可靠性。
可解释的深度学习:把 Transformer 和 attention 写成显式张量方程。每一次计算都有可以审计、可以调试的符号解释。
Few-shot 推理:从少量例子中学习组合规则。「给我 5 个祖父母关系的例子」 系统学到组合模式并泛化。
混合搜索:在同一个查询中结合模糊相似度(向量 embedding)与硬约束(图结构)。「找到与 相似、且在与 有关联机构工作的研究者。」
接下来的路
当前限制也映照了神经科学和 AI 中的已知难题:
类型化知识:真实大脑会区分实体类型(人、地点、概念)。加入 typed embedding spaces,可以让异质领域之间的结构化推理更强。
概率推理:大脑通过概率化的群体编码处理不确定性。把概率图模型整合成张量程序,可以带来更丰富的不确定性量化。
感知:只有逻辑不够——我们需要把它落到原始感官数据里。把 CNN 和 kernel machines 也表达成张量方程,会闭合这一环。
溯因推理:人类擅长生成假设来解释观察。让框架支持完整的溯因推理,而不只是前向/后向演绎,仍然是开放问题。
为什么这重要
AI 正处在一个拐点。纯神经 scaling 已经带来了惊人的能力,但裂缝也越来越明显:幻觉、脆弱、不可解释、无法保证正确性。
解法不是抛弃神经网络、回到符号 AI。解法是承认:这两个范式都是更深层东西的投影——计算本身,以张量和方程的形式表达出来。
当你用这种方式构建 AI,你得到的是这样的系统:
- 像神经网络一样从数据中学习
- 像逻辑引擎一样带保证地推理
- 像人类一样组合知识
- 用数学形式解释自己的思考
- 提升自身的表示能力
我相信会 scale 的是这种架构——不只是 scale 到更大的模型,而是 scale 到更有能力、更可信、更可理解的智能。
继续阅读
- 阅读 Pedro Domingos 的原论文:“Tensor Logic: The Language of AI”
- 在 GitHub 上探索这个 open-source implementation
- Attention 如何归约为逻辑 join、谓词发明机制、训练策略等技术细节,都写在 repo 里
如果你想更深入地聊这些概念或实现,我很乐意继续讨论。