AI知道你腦子裡在想什麼,還幫你畫了出來,專案程式碼已開源

WBOY
發布: 2023-04-13 19:10:01
轉載
1846 人瀏覽過

在科幻小說《三體》中,企圖佔領地球的三體人被賦予了一個很獨特的設定:透過腦電波共享訊息,彼此之間思維透明、不善陰謀。在他們那裡,想和說是同一個字。而人類則利用自身思維不透明的特性想出了「面壁計畫」,最終成功騙過三體人,取得了階段性勝利。

那麼問題來了,人類的思維真的是完全不透明的嗎?隨著一些技術手段的出現,這個問題的答案似乎沒有那麼絕對了。許多研究者都在嘗試解碼人類思維的奧秘,將一些大腦中的訊號解碼為文字、圖像等資訊。

最近,兩個研究團隊同時在圖像解碼方向上取得了重要進展,而且相關論文都被 CVPR 2023接收了

第一個團隊來自大阪大學,他們使用最近非常火的Stable Diffusion,能從功能性磁振造影(fMRI) 獲得的人腦活動影像中重建大腦活動中的高解析度、高精準影像(請參閱《Stable Diffusion 讀你大腦訊號就能重現影像,研究還被CVPR 接收了》)。

AI知道你腦子裡在想什麼,還幫你畫了出來,專案程式碼已開源

巧合的是,幾乎同一時間,來自新加坡國立大學、香港中文大學和史丹佛大學的華人團隊也做出了類似的成果。他們開發了一款名為「MinD-Vis」的人類視覺解碼器,透過預先訓練的一個mask modeling 和latent diffusion model,能從fMRI 資料中直接解碼出人類視覺刺激。它生成的這些圖像不僅有合理的細節,而且還準確地呈現了圖像的語義和特徵(如紋理和形狀)。目前,這項研究的程式碼已經開源。

AI知道你腦子裡在想什麼,還幫你畫了出來,專案程式碼已開源

論文主題:Seeing Beyond the Brain: Conditional Diffusion Model with Sparse Masked Modeling for Vision Decoding

AI知道你腦子裡在想什麼,還幫你畫了出來,專案程式碼已開源

  • #論文連結:http://arxiv.org/abs/2211.06956
  • 程式碼連結:https://github.com/zjc062/mind-vis
  • 專案連結:https://mind-vis.github.io/

#接下來我們將詳細介紹這篇論文。

研究概論

「所見即所思」。

人類的感知和先前知識在大腦中有著密切的關聯,我們對世界的感知不僅受到客觀刺激的影響,也受到我們的經驗影響,這些影響形成了複雜的大腦活動。理解這些大腦活動並解碼訊息是認知神經科學的重要目標之一,其中解碼視覺訊息是一個具有挑戰性的問題。

功能性磁振造影 (fMRI) 是一種常用的非侵入性且有效的方法,可用於恢復視覺訊息,如影像類別。 

MinD-Vis 的目的是探討使用深度學習模型直接從 fMRI 資料解碼視覺刺激的可能性。

以往的方法直接從fMRI 數據中解碼複雜神經活動時,存在缺乏{fMRI - 圖像} 配對和有效的生物學指導的問題,所以重建的圖像通常模糊且在語義上無意義。因此,有效地學習 fMRI 表徵是一項重要的挑戰,這有助於建立大腦活動與視覺刺激之間的連結。

此外,個體變異性使問題更加複雜,我們需要從大型資料集中學習表徵,並且放寬從 fMRI 生成條件合成的限制。

因此,作者認為使用自監督學習(Self-supervised learning  with pre-text task) 加上大規模生成模型可以使模型在相對較小的資料集上微調後具有上下文知識和令人驚嘆的生成能力

在上述分析的驅動下,MinD-Vis 提出了人類視覺解碼的遮罩訊號建模與雙條件潛在擴散模型,具體貢獻如下:

  • 提出了Sparse Coded-Masked Brain Modeling(SC-MBM),作為受生物學指導的有效視覺解碼大腦特徵預訓練學習器。
  • 透過增加雙條件潛在擴散模型(DC-LDM),在相同語意下強化了解碼一致性,同時允許產生變異數。
  • 結合 SC-MBM 的表示能力和 DC-LDM 的生成能力,MinD-Vis 產生的影像在保留語意資訊的同時更加合理。
  • 在多個資料集上進行了定量和定性測試。

AI知道你腦子裡在想什麼,還幫你畫了出來,專案程式碼已開源

#與過往的方法比較– 產生品質

AI知道你腦子裡在想什麼,還幫你畫了出來,專案程式碼已開源

#與過往的方法進行比較– 評判指標的量化比較

    自監督學習大規模生成模型
  1. 由於收集{fMRI - 圖像} 配對非常昂貴且耗時,這個任務一直存在缺乏資料標註的問題。另外,每個資料集、每個個體的資料都會存在一定的域偏移。
  2. 在這個任務中,研究人員的目標是建立大腦活動與視覺刺激之間的聯繫,並由此產生相應的圖像訊息。
  3. 為此,他們使用了自監督學習和大規模生成模型。他們認為這種方法可以使模型在相對較小的數據集上進行微調,並獲得上下文知識和令人驚嘆的生成能力。
  4. MinD-Vis 框架
