当前位置: 首页 > 科技观察

AI几秒解大学数学题,获得80%以上准确率,还能当做题老师

时间:2023-03-13 14:20:33 科技观察

或许,你做的数学题是机器生成的。麻省理工学院的学生可以毫不费力地解决多元微积分、微分方程和线性代数等数学课题,但这些都阻碍了机器学习模型的发展。因为机器学习模型只能回答小学或高中水平的数学问题,而且它们并不总能找到正确答案。现在,来自麻省理工学院、哥伦比亚大学、哈佛大学和滑铁卢大学的研究人员已经使用少样本学习和OpenAI的Codex自动合成程序,在几秒钟内解决人类水平的大学数学问题。该研究发表在《美国国家科学院院刊》(PNAS)。此外,该模型可以对生成的解进行解释,快速生成新的大学数学问题。当研究人员向学生展示这些机器生成的问题时,学生们甚至分不清这些问题是算法生成的还是人生成的。这项研究还可用于简化课程内容的生成,这对于学校和拥有数千名学生的大规模开放在线课程(MOOC)尤其有用。该系统还可以充当在线导师,向学生展示解决数学问题的步骤。论文地址:https://www.pnas.org/doi/epdf/10.1073/pnas.2123433119研究方法结合了三个创新点:本研究不再只对文本进行预训练,而是在对文本进行预训练的同时训练,fine-调整也是在代码上完成的;一个小样本学习合成程序能够正确解决数学问题;研究能够解决问题,解释解决方案,并产生新的问题。本研究产生的新问题示例如下。能够回答、解决和生成问题的模型研究团队在这个项目上花费了将近两年的时间。他们发现,仅使用文本进行预训练的模型在高中数学问题上的准确率不会超过8%,而图神经网络模型在机器学习课程问题上可以做得很好,但训练需要一周时间。该研究从七门课程中随机抽取了25个问题:麻省理工学院的18.01单变量微积分、18.02多元微积分、18.03微分方程、18.05概率与统计概论、18.06线性代数、6.042计算机科学数学和哥伦比亚大学的COMS3251计算线性代数。对于MATH数据集,该研究从数据集中的六个主题(代数、计数和概率、中级代数、数论、初级代数和微积分)中随机抽取了15个问题。在将这些编程任务输入神经网络之前,研究人员添加了一个新步骤,使其性能大大优于之前的尝试。不同于GPT-3等仅在文本上进行预训练的网络。他们将这些问题转化为编程任务,并应用程序综合和少样本学习技术。把一个数学问题变成一个编程任务,就像简单地把求两点之间的距离的问题改写成写一个求两点之差的程序。值得一提的是,该研究不仅在文本上对Codex进行了预训练,还对代码进行了微调,使其能够生成解决数学问题的大规模程序。预训练模型显示了来自在线存储库的数百万代码示例。由于该模型的训练数据包括数百万自然语言单词和数百万行代码,因此它可以学习文本片段和代码片段之间的关系。如下图所示,这项研究使用零样本和少样本学习来自动生成可以解决81%数学问题的程序。然后他们使用Codex来解释生成的程序。生成的程序可以输出各种形式的答案。比如计算和描绘奇异值分解(SVD)的几何,不仅给出了正确答案,还给出了相应的解释!应用神经网络OpenAICodex来解决、解释和生成数学问题。该论文的作者之一Drori解释说,许多数学问题可以使用图形或树来解决,但是很难将用文本编写的问题转化为这种表示形式。但是,由于模型已经学习了文本和代码之间的关系,因此它可以通过简单地给出问题代码的几个示例并运行代码来回答问题,从而将文本问题翻译成代码。“当你只使用文本提问时,机器学习模型很难给出答案,即使答案可能在文本中,这项工作填补了代码和程序合成中缺失的部分,”Drori说。Drori还补充说,这项工作是第一个解决本科生数学问题并将准确率从8%提高到80%以上。添加上下文将数学问题转化为编程任务并不总是那么容易。有些问题需要研究人员添加上下文,以便神经网络能够正确处理问题。学生在学习课程时会学习这些背景知识,但除非研究人员明确说明,否则神经网络不具备这些背景知识。例如,他们需要澄清文中的网络指的是神经网络而不是通信网络。或者他们可能需要告诉模型使用哪个编程包。他们可能还需要提供某些定义,例如在关于扑克牌的问题中,他们可能需要告诉模型每副牌包含52张牌。该研究自动将这些编程任务连同所包含的上下文和示例一起输入到经过预训练和微调的神经网络中,该神经网络输出的程序通常会产生正确的答案。80%以上的问题是正确的。研究人员还使用他们的模型来生成问题,方法是向神经网络提供一系列关于某个主题的数学问题,然后让它创建一个新问题。例如,存在水平和垂直线的量子检测问题,这会产生新的对角线量子检测问题。所以它不仅仅是通过替换现有问题中的值和变量来产生新问题。人类提出的问题与机器生成的问题研究人员通过向大学生展示机器生成的问题来测试这些问题。研究人员从一门本科数学课程中随机给学生10个问题;五个是由人类创造的,五个是机器生成的。无法判断机器生成的问题是由算法生成还是由人类生成的学生对课程的难度和适当性进行了类似的评价。不过,Drori指出,这项工作并不是要取代人类教授。“现在它的准确率为80%,但不会是100%。每次你解决一个问题时,都会有人想出一个更难的问题。但这项工作为人们开始使用机器学习解决越来越难的问题打开了大门。”这个问题打开了这个领域。我们认为这将对高等教育产生巨大影响,”Drori说。对他们方法的成功感到兴奋,研究团队正在扩展他们的工作以处理数学证明,同时他们还计划解决一些限制。目前,该模型无法使用可视化组件回答问题,也无法解决因计算复杂性而难以解决的问题。计算题。除了克服这些障碍外,该研究还旨在将模型扩展到数百个课程。通过这些课程,他们将生成更多数据以提高自动化程度并提供对课程设计和课程表的见解。