大语言模型(LLMs)通过将深度学习技术与强大的计算资源结合起来,正在彻底改变我们与软件互动的方式。
虽然这项技术令人兴奋,但许多人也担忧LLMs可能生成虚假的、过时的或有问题的信息,他们有时甚至会产生令人信服的幻觉(产生不存在的信息)。值得庆幸的是,我们可以立即澄清一个谣言。根据GitHub Copilot的机器学习(ML)高级研究员Alireza Goudarzi的说法:“LLMs并未接受推理训练。它们并不试图理解科学、文学、代码或其他任何事物。它们只是被训练来预测文本中的下一个标记。
让我们深入了解LLMs如何做出意想不到的事情,以及为什么会这样。本博客文章将全面介绍LLMs,包括它们的训练方法和伦理考虑。我们的目标是帮助你更好地了解LLM的能力,以及他们为什么他们能在没有训练的情况下掌握语言。
什么是大语言模型
LLMs是在大量文本数据上进行训练的人工智能系统,使它们能够生成类似人类的行为,并以传统机器学习模型无法做到的方式理解自然语言。
“这些模型使用深度学习领域的先进的tricks,涉及多层深度神经网络的训练,用于学习复杂的模式和关系。”GitHub Copilot团队的机器学习高级研究员John Berryman解释道。
LLMs的独特之处在于它们擅长概括和理解上下文。他们不受预定的规则或模式的限制,而是通过大量数据学习,形成对语言的独立理解。这使它们能够对各种提示和查询生成连贯而上下文适当的响应。
尽管LLMs因此可以成为非常强大且灵活的工具,但用于训练它们的机器学习方法以及它们的训练数据的质量或限制,有时也可能导致生成不准确、不实用和不可靠信息的偶发性失误。
Deep Learning
现代机器学习实践的出现,如深度学习,已经成为释放LLMs潜力的重要变革者。与依赖预定义规则和模式的最早语言模型不同,深度学习使这些模型能够以更类似人类的方式生成自然语言输出。
“深度学习和神经网络的整个学科基础是‘我们可以将规则简化到多么简单,以尽可能接近人脑的行为?’”Goudarzi说道。
通过使用具有多层的神经网络,深度学习使LLMs能够分析和学习语言数据中的复杂模式和关系。这意味着这些模型可以生成连贯而上下文适当的响应,即使面对复杂的句子结构、成语表达和语言中微妙的细微差别。
虽然初始的预训练赋予了LLMs广泛的语言理解能力,但精调是它们变得多才多艺和适应性强的地方。“当开发者希望这些模型执行特定任务时,他们提供任务描述和示例(few-shot learning)或仅提供任务描述(zero-shot learning)。然后,模型根据这些信息对其预训练的权重进行精细调整,”Goudarzi说。这个过程帮助模型适应特定任务,同时保留它在广泛预训练中获得的知识。
但即使深度学习的多层和注意机制使LLMs能够生成类似人类的文本,它也可能导致过度概括,即模型生成的响应可能在上下文中不准确或过时。
为什么LLM不是总是正确的
有几个因素可以解释为什么基于LLMs构建的工具有时可能不准确,即使听起来相当令人信服。
1、有限的知识和过时的信息
LLMs通常缺乏对外部世界或实时背景的理解。它们仅依赖于它们接受训练的文本,而且它们没有对世界当前状态的固有意识。GitHub Next研究与开发团队的首席研究员Albert Ziegler表示:“通常整个训练过程需要很长时间,对于任何给定的LLM,训练数据过时两年是很常见的情况。”
这一限制意味着它们可能基于过时的假设生成不准确的信息,因为它们无法实时验证事实或事件。如果它们在接受训练后的某个领域或主题发生了发展或变化,LLMs可能不会意识到这些变化,可能提供过时的信息。这就是为什么仍然重要的原因,即使看起来基于事实,也要对从LLM收到的任何响应进行事实核查。
2、缺乏上下文信息
LLMs有时提供不正确信息的主要原因之一是缺乏上下文。这些模型在很大程度上依赖于输入文本中提供的信息,如果输入模糊或缺乏细节,模型可能会做出导致不准确响应的假设。
3、训练数据偏差和局限性
LLMs在预训练期间接触到大量未标记的文本数据集,这些数据集是多样化的,代表了模型应该理解的语言。常见的数据来源包括书籍、文章、网站,甚至是社交媒体帖子!
由于这个原因,它们可能会无意中产生反映这些偏见或在训练数据中存在的不正确信息的响应。在涉及敏感或有争议的主题时,这尤其令人担忧。
Ziegler表示:“它们的偏见往往更严重。这适用于机器学习总体,而不仅仅是LLMs。机器学习的做法是识别模式,而诸如刻板印象之类的东西可能变成极为方便的简便表达。它们可能是真实存在的模式,或者在LLMs的情况下,是基于人类偏见的模式,这些偏见可能是明确讨论或隐含使用的。”
如果模型在包含有偏见或歧视性语言的数据集上进行训练,它可能生成具有偏见或歧视性的响应。这可能产生实际影响,例如强化有害的刻板印象或歧视性实践。
4、过度自信
LLMs没有评估它们生成信息准确性的能力。由于它们的深度学习,它们通常以高度自信的方式提供响应,优先生成看起来合理且流畅的文本,即使信息是不正确的时候也是如此!
5、幻觉
LLMs有时会因为它们生成文本的方式(通过模式和关联)而产生“幻觉”。有时,在面对不完整或模糊的查询时,它们试图通过借助这些模式来完成它们,有时生成的信息可能不准确或不符合事实。最终,这些幻觉并不得到证据或真实世界数据的支持。
例如,假设你询问ChatGPT关于20世纪的一个历史问题。相反,它可能描述两位从未真正见过面的著名历史人物之间的会面!
在GitHub Copilot的背景下,Ziegler解释说,“我们遇到的典型幻觉是当GitHub Copilot开始谈论甚至不存在的代码时。我们的缓解措施是确保它为它谈论的每一段代码提供足够的上下文,以便我们可以检查并验证它实际上是否存在。”
但GitHub Copilot团队已经在思考如何在编码的“自上而下”方法中利用幻觉。想象一下,你正在解决一个积压问题,而你希望GitHub Copilot给出建议。正如GitHub Next的首席研究员Johan Rosenkilde所解释的那样,“理想情况下,你希望它提出对你复杂问题的一个子划分,委托给 nicely delineated 的助手函数,并为这些助手给出良好的名称。在建议调用(尚不存在的)助手的代码后,你希望它还能提出它们的实现!”
这种对幻觉的处理方式就像获得解决编码挑战的蓝图和构建块一样。
LLMs的使用道德和责任倡导
使用LLMs时要注意伴随而来的伦理考虑是很重要的。话虽如此,尽管LLMs有生成虚假信息的潜力,但它们并不是有意伪造或欺骗。相反,这些问题源于模型试图基于其训练数据学到的模式和信息生成一致和与上下文相关的文本。
GitHub Copilot团队已经开发了一些工具来帮助检测有害内容。Goudarzi说:“首先,我们有一个重复检测过滤器,它帮助我们检测生成的代码与我们可以访问的所有开源代码之间的匹配,从而过滤掉这样的建议。我们使用的另一个工具是名为“负责任人工智能”(RAI)的分类器,它可以过滤掉滥用词汇。最后,我们还单独过滤掉已知的不安全模式。”
了解LLMs背后的深度学习过程可以帮助用户理解它们的局限性以及它们的积极影响。为了有效地应对这些问题,关键是要从可靠的来源验证信息,提供清晰而具体的输入,并在解释LLMs生成的响应时运用批判性思维。
正如Berryman提醒我们的那样,“引擎本身是无道德的。用户可以随心所欲地使用它们,这可以涵盖从道德到不道德的整个范围。但通过意识到这些问题并积极致力于道德实践,我们可以确保LLMs被以一种负责任和有益的方式使用。”
开发人员、研究人员和科学家不断努力提高这些模型的准确性和可靠性,使它们成为未来越来越有价值的工具。我们所有人都可以倡导对LLMs的负责任和道德使用。这包括在这些模型的开发和部署中促进透明性和问责制,以及在我们互联网角落中采取措施减轻偏见和刻板印象。
文章来源:解开LLMs的神秘面纱