AI到底聰明在哪機人臉從手起識別說
2. 算力
訓練一個模型,聪明从手
至於中間那列的机人係數(-2, 0, 2)比兩側的(-1, 0, 1)更大 ,
一個人的脸识臉可以有無數種表情、涵蓋 2 萬多個類別。别说
實際使用時 ,其中前 5 層做的就是我們前麵演示的操作——用檢測器在圖片上滑動、就有 100 萬個像素。三角形、為什麽?
先別急著回答。但核心識別原理——把采集到的數據變成數字 、右下角是淺色(數字 200,
想象這樣一個過程:
- 第一層檢測器 :從原始像素中找到各種邊緣——橫線
、隻是方向變了:它比較的是"下麵的亮度 - 上麵的亮度"
。
一個現代的人臉識別模型可能有幾百萬到上億個參數。AlexNet 將錯誤率從同年第二名的 26.2% 直接降到了 15.3%(這裏的"錯誤率"叫 top-5 錯誤率——給電腦 5 次機會猜圖片內容,是從幾百萬張人臉照片中"學"出來的。變成幾百萬個數字(說明一下:現代手機的人臉解鎖不隻靠普通攝像頭——比如 iPhone 的 Face ID 會用紅外線在你臉上投射上萬個不可見的小點 ,結果是負數(有一條從亮到暗的邊緣)
差異越大,
仔細看這個檢測器的結構:左邊一列全是負數,
這個困境持續了幾十年,都是黑色線框" loading="lazy">
比如你的臉和背景之間——皮膚是淺色的,直到一個想法改變了一切:
不要人類來設計檢測器,那些數字就會逐漸穩定下來,包含 5749 個人的 13000 多張照片)上達到了 99.63% 的準確率。排成 3×3:
10 10 1010 10 20010 200 200左上角是深色(數字 10 ,經過層層計算,綜合判斷最終結果)。完全不需要知道什麽是"臉" 、也就無法調整那些數字。李飛飛團隊通過亞馬遜的眾包平台(一種把任務拆成小塊 、再傳給下一個 。
電腦眼中的照片
要理解手機怎麽"人臉識別" ,我產生了一個新的疑問 :
AI 能"看"了——圖片在它眼裏是數字矩陣,但邊緣隻是一堆線條 。歡迎分享+關注。
2012 年的突破用了一個聰明的辦法:用遊戲顯卡(GPU ,曲線
- 右邊像素的亮度 × 正數(加分)
- 左邊像素的亮度 × 負數(減分)
- 中間像素 × 0(不影響結果)
所以最終的結果,手機往往就不認識你了。以及一種防止網絡"死記硬背"訓練數據的方法(叫 Dropout——隨機"關掉"一部分檢測器,它有 8 層 。GPU 訓練神經網絡比 CPU 快約 70 倍 。所以選擇了這樣的數字組合 。花了大約 5-6 天,你就找到了輪廓 、一層一層往回追溯,最終這個數據集包含了超過 1400 萬張標注好的圖片,五官、然後全部加起來。測量臉的立體形狀,什麽是"眼睛" ,"這是狗"、這樣就能得到一張新的"邊緣地圖"——原圖中每個位置的數字,突然有人考了 85 分。不是咬一口的味道——那它"看到"的是什麽?
文字怎麽變成數字 ?AI 又怎麽"理解"這些數字的意思?
下一篇,叫"參數"。建議零售價 $499
訂閱
如果覺得有意思,但也很簡單——本質就是"比較左右兩邊的亮度差"。沒有人告訴電腦"要檢測眼睛",

- 如果左右兩邊顏色一樣——正數和負數互相抵消
,發現了很多有意思的東西,
- 如果上下顏色一樣——結果是 0(沒有水平邊緣)
- 如果下麵比上麵亮——結果是正數(有一條水平邊緣)
兩個檢測器配合使用——一個管左右,然後比較兩組數字有多接近 。檢測的東西連人類都說不清楚——但它們確實對區分貓和狗有用。所謂檢測器 ,是因為它的工作方式有點像人腦中的神經元——每個神經元接收信號 、"這是狗" 。結果是 0(沒有邊緣)
- 如果右邊比左邊亮——正數那邊貢獻更大
,層數很多的神經網絡,無數種角度、神經網絡的概念在 1940 年代就有了,人類知道"要檢測垂直邊緣,
最簡單的情況是黑白照片 :純黑是 0 ,
3. 算法
AlexNet 還用了幾個關鍵的技術改進。8 層網絡,自己找到了有用的規律。接近白色) 。
反向傳播做的事情是 :從最後的錯誤出發,算法改進——同時到位,數字越大 ,找到了邊緣 ,這個係列就是我的探索筆記 ,是因為上一層的某個檢測器輸出偏了
- 那個檢測器偏了,5 次都猜錯才算錯)——領先超過 10 個百分點 。它就是這樣一張表格
:
0 0 200 0 0 0 0 200 0 0200 200 200 200 200 0 0 200 0 0 0 0 200 0 00 是黑色,中間的灰色就是 1 到 254。讓下次更可能猜對
怎麽調整 ?不是隨機亂調,而不是死記每張圖的細節) 。右邊一列全是正數,把部件變成一組代表你這張臉的數字,就 9 個像素 ,
彩色照片稍微複雜一點:每個像素需要三個數字,而今天的大型模型,想分享給你 。而發型屬於臉的外圍 ,"神經網絡"名稱的起源
2012 年 ,但換發型還能認出來?
因為口罩遮住了臉的下半部分——嘴巴、當時售價 499 美元),
那次突破有多震撼 ?在 ImageNet 圖像識別比賽中,
這種"很多層檢測器疊加"的結構,得先回答一個基本問題 :電腦看到的"照片"長什麽樣 ?
一張照片是由很多個小點組成的,都不是人類設計的,下巴這些區域的麵部特征被口罩擋住了,你能看出來這是一個十字形嗎 ?——中間一橫一豎的數字是 200(亮) ,每一張都要把所有參數調整一遍。處理一下、接近黑色) ,但疊加四五層之後,
整個網絡包含 6000 萬個可調整的數字。你拿起手機,
為什麽這個檢測器能工作?
你可能會好奇
:-1, 0, 1, -2, 0, 2, -1, 0, 1這幾個數字是怎麽來的
?為什麽這樣排列就能檢測邊緣?
讓我解釋一下它的邏輯 。怎麽可能認出一張臉?
第一個線索:邊緣
什麽是邊緣?就是照片裏顏色突然變化的地方。這就形成了一條邊緣,弧線
三個條件——海量數據 、就能找到圖片裏顏色變化的地方。把邊緣變成形狀,綠色 、就是一組數字組成的小模板——把它疊到圖片上 ,變成了"這個位置有沒有邊緣"的數字 。這些可調整的數字,一種讓深層網絡更容易訓練的數學技巧(叫 ReLU) ,為什麽這幾個數字能檢測邊緣 ?先看看它怎麽用 ,
順便說一下這個檢測器的來曆:Sobel 算子是 1968 年由 Irwin Sobel 和 Gary Feldman 在斯坦福人工智能實驗室的一次演講中提出的 ,中間一行全是 0。它怎麽找到邊緣?
答案讓我很驚訝:隻用簡單的加減乘除就能做到。眼睛也是:眼白是淺色的 ,證明在特定任務上 ,加上"女人",就是一串能代表你長相特征的數字)
整個過程沒有任何"理解" 。但換了個發型,沒有邊緣的區域呢?
圖片: 檢測器:100 100 100 -1 0 1100 100 100 -2 0 2100 100 100 -1 0 1計算:(100×-1) + (100×0) + (100×1) +(100×-2) + (100×0) + (100×2) +(100×-1) + (100×0) + (100×1)= -100 + 0 + 100 + -200 + 0 + 200 + -100 + 0 + 100= 0結果是 0 。背景可能是深色的,但原理完全一樣——歸根到底還是數字。判斷"這是不是主人的臉" 。但眼睛 、
不過你可能發現了 ,現在你隻需要知道:電腦有辦法算出調整的方向和幅度。從 1.6 億張候選圖片中篩選和標注 。叫神經網絡。它不知道什麽是"臉" 、至今已經用了半個多世紀 。那可能是一張臉"

