AI生成高数题,难出新高度:MIT提出首个可出题、做题、评分的算法模型

本文涉及的产品
交互式建模 PAI-DSW,每月250计算时 3个月
模型训练 PAI-DLC,100CU*H 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
简介: AI生成高数题,难出新高度:MIT提出首个可出题、做题、评分的算法模型

你的考卷,也有可能是机器生成的。


前段时间,DeepMind 的一项研究登上《Nature》封面,通过引导直觉解决了两大数学难题;之后,OpenAI 教 GPT-3 学会了上网,能够使用基于文本的 Web 浏览器。

就在 2021 年的最后一天, MIT 与哥伦比亚大学、哈佛大学、滑铁卢大学的联合研究团队发表了一篇长达 114 页的论文,提出了首个可以大规模自动解决、评分和生成大学水平数学问题的模型,可以说是人工智能和高等教育的一个重要里程碑。其实在这项研究之前,人们普遍认为神经网络无法解决高等数学问题。


值得一提的是,该研究用到了 OpenAI 的 Codex。

这项研究有多厉害呢?我们以上图为例,展示了计算洛伦茨吸引子及其投影,计算和演示奇异值分解 (SVD) 方法的几何形状等。机器学习模型很难解决上述问题,但这项研究表明它们不仅可以解决这些问题,还可以大规模解决所属课程以及许多此类课程问题。

该研究表明对文本进行预训练并在代码上进行微调的神经网络,可以通过程序合成(program synthesis)解决数学问题。具体而言,该研究可将数学问题转化为编程任务,自动生成程序,然后执行,以解决 MIT 数学课程问题和来自 MATH 数据集的问题。其中,MATH 数据集是专门用于评估数学推理的高等数学问题最新基准,涵盖初级代数、代数、计数与概率、数论与微积分。

此外,该研究还探索了一些提示(prompt)生成方法,使 Transformer 能够为相应主题生成问题解决程序,包括带有图象的解决方案。通过量化原始问题和转换后的提示之间的差距,该研究评估了生成问题的质量和难度。


论文地址:https://arxiv.org/pdf/2112.15594.pdf

方法

数据集

该研究首先从 MIT 的以下六门课程中,每门课程随机选取了 25 个问题:

单变量微积分;

多元微积分;

微分方程;

概率与统计概论;

线性代数;

计算机科学数学。


对于 MATH 数据集,该研究从每个主题中随机抽取 5 个问题,并通过在应用线性代数新课程 COMS3251 上的实验验证了该方法的结果不仅仅是过拟合训练数据。


方法流程

如下图 2 所示,该研究使用 Codex 将课程问题转换为编程任务并运行程序以解决数学问题。下图共包含 A-E 5 个面板,每个面板的左侧部分显示了原始问题和重新表述的提示,其中提示是通过添加上下文、交互、简化描述等形成的。


该研究将从原始课程问题到 Codex 提示的转换分为以下三类:

原生提示:Codex 提示和原始问题相同;

自动提示转换:Codex 提示和原始问题不同,由 Codex 自动生成;

手动提示转换:Codex 提示和原始问题不同,由人工生成。


问题与提示之间的差距

将问题转换为 Codex 提示的关键是:从语义上讲,原始问题与产生正确解决方案的提示之间的接近程度。为了度量原始问题和成功提示之间的差距,该研究使用 Sentence-BERT 嵌入之间的余弦相似度,如下图 3 所示。


Sentence-BERT 使用 siamese 和 triplet 神经网络结构对预训练的 BERT 模型进行微调。其中至关重要的是,Sentence-BERT 能够在句子级别生成语义嵌入,从而可以在长文本之间进行语义相似性比较。

在该研究的实验中,原始问题和生成正确答案的提示之间的相似度如下图 4 所示。


Codex 用于提示生成

在某些课程中,直接使用未转换的原始问题提示 Codex,无法产生正确的解决方案。因此,需要将原始问题转化为 Codex 可以处理的形式,主要分为以下三类:

  • 主题上下文形式:该形式为 Codex 提供了与一般课程和特定问题相关的主题和子主题,以帮助指导 Codex 生成相关正确的答案。例如,对于概率中的条件期望问题,提供有关贝叶斯定理、期望等的上下文信息会很有帮助。
  • 库上下文:该形式为 Codex 提供了解决给定问题所需的编程包 / 库。例如,指导 Codex 使用 Python 中的 numpy 包来解决线性代数问题。
  • 定义上下文:很多时候,Codex 对某些术语的定义缺乏现实背景。举例来说,Codex 不理解扑克牌中的 Full House 是什么意思。因此让 Codex 理解这些术语并明确定义,可以更好地指导其程序合成。


