人人都能搞定的大模型原理 - 神經網路

陈咬金發表於2024-08-13

人工智慧的發展起步於1950年,期間經歷了各種里程碑和變革,與此相關的神經網路技術也從最初的單層感知到複雜的層級和卷積神經網路一路創新和變革,不斷推動人工智慧領域的發展,直到 2022 年 ChatGPT 的問世,徹底引爆了大眾的目光。

人工智慧技術經歷了漫長的迭代過程,無論如何變革都離不開最早的神經網路模型“感知機”的啟蒙,作為人工智慧領域的一個重要里程碑,本篇文章就聚焦於“感知機”的實現進行說明。

讓我們從理解感知機開始,徹底搞懂到底什麼是神經網路。

原創宣告,文章原創地址:人人都能搞定的大模型原理 - 神經網路

01、神經網路 - 感知機

神經網路技術是從神經科學中汲取靈感,並試圖捕捉人類隱藏在所謂的“快速感知”背後的一些無意識的思考過程,如人腦自動識別人臉或識別語音等。

20世紀50年代末,心理學家弗蘭克·羅森布拉特受到人腦中神經元處理資訊的方式的啟發,一個神經元就是大腦中的一個細胞,它能夠接收與之相連的其他神經元的電或化學輸入訊號。

簡單的說,一個神經元把它從其他神經元接收到的所有輸入訊號加起來,如果達到某個特定的閾值水平,它就會被啟用。

重要的是,一個給定的神經元與其他神經元的不同連線(突觸)有不同的強度,當計算訊號輸入總和的時候,給定的神經元會給弱連線分配較少的權重,而將更多的權重分配給強連線的輸入。

而對於電腦科學家來說,資訊在神經元中的處理過程可以透過一個有多個輸入和一個輸出的計算機程式(感知機)進行模擬。

人人都能搞定的大模型原理 - 神經網路

神經元和感知機之間的類比:大腦中的神經元(A)和一個簡單的感知機(B)

圖中(A)展示了一個神經元及其樹突(為細胞帶來輸入訊號的結構)、胞體和軸突(即輸出通道);圖中(B)則展示了一個簡單的感知機結構。

與神經元類似,感知機將其接收到的輸入訊號相加,如果得到的和等於或大於感知機的閾值,則感知機輸出1(被啟用),否則感知機輸出0(未被啟用)。

為了模擬神經元的不同連線強度,羅森布拉特建議給感知機的每個輸入分配一個權重,在求和時,每個輸入在加進總和之前都要先乘以其權重。

而感知機的閾值則是由程式設計師設定的一個數值,它也可以由感知機透過自身學習得到。這個文章後面會再次進行說明。

簡而言之,感知機是一個根據加權輸入的總和是否滿足閾值來做出是或否(輸出1或0)的決策的簡易程式。

而在生活中,你可能會以下面這樣的方式做出一些決定。

例如,你會從一些朋友那裡瞭解到他們有多喜歡某一部電影,但你相信其中幾個朋友對於電影的品位比其他人更高,因此,你會給他們更高的權重。

如果朋友喜愛程度的總量足夠大的話(即大於某個無意識的閾值),你就會決定去看這部電影。如果感知機有朋友的話,那麼它就會以這種方式來決定是否看一部電影。

原創宣告,文章原創地址:人人都能搞定的大模型原理 - 神經網路

02、圖片識別

受大腦神經元網路的啟發,羅森布拉特提出可以應用感知機網路來執行視覺任務,例如人臉和物體識別。為了瞭解感知機網路是如何開展工作的,我們接下來將探索一個感知機如何執行特定的視覺任務,比如,識別如下圖所示的手寫數字。

人人都能搞定的大模型原理 - 神經網路

我們將感知機設計為“8”探測器,也就是說,如果其輸入是一幅數字8的影像,則輸出1;如果輸入影像的內容是其他數字,則輸出0。

設計這樣一個探測器需要我們先弄清楚如何將影像轉換為一組數值輸入,再確定感知機的權重分配和閾值,以使感知機能夠產生正確的輸出(8為1,其他數字為0)

人人都能搞定的大模型原理 - 神經網路

注:18×18畫素影像中的每個畫素對應感知機的一個輸入,該感知機共有324(18×18)個輸入

上圖(A)展示了一個放大的手寫數字8,其中 X 軸有 18 個網路方塊,Y 軸也有 18 個網路方塊,所以一共有 18x18 共 324 個網路方塊。

圖中每個網格方塊(畫素)都有一個可以用數字表示的強度值——畫素強度(pixel intensity),在黑白影像中,純白色方塊的畫素強度為255;純黑色方塊的畫素強度為0;而灰色方塊的畫素強度介於其間。

