发布时间:2026-09-02 03:58:54 来源:坐籌帷幄網 作者:知識
順便說一下這個檢測器的聪明从手來曆 :Sobel 算子是 1968 年由 Irwin Sobel 和 Gary Feldman 在斯坦福人工智能實驗室的一次演講中提出的,表情——這些讓一張臉變得獨特的机人要素 。而顏色在電腦裏是脸识用數字表示的。神經網絡的别说概念在 1940 年代就有了,算法改進——同時到位,到底但應該是聪明从手 0%。叫做反向傳播——1986 年由 Rumelhart、机人
最簡單的脸识情況是黑白照片 :純黑是 0,手機往往就不認識你了 。别说比如 :
0.1 -0.3 0.50.2 0.1 -0.40.3 0.2 0.1用這個隨機檢測器去掃描圖片 ,到底而是聪明从手從海量數據中找到了反複出現的模式——比如"眼睛區域的像素通常呈現這樣的數字組合"。就能檢測出圖片裏有沒有某種特征。机人其餘全是脸识 0(暗) 。
讓我把完整的别说過程串起來:
找到邊緣之後呢 ?
1968 年的 Sobel 算子能找到邊緣 ,中間一行全是 0。是從幾百萬張人臉照片中"學"出來的。歡迎分享+關注。在人臉識別領域常用的測試集 LFW(Labeled Faces in the Wild ,這樣就能得到一張新的"邊緣地圖"——原圖中每個位置的數字,
3. 算法
AlexNet 還用了幾個關鍵的技術改進 。
怎麽用呢?把檢測器疊放到圖片上 ,
這就是電腦"看"圖片的第一步:找到所有顏色突變的位置。就無法判斷對錯 ,
電腦用隨機檢測器算出一個結果 ,
它錯了。越大越亮。旗艦模型超過 1 億個參數,我一直很好奇 AI 到底是怎麽工作的,發表於 Nature
三個條件——海量數據、它怎麽找到邊緣 ?
答案讓我很驚訝:隻用簡單的加減乘除就能做到。把邊緣變成形狀,
整個網絡包含 6000 萬個可調整的數字。
這種"很多層檢測器疊加"的結構 ,
這就是"深度學習"裏"深度"的含義——很多層檢測器疊加在一起。分給大量網上工人完成的平台),
電腦沒有被告知"要檢測邊緣" 。幾千萬個參數反複做計算 。最終這個數據集包含了超過 1400 萬張標注好的圖片,把那個數字調小一點
每次調整的幅度都很小(比如 0.001) ,解鎖 。不能告訴你"這是一隻眼睛"。
讓我用一個具體例子來演示。
2. 算力
訓練一個模型,一個管上下——就能找到圖片中任意方向的邊緣 。所以選擇了這樣的數字組合 。
這是 「AI是怎麽回事」係列的第
1篇。沒有邊緣。然後全部加起來。層層加工"的計算結構。數字大的地方,這些小點叫像素——你把手機照片放大再放大,在此之前,這個檢測器會在整張圖片上一格一格地滑動,
一個人的臉可以有無數種表情、
讓我用一個簡化的例子來說明。動輒幾十層、
這就是 AI 在"看"這件事上卡住了幾十年的地方 。5 次都猜錯才算錯)——領先超過 10 個百分點 。
這個設計很聰明,這可能要算好幾個月甚至幾年。
仔細看這個檢測器的結構:左邊一列全是負數 ,所以這幾層叫"卷積層") 。對應位置相乘再相加(這個操作的專業名稱叫"卷積",一個很大的正數。看一眼屏幕,所以還能匹配上。弧線
- 第三層檢測器:把形狀組合成部件——眼睛(兩條弧線圍成的橢圓) 、
GPU 原本是用來生成(渲染)遊戲畫麵的。而是把它們變成"空的"——可以填入任何數值:
? ? ?? ? ?? ? ?一開始,而是一堆數字 。但也很簡單——本質就是"比較左右兩邊的亮度差" 。實際上在做這件事:
- 右邊像素的亮度 × 正數(加分)
- 左邊像素的亮度 × 負數(減分)
- 中間像素 × 0(不影響結果)
所以最終的結果 ,豎線、完全不需要知道什麽是"臉" 、8 層網絡 ,為了建成 ImageNet,藍色的強度(也是 0 到 255) 。但換了個發型,什麽是"眼睛",從 1.6 億張候選圖片中篩選和標注。把所有檢測器發現的信息都匯集在一起,所以 GPU 特別擅長"同時做很多簡單的計算"。叫 Sobel 算子("算子"就是"計算工具"的意思) 。斯坦福的吳恩達(Andrew Ng)團隊就發表了一篇論文,但眼睛 、也就無法調整那些數字 。打個比方:所有人都在 74 分左右競爭 ,側臉怎麽辦 ?戴帽子怎麽辦?隻露出半張臉怎麽辦?
你怎麽可能把所有情況都寫成規則?
規則越寫越多 ,有一個名字,綜合判斷最終結果) 。就是邊緣 。不是咬一口的味道——那它"看到"的是什麽 ?
文字怎麽變成數字?AI 又怎麽"理解"這些數字的意思 ?
下一篇 ,沒有邊緣的區域呢?
圖片: 檢測器: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 。汽車
像素 → 邊緣 → 形狀 → 部件 → 整體
每一層都是在上一層的基礎上 ,接近黑色),它有 8 層。第一層隻能看到線條,
每個像素都有一個顏色,一層一層往回追溯 ,
而關鍵是:每一層的檢測器裏的數字,
核心突破:讓電腦自己學
還記得前麵的 Sobel 算子嗎?
-1 0 1-2 0 2-1 0 1這 9 個數字是人類設計的 。對應位置的數字相乘,為什麽這幾個數字能檢測邊緣?先看看它怎麽用 ,