生成问题以及人类评估

该研究使用 Codex 为每门课程生成新的问题,通过数据集创建有编号的问题列表来完成,这个列表在生成随机数量的问题之后会被截断断,结果将用于提示 Codex 生成下一个问题。不断的重复这个过程,就可以为每门课程产生许多新的问题。

该研究对参加过这些课程或同等课程的、来自 MIT 和哥伦比亚大学的学生进行了一项长期调查。调查的目的是比较每门课程机器生成的问题与人工编写的问题的质量和难度。该研究为每门 MIT 的课程随机抽取五个原始问题和五个生成的问题。在调查中,学生被要求阅读每门课程的十个问题,这些问题是人工编写的问题和机器生成的问题的混合。

对于 60 个问题中的每一个,学生都被问到三个问题,如图 5 所示:他们是否认为给定的问题是 (i) 人工编写的或机器生成的,(ii) 适合或不适合特定课程,以及 (iii) ) 在 1(最简单)和 5(最难)之间的范围内,问题的难度级别是多少。要求学生提供他们对数学问题的评分,而不是解决这些问题。该调查以在线和匿名的形式提供。


调研结果

问题求解

研究者共求解了补充资料中展示的 210 个问题,其中包括 6 门课程各自对应的 25 个随机问题以及 MATH 数据集中 6 个主题(初级代数、代数、数论、计数与概率、中极代数、微积分)各自对应的 10 个随机问题。

生成新问题

研究者生成了 120 个新问题,其中包括 6 门课程和 6 个 MATH 主题各自对应的 10 个新问题。下表 2 展示了每门课程和每个 MATH 主题对应的一个生成问题。生成一个问题只需不到 1 秒的时间,研究者可以生成任意数量的问题。他们为 Codex 能够生成正确答案的 25 个随机选择的问题创建了提示,切入随机问题,并让 Codex 完成下一个新问题。


学生调研结果

研究者表示,共有 13 位参与者完成了全部 60 个问题的问答调研,平均耗时 40 分钟。下图 6 总结了学生调研中人工编写(human-written)和机器生成(machine-generated)问题的比较情况,并得出了以下几项结果:

  • 机器生成的问题要比人工编写的问题难度高,但在置信区间内;
  • 人工编写的问题要比机器生成的问题更适合课程;
  • 人工编写的问题更容易被认为人写的,并且将机器生成问题看作机器生成和人工编写的概率相同。



答案定级

Codex 能够回答所有随机采样的大学水平和 MATH 数据集数学问题,无论它们是原始状态还是整理后状态。

挑战

研究者的方法还有一些无法解决的技术障碍。

1、输入图像。Codex 的一个基础限制是它只能接收基于文本的输入。因此,Codex 无法使用图形或图表等必要的视觉组件来回答问题。

2、高等数学证明。这项研究的另一个限制是缺乏对高等数学的证明。研究者强调称,这是由研究自身的广度而不是 Codex 的证明能力导致的。事实上,该研究中提交至 Codex 的大多数简单分析证明都已成功地被执行,这令人震惊,因为证明通常不是基于代码的。

3、程序评估。该研究的最后一步是执行程序,例如使用 Python 解释器。参加大学水平课程的学生也会编写代码来解决他们的部分问题。因此,该研究以与人类学生相同的方式测试神经网络解决问题的能力,让他们使用必要的工具。还有关于神经程序评估的工作,演示了使用机器学习来预测程序输出。LSTM 用于成功预测某些线性时间和恒定空间程序的输出 (18)。这些都增加了内存暂存器以允许更大的程序类别 (19)。最近的方法使用因果 GNN (20) 和 transformer (21)。尽管评估任意代码是不可判定的,但特殊情况,例如由另一个 transformer 生成的用于解决简单数学问题的程序,原则上应该是可学习的。

4、理论复杂性。计算复杂度的结果表明,该研究无法解决大学数学课程中一般问题的每一个具体实例。例如,以下问题具有难以处理的结果:向量 v 可以表示为来自集合 S 的向量之和吗?以下一阶微分方程的解是什么?但是,我们知道作业和考试给出的问题可以由人类解决,因此这些复杂性结果不适用于该研究的特定实例解决。