該感知機具有324(18×18)個輸入,每個輸入對應於網格中的一個畫素強度,同時每個輸入都有自己的權重。

那麼我們如何為一個給定的任務準確地設定正確的權重和閾值呢?羅森布拉特再次給出了一個受大腦啟發的答案:感知機應該透過自己的學習獲得這些數值。

從行為心理學上來看,給老鼠和鴿子以正向和負向的強化可以用來訓練它們執行任務。

而感知機也應該在樣本上進行類似的訓練:在觸發正確的行為時獎勵,而在犯錯時懲罰。如今,這種形式的條件計算在人工智慧領域被稱為監督學習(supervised learning)

原創宣告,文章原創地址:人人都能搞定的大模型原理 - 神經網路

03、感知機學習演算法

在訓練時,給定學習系統一個樣本,它就產生一個輸出,然後在這時給它一個“監督訊號”,提示它此輸出與正確的輸出有多大偏離,然後,系統會根據這個訊號來調整它的權重和閾值。

監督學習通常需要大量的正樣本(例如,由不同的人書寫的數字8的集合)和負樣本(例如,其他手寫的、不包括8的數字集合)。每個樣本都由人來標記其類別——此處為“8”和“非8”兩個類別,這些標記將被用作監督訊號。

用於訓練系統的正負樣本,被稱為“訓練集”(training set),剩餘的樣本集合,也就是“測試集”(test set),用於評估系統在接受訓練後的表現效能,以觀察系統在一般情況下,而不僅僅是在訓練樣本上回答的正確率。

電腦科學中最重要的一個術語就是演算法,它指的是計算機為解決特定問題而採取的步驟的“配方”。羅森布拉特對人工智慧的首要貢獻是他對一個特定演算法的設計,即感知機學習演算法(perceptron-learning algorithm),感知機可以透過這一演算法從樣本中得到訓練,來確定能夠產生正確答案的權重和閾值。

最初,感知機的權重和閾值被設定為介於-1和1之間的隨機數。在我們的案例中,第一個輸入的權重可被設定為0.2,第二個輸入的權重被設定為-0.6,而閾值則被設定為0.7,使用隨機數生成器可以輕鬆生成這些初始值(在沒有開始訓練前,各個輸入的權重和閾值隨機生成即可)。

接下來就可以開始訓練了,首先將第一個訓練樣本輸入感知機,此時,感知機還不知道正確的分類標記。感知機將每個輸入乘以它的權重,並對所有結果求和,再將求得的和與閾值進行比較,然後輸出1或0,其中,輸出1代表它的輸入為8,輸出0代表它的輸入不是8。

接下來,將感知機的輸出和人類標記的正確答案(“8”或者“非8”)做比較。如果感知機給出的答案是正確的,則權重和閾值不會發生變化,但是如果感知機是錯誤的,其權重和閾值就會發生變化,以使感知機在這個訓練樣本上給出的答案更接近於正確答案。

此外,每個權重的變化量取決於與其相關的輸入值,也就是說,對錯誤的“罪責”的分配取決於哪個輸入的影響更大或更小。

在上圖“8”的324個畫素塊中,純黑色方塊的畫素強度為0影響較大,而純白色方塊的畫素強度為255則不會有任何影響。

對此數學原理感興趣的讀者,可以查閱下面的計算細節:

從數學的角度看,感知機學習演算法如下。對於每個權重wj:wj ← wj + η (t + y) xj,其中t表示正確的輸出(1或0);對於給定的輸入,y是感知機的實際輸出;xj是與權重wj有關的輸入;η是由程式設計師給出的學習速率,箭頭表示更新。閾值透過建立一個附加的輸入x0合併得到。x0為常數1,其相對應的權重w0=-threshold(閾值)。對於給定額外的輸入和權重(稱為偏差),只有在輸入與權重的乘積,即輸入向量與權重向量之間的點積大於或等於0時,感知機才會被觸發。通常,輸入值會被縮小或者應用其他變換以防止權重過大。

下一個訓練將重複上述整個過程。感知機會將這個訓練過程在所有的訓練樣本上執行很多遍,每一次出錯時,感知機都會對權重和閾值稍做修改。

正如行為心理學家斯金納在訓練鴿子時所發現的:透過大量試驗循序漸進地學習,其效果更好,如果在一次試驗中,權重和閾值的改動過大,系統就可能以學到錯誤的東西告終。

例如,系統過度關注於8的上半部分和下半部分的大小總是完全相等的。在每個訓練樣本上進行多次重複訓練之後,系統最終將獲得一組能夠在所有訓練樣本上都能得出正確答案的權重和閾值。此時,我們可以用測試樣本對感知機進行評估,以觀察它在未曾訓練過的影像上的表現。

