日前與一位研究生交流,聊到研究所的課程有時無法以現在的眼界了解對未來的幫助,但他還是好好學習,為未來播種,我當時就提出我最近的故事。
從GPT模型的領悟
最近動手做GPT的研究,打算試做一個客服問答服務,所以研究了一個OpenAI的範本,如下
How to build an AI that can answer questions about your website
裡面的術語如token, embedding對我來說是沒學過的,所以我就問ChatGPT,結果其提到是向量的觀念,居然我很快就懂了,其實我修過博士班的數學,但現在的程度只會加減乘除。
問:從資料科學的角度來說明向量 答:從資料科學的角度來看,向量通常被描述為一系列有序數字的集合,這些數字被稱為向量的元素或成分。向量可以是一維的(也就是只有一列的矩陣),也可以是多維的。 在資料科學中,向量通常被用來表示資料的特徵或屬性。例如,一個人可以用一個包含他們年齡、身高和體重的向量來表示。在這個例子中,向量的三個元素分別代表人的年齡、身高和體重。 向量還可以用於數學運算,如加法、減法、乘法和除法。向量的加法和減法是逐元素進行的,即將兩個向量的對應元素相加或相減。向量的乘法有多種,包括點積和叉積等。 在機器學習和深度學習中,向量通常被用來表示數據的特徵,而這些特徵被用來訓練模型。在這種情況下,向量的元素通常是數字,這些數字可以表示像像素、單詞頻率等不同的特徵。通過將向量與模型進行訓練,我們可以預測新的數據點所屬的類別或執行其他任務。
簡言之,這是一種數學技巧來描述一個事物,用數學的方式把其特性及屬性描述出來,具體的展現就是數字,也就是電腦可以處理的格式。
該連結裡面提到的token是一種元素,也就是形成每個句子的元素。
而embedding是一種手法,把這些文字內容,用向量手法表示出來, 也就是把這些元素(token)用數學組成的方式來描述這些文字內容,以利AI瞭解內容的關聯性。
台灣人工智慧學校有篇很好的介紹
斷開中文的鎖鍊!自然語言處理 (NLP)是什麼?
以下的詞向量就是很好的闡釋
其實,只要掌握token, embedding的觀念,就可以瞭解GPT的訓練資料是怎麼餵的。
感想
寫起來沒多少,居然是花了快30年的領悟。
工科出身,物理觀念還算不錯,但數學沒有天份,聯考低標,大學,研究所都是靠苦讀,我一直認為數學要具體為工程所用才有意義,有一次上了一個很理論的數學,就是向量空間這門課,雖然有點嗤之以鼻,但間接感受到數學與神之間的關係,所以就沒有把數學家當瘋子看。
30年後,所有以前高難度工程數學的解題技巧全忘光光,只剩會加減乘除,但很奇怪,向量空間的哲學一直在我腦中,在請教ChatGPT的過程中,沒有學過的資料科學觀念,居然領悟了。
這是30年前的種子,居然現在開花。
所以,數學這種理論好像很玄,不似工科的運用這麽具體,但工科的技巧很久沒用就會消失,而理科的思維則是了解了,這種原則性的觀念就跟著自己走。
一點過來人的經驗,給困惑的學生參考。