接下來將詳細介紹 MinD-Vis 框架,並介紹設計的理由與想法。

fMRI 數據有這些特徵和問題:
  1. #fMRI 用3D 體素(voxel)來測量大腦血氧水平相關(BOLD)的變化,來觀測大腦活動變化。鄰近體素的幅度通常相似,顯示 fMRI 資料中存在空間冗餘。
  2. 在計算 fMRI 資料時,通常會擷取 Region of Interest (ROI) 並將資料打成 1D vector。在這個任務裡,只提取大腦visual cortex 的信號,因此,體素的數量(約為4000)遠比圖像裡像素點的數量(256*256*3)少,這樣的數據在緯度方面和通常處理圖像數據的方式存在相當的差距。

由於個體差異,實驗設計的差異,腦訊號的複雜程度,每個資料集、每個個體的資料都會存在一定的域偏移。

#########對於一個固定的視覺刺激,研究者希望模型還原的圖像在語義上一致;但由於個體差異,每個人看到這個視覺刺激的反應不同,研究者又希望模型有一定的變異數和彈性。 ###############為了解決這些問題, MinD-Vis 包含兩個階段:###############利用大規模的fMRI 資料集來訓練Masked Autoencoder,來學習fMRI representation。 ############將預先訓練好的 fMRI encoder 與 LDM 透過 cross-attention conditioning 和 time-step  conditioning 相整合進行 double conditioning,以進行條件合成。然後,透過使用配對的 {fMRI, Image} 來共同 finetune LDM 中的 cross attention head。 ###############以下將在這裡詳細介紹這兩個步驟。 ######

AI知道你腦子裡在想什麼,還幫你畫了出來,專案程式碼已開源

MinD-Vis Overview

(A)Sparse-Coded Masked Brain Modeling (SC-MBM) (MinD-Vis Overview 左)

由於fMRI 空間資訊冗餘,即使大部分被遮蓋,fMRI 數據仍然可以恢復。因此,在 MinD-Vis 的第一階段,為了節省計算時間,大部分 fMRI 資料都被遮蓋了。這裡,作者使用了類似Masked Autoencoder 的做法:

  1. #將fMRI voxels 分割成patches
  2. ##使用有等於patches 大小的步長的1D 卷積層轉換成embedding
  3. 把剩餘的fMRI patch 加入positional embedding 後作為vision transformer 的輸入
  4. #解碼得到重建的資料
  5. 計算重建的資料與原始資料的loss
  6. 透過反向傳播優化模型,使得重建的資料盡可能地與原資料相似
  7. 重複2-6 的步驟,訓練出最終模型

AI知道你腦子裡在想什麼,還幫你畫了出來,專案程式碼已開源

#SC-MBM 能有效還原被掩蓋的fMRI 訊息

這個設計和Mask ed Autoencoder 有什麼差別?

    當 mask modelling 應用於自然影像時,模型一般使用等於或略大於 1 的 embedding-to-patch-size ratio。
  • 在這個任務中,作者使用了比較大的embedding-to-patch-size ratio,這能顯著提高訊息容量,為fMRI 創造了大的表徵空間,這種設計也對應於大腦中訊息的稀疏編碼*。

AI知道你腦子裡在想什麼,還幫你畫了出來,專案程式碼已開源

SC-MBM 的消融實驗

(B)Double-Conditioned LDM (DC-LDM) (MinD-Vis Overview 右)

在Stage A 中進行了large-scale context learning 之後,fMRI encoder 可以將fMRI 資料轉換為局部性限制的sparse representation。在這裡,作者將解碼任務表述為條件生成問題,並使用預先訓練的 LDM 來解決此問題。

    LDM 在影像的潛在空間上操作,fMRI 資料 z 作為條件訊息,目標是學習透過反向擴散過程形成影像。
  • 在影像生成任務中,多樣性和一致性是相反的目標,fMRI 到影像更依賴生成一致性。
  • 為了確保產生一致性,作者將 cross attention conditioning 和 time step conditioning 結合,並在 UNet 的中間層使用具有 time embedding 的條件機制。
  • 他們進一步把最佳化目標式重新表述為雙重調節交替式。

AI知道你腦子裡在想什麼,還幫你畫了出來,專案程式碼已開源

我們透過多次解碼不同隨機狀態的圖像證明了我們方法的穩定性。

微調

#在fMRI encoder 通過SC-MBM 預訓練後,它與預先訓練的LDM 通過double conditioning 整合在一起。在這裡,作者:

  1. 將encoder 的輸出使用卷積層合併到latent dimension 中;
  2. 聯合優化fMRI encoder、cross attention heads 和projection heads,其他部分固定;
  3. 微調cross attention heads 是連結pre-trained conditioning space 和fMRI latent space 的關鍵;
  4. 在透過fMRI 影像對端到在端進行微調的過程中,透過large-capacity fMRI representations 將學到fMRI 與影像特徵之間更清晰的連結。

AI知道你腦子裡在想什麼,還幫你畫了出來,專案程式碼已開源

