在哪AI到底聰明識別說機人臉起從手
從邊緣到形狀:AI 卡了幾十年
找到邊緣之後呢?到底
1968 年的 Sobel 算子能找到邊緣,
有的聪明从手變成了紋理檢測器 。神經網絡研究的机人先驅 Geoffrey Hinton 的學生 Alex Krizhevsky 用這種"多層疊加"的方法做了一個圖像識別程序,歡迎分享+關注。脸识經過層層計算,别说你很快就會明白。到底中間一列全是聪明从手 0 。一種讓深層網絡更容易訓練的机人數學技巧(叫 ReLU)
,而發型屬於臉的脸识外圍 ,測量臉的别说立體形狀
,把那個數字調大一點
那些檢測器裏的聪明从手數字,把部件變成一組代表你這張臉的机人數字,就是脸识一組數字組成的小模板——把它疊到圖片上 ,表情——這些讓一張臉變得獨特的别说要素 。用普通電腦的 CPU(中央處理器,當時售價 499 美元),其中前 5 層做的就是我們前麵演示的操作——用檢測器在圖片上滑動、什麽是"眼睛",
Alex Krizhevsky 正是用兩塊遊戲顯卡(NVIDIA GTX 580 ,
一個邊緣檢測器隻能告訴你"這裏有一條線",200 是亮色(接近白色) 。
這個困境持續了幾十年,就能找到圖片裏顏色變化的地方。現在你隻需要知道:電腦有辦法算出調整的方向和幅度。但換發型還能認出來?
因為口罩遮住了臉的下半部分——嘴巴、和正確答案對比:
- 如果猜對了——不錯,而顏色在電腦裏是用數字表示的。
整個網絡包含 6000 萬個可調整的數字 。結果是正數(有一條從暗到亮的邊緣)
- 如果左邊比右邊亮——負數那邊貢獻更大,AI 為什麽能通過律師考試卻會一本正經地撒謊。
3. 算法
AlexNet 還用了幾個關鍵的技術改進 。接近黑色),然後比較兩組數字有多接近 。保持
- 如果猜錯了——調整那 9 個數字,
有的變成了邊緣檢測器(類似 Sobel 算子——電腦自己"發明"了類似的東西) 。我一直很好奇 AI 到底是怎麽工作的,檢測器提取出來的數字指紋和你錄入時的差太遠了 。
- 如果上下顏色一樣——結果是 0(沒有水平邊緣)
- 如果下麵比上麵亮——結果是正數(有一條水平邊緣)
兩個檢測器配合使用——一個管左右 ,中間有一條從左上到右下的分界線——這就是一條邊緣 。但眼睛、鼻子(一個三角形輪廓)、
疊加:從線條到人臉
但一層檢測器還不夠。所以選擇了這樣的數字組合 。後續文章也會持續更新。貓臉、中間的灰色就是 1 到 254。用它來學習的方法,AlexNet 將錯誤率從同年第二名的 26.2% 直接降到了 15.3%(這裏的"錯誤率"叫 top-5 錯誤率——給電腦 5 次機會猜圖片內容,
但如果我們告訴電腦"正確答案"呢?
就像老師批改作業一樣。人類知道"要檢測垂直邊緣 ,
那為什麽到 2012 年才突然成功 ?
因為三個條件終於同時湊齊了 :
1. 數據
2009 年 ,原理完全一樣,叫做反向傳播——1986 年由 Rumelhart 、
但你可能已經發現了一個問題:這個檢測器隻能找到垂直方向的邊緣(左右亮度差) 。而是它從大量的對錯反饋中 ,但邊緣隻是一堆線條 。實際上在做這件事:
- 右邊像素的亮度 × 正數(加分)
- 左邊像素的亮度 × 負數(減分)
- 中間像素 × 0(不影響結果)
所以最終的結果 ,比如 :
0.1 -0.3 0.50.2 0.1 -0.40.3 0.2 0.1用這個隨機檢測器去掃描圖片,花了大約 5-6 天,旗艦模型超過 1 億個參數,
那次突破有多震撼?在 ImageNet 圖像識別比賽中 ,LFW 準確率 99.63%
- Labeled Faces in the Wild — LFW 人臉識別測試集官方頁麵
- Learning representations by back-propagating errors - Rumelhart, Hinton, Williams (1986) — 反向傳播算法的奠基論文,電腦怎麽知道該把那些數字往大了調還是往小了調
?
這是整個係統最精巧的部分,就能看到"臉"了 。沒有人花這麽大力氣去收集和標注這麽多圖片。我們得先搞清楚一個更基本的問題:手機到底是怎麽"人臉識別"的 ?
答案要從一個讓人意外的事實說起——
你的手機看到的不是一張臉,數字越小越暗,都是黑色線框" loading="lazy">
比如你的臉和背景之間——皮膚是淺色的 ,
這個數字的意思是 :這裏有一條明顯的邊緣,說明邊緣越明顯 。
科學家們嚐試了很多方法:
- 有人試著寫規則:"如果有兩個圓形在上麵,所以還能匹配上。檢測的東西連人類都說不清楚——但它們確實對區分貓和狗有用。瞳孔是深色的,這也是邊緣。右邊一列全是正數,但永遠覆蓋不了真實世界的複雜性。它專門用來檢測垂直方向的邊緣。
這需要大量的計算。是電腦自己從數據裏學出來的。得先回答一個基本問題 :電腦看到的"照片"長什麽樣 ?
一張照片是由很多個小點組成的,現在一些新手機即使戴口罩也能解鎖——那是因為廠商後來專門用大量戴口罩的照片重新訓練了模型,數字越大,覺得不錯的話,眼睛也是:眼白是淺色的,把形狀變成部件,
但如果讓電腦自己來選呢?
假設我們不再指定這 9 個數字,這些"正確答案"是電腦學習的前提——沒有答案,沒有邊緣的區域呢 ?
圖片: 檢測器: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 。它"看到"的是什麽?不是一個水果的畫麵,那可能是一張臉"
- 有人試著提取更複雜的特征
:"檢測眼睛的形狀"、於是花了很長時間去拆這個東西——手機為什麽換了發型還能認出你,判斷"這是不是主人的臉" 。看一眼屏幕
,
這就是"訓練"。
讓我一步一步算給你看:
圖片: 檢測器:10 10 10 -1 0 110 10 200 -2 0 210 200 200 -1 0 1對應位置相乘,所以這幾層叫"卷積層") 。不能告訴你"這是一隻眼睛"。就叫"深度神經網絡" ,發現了很多有意思的東西,歡迎關注我 ,五官、沒有邊緣 。2. 算力
訓練一個模型,一個很大的正數。

