大模型之神經網絡特征提取綜述 原創
“ 特征提取是神經網絡的核心能力之一,但其復雜程度遠沒有想象中的那么簡單 ”
在之前的文章編碼器和解碼器中介紹了編碼器和解碼器的核心功能之——特征提取和特征重建;編碼器的核心任務是特征提取,而解碼器的核心任務是特征重建。
但除開模型設計者也就是神經網絡設計者之外,對大模型的使用者來說,大模型就是一個黑盒模型;用戶只需要給定輸入,大模型就可以根據訓練結果給出相對應的數據輸出。
因此對使用者來說,大模型內的一切都是不可見的;而且由于大模型的訓練和微調都是由神經網絡自身完成的,因此包括神經網絡設計者在內;沒人知道大模型的內部到底是怎么運作的;這也是為什么大模型缺乏可解釋性的原因之一。
大模型的特征提取
要想了解大模型的特征提取,首先要明白一個概念就是——什么是特征?
事實上我們每時每刻都在接觸不同的特征,比如說我們每天睜眼看到的東西,我們使用的物品,我們認識的人。
先來回答一個問題,我們是怎么區分不同的人和物的?
答案就是通過特征,比如蘋果和香蕉的特征不一樣;男人和女人的特征也不一樣,你的朋友和其他人的特征也不一樣。
所以,我們的大腦就是通過我們的五感輸入的信息,然后通過提取特征來區分不同的人和物。
再回到人工智能領域,大模型是怎么提取特征的?
在深度學習爆火之前,特征提取并不是由神經網絡自身來完成的;在那時的機器學習領域,特征提取是由業內的專家人士,通過自己的一套方法論來進行特征提取。
這種方式的好處是特征提取的可解釋性,因為特征提取的全部流程都是由人類的完成的;因此這些專家可以給你解釋為什么要提取這個特征,以及怎么提取這個特征。
但在神經網絡模型爆火之后,所有的特征提取都是由模型自身來完成;雖然神經網絡是由人類自己設計的,但人類也并不完全了解里面到底發生了什么;這也是為什么部分人擔心大模型安全問題的原因之一。因為它是完全不可控的。
但從另一方面來說,由于神經網絡中的特征是模型在學習中逐漸生成的;所以這些特征沒有人為的干預,特征的分布更加客觀,更有利于模型進行分類和回歸;這一點是人工特征提取所無法比擬的。
傳統的特征提取方法是通過人工提取而來,人工神經網絡中的特征是通過網絡層計算得來的,最簡單的特征提取方法就是在確定好數據標簽y’后,通過反向傳播算法和線性層來提取特征,比如y=wx+b,其中y是輸出值,x是固定輸入,w是權重,b是偏差,w和b都會隨著模型的反向傳播不斷更新。一般通過損失函數E=1/2(y-y’)求得損失,然后通過反向傳播算法降低損失E,由于損失函數中的y’是固定的,只有改變輸出y,讓y和y’越來越接近,才能夠達到我們的目的,而改變y的值回到了前向輸出公式y=wx+b上,在這個公式中,能夠改變的值就只有w和b,所以最終我們通過改變w和b的值讓輸出的y發生變化,讓其和標簽y’更加接近。可見,在輸入x不變的前提下,w和b的改變會讓輸出y有越來越接近標簽y’。
從理論上來說,在網絡層較淺時,提取到的特征不會有很強的標準性,這里的標志性指的是特征對原始數據的代表性。而到了神經網絡層數越深的時候,模型提取到的特征會更具代表性;簡單來說就是網絡層數越深,模型能夠解決的任務越復雜,這也是為什么說網絡模型越深,能力越強。
神經網絡的快速發展是最近這幾年才大規模開始的,關于神經網絡特征的理解,也是仁者見仁,智者見智,但是總體的目標是不變的,那就是朝著越來越高效的特征提取方向發展。不管是以前的CNN模型,還是這兩年的transformers模型,以及提出的各種注意力的方法,都是在設計怎么去除掉對于當前任務無關的冗余信息,增加對于當前任務有用的信息權重,從而實現特征的高效提取,以達到快速高效的完成任務。
本文轉載自公眾號AI探索時代 作者:DFires
原文鏈接:??https://mp.weixin.qq.com/s/Tdhs_5wAF09-PESBi3tAzQ??
