去年年底,OpenAI 向公眾推出了ChatGPT,一經發布,這項技術立即將AI 驅動的聊天機器人推向了主流話語的中心,眾多研究者並就其如何改變商業、教育等展開了一輪又一輪辯論。
隨後,科技巨頭們紛紛跟進投入科研團隊,他們所謂的「生成式 AI」技術(可以製作對話文字、圖形等的技術)也已準備就緒。
眾所周知,ChatGPT 是在GPT-3.5 系列模型的基礎上微調而來的,我們看到很多研究也在緊隨其後緊追慢趕,但是,與ChatGPT相比,他們的新研究效果到底有多好?近日,亞馬遜發布的一篇論文《Multimodal Chain-of-Thought Reasoning in Language Models》中,他們提出了包含視覺特徵的Multimodal-CoT,該架構在參數量小於10 億的情況下,在ScienceQA 基準測試中,比GPT-3.5 高出16 個百分點(75.17%→91.68%),甚至超過了許多人類。
這裡簡單介紹ScienceQA 基準測試,它是首個標註詳細解釋的多模態科學問答資料集,由UCLA 和艾倫人工智慧研究院(AI2)提出,主要用於測試模型的多模態推理能力,有著非常豐富的領域多樣性,涵蓋了自然科學、語言科學和社會科學領域,對模型的邏輯推理能力提出了很高的要求。
論文網址:https://arxiv.org/abs/2302.00923
#專案地址:https://github.com/amazon-science/mm-cot
下面我們來看看亞馬遜的語言模式是如何超越GPT-3.5 的。
大型語言模型(LLM) 在複雜推理任務上表現出色,離不開思維鏈(CoT) 提示的助攻。然而,現有的 CoT 研究只關注語言模態。為了在多模態中觸發 CoT 推理,一個可能的解決方案是透過融合視覺和語言特徵來微調小型語言模型以執行 CoT 推理。
然而,根據已有觀察,小模型往往比大模型更能頻繁地胡編亂造,模型的這種行為通常被稱為「幻覺(hallucination)」。先前Google的一項研究也表明( 論文 Chain-of-Thought Prompting Elicits Reasoning in Large Language Models ),基於 CoT 的提示只有在模型具有至少 1000 億參數時才有用!
也就是說,CoT 提示不會對小型模型的效能產生正面影響,並且只有在與 ∼100B 參數的模型一起使用時才會產生效能提升。
然而,本文研究在小於 10 億參數的情況下就產生了效能提升,是如何做到的呢?簡單來講,本文提出了包含視覺特徵的 Multimodal-CoT,透過這個範式(Multimodal-CoT)來尋找多模態中的 CoT 推理。
Multimodal-CoT 將視覺特徵結合在一個單獨的訓練框架中,以減少語言模型有產生幻覺推理模式傾向的影響。整體而言,這個框架將推理過程分為兩部分:基本原理產生(尋找原因)和答案推理(找出答案)。
#Multimodal CoT 兩階段過程:使用文字(問題 上下文)和視覺特徵來產生邏輯依據。
資料集
#本文主要關注ScienceQA 資料集,該數據集將圖像和文字作為上下文的一部分,此外,該資料集還包含對答案的解釋,以便可以對模型進行微調以產生CoT 基本原理。此外,本文利用 DETR 模型產生視覺特徵。
較小的LM 在生成CoT / 基本原理時容易產生幻覺,作者推測,如果有一個修改過的架構,模型可以利用LM 生成的文本特徵和圖像模型生成的視覺特徵,那麼更有能力提出理由和回答問題。
架構
#總的來說,我們需要一個可以產生文字特徵和視覺特徵並利用它們生成文字回應的模型。
又已知文字和視覺特徵之間存在的某種交互,本質上是某種共同註意力機制,這有助於封裝兩種模態中存在的訊息,這就讓借鏡思路成為了可能。為了完成所有這些,作者選擇了 T5 模型,它具有編碼器 - 解碼器架構,並且如上所述,DETR 模型用於生成視覺特徵。
T5 模型的編碼器負責產生文字特徵,但T5 模型的解碼器並沒有利用編碼器產生的文字特徵,而是使用作者提出的共同註意式互動層( co-attention-styled interaction layer)的輸出。
拆解來看,假設 H_language 是 T5 編碼器的輸出。 X_vision 是 DETR 的輸出。第一步是確保視覺特徵和文字特徵具有相同的隱藏大小,以便我們可以使用注意力層。
注意:所有程式碼片段均來自論文的GitHub:https://github.com/amazon-science/mm-cot/blob/main/model.py
self.image_dense = nn.Linear(self.patch_dim, config.d_model)
W_h 本質上是一個線性層,H_vision 對應最終的視覺特徵。 W_h 有助於更改視覺特徵的大小以匹配文字特徵的大小。
下面我們需要加入一個注意力層,以便視覺和文字特徵可以相互互動。為此,作者使用單頭注意力層,將 H_language 作為查詢向量,將 H_vision 作為鍵和值向量。
self.mha_layer = torch.nn.MultiheadAttention(embed_dim=config.hidden_size, kdim=config.hidden_size, vdim=config.hidden_size, num_heads=1, batch_first=True) image_att, _ = self.mha_layer(hidden_states, image_embedding, image_embedding)
現在我們有了包含來自文字和視覺特徵的資訊的嵌入。隨後,作者利用門控融合來產生最終的一組特徵,這些特徵將被發送到解碼器。門控融合有兩個步驟:
W_I 和 W_v 基本上是兩個線性層。
self.gate_dense = nn.Linear(2*config.hidden_size, config.hidden_size) self.sigmoid = nn.Sigmoid() hidden_states = encoder_outputs[0] merge = torch.cat([hidden_states, image_att], dim=-1) gate = self.sigmoid(self.gate_dense(merge)) hidden_states = (1 - gate) * hidden_states + gate * image_att
最後,融合的特徵被傳遞給解碼器。
decoder_outputs = self.decoder( input_ids=decoder_input_ids, attention_mask=decoder_attention_mask, inputs_embeds=decoder_inputs_embeds, past_key_values=past_key_values, encoder_hidden_states=hidden_states,
這幾乎就是作者所遵循的架構!但是,請記住有兩個階段。第一個階段是產生基本原理 / CoT。第二階段利用第一階段產生的 CoT 來產生答案,如上圖所示。
作者使用 UnifiedQA 模型的權重作為 T5 模型的初始化點,並在 ScienceQA 資料集上微調。他們觀察到他們的 Multimodal CoT 方法優於所有先前的基準,包括 GPT-3.5。
有趣的地方在於,即使只有 2.23 億個參數的基本模型也優於 GPT-3.5 和其他 Visual QA 模型!這突顯了擁有多模態架構的力量。
作者也展示了他們的兩階段方法優於單階段方法。
#這篇論文帶來的最大收穫是多模態特徵在解決具有視覺和文字特徵的問題時是多麼強大。
作者展示了利用視覺特徵,即使是小型語言模型(LM)也可以產生有意義的思維鏈/ 推理,而幻覺要少得多,這揭示了視覺模型在發展以思維鏈為基礎的學習技術中可以發揮的作用。
從實驗中,我們看到以數百萬個參數為代價添加視覺特徵的方式,比將純文字模型擴展到數十億個參數能帶來更大的價值。
以上是探究新一代超越GPT 3.5的小型模型。的詳細內容。更多資訊請關注PHP中文網其他相關文章!