GPU 原本是用來生成(渲染)遊戲畫麵的。上百層,需要對幾百萬張圖片、能識別的東西就越複雜 。以及一種防止網絡"死記硬背"訓練數據的方法(叫 Dropout——隨機"關掉"一部分檢測器,是因為它的工作方式有點像人腦中的神經元——每個神經元接收信號、是從幾百萬張人臉照片中"學"出來的。就 9 個像素,
不過你可能發現了,要理解這件事,
一堆數字,不是圖像 ,第三層找五官部件,綠色 、但疊加四五層之後,在人臉識別領域常用的測試集 LFW(Labeled Faces in the Wild,而是有一套精巧的方法能算出每個數字該往大了調還是往小了調。然後全部加起來 。這個係列就是我的探索筆記,包含 5749 個人的 13000 多張照片)上達到了 99.63% 的準確率。逼網絡學到更通用的規律,結果的數字越大(不管是正還是負) ,

每天早上,動用了來自 167 個國家的近 5 萬名標注工人,層層加工"的計算結構。
電腦沒有被告知"要檢測邊緣"。
邊緣勾勒出了圖片裏"有東西"的地方。對應位置相乘再相加(這個操作的專業名稱叫"卷積",層層疊加
- 提取特征
- 有人試著寫規則:"如果有兩個圓形在上麵,所以還能匹配上。檢測的東西連人類都說不清楚——但它們確實對區分貓和狗有用。瞳孔是深色的,這也是邊緣。右邊一列全是正數,但永遠覆蓋不了真實世界的複雜性。它專門用來檢測垂直方向的邊緣。
匹夫無罪網