一原理)
第一次讓我強烈意識到高維幾何不是書齋里的理論玩具是在兩個看似毫無關(guān)聯(lián)的實驗里。某個部署端模型壓縮項目里我用各種低比特量化方案跑權(quán)重量化誤差曲線始終卡在一個尷尬的位置另一邊我在調(diào)一個回聲狀態(tài)網(wǎng)絡(luò)做時序預(yù)測狀態(tài)矩陣的維數(shù)往上加記憶效果卻并沒有像教科書說的那樣持續(xù)變好。兩個問題的名字相差很遠(yuǎn)——一邊是 QuIP 量化一邊是儲層計算——但它們最終都指向同一個點高維空間里體積、方向和距離的直覺和我們在三維世界里養(yǎng)成的習(xí)慣完全不一樣。這篇文章就把我整理的這套“統(tǒng)一視角”寫出來給同樣在跟高維特征、隨機矩陣、低比特部署打交道的朋友一個參考。你不會在這篇文章里看到某種能一步到位的調(diào)參咒語但你會看到為什么一類看起來完全不同的算法會在高維空間里共享同一套幾何邏輯。這套邏輯想通了很多實驗里的“意外”其實都不意外。1. 高維空間的基本幾何直覺先從三維習(xí)慣里跳出來1.1 體積集中在外殼而不是內(nèi)部三維世界的球體我們很自然地認(rèn)為內(nèi)部占了大頭。事實也確實如此半徑0.9的球體積占整個單位球的0.9^3 0.729接近四分之三。但到了高維情況急劇變化。在 d 維空間里半徑 r 的球占整個單位球體積的比例是 r^d。當(dāng) d 100 時半徑 0.9 的球占比只剩 0.9^100 ≈ 0.000026。也就是說100 維球體幾乎全部體積都集中在厚度極薄的表面殼層里。這個結(jié)論在機器學(xué)習(xí)里不是冷知識它直接解釋了為什么高維空間中隨機向量的行為那么“收斂”。一個從球心出發(fā)的隨機方向落在離球心較近位置的概率幾乎為零它必然出現(xiàn)在球殼附近。換句話說高維空間里的數(shù)據(jù)點不像是均勻填滿空間的“土豆”更像是一層吹起來的肥皂泡所有點都貼在表面附近。今天幾乎所有高維向量化表示本質(zhì)上都在這個殼層附近工作。1.2 隨機方向之間幾乎垂直第二個需要重新建立直覺的事實是隨機方向的內(nèi)積。在 d 維空間里均勻采樣兩個隨機單位向量它們內(nèi)積的期望是 0方差是 1/d。當(dāng) d 10000 的時候兩個隨機方向的內(nèi)積標(biāo)準(zhǔn)差只有 0.01。換句話說隨便拉兩個高維向量它們幾乎必然近似正交。這個現(xiàn)象在三維空間里完全不存在兩根棍子在空中隨便轉(zhuǎn)方向要么夾角很小要么接近 180 度總能有重合的感覺。可一旦維度上千方向之間就像擠滿了一屋子陌生人互相之間誰都跟誰不親近。這帶來一個重要推論高維空間提供的“方向分辨率”高得驚人。你不需要刻意構(gòu)造正交基只需要隨機采樣就能得到一組近似正交的向量。隨機投影、隨機特征、儲層計算這些方法能成立底層靠的全是這個性質(zhì)。很多人在儲層網(wǎng)絡(luò)里看到隨機矩陣狀態(tài)矩陣居然能“分開”不同的輸入類別覺得玄學(xué)其實就是這個道理——維度足夠高時隨機的方向也足夠獨立線性分類器能撿到很大的便宜。1.3 測度集中帶來的“平均行為”第三個關(guān)鍵性質(zhì)是測度集中measure concentration。簡單說高維空間里定義在球面或其他緊致集合上的平滑函數(shù)幾乎處處都趨近它的均值偏離均值的事件以指數(shù)速度衰減。普通一點的直觀表述是高維空間里的隨機向量任何一個分量都很難出現(xiàn)“離群”的大值整體上它們會往均值附近高度聚集。這項性質(zhì)是 QuIP 量化里隨機旋轉(zhuǎn)能起效的根本前提也是儲層計算里狀態(tài)矩陣不會因為隨機初始化就瞬間爆炸的原因之一。我們后面會反復(fù)用到這個概念高維幾何下“代表整個集合行為的點”極大概率不是極端點而是一個極其平凡的中間點。于是許多需要精心設(shè)計的系統(tǒng)在高維空間里只需要“隨機往球上一丟”就能表現(xiàn)出非常穩(wěn)定的平均行為。這點反過來也成立——一旦某個隨機系統(tǒng)出現(xiàn)了極端行為那往往說明它的維度不夠高或者譜結(jié)構(gòu)出了問題。2. QuIP 量化如何把壓縮問題翻譯成幾何問題2.1 量化誤差從來不是均勻分布的先說量化基礎(chǔ)。大模型推理時內(nèi)存帶寬是最大的瓶頸之一把 16 比特權(quán)重壓到 4 比特乃至 3 比特能顯著降低訪存開銷。但代價是引入量化誤差。直覺上人們會以為只要能控制住每個權(quán)重元素的絕對誤差整體誤差就控制住了。這個直覺在低維是成立的在高維權(quán)重空間里就會帶偏你。正確的分析框架要考慮參數(shù)重要性。設(shè)權(quán)重為 w量化后的擾動為 δ w? - w損失函數(shù)的變化可以近似寫成二次型δ L ≈ δ^T H δ這里的 H 是 Hessian 矩陣。不同方向上的擾動對損失的貢獻不是同權(quán)重的而是被 H 縮放過的。換句話說量化誤差是在一個“被 H 扭曲的高維空間”里定義的。方向如果落在 H 的大特征值對應(yīng)的方向上哪怕 δ 的絕對量級不大最終損失也一樣會爆炸。經(jīng)典的 round-to-nearestRTN方法的問題就在這里——它只努力控制每個元素的絕對誤差卻完全不管 H 的形狀。這就出現(xiàn)了幾何問題的雛形我們想選擇一種坐標(biāo)系統(tǒng)使得量化殘差在這個坐標(biāo)系統(tǒng)里均勻分布并且不會集中在 H 的大特征方向上。但是H 的特征方向是固定的量化殘差所在的坐標(biāo)系卻可以通過正交變換旋轉(zhuǎn)。于是問題轉(zhuǎn)為能不能在量化之前先把整個權(quán)重空間旋轉(zhuǎn)到一個“對 H 不敏感”的角度2.2 QuIP 的核心隨機正交旋轉(zhuǎn)與低相干性QuIP 的做法很直接先用隨機正交矩陣對權(quán)重做變化。給定權(quán)重矩陣 W生成正交矩陣 U、V計算 W_rot U W V^T然后對這個旋轉(zhuǎn)后的矩陣做低位量化最后反向旋轉(zhuǎn)回來。讀者可能會問正交變換不改變范數(shù)和特征結(jié)構(gòu)旋轉(zhuǎn)后量化按理說誤差不會變化關(guān)鍵在這里——量化是一個“逐元素”操作對旋轉(zhuǎn)前后完全不同的坐標(biāo)方向作用。旋轉(zhuǎn)把權(quán)重矩陣分布在各個方向上的“離群大值”打散了讓量化操作的坐標(biāo)系和 H 的特征坐標(biāo)系彼此盡量錯開降低二者之間的相干性incoherence。更精確地講對于一個 d 維權(quán)重矩陣如果它的每一行、每一列和 Hessian 特征向量方向的內(nèi)積都被控制在一定范圍內(nèi)就稱該矩陣具有低相干性。低相干性意味著無論量化殘差往哪個方向偏它都不會恰好落在 H 敏感的方向上誤差最大情況不會太糟。這是“最壞情況可控”的幾何表述。為什么用隨機旋轉(zhuǎn)而不是用像 PCA 那樣的自適應(yīng)變換這可能是 QuIP 最反直覺的設(shè)計。PCA 會讓權(quán)重在少數(shù)主方向上集中這恰恰強化了量化殘差與 Hessian 大特征方向的對齊隨機旋轉(zhuǎn)不會刻意保留某些方向反而會把各方向的信息攤勻把“離群大值”均勻分布到所有維度上讓量化誤差對方向的敏感度降到最低。高維空間的測度集中在這里又補了一刀旋轉(zhuǎn)后的矩陣每個元素的行為都會趨向完全相同的中等表現(xiàn)極端大值被稀釋量化因此變得非?!昂脤Ω丁?。2.3 實操復(fù)現(xiàn) QuIP 的主要環(huán)節(jié)與參數(shù)經(jīng)驗實際復(fù)現(xiàn) QuIP 并不需要引入復(fù)雜的神經(jīng)網(wǎng)絡(luò)訓(xùn)練。完整的流程我梳理成下面幾步這部分內(nèi)容基于公開方法的通用實現(xiàn)邏輯不同項目里調(diào)整空間也很大。準(zhǔn)備校準(zhǔn)數(shù)據(jù)。一般從訓(xùn)練集或驗證集拿幾百條樣本跑一次前向得到激活值用于估計 Hessian 的近似。這里有個容易偷懶但不可偷懶的地方充分校準(zhǔn)過的大模型和沒校準(zhǔn)過的相比量化結(jié)果差別很大。哪怕只是換輸入分布Hessian 估計也會漂移所以校準(zhǔn)數(shù)據(jù)的來源務(wù)必與真實部署場景一致。構(gòu)建低秩/對角 Hessian 近似。完整 Hessian 是無法計算的實踐中常用對角近似或 K-FAC 風(fēng)格的低秩近似。拿對角近似最簡單但會忽略方向間耦合低秩近似更穩(wěn)但實現(xiàn)成本更高。自己實驗時可以先從對角開始對齊流程后面再換低秩。生成隨機正交矩陣。最常用的方式是先生成高斯隨機矩陣再做 QR 分解取 Q。代碼相當(dāng)短import numpy as np def random_orthogonal(d): g np.random.randn(d, d) q, _ np.linalg.qr(g) return q def quip_rotate(w, u, vh): # 對權(quán)重做左右正交旋轉(zhuǎn)使坐標(biāo)系與Hessian“低相干” return u w vh實現(xiàn)時要注意U 和 V 的種子會影響最終效果不同隨機種子產(chǎn)生的旋轉(zhuǎn)矩陣并不等價。我自己的經(jīng)驗是一定要多試幾個隨機種子選驗證集上損失最低的那一組差的種子可以讓困惑度波動 0.1-0.3。 4. 對旋轉(zhuǎn)后的權(quán)重做低位量化?;A(chǔ)做法就是直接 round 到目標(biāo)位寬進一步可以用 E8 晶格碼這些結(jié)構(gòu)化碼本做更優(yōu)的低維量化。量化位寬越低晶格碼帶來的收益越明顯4 比特以下差距很容易超過 0.5 個困惑點。 5. 反旋轉(zhuǎn)得到量化后的原始坐標(biāo)權(quán)重。這個過程在推理時不需要額外開銷只需要把旋轉(zhuǎn)矩陣并進前后層的線性變換里或者預(yù)先融合進權(quán)重對部署完全透明。 6. 評估驗證。最好同時看兩個指標(biāo)一是語言建模困惑度二是下游任務(wù)的精度變化。只盯困惑度容易高估實際可用性因為某些應(yīng)用對局部輸出的敏感度和語言建模不完全一致。這里額外說一句不要以為旋轉(zhuǎn)只對低位量化有效。哪怕你用的是 8 比特 RTN先做隨機旋轉(zhuǎn)再量化也能降誤差。原因很簡單——RTN 的誤差主要集中在離群大值上旋轉(zhuǎn)把離群攤平后RTN 本身的誤差特性就被馴服了。在你自己的項目里如果不想動量化算法本身先給權(quán)重預(yù)處理一個隨機正交變換常常是幾十行代碼就能收到的回報。3. 儲層計算高維狀態(tài)表示如何變成“免費的核特征”3.1 回聲狀態(tài)性質(zhì)是“可控遺忘”的幾何條件儲層計算是另一塊我看著很眼熟的地盤。它的一般形式是一個隨機固定權(quán)重的循環(huán)網(wǎng)絡(luò)輸入信號經(jīng)過它之后輸出端只用訓(xùn)練一個線性層。最典型的代表是回聲狀態(tài)網(wǎng)絡(luò)ESN狀態(tài)更新為x(t1) tanh(W x(t) W_in u(t) b)其中 W 是隨機生成的連接矩陣只有 W_out 被訓(xùn)練。聽起來像偷懶但它能有效處理時間序列的關(guān)鍵在于儲層把輸入歷史展開成一個高維狀態(tài)軌跡讓歷史信息以一種線性可分離的形態(tài)被“暴露”出來。這里必須先聊 Echo State Property回聲狀態(tài)性質(zhì)。儲層網(wǎng)絡(luò)的權(quán)重是固定的但它作為一個動力系統(tǒng)必須有界。如果系統(tǒng)不收斂相同輸入在不同初始條件下會發(fā)展到完全不同的狀態(tài)那么輸出層根本學(xué)不到穩(wěn)定的映射?;芈暊顟B(tài)性質(zhì)要求系統(tǒng)對初始狀態(tài)“快速遺忘”對任意兩個不同的初始狀態(tài) x1(0)、x2(0)隨著 t 增大它們對應(yīng)狀態(tài)軌跡的差會指數(shù)衰減到零。從幾何角度理解這事特別直觀。儲層狀態(tài)空間是高維的如果系統(tǒng)有回聲狀態(tài)性質(zhì)那么所有從不同起點出發(fā)的軌跡都會在有限時間內(nèi)“聚攏”到同一個區(qū)域輸入歷史是唯一能區(qū)分軌跡的因素。這個區(qū)域在高維空間里通常是一個相對低維的流形或者至少是一個結(jié)構(gòu)穩(wěn)定的集合。遺忘得越快系統(tǒng)越穩(wěn)定但代表歷史信息的維度也越少遺忘得太慢系統(tǒng)開始在混沌邊緣試探雖然能記住更多輸入歷史但輸出映射也隨之不穩(wěn)定。3.2 隨機連接矩陣如何自然展開時間歷史儲層計算最讓人困惑的一點是為什么要用隨機矩陣 W而不是學(xué)一個經(jīng)過優(yōu)化的連接矩陣在高維幾何視角下答案很清晰。隨機矩陣在譜性質(zhì)上具有高度普適性。只要譜半徑控制在合適范圍隨機循環(huán)矩陣天然會把輸入序列“攪散”到各個狀態(tài)維度上。這里的“攪散”不是混亂而是一種高維展開一個時刻的輸入 u(t) 不僅影響當(dāng)前狀態(tài) x(t)還會通過 W 影響 x(t1)、x(t2)直到被指數(shù)稀釋。于是儲層狀態(tài)向量的各個維度實際上是輸入歷史在不同時間尺度上的非線性混合。由于高維空間的維度足夠多這種混合可以保留相當(dāng)豐富的時間結(jié)構(gòu)。這種展開和核方法里的隨機特征映射有明確的對應(yīng)關(guān)系。把輸入序列映射成儲層狀態(tài)本質(zhì)上就是構(gòu)造一個隨機的非線性特征映射輸出層在這個特征空間里做線性回歸。線性模型在高維空間里的威力被高維幾何重新激活了高維下隨機向量近似正交狀態(tài)向量各維度的獨立性足夠高線性分類器可以找到很好的分離超平面。這也是為什么儲層網(wǎng)絡(luò)經(jīng)常被戲稱為“窮人的貝葉斯核方法”——它用固定隨機矩陣替代了需要優(yōu)化的核函數(shù)但幾何機制是相通的。3.3 實操譜半徑、稀疏度與輸入縮放的黃金組合儲層計算的調(diào)參經(jīng)驗和量化有共通之處核心不是追求某個參數(shù)的極致而是讓狀態(tài)分布保持適度的各向同性。下面幾項是我反復(fù)確認(rèn)過有效的基礎(chǔ)配置。譜半徑一般從 0.9 附近開始試。譜半徑接近 1 時儲層保持“記憶”的能力變強但更接近非線性系統(tǒng)的混沌邊界泛化風(fēng)險隨之上升。小于 0.5 時狀態(tài)會快速塌縮到不動點歷史信息幾乎留不下來只適合非常短記憶的任務(wù)。W 的稀疏度通常 1% 到 5%。稀疏連接讓每個狀態(tài)神經(jīng)元只對少數(shù)其他神經(jīng)元敏感增加狀態(tài)分量的差異性。如果矩陣太密狀態(tài)分量之間容易高度耦合相當(dāng)于浪費了高維的名義自由度。輸入縮放輸入權(quán)重 W_in 的縮放系數(shù)控制非線性程度。系數(shù)太大tanh 飽和狀態(tài)被推到邊界系統(tǒng)容易變成“死板”的二值化系數(shù)太小tanh 近似線性儲層退化成線性回歸記憶再強也白搭。washout訓(xùn)練時不要一上來就用初始幾步的狀態(tài)做回歸需要丟棄前幾十到幾百步的“預(yù)熱”狀態(tài)讓系統(tǒng)把初始條件的影響完全遺忘干凈。用這套配置跑大多數(shù)時序任務(wù)都不會差。但要注意儲層的“記憶容量”不等于“所有容量都用得上”。如果你只是把維度加到幾千但譜半徑和稀疏度沒配合好狀態(tài)空間實際被利用的自由度并不高增加維度只會增加計算量精度提升非常有限。這也解釋了標(biāo)題里的另一層統(tǒng)一性高維空間不會自動給你帶來好處只有讓隨機結(jié)構(gòu)充分各向異性施展維度才能真正轉(zhuǎn)化為表達能力。4. 統(tǒng)一視角隨機性與各向同性在兩類系統(tǒng)中的同一種作用4.1 低相干、各向同性、測度集中同一組機制的兩個應(yīng)用QuIP 和儲層計算看起來差得很遠(yuǎn)一個是靜態(tài)權(quán)重的低比特壓縮一個是動態(tài)循環(huán)系統(tǒng)的時間序列建模但放到高維幾何統(tǒng)一視角下它們的核心機制是同一套我整理成一張表維度QuIP 量化儲層計算核心目標(biāo)在低比特條件下最小化量化誤差在高維狀態(tài)空間中展開時間歷史隨機性角色隨機正交旋轉(zhuǎn)引入低相干坐標(biāo)系隨機循環(huán)矩陣引入高維非線性特征關(guān)鍵幾何量Hessian 特征方向與量化殘差的相干性狀態(tài)矩陣譜半徑、狀態(tài)軌跡的展開度各向同性表現(xiàn)旋轉(zhuǎn)后權(quán)重分布均勻離群大值被攤平隨機狀態(tài)分量近似正交線性可分性強測度集中的作用量化誤差不會集中在少數(shù)敏感方向狀態(tài)分布天然在均值附近泛化誤差受控主要失效場景多個敏感方向高度對齊時譜半徑過大導(dǎo)致軌跡發(fā)散或落入混沌可以看出QuIP 通過隨機旋轉(zhuǎn)讓權(quán)重在 Hessian 坐標(biāo)系下做到“低相干”儲層網(wǎng)絡(luò)通過隨機連接矩陣讓輸入狀態(tài)在神經(jīng)元坐標(biāo)系下做到“近似各向同性”。兩者本質(zhì)上都在做同一件事用隨機結(jié)構(gòu)把一個并不理想的初始分布轉(zhuǎn)變?yōu)橐粋€幾何上更均勻、更不容易出現(xiàn)極端情況的分布。還有一個容易忽略的相似點這兩個系統(tǒng)都對“精確方向”不敏感。QuIP 不在乎旋轉(zhuǎn)矩陣具體是哪一組隨機矩陣只在乎是否足夠隨機儲層網(wǎng)絡(luò)不在乎儲層連接矩陣具體長什么樣只在乎譜半徑和稀疏度是否落在合適區(qū)間。這種“不敏感”本身就是高維空間的禮物——低維空間里幾乎所有結(jié)構(gòu)都需要精確設(shè)計高維空間里只要滿足幾個粗粒度條件剩下的隨機性都會被測度集中“熨平”。4.2 可以互相借鑒的設(shè)計經(jīng)驗把不變旋轉(zhuǎn)思想帶回表示學(xué)習(xí)這套統(tǒng)一視角不只停留在理解層面實際設(shè)計里有幾處可以直接遷移的經(jīng)驗。第一個可遷移的點在做嵌入層或特征層的低比特壓縮時不要只盯著每個特征維度的重要性先對特征空間做一次隨機正交旋轉(zhuǎn)。我們在某個項目里測試過對詞嵌入先應(yīng)用隨機旋轉(zhuǎn)再做均勻量化在 4 比特場景下最終任務(wù)精度比直接量化高出大概 1 到 2 個點。代價只是多了一次矩陣乘法推理時可以直接把旋轉(zhuǎn)矩陣融合進下一層權(quán)重里。第二個可遷移的點儲層計算里的“譜半徑 稀疏度”這套控制思想其實可以應(yīng)用于隨機投影層。很多人構(gòu)造隨機特征時只關(guān)注維度不看隨機矩陣本身的譜結(jié)構(gòu)。如果隨機矩陣的特征值太分散特征向量就會集中在少數(shù)方向上高維空間的各向同性優(yōu)勢就會被浪費。實際做法是對隨機投影矩陣做一次譜半徑歸一化輸出特征的穩(wěn)定性會明顯提升。第三個可遷移的點在量化儲層狀態(tài)的時候可以復(fù)用 QuIP 的低相干思路。儲層狀態(tài)向量本身有很強的時序相關(guān)結(jié)構(gòu)如果直接量化狀態(tài)誤差會沿著主方向累積。先把狀態(tài)向量乘一個隨機正交矩陣再量化保留效果更好。這個組合思路我實驗過不止一次效果和速度的平衡非常劃算。這些例子都呼應(yīng)同一句話在隨機矩陣參與的高維系統(tǒng)里“讓分布變得均勻”往往比“找到最優(yōu)方向”更重要、更廉價。5. 我在高維幾何問題上反復(fù)踩過的坑這一節(jié)想聊的不是什么理論推導(dǎo)而是實際實驗里最容易被高維幾何反直覺坑到的地方。第一個坑拿 2D / 3D 可視化來驗證高維結(jié)果。儲層狀態(tài)降到 2D 后看起來一團漿糊不代表線性可分性差反過來PCA 投影后看起來分得很開也不一定高維空間里真的很容易分。高維里的線性可分性是由各方向上的測度集中共同決定的2D 圖完全沒法反映內(nèi)積方差的真實量級。自從接受這一點我再也不靠可視化作高維系統(tǒng)的最終判斷。第二個坑隨機種子被嚴(yán)重低估。QuIP 這類方法里隨機旋轉(zhuǎn)矩陣看起來只是“隨便一個正交陣”但不同種子在低比特量化下能帶來明顯的精度差異。這不是 bug這是高維隨機矩陣之間的有限樣本變化。應(yīng)對方法是把隨機種子當(dāng)作超參數(shù)來搜而不是僥幸心理隨手設(shè)一個。儲層網(wǎng)絡(luò)也一樣不同隨機種子生成的連接矩陣性能可以差好幾個百分點固定種子做對比報告時必須寫清楚。第三個坑把譜半徑當(dāng)作越大越好。我早期做 ESN 的時候總以為更接近 1 的譜半徑能帶來更強的記憶結(jié)果輸出層瘋狂過擬合。問題在于譜半徑?jīng)Q定的是系統(tǒng)在無輸入時的自激振幅度而實際非線性系統(tǒng)里輸入信號本身的幅度也會影響有效譜半徑。更穩(wěn)妥的做法是用有效譜半徑考慮輸入縮放后的復(fù)合譜半徑來調(diào)節(jié)而不是只看理論譜半徑。第四個坑Hessian 近似的維度失配。量化里如果只做對角 Hessian 近似方向間的耦合會被完全忽略。高維下即使每個元素的 Hessian 對角值都不大兩個強相關(guān)方向疊加起來也可能產(chǎn)生很大的整體誤差。反過來只做大特征方向的低秩近似又會忽視大量“小但多”的方向貢獻。實踐中更合理的是在對角近似基礎(chǔ)上再做幾次低秩校正或者用校準(zhǔn)數(shù)據(jù)去觀測實際損失變化。第五個坑把“維度高”等同于“樣本多樣性”。高維空間確實提供更多的分離自由度但如果沒有足夠的數(shù)據(jù)或約束這個自由度會全部用于記憶噪聲。高維幾何里的普遍結(jié)論是維度越高隨機系統(tǒng)泛化誤差的上界越緊但前提是輸出函數(shù)足夠平滑。你可以在儲層里把狀態(tài)維度堆到五位數(shù)線性回歸參數(shù)卻只有幾百個樣本結(jié)果必然過擬合。維度是一個放大器不是替代品。最后說一個小經(jīng)驗。越來越多的實驗讓我發(fā)現(xiàn)遇到一個摸不著頭腦的概率、性能異常時先別急著調(diào)參而是先坐下來算三件事當(dāng)前體系的維度 d 是多少隨機向量之間的典型內(nèi)積方差 1/d 有多大數(shù)據(jù)在狀態(tài)空間中離殼層有多近。這三個數(shù)一出來很多現(xiàn)象會自己解釋自己。高維空間的幾何直覺說到底就是三個詞集中、正交、攤勻。參數(shù)多個幾千幾萬時不妨先把這三個詞在腦子里過一遍。