中文

ChatGPT 用于数值方法编程

机器学习 2023-04-28 v3 数值分析 软件工程 数值分析

摘要

ChatGPT 是 OpenAI 公司近期发布的大语言模型。在本技术报告中,我们首次探索了 ChatGPT 用于数值算法编程的能力。具体而言,我们考察了 ChatGPT 在不同编程语言中生成数值算法代码、调试和改进用户已写代码、补全数值代码缺失部分、将已有代码改写为其他编程语言以及将串行代码并行化的能力。此外,我们评估了 ChatGPT 是否能识别给定代码是由人类还是机器编写的。为此,我们考虑了多种数学问题,如泊松方程、扩散方程、不可压缩 Navier-Stokes 方程、可压缩无黏流动、特征值问题、线性方程组求解、稀疏矩阵存储等。进一步地,我们举例说明了科学机器学习,如物理信息神经网络和卷积神经网络在计算物理中的应用。通过这些示例,我们研究了 ChatGPT 的成功、失败与挑战。失败的例子包括产生奇异矩阵、对尺寸不兼容的数组进行操作、对较长代码出现编程中断等。我们的结果表明,ChatGPT 能成功用不同编程语言编写数值算法,但存在某些局限与挑战,需进一步改进该机器学习模型。

关键词

引用

@article{arxiv.2303.12093,
  title  = {ChatGPT for Programming Numerical Methods},
  author = {Ali Kashefi and Tapan Mukerji},
  journal= {arXiv preprint arXiv:2303.12093},
  year   = {2023}
}