本文將為大家介紹CVPR 2023年最佳論文兩篇中的Visual Programming: Compositional visual reasoning without training (視覺編程:無需訓(xùn)練的組合式視覺推理),代碼已開源。
Title:
VisualProgramming:Compositionalvisualreasoningwithouttraining
Paper:
https://openaccess.thecvf.com/content/CVPR2023/html/Gupta_Visual_Programming_Compositional_Visual_Reasoning_Without_Training_CVPR_2023_paper.html
Code:
https://github.com/allenai/visprog
01
/導(dǎo)讀/
VISPROG是一種神經(jīng)符號(hào)方法,可利用自然語言指令解決復(fù)雜的組合式視覺任務(wù)。VISPROG避免了任何特定于任務(wù)的訓(xùn)練需求。相反,它利用大型語言模型的上下文學(xué)習(xí)能力生成類似Python的可組合程序,這些程序?qū)⒈粓?zhí)行以獲得解決方案和全面可解釋的推理結(jié)果。生成的程序的每一行可以調(diào)用多個(gè)現(xiàn)成的計(jì)算機(jī)視覺模型、圖像處理子程序或Python函數(shù)以生成中間輸出,后續(xù)程序部分可以使用這些中間輸出。在四項(xiàng)不同的任務(wù)中展示了VISPROG的靈活性:組合式視覺問答、基于圖像對的零樣本推理、實(shí)際知識(shí)對象標(biāo)注和語言引導(dǎo)圖像編輯。類似VISPROG這樣的神經(jīng)符號(hào)方法是擴(kuò)展人工智能系統(tǒng)范圍、為人們提供執(zhí)行復(fù)雜任務(wù)的有效途徑。
VISPROG是一種可組合和可解釋的神經(jīng)符號(hào)系統(tǒng),用于進(jìn)行組合式視覺推理。給定自然語言指令和高層次程序的幾個(gè)示例,VISPROG利用GPT-3的上下文學(xué)習(xí)功能針對任何新指令生成程序,并在輸入的圖像上執(zhí)行程序以獲取預(yù)測結(jié)果。VISPROG還將中間輸出總結(jié)為可以解釋的視覺說明。
02
/模塊/
VisProg目前支持20個(gè)模塊,可實(shí)現(xiàn)圖像理解、圖像操作(包括生成)、知識(shí)檢索和算術(shù)和邏輯操作等能力。在這里顯示的紅色模塊是使用經(jīng)過訓(xùn)練的最先進(jìn)神經(jīng)模型實(shí)現(xiàn)的,而藍(lán)色模塊是使用多種Python庫(如PIL、OpenCV和AugLy)實(shí)現(xiàn)的非神經(jīng)Python函數(shù)。
在VISPROG中,每個(gè)模塊都被實(shí)現(xiàn)為一個(gè)Python類,見下述代碼,其具有以下方法:
(i)解析行以提取輸入?yún)?shù)的名稱和值以及輸出變量的名稱;
(ii)執(zhí)行必要的計(jì)算,可能涉及訓(xùn)練過的神經(jīng)模型,并更新程序狀態(tài)以獲得輸出變量的名稱和值;
(iii)使用HTML方式以可視方式總結(jié)該步驟的計(jì)算(用于創(chuàng)建visual rationales)。
要向VISPROG添加新模塊,只需要實(shí)現(xiàn)并注冊一個(gè)模塊類,程序的執(zhí)行使用該模塊將由VISPROG解釋器自動(dòng)處理。
03
/VISPROG中的程序生成/
VisProg通過向LLM GPT-3提供指令及其相關(guān)的示例指令和對應(yīng)程序,來生成程序。與以前的方法如神經(jīng)模塊網(wǎng)絡(luò)(Neural Module Network)不同,VisProg利用大規(guī)模語言模型的上下文學(xué)習(xí)能力來生成程序,而不是使用預(yù)先定義的模塊。這使生成的程序更加靈活且能夠處理更多的組合式視覺任務(wù)。
04
/可解釋性/
VisProg不僅生成高度可解釋的程序,還通過將每個(gè)步驟的輸入和輸出的摘要拼接在一起生成visual rationales,以幫助理解和調(diào)試程序執(zhí)行期間的信息流。下面是兩個(gè)visual rationales的示例。
使用自然語言進(jìn)行圖像編輯
關(guān)于圖像對的推理(自然語言視覺推理)
04
/結(jié)果可視化/
在組合式視覺問答、基于零樣本的圖像對推理(僅使用單張圖像VQA模型)、實(shí)際知識(shí)對象標(biāo)記和語言引導(dǎo)的圖像編輯等復(fù)雜視覺任務(wù)上展示了VisProg。下圖展示了VisProg在對象標(biāo)記和圖像編輯任務(wù)上的能力。
更多關(guān)于所有任務(wù)的定性結(jié)果以及相應(yīng)的視覺說明,包括由于程序生成中的邏輯錯(cuò)誤或模塊預(yù)測錯(cuò)誤而導(dǎo)致的失敗案例,請根據(jù)下面鏈接下載查閱:
https://openaccess.thecvf.com/content/CVPR2023/supplemental/Gupta_Visual_Programming_Compositional_CVPR_2023_supplemental.zip
-
模塊
+關(guān)注
關(guān)注
7文章
2788瀏覽量
50389 -
人工智能
+關(guān)注
關(guān)注
1806文章
49028瀏覽量
249521 -
python
+關(guān)注
關(guān)注
56文章
4827瀏覽量
86756
原文標(biāo)題:CVPR 2023 最佳論文!VISPROG:以神經(jīng)符號(hào)方式將人工智能推向更廣泛、更復(fù)雜的任務(wù)領(lǐng)域
文章出處:【微信號(hào):CVer,微信公眾號(hào):CVer】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評(píng)論請先 登錄
評(píng)論