只需為系統提供足夠多的訓練樣本,感知機的識別準確率就會越來越高,直到對正確“8”數字的正確識別率達到了一定程度以後,系統針對“8”數字的輸入權重和閾值變化幅度將會越來越低,直到維持在一個相應的平衡數值當中。

此時我們就可以定義為這個系統已經訓練完成,對“8”的識別率達到了百分之XX的精準識別。

原創宣告,文章原創地址:人人都能搞定的大模型原理 - 神經網路

04、“亞符號”派

羅森布拉特在數學上證明了對於一個特定的任務類別,原則上只要感知機經過充分的訓練,就能學會準確無誤地執行這些任務。但由於感知機的“知識”由它所學到的權重和閾值這對數值組成,這意味著我們很難發現感知機在執行識別任務時使用的規則。

感知機的權重和閾值不代表特定的概念,這些數字也很難被轉換成人類可以理解的含義。這一情況在當下具有上百萬個權重的神經網路中變得更加複雜。

有人可能會將感知機和人腦做一個粗略的類比。如果我能開啟你的大腦,並對其中上千億個神經元中的一部分進行觀察,我可能並不能清楚你的想法或者你做某個特定決定時所用的規則。

然而,人類的大腦已經產生了語言,它允許你使用符號(單詞和短語)來向我傳達你的想法,或者你做某件事的目的。

從這個意義上說,我們的神經刺激可以被認為是亞符號化的,而以它們為基礎,我們的大腦不知何故卻創造了符號。類比於大腦中的亞符號化的神經網路,感知機以及更復雜的模擬神經元網路,也被稱作“亞符號”派。

這一派的支持者認為:若要實現人工智慧,必須以類似於智慧符號處理從大腦中湧現的方式,從類似於神經元的結構中湧現出來。

而僅僅是使用感知機這種單神經元結構還遠遠不夠,能否在足夠多的訓練樣本之下讓機器學會語言和文字的翻譯?如何讓機器也可以走路,說話,識別人類?

於是乎層級神經網路,卷積神經網路,迴圈神經網路,深度信念網路等模型呼嘯而來。

原創宣告,文章原創地址:人人都能搞定的大模型原理 - 神經網路

05、什麼是大模型?

瞭解感知器和單神經元的原理是為了後續更好的瞭解“基於深度神經網路機器學習”的基礎。

我們經常所聽到的大模型有幾百億幾千億的引數,這裡的引數其實就是神經網路的輸入權重和輸出閾值的總和。

我們假定一個神經元有9個輸入權重,和1個輸出閾值,那麼就可以說該神經元有10個引數。

當我們有100億個這樣的神經元時,此時就可以說我們的神經網路模型有1000億個引數,也就是所謂的千億級引數的大模型。

是不是賊啦簡單?原來各種官方一直提到的百億,千億引數的大模型,原來是這個意思呢。

此處我們再做一點小小的延伸~

我們上述所提到的感知機(單神經元),透過一定的學習演算法,可以將這個單神經元具備一定簡單的智慧效果,比如識別單個數字。

那麼你想象一下,我們單個神經元透過一定的學習演算法,可以出現簡單的智慧效果,此時如果有100億個神經元呢?100億個神經元合在一起所具備的智慧效果,這將是一個多麼強智慧的效果存在。

每個神經元都只需要記住自己的一點點規則,可以具備識別出一個非常小的一個能力,此時將這個神經元的數量擴大到100億,1000億,這就會出現我們現在所經常聽到的群體智慧,即智慧湧現!

“智慧湧現”在自然界非常典型的案例就是螞蟻,單隻螞蟻是非常簡單的智慧生物,但是一旦當一群螞蟻聚集的時候,就會建造出非常複雜的蟻巢結構。(感興趣的可以自行搜下)

而我們人腦呢?根據科學的統計是人腦中約有 1000 億個神經元,這些龐大的神經元構成了非常複雜的神經網路,這也是人腦智慧的基礎。

所以知道為什麼有時候明明也沒運動,但是上班一天還是要吃很多食物了嗎?因為你龐大神經元的運轉也是需要消耗能量的呀。AI 消耗電力補充能量,而我們消耗食物來補充能量(奇奇怪怪的知識又增加了🤔)

原創宣告,文章原創地址:人人都能搞定的大模型原理 - 神經網路

06、留個思考題

假設我們現在需要訓練的神經網路中有 10億個神經元,此時我們訓練該神經元來識別一個狗/或者貓的動物。

每一個神經元都只需要負責識別很小的一塊即可,比如有一部分神經元負責識別貓的臉型輪廓,有一部分神經元負責識別貓的眼睛,最終這部分識別結果會統一傳遞給下層另外一部分神經元,用來將識別後的貓的輪廓結果和眼睛的結果進行是否是貓的識別判斷。

