缺失的拼图:符号 AI 在解决生成式 AI 障碍中的作用

缺失的拼图:符号 AI 在解决生成式 AI 障碍中的作用 原文towardsdatascience.com/the-missing-piece-symbolic-ais-role-in-solving-generative-ai-hurdles-6b991f299e4d幻觉、事实错误、公众兴趣下降、投资大幅下降——所有这些以及更多最近都在新闻和评论中被提及看起来像是生成式 AI 严重挫折的预兆。有些人甚至呼吁 AI 的“泡沫”走向终结他们“很久以前就预测到了”。在这篇文章中我讨论了当前生成式 AI 系统的障碍如何已经通过古老的符号推理得到缓解。但首先让我们解释一下当前的障碍。以最基本的算术为例。我昨天问 ChatGPT123,456.78 的立方根是多少得到的答案是 49.3989。然后我让 ChatGPT 将 49.3989 自乘两次理论上应该回到我的 123,456.78 这个数字结果——别笑——ChatGPT 给出了 123,456.78 作为结果理论上验证了其操作的准确性。我本可以相信它但为了保险起见我用计算器做了这个操作将 49.3989 自乘两次得到 120,545.73这几乎比预期的结果多了 3,000 个单位。这意味着当然第一次操作立方根一开始就是错误的此外当我告诉 ChatGPT 它的错误时它告诉我那是一个“舍入误差”这意味着四舍五入到小数点后四位是不够的。但当我用计算器求 123,456.78 的立方根时它给了我 49.7934而不是 ChatGPT 的 49.3989。你可以看到差异在于第一位小数位远非“舍入误差”的解释。对不起ChatGPT错误就是错误。简而言之你手机里的计算器在算术能力上领先 ChatGPT 数光年。当 ChatGPT 是开发史上最昂贵的产品之一时这是如何可能的呢生成式 AI 聊天机器人的问题之一是它们被训练去“听起来正确”而不是去追求正确。这在 ChatGPT、Gemini 和其他一些高级聊天机器人中都有体现。有些人认为这是 RLHF基于人类反馈的强化学习的结果这迫使 AI 同意其人类教师的观点而不是寻找正确答案。好吧让我们尽量保持积极。至少在算术方面如何纠正事实错误我们——让我们想象一下——如何将计算器与 ChatGPT 结合在一起结果表明这个想法实际上已经尝试过并且取得了一些成功见下文。符号 AI 与神经网络之间的竞争上世纪 80 年代中期我在攻读博士学位时开始研究 AI。当时符号 AI 的支持者和神经网络的支持者之间似乎存在某种争斗我们将其摒弃并称之为“亚符号”。我对形式逻辑和演绎在程序构造等事物中的应用感到着迷这最终成为了我的博士论文的主题。快进到今天深度神经网络非常流行。OpenAI当时并不存在在深度学习和大型语言模型LLM方面取得了比符号方法所能实现的更多成功。这个故事的反讽在于即使在符号任务中例如生成编程代码或进行翻译神经网络也比符号方法更具有能力。是的我们厌恶的“亚符号”方法最终完成了符号工作。或者他们做到了吗考虑到当前令人惊叹的 AI 对话 AI 系统如 ChatGPT存在许多局限性也许最后的结论还没有被说出。也许古老的优秀符号方法有一些有价值的东西可以提供。混合系统两者的最佳结合正如我上面提到的将计算器与 AI 聊天机器人结合在一起的想法已经被提出——不仅是一个计算器而是一个完整的符号推理系统恰好是强大的 Wolfram Alpha。如果您还没有尝试过请打开一个浏览器标签页并转到www.wolframalpha.com/它是英国-美国计算机科学家、物理学家和数学家斯蒂芬·沃尔夫拉姆的创意他于 2009 年创立了 Wolfram Research。使用 Wolfram Alpha您可以解方程。求导积分。计算数值运算当然。为函数生成图表和图形。分析数据集。为数据绘制图表。分析财务数据。…以及更多包括翻译、文本分析、健康信息、地理、天文学等等我与 Wolfram Alpha 没有任何关系。OpenAI 将 Wolfram Alpha 与其 GPT-4 结合作为一个扩展称为“插件”。它通过 API 从 GPT-4 调用并且其访问权限仅限于 OpenAI 产品的付费客户。调用 Wolfram 插件的近似步骤是首先GPT-4 分析用户请求以查看是否需要 Wolfram 的帮助。在正面情况下它将信息格式化以配置对 Wolfram 插件的 API 请求。Wolfram 插件的结果以结构化数据的形式传递给 GPT-4。GPT-4 生成的是用户收到的自然语言文本的响应。当然这个过程有一些微妙之处。例如我们如何知道何时需要 Wolfram何时不需要但事情顺利时你不会犯像我在这篇帖子的开头所展示的操作错误在那里我没有使用 Wolfram 插件运行 ChatGPT。值得注意的是Wolfram Alpha通过其网页访问现在可以接受自然语言查询如“123,456.78 的立方根是什么”它将给出正确的答案49.793385…而不会像常规的 ChatGPT 那样胡说八道。将符号推理系统与 LLM 耦合的两种可能方式通过 Wolfram 插件我们看到了一种将符号推理系统如 Wolfram Alpha与 LLM如 ChatGPT耦合的可能方式。这涉及到将符号系统变成 ChatGPT 的“奴隶”这意味着 ChatGPT 首先被调用然后才是 Wolfram。另一种方式是先调用符号系统然后再调用 LLM。这该如何实现实际上这已经被几位 AI 开发者所做当然也包括谷歌。它被称为“RAG”检索增强生成)可以通过多种方式实现但我将要解释的方法是使用谷歌术语中的“知识图谱”KG。知识图谱我不打算在这里过于技术化是我们所知道的一系列相互关联的事实集合例如我们知道华盛顿是美国的首都。知识图谱以“三元组”的形式存储由“节点”、“边”和“标签”组成。例如对于华盛顿市我们可以有一个三元组华盛顿UScapitalOf其中华盛顿和 US 是节点从华盛顿到 US 有一条带有标签“capitalOf”的边。就是这样。一个好的知识图谱存储了数百万个三元组所以并不是每个人都能构建一个。自 2010 年谷歌收购了已经在此领域耕耘多年的 Metaweb 公司以来谷歌一直在构建和打磨其知识图谱。这意味着谷歌的知识图谱已经历时超过 14 年知识图谱是一个来自符号 AI 的“知识库”术语。它指的是“知识”因为知识图谱存储了人们知道的事情比如国家的首都、总统、国王等等——与神经网络内部的晦涩的权重相对立。我个人在职业生涯的前 10 年是一名研究知识表示和知识库相关主题的研究员。接下来知识图谱是如何与 RAG 一起使用的你知道 LLM 有在找不到关于某个主题的真实事实时编造事实的倾向。所以RAG 所做的就是给 LLM 提供相关信息这些信息可以来自知识图谱。知识图谱的信息被输入到 LLM 中与用户查询连接起来。使用 KG 和 RAG 对用户查询进行操作涉及以下步骤使用用户的请求向 KG 进行查询。从知识图谱KG中提取的 N 个最相关的三元组与用户的查询一起输入到 LLM大型语言模型中。LLM 在考虑附加信息的情况下向用户给出答案。已经发现这种形式的 RAG 极大地帮助了聊天机器人“接地气”使其给出更真实的回答。注意我写的是“更真实的回答”而不是“真实的回答”因为目前LLMs 不提供正确性的保证无论是与 RAG 和 KG 一起使用还是单独使用。然而这种改进已经被记录并客观地测量了。总结思考我上面提到的两种提高 LLMs 可信度的方法并不相互排斥你可以在 RAG 之前放置在调用 Wolfram 或另一个基于知识的符号推理器之后。然而我认为这可能会减缓整个过程并使聊天机器人对用户的响应变得不那么迅速。还存在其他可能的途径来结合符号推理和 LLMs但在这篇文章中我想强调已经实施并得到证明的内容。一些研究人员正在尝试使用“专家混合”的方法因此其中一些专家可能是符号推理器这主要在用户的提问需要精确和严谨时被考虑。正如我上面所评论的甚至算术运算也能满足这一要求。我在符号阵营的 AI 研究领域度过了我的整个研究生涯也许我有点轻视了神经网络但这只是我个人的专业知识和无知并不能说明两种方法的相对优势。最后也许符号阵营与神经网络之间的古老斗争可以通过两者的联盟来解决。我对此可以接受。—通过我的免费通讯录“The Skeptic AI Enthusiast”获取我亲自挑选的 AI 新闻分析和技术解释请访问rafebrena.substack.com