我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。
目前我們已經完成:
現在我們來撰寫 Query、Key、Value 權重矩陣的程式,在原始 Google 於 2017 年釋出的 Attention 論文中,Query、Key、Value 這三個矩陣的維度均為 512 x 64 ,前者對應 Embedding + Positional Encoding 後的維度,現在為了方便説明,我們把它們都調整成 4 x 3。
針對 Query 權重矩陣的程式配置如下:
W_Query = np.array([[1, 0, 1],
[1, 0, 0],
[0, 0, 1],
[0, 1, 1]])
針對 Key 權重矩陣的程式配置如下:
W_Key = np.array([[0, 0, 1],
[1, 1, 0],
[0, 1, 0],
[1, 1, 0]])