想象一下,在這麼多 10 億個神經元中,如果最終識別結果是錯誤的,那麼如何精確定位到是哪一類神經元識別錯誤,最終導致整個識別結果是錯誤的呢?

人人都能搞定的大模型原理 - 神經網路

我們可以以上述圖片為例,上圖中每一個 ⚪️ 都表示一個神經元,可以看到一個神經元的識別結果,會推送給下游的所有神經元當中,而下游的神經元在拿到上游神經元的輸入後進行判斷識別,然後再次輸出給下游的所有神經元。

層層進行神經網路的執行後,直到最終負責輸出的神經元根據上游的輸入資訊,輸出一個最終結果。

此時最終的輸出結果如果是一個錯誤的值,那麼我們如何定位到中間是哪個神經元識別結果錯誤,從而導致最終識別結果錯誤的呢?

我們只有在最終結果識別錯誤後定位到是哪些神經元導致的結果異常,才能讓這部分神經元單獨調整識別的權重,從而提高最終識別結果的正確率。

如何做到呢?大家可以思考一下。但是不用急著給答案,因為這個答案非常難,難到一度影響整個神經網路的程序延緩多年。

想象一下,一群世界上頂級的人類優質(男/女)性,因為這個問題遲遲沒有突破從而延緩了 AI 的程序多年,就知道這是一個什麼級別的問題了。

當然,我也將在下篇文章中揭曉問題的答案,併科普相關的知識。感興趣的讀者別忘了文章下方關注我們的公眾號,更多精彩內容等著你呦!

原創宣告,文章原創地址:人人都能搞定的大模型原理 - 神經網路

07、結語

人人都能搞定的大模型原理 - 神經網路

AI 發展歷程(圖片來源:智源研究院)

AI 的發展從 1950 年的提出,到如今的成就,其實也才發展短短几十年。

對於大眾來說,我們對AI領域的使用是隨著國內網際網路的發展,在近20年才開始普及。

最初的應用主要是基於NLP技術的聊天機器人和客服機器人,這個也是博主近幾年所從事的領域。(以前大家還總吐槽機器人很傻,現在卻變成了 AI 即將取代人類,輿論的變化真快啊,哈哈)

隨後,中英文翻譯、語音識別、人臉識別等技術取得了突破,這些突破在我們日常生活中的應用也非常廣泛,比如語音助手、智慧翻譯裝置、人臉識別支付系統等。

但以前的這些技術突破大多都還僅限於特定領域內,模型的應用範圍相對狹窄,比如翻譯機器人訓練完成後只能做翻譯,客服機器人只能在特定的語境中才能給你準確的回覆。

然而,隨著 OpenAI ChatGPT等大型語言模型的突破,則向人們展示了一種新的發展路線,透過大規模的模型預訓練,可以湧現出廣泛的智慧應用,一個模型就能實現聊天、翻譯、數學問題解答、程式碼程式設計、寫作輔導,甚至情感諮詢等等能力。

這種集多功能於一體,像人類一樣智慧的 AI 模型,為 AI 未來的發展提供了新的技術方向同時,也給人類帶來了新的焦慮:

說好的 AI 幫人類掃地、洗碗,人類去寫詩、畫畫的!怎麼現在變成了AI都去寫詩和畫畫了,我們人類卻還在掃地、洗碗 😂

博主第一次看到這段網上的調侃時,也覺得非常的好笑,但細細想來你就會發現,“人機共生” 幾乎是人類發展的必然。

現在哪個年輕人出門不帶手機?誰工作不用電腦?手機、電腦不就是機器嗎。

我們已經不知不覺中和這些機器共同生活了幾十年,人類的生活水平非但沒有降低,反而生活的便利性還大大提高了許多。

電腦最開始的普及在取代了一些重複性高的職業同時,也為軟體行業的興起提供了新的助力,那些熟悉計算機執行規則的軟體工程師,善於利用計算機來洞察人類需求的產品經理,以及善於運用計算機軟體來提高效率的職場白領,都在電腦普及後獲得了新的提升。

所以新的 AI 技術誕生,必然也會經歷這樣一個過程,與其擔心現在,不如押注未來。人機共生一定是未來的必然趨勢,個人價值很大程度上或許來自於和智慧機器的默契配合。

只有深入瞭解 AI 原理,才能更好地駕馭 AI,讓我們一起學習 AI,攜手同行,更好地迎接智慧時代的到來吧!

原創宣告,文章原創地址:人人都能搞定的大模型原理 - 神經網路

關注我們,不錯過每一次知識的碰撞 🔔

人人都能搞定的大模型原理 - 神經網路

喜歡這篇文章的話,就請點點關注、點贊、在看,並轉發給更多的朋友吧!

相關文章