研究者们提出了一种基于神经符号结合的新方法:VISPROG。利用提示学习中的上下文学习,使用GPT-3生成类似python的程序,这些程序通过调用现有的模型(比如CLIP、ViLT或者python库等,论文中成为模块)用来解决视觉各种任务。该方法是可解释的、可干预的,可以用于多种任务处理。

上图1为VISPROG方法的流程图,包括程序生成器(program generator)和程序解析器(program interpreter),程序生成器通过GPT-3和提示工程将自然语言转化为类似python的程序,过程如图2所示,程序解析器将由生成器生成的程序转换为对应的模块,这些模块包括用于图像理解、图像处理、知识检索的神经网络模型、图像处理程序和python库等,并且根据这些模块进将输入的图像进行预测和获得可视化图,这些模块如图3所示。

使用提示学习和GPT-3将自然语言转换为程序,图2中每一行为一句代码,SEG、Select等可以理解为函数名称,image、object、query可以理解为函数参数,IMAGE、OBJ0等可以理解为变量。优点在于这些程序是可理解的、可干预的。

红色模块表示神经网络模型,包括OWL-VIT、DSFD、CLIP、ViLT、Diffusion等,蓝色模块表示图像处理程序和python库等。