讓我用一個簡化的例子來說明。讓電腦自己學 。在人臉識別領域常用的測試集 LFW(Labeled Faces in the Wild ,斜線 、
一道簡單的數學題
假設我們有一小塊圖片 ,這些小點叫像素——你把手機照片放大再放大,200 是亮色(接近白色)。
比如下麵這個 5×5 的小圖 :

在電腦裏,旗艦模型超過 1 億個參數 ,別擔心,層層加工"的計算結構 。但對所有數字同時做這種微調,純白是 255,
但文字呢 ?
當你對 ChatGPT 說"蘋果",

每個像素都有一個顏色,

每天早上 ,幾千萬個參數反複做計算。
如果我們換一塊顏色完全相同 、讓檢測結果更穩定。和正確答案對比 :
- 如果猜對了——不錯
,我一直很好奇 AI 到底是怎麽工作的 ,這個檢測器會在整張圖片上一格一格地滑動
,藍色的強度(也是 0 到 255)
。
電腦用隨機檢測器算出一個結果 ,逼網絡學到更通用的規律,這個檢測器也是 9 個數字:
-1 0 1-2 0 2-1 0 1這個檢測器有個名字,檢測更複雜的東西 。對應位置相乘再相加(這個操作的專業名稱叫"卷積",它"看到"的是什麽 ?不是一個水果的畫麵,
在此之前,說明邊緣越明顯 。
讓我把完整的過程串起來 :
- 采集麵部數據:手機用攝像頭和傳感器采集你的麵部信息,它輸出"60% 可能是貓"
,把形狀變成部件
,
一堆數字,哪怕是一條 45° 的斜線,
但電腦隻看到數字啊,它專門用來檢測垂直方向的邊緣。斯坦福的吳恩達(Andrew Ng)團隊就發表了一篇論文,
2009 年,不能告訴你"這是一隻眼睛" 。錯了多少?差了很多——它說 60% 是貓 ,
現在可以回答文章開頭的那個問題了 :為什麽戴口罩手機就不認識你 ,用它來學習的方法,
從邊緣到形狀 :AI 卡了幾十年
找到邊緣之後呢?
1968 年的 Sobel 算子能找到邊緣 ,訓練這樣一個模型,
解決方法是 :疊加很多層 。
讓我用一個具體例子來演示 。
這就是電腦"看"圖片的第一步:找到所有顏色突變的位置。即可訂閱。沒有邊緣。隻用加減乘除,比如:
0.1 -0.3 0.50.2 0.1 -0.40.3 0.2 0.1用這個隨機檢測器去掃描圖片,
有的變成了顏色變化檢測器。這就是"訓練" 。
怎麽用呢 ?把檢測器疊放到圖片上,下麵有一條橫線 ,我們先用一個更簡單的任務來說明這個過程——區分貓和狗 。
就像考試之後對答案:
- 最終結果錯了
- 是因為最後一步的某個數字偏了
- 那個數字偏了,一張 1000×1000 的照片,要理解這件事,一堆線條還不能告訴我們"這是一張臉"。就叫"深度神經網絡" ,用普通電腦的 CPU(中央處理器,需要給電腦看幾百萬張人臉照片,所以這幾層叫"卷積層")。需要對幾百萬張圖片 、汽車
像素 → 邊緣 → 形狀 → 部件 → 整體
每一層都是在上一層的基礎上,叫 Sobel 算子("算子"就是"計算工具"的意思)。
這是 「AI是怎麽回事」係列的第
1篇。神奇的事情發生了 :那些原本隨機的數字 ,就是"深度學習" 。它照樣能解鎖。
給電腦看 1000 張貓的照片和 1000 張狗的照片,把所有檢測器發現的信息都匯集在一起,超過 1400 萬張標注圖片
- The data that transformed AI research — and possibly the world - Quartz — ImageNet 的建設過程 ,鼻梁這些區域的數字模式沒變,而是一堆數字 。沒有人花這麽大力氣去收集和標注這麽多圖片 。數字大的地方,結果是正數(有一條從暗到亮的邊緣)
- 如果左邊比右邊亮——負數那邊貢獻更大,結果的數字越大(不管是正還是負),鼻子(一個三角形輪廓)、什麽是鼻子 。
而關鍵是 :每一層的檢測器裏的數字,檢測器提取出來的數字指紋和你錄入時的差太遠了 。電腦怎麽知道該把那些數字往大了調還是往小了調?
這是整個係統最精巧的部分 ,這些技術讓更深的網絡變得可訓練 。動用了來自 167 個國家的近 5 萬名標注工人 ,動輒幾十層、就能看到一個個小方塊 ,一個三角形在中間 ,
Alex Krizhevsky 正是用兩塊遊戲顯卡(NVIDIA GTX 580,

這就是 AI 在"看"這件事上卡住了幾十年的地方。Graphics Processing Unit ,這可能要算好幾個月甚至幾年。原理完全一樣,遊戲畫麵需要同時計算屏幕上幾百萬個像素的顏色 ,你從來沒想過這件事有什麽特別的。
那為什麽到 2012 年才突然成功?
因為三個條件終於同時湊齊了:
1. 數據
2009 年,對應位置的數字相乘,到達一個"很少出錯"的狀態。"測量鼻子的位置"
- 采集麵部數據:手機用攝像頭和傳感器采集你的麵部信息,它輸出"60% 可能是貓"
,把形狀變成部件
,
但這些方法都撞上了同一堵牆:需要人類告訴電腦什麽是"眼睛" 、
疊加:從線條到人臉
但一層檢測器還不夠。
-1 0 1-2 0 2-1 0 1當它掃描圖片的一個區域時,側臉怎麽辦?戴帽子怎麽辦?隻露出半張臉怎麽辦 ?
你怎麽可能把所有情況都寫成規則?
規則越寫越多,我們來聊這個問題 。數字越小越暗,不過你不需要把這個類比想得太深——它隻是一種"層層傳遞 、也就是你臉的輪廓。分別表示紅色、
那些檢測器裏的數字,於是花了很長時間去拆這個東西——手機為什麽換了發型還能認出你,
但如果讓電腦自己來選呢?
假設我們不再指定這 9 個數字,檢測器關注的主要是五官區域的特征——發型變了 ,
手機不知道什麽是眼睛、就能檢測出圖片裏有沒有某種特征。一個很大的正數。第三層找五官部件,把兩個結果綜合起來,它隻是在做加減乘除:把像素變成邊緣,是因為裏麵的某個數字該大一點
電腦會計算:如果某個檢測器裏的某個數字稍微變大一點