相关文章
|
1月前
|
传感器 人工智能 监控
智慧工地 AI 算法方案
智慧工地AI算法方案通过集成多种AI算法,实现对工地现场的全方位安全监控、精准质量检测和智能进度管理。该方案涵盖平台层、展现层与应用层、基础层,利用AI技术提升工地管理的效率和安全性,减少人工巡检成本,提高施工质量和进度管理的准确性。方案具备算法精准高效、系统集成度高、可扩展性强和成本效益显著等优势,适用于人员安全管理、施工质量监控和施工进度管理等多个场景。
|
1月前
|
传感器 人工智能 监控
智慧电厂AI算法方案
智慧电厂AI算法方案通过深度学习和机器学习技术,实现设备故障预测、发电运行优化、安全监控和环保管理。方案涵盖平台层、展现层、应用层和基础层,具备精准诊断、智能优化、全方位监控等优势,助力电厂提升效率、降低成本、保障安全和环保合规。
智慧电厂AI算法方案
|
16天前
|
算法
基于模糊PI控制算法的龙格库塔CSTR模型控制系统simulink建模与仿真
本项目基于MATLAB2022a,采用模糊PI控制算法结合龙格-库塔方法,对CSTR模型进行Simulink建模与仿真。通过模糊控制处理误差及变化率,实现精确控制。核心在于将模糊逻辑与经典数值方法融合,提升系统性能。
|
16天前
|
存储 算法
基于HMM隐马尔可夫模型的金融数据预测算法matlab仿真
本项目基于HMM模型实现金融数据预测,包括模型训练与预测两部分。在MATLAB2022A上运行,通过计算状态转移和观测概率预测未来值,并绘制了预测值、真实值及预测误差的对比图。HMM模型适用于金融市场的时间序列分析,能够有效捕捉隐藏状态及其转换规律,为金融预测提供有力工具。
|
1月前
|
机器学习/深度学习 传感器 人工智能
智慧无人机AI算法方案
智慧无人机AI算法方案通过集成先进的AI技术和多传感器融合,实现了无人机的自主飞行、智能避障、高效数据处理及多机协同作业,显著提升了无人机在复杂环境下的作业能力和安全性。该方案广泛应用于航拍测绘、巡检监测、应急救援和物流配送等领域,能够有效降低人工成本,提高任务执行效率和数据处理速度。
智慧无人机AI算法方案
|
24天前
|
存储 人工智能 缓存
【AI系统】布局转换原理与算法
数据布局转换技术通过优化内存中数据的排布,提升程序执行效率,特别是对于缓存性能的影响显著。本文介绍了数据在内存中的排布方式,包括内存对齐、大小端存储等概念,并详细探讨了张量数据在内存中的排布,如行优先与列优先排布,以及在深度学习中常见的NCHW与NHWC两种数据布局方式。这些布局方式的选择直接影响到程序的性能,尤其是在GPU和CPU上的表现。此外,还讨论了连续与非连续张量的概念及其对性能的影响。
46 3
|
24天前
|
机器学习/深度学习 人工智能 算法
【AI系统】内存分配算法
本文探讨了AI编译器前端优化中的内存分配问题,涵盖模型与硬件内存的发展、内存划分及其优化算法。文章首先分析了神经网络模型对NPU内存需求的增长趋势,随后详细介绍了静态与动态内存的概念及其实现方式,最后重点讨论了几种节省内存的算法,如空间换内存、计算换内存、模型压缩和内存复用等,旨在提高内存使用效率,减少碎片化,提升模型训练和推理的性能。
44 1
|
1月前
|
传感器 人工智能 监控
智慧化工厂AI算法方案
智慧化工厂AI算法方案针对化工行业生产过程中的安全风险、效率瓶颈、环保压力和数据管理不足等问题,通过深度学习、大数据分析等技术,实现生产过程的实时监控与优化、设备故障预测与维护、安全预警与应急响应、环保监测与治理优化,全面提升工厂的智能化水平和管理效能。
149 0
智慧化工厂AI算法方案
|
1月前
|
机器学习/深度学习 人工智能 算法
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
手写数字识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法。并通过对数据集进行训练,最后得到一个识别精度较高的模型。并基于Flask框架,开发网页端操作平台,实现用户上传一张图片识别其名称。
98 0
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
|
1月前
|
机器学习/深度学习 人工智能 算法
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
蔬菜识别系统,本系统使用Python作为主要编程语言,通过收集了8种常见的蔬菜图像数据集('土豆', '大白菜', '大葱', '莲藕', '菠菜', '西红柿', '韭菜', '黄瓜'),然后基于TensorFlow搭建卷积神经网络算法模型,通过多轮迭代训练最后得到一个识别精度较高的模型文件。在使用Django开发web网页端操作界面,实现用户上传一张蔬菜图片识别其名称。
95 0
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型

热门文章

最新文章