#DC-LDM 的消融實驗

#額外細節

意外的是,MinD-Vis 可以解碼出一些在ground truth 影像裡並不實際存在,但與圖片內容十分相關的細節。比方說,當圖片是自然風景時,MinD-Vis 解碼出了河流和藍天;在提供房屋時,MinD-Vis 解碼出了類似的室內裝潢。這既有好處又有壞處。好處在於,這說明我們能夠解碼出想像到的內容;壞處在於,這可能會影響解碼結果的評估。

AI知道你腦子裡在想什麼,還幫你畫了出來,專案程式碼已開源

好聞樂見的翻車片段

AI知道你腦子裡在想什麼,還幫你畫了出來,專案程式碼已開源

作者認為,在訓練樣本數量較少的情況下,刺激的解碼難度會有所不同。例如,GOD 資料集包含的動物訓練樣本比服裝多。這意味著一個語義上類似於 “毛茸茸” 的詞更可能被解碼為動物而不是服裝,如上圖所示,其中一隻襪子被解碼為一隻羊。

實驗設定

資料集
  • #在這裡,作者用了三個公開數據集。
第一階段的預訓練:使用了 Human Connectome Project,它提供 136,000 個 fMRI 資料片段,沒有影像,只有 fMRI。

微調 Encoder 和第二階段的生成模型:使用了 Generic Object Decoding Dataset (GOD) 和 Brain, Object, Landscape Dataset (BOLD5000) 資料集。這兩個資料集分別提供了 1250 張和 5254 張 {fMRI, Image} 配對,其中,分別取了 50 張和 113 張作為測試集。

模型結構

本文模型結構的設計(ViT 和擴散模型)主要參考過去的文獻。模型參數細節請參考內文。同樣地,他們也採用了一種不對稱的體系結構:編碼器旨在學習有意義的 fMRI 表示,而解碼器試圖預測被遮蓋的塊。因此,我們遵循以前的設計,使解碼器更小,預訓練後我們將其捨棄。

評判指標跟過往的文獻一樣,作者也使用了n-way top-1 和top-5 分類準確率來評估結果的語意正確性。這是一種在多次試驗中,透過計算 n-1 個隨機選擇的類別和正確類別的 top-1 和 top-5 分類準確率來評估結果的方法。與先前的方法不同,他們在這裡採用了更直接、可複製的評估方法,即使用預先訓練的 ImageNet1K 分類器來判斷生成圖像的語義正確性,而不是使用 handcrafted features。此外,他們還使用了 Fréchet inception distance(FID)作為參考來評估產生影像的品質。但是,由於資料集中影像數量有限,因此 FID 可能無法完美地評估影像分佈。

############效果##########

這篇文章的實驗是在個體層次上進行的,即模型在同一個個體上進行訓練和測試。為了與先前的文獻進行比較,這裡報告了 GOD 資料集第三位被試的結果,並在附錄中列出了其他被試的結果。

寫在最後

透過這個項目,作者展示了透過 fMRI 還原人腦視覺訊息的可行性。然而,這個領域有許多問題需要解決,例如如何更好地處理個體之間的差異性,如何減少噪音和乾擾對解碼的影響,如何將fMRI 解碼與其他神經科學技術結合起來,以更全面地理解人類大腦的機制和功能。同時,我們也需要更了解和尊重人類大腦和個體隱私方面的倫理和法律問題。

此外,我們還需要探索更廣泛的應用場景,例如醫學和人機互動等領域,以便將這項技術轉化為實際應用。在醫學領域,fMRI 解碼技術未來可能可以被用來幫助視覺障礙人士、聽覺障礙人士、甚至全身癱瘓患者等特殊群體來解碼他們的想法。這些人由於身體上的障礙,無法透過傳統的溝通方式來表達自己的想法和意願。透過使用 fMRI 技術,科學家可以解碼他們的大腦活動,從而獲取他們的想法和意願,進而與他們進行更自然和高效的交流。在人機互動領域,fMRI 解碼技術可以被用來開發更智慧和自適應的人機介面和控制系統,例如透過解碼使用者的大腦活動來實現更自然和高效的人機互動體驗。

我們相信,在大規模資料集大模型算力的加持下,fMRI 解碼將會有更廣泛和深遠的影響,推動認知神經科學和人工智慧領域的發展。

註:*使用稀疏編碼在腦中學習視覺刺激表示的生物學基礎:稀疏編碼曾被提出來作為感覺訊息表徵的一種策略。研究表明,視覺刺激在視覺皮層中被稀疏編碼,這可以增加訊息傳輸效率並減少腦中的冗餘。使用 fMRI 可以從視覺皮層收集的少量資料中重建自然場景的視覺內容。稀疏編碼可能是電腦視覺中編碼的有效方式。文章中提到了SC-MBM 方法,它將fMRI 資料分成小塊來引入局部性約束,然後將每個小塊稀疏編碼成高維度向量空間,這樣可以作為生物學上有效且高效的腦特徵學習器,用來進行視覺編碼解碼。

#

以上是AI知道你腦子裡在想什麼,還幫你畫了出來,專案程式碼已開源的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
ai
來源:51cto.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板