在本期节目中,资深研究员和AI顾问Garima Agrawal分享了她多年来在数据科学和人工智能领域的经验。听众将了解知识图谱在增强大型语言模型(LLM)以完成特定领域任务方面的作用,以及这些工具如何减轻AI系统中诸如幻觉等问题。主要见解包括LLM如何利用知识图谱通过整合领域专业知识、减少幻觉和实现更好的推理来提高准确性。讨论的实际应用范围从使用高效的FAQ检索增强客户支持系统到创建更智能的AI驱动型决策管道。Garima的工作重点阐述了将静态知识表示与动态AI模型相结合如何带来经济高效、可扩展和以人为本的AI解决方案。 ------------------------------ 想收听无广告版本?试试我们的图课程?加入Data Skeptic+,每月5美元或每年50美元 https://plus.dataskeptic.com</context> <raw_text>0 您正在收听Data Skeptic图与网络播客,该播客探讨了图数据结构如何影响科学、工业及其他领域。欢迎收听Data Skeptic图与网络播客的另一期节目。今天我们讨论知识图谱和RAG以及一些相关主题。Asaf,你对知识图谱的背景是什么?
知识图谱,你可以将所有东西建模成知识图谱。如果你关注我们的节目,你就会知道这一点,对吧?我通常做的是网络分析。所以我通常,我不太处理知识图谱。我处理的是,让我们称之为普通网络,每个节点都是相同实体,连接都具有相同的逻辑的网络。在知识图谱中,你可以拥有多种多样的数据。当你想要存储数据时,这是一件很酷的事情,但问题是,一些你想要使用的网络算法,在只有一维的网络上效果不会那么好。
你可以使用一些网络算法,但它们会给你一些不如在一维网络中清晰的结果。说得有道理。我经常觉得许多知识图谱项目都高度关注输入所有数据的个人的偏见以及他们看待世界的方式,并选择
创建这些数据结构来表示该知识。网络本身并不一定那么有趣。也许是其他应用程序可以与之关联。所以最好的例子可能是谷歌搜索,有时你会查询一些东西,比如,我不知道,铀。在右侧将是他们快速检索到的与该主题相关的知识图谱元素。
当你构建知识图谱时,当然,这取决于谁构建它,以及你是否使用了正确的模式等等。通常它就像非常,我不知道是否直观,但很简单,对吧?有时是
这看起来不是什么大问题,但我看到人们创造性地使用它。我认识的一家公司所做的是使用知识图谱来尝试……我们谈到了材料,对吧?他们想使用材料,不仅是材料,还有工艺,在他们可以应用于不同行业的材料上的相同工艺。好的,他们给我的例子是
他们想做的是在木材上涂蜡。这是一个困难的过程,在这个过程中会损失大量的蜡,所以它非常昂贵。
他们使用知识图谱来了解哪些行业存在相同的工艺和一些相同的材料,一些相似的东西。他们发现的是汽车行业,在车辆上涂蜡时。但这个过程是磁化的。你会想,好吧,他们所做的是将木材磁化。听起来,我不知道,正如我之前所说,我不是物理学家。
但也许如果你通过大量的,我不知道是否属实,但那是他们所说的。所以如果你通过木材足够的电流,一些蜡就会粘住。这足以使其,你获得了更好的投资回报。所以他们使用知识图谱来寻找相似的模式,或者在语义情况下,在不同行业中相同的材料或相同的工艺。
所以这是一个非直观的使用知识图谱的方式,例如。我们将在这个访谈中讨论的主题是知识图谱能否减少LLM中的幻觉?这是LLM的时代。我们已经几次触及到这一点。并且经常报道说它们会产生幻觉,尽管我自己并没有经常遇到这种情况。
但当然,零幻觉是理想的。所以也许用知识图谱增强是秘诀。是的,我看到你几次产生幻觉,但我认为……
但我喜欢与Garima的谈话,那就是在知识图谱和LLM之间使用迭代过程的想法,对吧?正如她所说,你可以获得两全其美,知识图谱,以一种你可以使用的方式提取和存储数据的方式。以及帮助你从知识图谱中提取数据的LLM,并且
众所周知,知识图谱需要一些查询,需要不同的查询语言等等。我认为LLM更好,并且是未来从知识图谱中提取事物的方式。所以我认为这很酷。我对RDF,即……
资源描述框架及其配套的Sparkle查询语言有点陌生。我认为我无法有效地查询它,但我非常确定我可以让LLM为我编写一个Sparkle查询来获取我想要的东西。所以这是一个有趣的方向。第二点我喜欢的是ROI解决方案。与其训练或改进提示,例如在客户服务中,不是客户服务,而是呼叫中心,对吧?
与其训练或改进呼叫中心的提示,你可以只收听对话。让算法收听对话并自行找出上下文。你可以说这是自我提示。绝对的。让我们直接进入,看看我们能否得到这个问题的答案。让我们开始吧。
我的名字是Garima Agarwal。我最近获得了亚利桑那州立大学计算机科学博士学位。我在软件行业、数据科学和AI领域工作了大约15年。现在,我担任Minerva CQ的高级研究员和AI顾问。我还经营一家名为Humacon的AI咨询公司。
它就像人际关系,人际关系与创新相遇的地方。这可能与我们今天关于你研究论文的主要讨论有点无关,但我很好奇,你是否可以分享一些关于在行业工作一段时间后重返学校攻读博士学位的感受。这是一个与我内心非常接近的问题。这是一个艰难的决定,因为我当时在印度班加罗尔担任数据科学家
这要追溯到我背景的一些历史。所以我获得了计算机科学学士学位,然后是硕士学位。那是2003年我开始攻读硕士学位,并在2005年完成。然后我从事神经网络和模糊逻辑以及神经网络方面的工作。但这仅仅是,你知道,刚刚开始。当时行业中没有AI。
那时我想攻读博士学位,但由于某些原因,我从未开始。然后我开始工作,在多家跨国公司工作,从事软件开发等等。
然后几年后,快进到10年、15年后,我发现AI又成为了一件大事。所以,你知道,然后我和24 seven.ai一起工作,我们正在构建聊天机器人。我开始在那里担任数据科学家。然后我想,好吧,现在还不算太晚。也许我可以回去。
是的。我现在有一个12岁的女儿。她当时7岁。离开她,从班加罗尔搬到美国是一个艰难的决定。而且,更重要的是,重返学校,因为,你知道,在这个年龄段很难,我现在45岁了。所以我差不多40岁的时候才开始。并且
是的,我和那些25岁的聪明孩子一起学习。但是,是的,我们成功了。恭喜你。谢谢。
你的博士学位的重点是什么?我的博士学位的重点是领域知识表示。我为此使用了知识图谱,然后我使用大型语言模型来展示整合领域知识如何帮助AI。基本前提是,如果你正在构建AI,你需要一些领域专业知识来
通用AI适用于通用目的,但不适用于特定领域的问答系统。在LLM出现之前,知识图谱的现状如何?它们部署得有多好?人们如何使用它们?好吧,
当我从事知识图谱工作时,大约是2001年。在2002年,我们看到了知识图谱的激增,最终它们开始消亡。我应该说2019年和2020年,它们正处于巅峰时期,然后它们开始消亡,因为知识图谱是一个静态模型。
几乎要在知识图谱之上构建问答系统有点麻烦,因为你必须首先对所有这些知识进行建模,然后在静态模型上构建问答系统是……
有点困难,因为,你知道,仅仅是为了理解问题、实体以及正在发生的事情,仅仅是为了遍历图等等。所以人们一直在研究这些问答模型。然后一些公司做得相当不错,比如Neo4j等等,在知识图谱领域兴起。
但问题仍然是,你知道,我如何使用静态知识?我如何更新我的知识图谱?我如何对这些知识进行建模?我如何处理这些海量数据?如果我没有现有的知识图谱,我该如何开始?所以我认为这主要是一个研究课题。一些公司正在使用它,但并没有那么多。
你知道那种当你发现你的个人信息有多少散布在网上时的感觉吗?我当然知道。当我第一次收到我的Delete Me隐私报告时,我震惊地发现网上有超过700个包含我的信息的列表。但令人兴奋的是,仅仅在第一周内,Delete Me就已经删除了近40个这样的列表。
真正让我印象深刻的是他们周到的沟通。他们在每一步都让你了解情况。有时,像WhitePages这样的数据经纪商需要额外的验证。DeleteMe会让你知道要注意这些电子邮件,以便你可以完成流程。此外,你还会获得详细的隐私报告,显示他们确切地在哪些数据经纪商那里找到了你的信息,以及他们正在采取哪些措施来删除它。
最好的部分?你将被分配一位专门的隐私顾问,他们随时准备帮助你解答任何问题或疑虑。这不仅仅是自动化软件。有一个真实的人在关注你的隐私。他们会持续监控新的数据经纪商,并在你的会员资格范围内自动处理删除。掌控你的数据,保护你的私人生活。
通过注册Delete Me。现在为我们的听众提供特别折扣。今天,通过短信发送DATA到64000,即可获得Delete Me计划20%的折扣。这是DATA,D-A-T-A,到64000。可能需要支付短信和数据费用。
本周的节目由Math.Fashion赞助。这是一个真实的网站。为你的生活中那个数学迷找到合适的T恤。你准备好迎接圆周率日了吗?那是即将到来的3月14日。查看各种尺寸和款式的圆周率相关服装系列。访问https://math.fashion。
知识图谱中的边和顶点是什么?它可以像城市或机场的图,或者你的组织、你的产品、你的客户,几乎任何东西。在社交媒体中,它可以是你与之连接的人。所以这是一个词作为一个人。然后你有一条边显示连接。现在,是什么让知识图谱与简单的图有所不同
它给了我一个灵活的结构来表示我的组织、我的数据或我的领域,以及这些节点和边
我还能够提供有关该节点的更多信息。因为一个简单的图可能只会说一个城市,比如凤凰城,但不会说凤凰城是亚利桑那州的首府,它是一个大都市,它是一个阳光之城等等。你知道,那里的天气很热,所以夏天不要来。
诸如此类。我们有美丽的导师。所以所有这些信息,你知道,你可以在该节点中进行编码和嵌入,这使其成为知识图谱。
我们可以教LLM以知识图谱的形式向专家提问吗?现在,我们已经能够解决的一件大事,这就是为什么知识图谱再次兴起的原因,因为它们擅长知识表示,但不擅长理解实体或问题。现在,我有一个模型,它可以很好地理解英语。也许我不能很好地理解英语,对吧?我可能没有那么广泛的词汇量,因为我不是母语人士。
但我的模型能够理解,给我很好的语法,很好的标点符号。语言中的所有内容看起来都非常漂亮流畅。所以我能够解决自然语言理解的问题。为什么不只使用该模型来理解问题呢?它还进一步理解,不仅仅是问题,比如意图
这个问题,为什么有人问这个问题,对吧?这个问题是什么意思?现在我知道了,好吧,你给了我一份你正在经历的症状列表。我明白了。现在我可以参考一本书,就像查阅一本书一样,看看,哦,好吧,这是一个目录,它说,这些是症状,然后开出这种药。
知识图谱非常擅长这一点,来表示,你知道,如果这是一个症状,那么这样做,然后这样做,然后这样做,对吧?我们定义了连接。我们很好地表示了知识。现在我使用这个模型,我的LLM,来理解我的问题,来获取我的意图,转到我的知识库,提取我能提取的内容,
路径,推理路径,回到我的图算法,进行推理,你知道,遍历路径或进行嵌入,任何对你有用的方法。提取该知识,将其带到LLM。现在它又能够为你整理答案,对吧?所需的方式,将其与你的问题匹配,然后将其提供给用户。这就是我如何看待知识与LLM的增强。
所以我得到了语言增强的宏观视野。你如何衡量任何努力的成功?我们可能有很多方法可以追求,很多方法可以实现它。有人会排在第一位,第二位等等。我们如何判断它们?在我们的论文中,有不同的评估方法。我们谈到了它。所以,你知道,你可能正在寻找精确匹配。
因为你已经有了一个问题答案,并且你知道答案,你可能正在寻找精确匹配。你可能正在寻找前K个答案,并查看,好吧,如果我提取的知识有用。
来给出这个答案,或者我是否能够提取一些关于它的事实?比如,你知道,人们出生在哪里,这里那里发生了什么,所有地理知识,你知道,常识问题,对吧?维基数据上有什么?所以我们,维基百科,我们可以提取它,然后,你知道,让一些模型来制定答案,给我们,对吧?我们可以在那里进行精确匹配。我们可以提取,嘿,是我提取的前10个实体,或者
或者前10个关系或来自知识图谱的任何信息,它对我的答案制定是否有用?如果是,那么好吧。然后我可以定义有多少,你知道,前K,比如前两个或前五个或十个,我将使用什么。这与RAG相同,就像我们那里有大量的PDF可用一样。
对于普通人来说,查看这些文档可能需要几个小时,对吧,才能提取它们。现在,该模型能够为我提供至少前K篇文章,这些文章可能有用。现在,该模型还可以扫描这些前K篇文章。它没有使用它自己的知识,这是一个通用的知识。它不会浏览整个PDF文档,这可能会让它感到困惑。
所以我们提取它的一些小部分,然后,你知道,也许将其作为知识图谱,比如图RAG。我们称之为创建连接,无论什么最合理。提取它并将其提供给模型。它至少可能比不增强任何知识或只是自己胡说八道要好。我们正在检查准确性,以百分比数据表示。
如果我们确切地知道答案,那么我们会进行精确匹配。我们可以根据减少的幻觉数量来考虑它吗?绝对可以。这取决于你的问题。你知道答案。这是一个事实核查。然后你查看精确匹配。你还查看减少的幻觉数量。你
很多时候我们看到有多少问题,错误回答的问题得到了改进。我们能否改进它的推理?我们能否改进它寻找信息的地方?我对知识增强的想法是,该模型已经过训练。它理解其中的一部分。它有很多知识。现在我试图将其信息引导到正确的方向。
通过给出我的正确提示,向它添加一些简短的示例,或者也许像在我的一个工作中一样,我使用知识图谱的本体来告诉它,嘿,系统就是这样工作的。所以就这样做。不要试图向其中添加额外信息。对。所以我试图引导它的路径,并给它一些提示,关于如何思考它的少量提示。
所以我听到这可能有两个路径可以进行。你可以查询知识图谱以获取相关数据,然后将其提供给LLM,或者你可以教LLM自己进行查询,然后告诉它知识图谱的响应。这是一个正确的描述吗?其中一个是一个正确的描述吗?
我的意思是,我认为它或多或少是相似的。就像,你知道,这取决于你如何设计这个问题。正如你所说,第一部分就像你可以查询LLM,然后问它,你知道,嘿,这就是我需要的。所以提取
主要实体,然后你有一个界面,你可以去知识图谱中查找这些实体并提取该信息,将所有这些节点带到LLM,它
给出它的答案。但在我的其中一篇论文中,它讨论了完全相同的问题。现在,当你只要求LLM提取实体转到知识图谱时会发生什么,它会做一些事情,获取知识,但我们依赖于界面的能力。
我们只是将实体发送到那里,但那里有大量的信息。我们带给LLM的内容可能没有意义,然后我们只是将其提供给用户。那可能没有意义。当我们进行实验时,它失败的原因。所以我查看了错误日志并查看了它,我意识到该模型甚至没有理解问题的意图。它没有正确理解上下文。
所以我使用了一个非常,你知道,一个最喜欢的例子,它能够准确地显示那里发生了什么。所以有一个关于某个名人的配偶的问题。
一个模型获取问题并说,嘿,我需要这个家伙的配偶。所以界面会提取它看到的第一个配偶并将其给出。模型只是做它的工作。你要求它给出答案。它给出答案。但是
模型你的LLM更聪明。你可以通过询问来利用它的更多潜力,通过告诉模型,嘿,尝试理解问题的意图。获取更多上下文。好吗?所以现在我问模型,嘿,意图是什么,问题的意图是回答配偶。现在模型理解可能有多个配偶。
所以我需要去找到目前的配偶。当我们转到知识图谱时,我们寻找,好吧,有一个配偶列表,并且有一个关系说目前的配偶。所以它提取了我需要的确切信息。所以
我的想法是,我们应该能够使用LLM不仅仅作为界面,而且能够,你知道,这是一个双向过程,就像一个对话。好吧,我知道你给了我这些信息。现在,我的问题意图是什么?我得到了这个。
但它与我的意图不符。这是一个前任配偶。所以,好吧,回到知识图谱,获取更多信息,因为知识图谱有大量数据。现在,如果我们静态地遍历那里,你知道,只是查看节点和关系,如果我只是获取静态信息,它将无法解决问题。所以它也像我们如何用心,我们如何聪明。这就是为什么我称之为工程问题。
大型语言模型是否需要经过训练才能与知识图谱进行交互?只需给你一个提示。相同的设置。我只是更改我的提示并要求LLM理解意图,
然后来回询问,询问更多信息,使用问题周围的上下文或当有人询问某人的配偶时它所理解的内容。这是一个目前的配偶,对吧?LLM可以以这种方式使用,而不仅仅是静态的。所以它可以被训练。你不需要。它已经被训练过了。
当涉及到自然语言变化时,它已经被训练过了,尽管它是一个病态模型。通过病态,我们的意思是,如果你稍微改变输入,输出就会发生很大变化。所以如果我告诉模型,嘿,指导我一下。
或者我如何冲咖啡?所以,你知道,一个非常常见的例子。如果你问它,比如,给我展示冲咖啡的步骤,它可能会给你一张视觉图片。所以它也取决于你如何提问。你必须注意这一点,并与模型一起玩耍。
知识图谱中是否有任何智能?当然,它是一个保存大量信息的结构,如果有人知道该结构,你可以以任何方式查询它。但它是否提供了一种查询语言或帮助我以某种语义方式查找信息,或者它只是一个数据结构?
所以KnowledgeRef是你知识的静态表示。所以无论我提取了什么作为领域或书籍或文章,你知道,我拥有的任何信息,我都只是表示了它。这是我的知识的转储。现在,在KnowledgeRef之上,我可以进行推理。
它可以是一个查询,例如使用Sparkle查询。通常的关系数据库或Oracle DB或我们过去学习的任何东西之间的区别,以及KnowledgeRef之间的区别在于KnowledgeRef允许你更大的灵活性。在多个表之间查找关系很麻烦,并且随着
数据的增长,查找连接变得难以管理。现在知识图谱更容易,因为你只需要,你知道,很容易在子图和图之间建立连接,并且
实体可以链接到多个节点,而且没有尽头,对吧?然后更容易找到。然后我们有像这样的方法,你知道,我们可以进行实体链接,我们可以定义多个实体可能意味着相同的事情,诸如此类。我们可以编写Sparkle查询,我们可以用RDF结构表示。所以该结构非常灵活,并且有属性图,有不同类型的图表示,你可以编写不同的
使用图查询语言的查询,并围绕它进行工作。所以基本上,所有工作都是基于知识提取背后的语义相似性匹配。
好吧,我知道从你的论文中,你对人们在这个领域正在做的事情进行了相当广泛的调查。我想知道你是否可以总结一下,也许现在最需要改进的是什么?研究机会在哪里?在我们一直在描述的这个流程的哪个阶段可以进行改进?当然。
我会快速地介绍一下当前正在发生的事情的整体生态系统。我们从哪里开始,然后我们现在在哪里。所以我们想做的是将其训练到我们的,这是首先要做的,让我在知识库上训练它。
但是训练一个巨大的模型,包括你所有的知识,是很困难的。所以然后你进行微调,好吧,我的架构保持不变,我可能只是在我的数据上进行微调。然后人们认为,你知道,更好的方法是什么,因为有多少
次我将进行微调,然后我们提出了检索增强知识生成的概念,它现在非常流行,而且非常经济高效,因为你知道我可以提供我的KB文章,我的KB可以更改,它可以只是一个简单的PDF,我用大型语言模型增强它,在中间有一个检索器,它可以去检索我的知识,将其提供给LLM,所以这就是目前最先进的技术
所以它有很多不同的使用方法,但目前最经济高效和最简单的方法是RAG模型。我们在Minera做了一项工作,我们试图改进RAG成本,例如优化RAG的成本。我们处于客户服务行业,我们有客户电话。
现在,对于每一次通话,对于每一个查询,如果我必须进行RAG并获取所有这些信息,那么我作为人工座席,该平台由人工座席处理,但目的是提供AI辅助。现在,如果我对多个查询进行RAG调用,
并且客户可能有类似的查询。所以为什么我不确定哪些是常见问题?我们为此项工作申请了专利,所以我可以进一步解释一下,你知道,我们从历史对话中提取了常见问题。然后我创建了一个常见问题数据库。
现在,在我们进行RAG之前,我会去检查。它可以是我的向量搜索,也可以是我的模型,它甚至在座席查询数据库之前就能理解正在进行的对话。如果我在那里找不到任何东西,那么我就去我的,进行传统的RAG。好吧,我们节省了座席的时间,并且我们根据对话创建了查询,因为
它非常理解对话。你给出提示,并要求我们总结客户的要求。不用担心电子邮件之类的问题,电话号码,那些问题。只需找出意图。这就是我关于正念RAG的论文,对话的意图。只需提取该摘要即可。它很好地提炼了这个问题。
所以有很多工程和研究问题,你知道,我们必须解决,这与编写代码无关。没有人关心你编写代码,因为云比我编写的代码做得更好。但这,你知道,只是关注这些细节,并试图找出更好的设计如何帮助我们。是的。
听起来你经历了一系列改进。你能比较一下过去的情况吗?也许那时他们只有Elasticsearch数据库?你有没有遵循某种指标来衡量你从所有这些增强中获得的收益?我们已经走了很长一段路,我从事Spark、Kafka、Hive和那些类型的数据库的工作。
从那时起,我们已经走了很长一段路,现在我们有了LLM,人们更关注LLM无法做什么,并批评这些模型。我只是想关注解决方案。我能解决什么问题,对吧?我的很多问题都得到了解决。所以我不用把它做成一个超人,一个万能的模型。如果它变得更好,当然对我们来说是好事。
但它能够解决我的很多问题。我们能够改进软件和联系系统,以及我们能够为客户提供的技术,要好得多,对吧?当我使用SVM模型意图识别做聊天机器人时,我从事过这方面的工作。
只是为了编写对话路径。你知道,首先设计它们,然后识别意图,将其映射。我们完全手动地进行意图映射,因为我们有一个标签团队,他们会坐下来进行标签。哦,这个属于这个意图,那个意图,对吧?然后,你知道,你标记聊天。然后,你构建一个模型,一个聊天机器人,对吧?
而客户仍然不满意,因为聊天机器人没有回答它应该回答的内容。然后你在那里添加很多按钮,以便客户可以点击它,然后转到某个路径,
但你必须想象所有可能的路径。你错过了一件事,这就是必应所要求的。这对设计师、开发者和用户来说都是非常令人沮丧的。我觉得我们已经走得更远了,远得多。
Garima,你接下来有什么计划?我现在正在与Minerva合作,我们试图通过观察以下情况来进一步降低RAG成本:如果FAQ中没有这个问题,但也许以不同的方式提出,那么我们能否与我们现有的FAQ进行语义匹配,然后为其整理答案?
除此之外,在我的个人空间里,我正在努力发展这家公司Humacon。目的是让很多投资者,他们可能不知道或者他们难以抉择在哪里投资AI,如果他们不了解AI的话。我想帮助人们朝着正确的方向投资,因为我从模型的角度理解它,而不仅仅是一个销售或解决方案专家。
所有业务领导者,高管们,他们现在都在努力。人们无法实施他们的AI战略。你只需要对你的AI管道进行一些小的调整。你需要人工干预。我认为我们还没有达到这个阶段。而且我不……
不,也许再过10年,我们还没有达到你可以把它交给AI并依赖它的程度。
除非你专门为此训练它。为此,你还需要在每个里程碑、每个阶段进行人工干预。是的。然后,如果初创企业和企业正在寻找任何关于AI的咨询,那么是的,我很乐意提供帮助。我认为人们应该停止害怕AI接管。
但也许是我们需要提高标准的时候了。
对于单调的日常工作,也许是的,AI会接管。但我的意思是,如果你真的喜欢做那种工作,那么对不起。你知道,是我们升级的时候了。是的。听众可以在哪里了解更多关于Humaco的信息,并在网上关注你?哦,是的。我在领英上是Humacon AI Consulting。
我的网站是www.humacon.com。
给我发邮件。我在领英上。或者,你知道,在领英上联系我。那么,是的,我很乐意帮助你。听起来不错。非常感谢你抽出时间来分享你的工作。当然。非常感谢你邀请我。很高兴和你交谈。很棒的谈话。很棒的问题。谢谢。谢谢。