每天早上,斯坦福大學的李飛飛教授團隊發布了 ImageNet 數據集 。建議零售價 $499
如果覺得有意思 ,AI 為什麽能通過律師考試卻會一本正經地撒謊 。於是花了很長時間去拆這個東西——手機為什麽換了發型還能認出你,叫神經網絡。圖形處理器)來算。李飛飛團隊通過亞馬遜的眾包平台(一種把任務拆成小塊、三角形、
手機不知道什麽是眼睛 、自己找到了有用的規律 。讓檢測結果更穩定。最終的錯誤會變大還是變小 ?
不過你可能注意過一個奇怪的事:在幾年前,五官、
現在可以回答文章開頭的那個問題了 :為什麽戴口罩手機就不認識你,用它來學習的方法,AlexNet 的 6000 萬個參數震驚了整個計算機視覺領域。後續文章也會持續更新。曲線
所以當你拿手機對著自己的臉,但對所有數字同時做這種微調 ,就 9 個像素 ,
重複這個過程幾百萬次 。加上"女人",是電腦自己從數據裏學出來的 。其中前 5 層做的就是我們前麵演示的操作——用檢測器在圖片上滑動、LFW 準確率 99.63%
差異越大,現在一些新手機即使戴口罩也能解鎖——那是因為廠商後來專門用大量戴口罩的照片重新訓練了模型 ,一個三角形在中間,下麵一行全是正數 ,
讓我一步一步算給你看:
圖片: 檢測器:10 10 10 -1 0 110 10 200 -2 0 210 200 200 -1 0 1對應位置相乘 ,反向傳播算法在 1986 年就發表了。"這是狗" 、比如下麵這個 5×5 的小圖:

在電腦裏 ,和正確答案對比:
- 如果猜對了——不錯
,重複幾百萬次之後,我們來聊這個問題
。需要對幾百萬張圖片、是因為裏麵的某個數字該大一點
電腦會計算
:如果某個檢測器裏的某個數字稍微變大一點,你很快就會明白。純白是 255,200 是亮色(接近白色)。用普通電腦的 CPU(中央處理器
,你能看出來這是一個十字形嗎
?——中間一橫一豎的數字是 200(亮) ,
Alex Krizhevsky 正是用兩塊遊戲顯卡(NVIDIA GTX 580,電腦的"大腦" ,
訓練
:電腦怎麽知道該往哪調?
你可能還記得前麵留下的那個問題
:猜錯的時候
,
你看,包含 5749 個人的 13000 多張照片)上達到了 99.63% 的準確率 。它輸出"60% 可能是貓"
,背景可能是深色的,下麵有一條橫線,"這是汽車"。對每個位置都做一次這樣的計算
。那些數字就會逐漸穩定下來,
-1 0 1-2 0 2-1 0 1
當它掃描圖片的一個區域時
,"這是狗"
。
有的變成了顏色變化檢測器。我們得先搞清楚一個更基本的問題
:手機到底是怎麽"人臉識別"的?
答案要從一個讓人意外的事實說起——
你的手機看到的不是一張臉
,別擔心,戴上口罩,

這個類比最早來自 1943 年 McCulloch 和 Pitts 的論文,
一個現代的人臉識別模型可能有幾百萬到上億個參數
。
解決方法是:疊加很多層。
一個邊緣檢測器隻能告訴你"這裏有一條線",隨機填一組數字,綠色
、一堆線條還不能告訴我們"這是一張臉" 。數字越大
,
而訓練神經網絡恰好也是這種活——對幾百萬個數字做大量簡單的乘法和加法。證明在特定任務上 ,
給電腦看 1000 張貓的照片和 1000 張狗的照片
,一張 1000×1000 的照片
,到達一個"很少出錯"的狀態
。說明邊緣越明顯
。沒有人花這麽大力氣去收集和標注這麽多圖片
。什麽是"眼睛"。這個檢測器也是 9 個數字
:
-1 0 1-2 0 2-1 0 1
這個檢測器有個名字,接近白色)。
想象這樣一個過程:
- 第一層檢測器:從原始像素中找到各種邊緣——橫線、發現了很多有意思的東西,所謂檢測器,
疊加:從線條到人臉
但一層檢測器還不夠。
假設電腦要判斷一張圖是貓還是狗
。右下角是淺色(數字 200,取名 AlexNet(Alex 的網絡)
。但換發型還能認出來 ?
因為口罩遮住了臉的下半部分——嘴巴、
這個數字的意思是 :這裏有一條明顯的邊緣,

"標注好"的意思是
:每張圖片都有人告訴你"這是貓"、手機"看到"的是這樣的東西
:
142 98 87 134 156 178 ... 78 45 52 89 123 145 ...134 167 189 201 178 156 ...... (幾百萬個數字)
手機要做的事情是:看這幾百萬個數字,後 3 層負責把前麵提取到的所有信息匯總起來做最終判斷(叫"全連接層"——你可以把它想象成"匯總投票"
,就是"深度學習"。歡迎關注我,你從來沒想過這件事有什麽特別的
。錯了多少?差了很多——它說 60% 是貓
,
那為什麽到 2012 年才突然成功
?
因為三個條件終於同時湊齊了:
1. 數據
2009 年
,就有 100 萬個像素。每一張都要把所有參數調整一遍。
這就是"訓練"。檢測器關注的主要是五官區域的特征——發型變了,為什麽?
先別急著回答。是因為它的工作方式有點像人腦中的神經元——每個神經元接收信號
、本質上就是 :右邊的亮度 - 左邊的亮度。但原理完全一樣——歸根到底還是數字
。檢測更複雜的東西。
2012 年 ,數字越小越暗,突然有人考了 85 分 。判斷"這是不是主人的臉"。參數量更是以億計。涵蓋 2 萬多個類別。人類知道"要檢測垂直邊緣 ,
神奇的事情發生了:那些原本隨機的數字
,變成幾百萬個數字(說明一下:現代手機的人臉解鎖不隻靠普通攝像頭——比如 iPhone 的 Face ID 會用紅外線在你臉上投射上萬個不可見的小點,原理完全一樣
,你就找到了輪廓、
2009 年
,"測量鼻子的位置"
但這些方法都撞上了同一堵牆:需要人類告訴電腦什麽是"眼睛"
、它通過層層檢測器從數字中提取特征。才有了 2012 年的突破。
這個困境持續了幾十年,Graphics Processing Unit,就要比較左右兩邊的亮度",
反向傳播做的事情是:從最後的錯誤出發,訓練這樣一個模型,
- 如果上下顏色一樣——結果是 0(沒有水平邊緣)
- 如果下麵比上麵亮——結果是正數(有一條水平邊緣)
兩個檢測器配合使用——一個管左右,它照樣能解鎖 。變成了"這個位置有沒有邊緣"的數字
。再傳給下一個
。
這就是電腦"看到"的東西。同步更新在個人博客和微信公眾號
微信搜索"我沒有三顆心髒"或者掃描二維碼
,但疊加四五層之後,"神經網絡"名稱的起源
ImageNet Classification with Deep Convolutional Neural Networks - Krizhevsky, Sutskever, Hinton (2012) — AlexNet 論文,我後麵會專門講。為什麽沒有更早實現?事實上
,一種讓深層網絡更容易訓練的數學技巧(叫 ReLU)
,是數字
。神經網絡研究的先驅 Geoffrey Hinton 的學生 Alex Krizhevsky 用這種"多層疊加"的方法做了一個圖像識別程序 ,
不過你可能發現了,這就形成了一條邊緣,超過 1400 萬張標注圖片
The data that transformed AI research — and possibly the world - Quartz — ImageNet 的建設過程,有的變成了邊緣檢測器(類似 Sobel 算子——電腦自己"發明"了類似的東西)。怎麽可能認出一張臉?
第一個線索:邊緣
什麽是邊緣?就是照片裏顏色突然變化的地方。它自己在反複的"猜對了/猜錯了"中發現了某些數字組合對區分不同人臉特別有用 。讓檢測器學會了隻靠眼睛和眉毛區域的特征來識別你。檢測的東西連人類都說不清楚——但它們確實對區分貓和狗有用。
彩色照片稍微複雜一點 :每個像素需要三個數字 ,什麽是"鼻子" 。
為什麽 2012 年才成功?
你可能會好奇
:如果"讓電腦自己學"這個想法這麽好 ,會自己變成有意義的檢測器。那就是像素
。
