在哪識別說AI到底聰明從手機人臉起
從邊緣到形狀:AI 卡了幾十年
找到邊緣之後呢?别说
1968 年的 Sobel 算子能找到邊緣,反向傳播算法在 1986 年就發表了。到底
現在我用一個"檢測器"來掃描它 。聪明从手層層加工"的机人計算結構 。我們來聊這個問題。脸识遊戲畫麵需要同時計算屏幕上幾百萬個像素的别说顏色 ,突然有人考了 85 分。到底檢測更複雜的聪明从手東西 。
反向傳播做的机人事情是:從最後的錯誤出發,歡迎分享+關注。脸识有一個名字 ,别说
解決方法是 :疊加很多層。但核心識別原理——把采集到的數據變成數字 、你能看出來這是一個十字形嗎?——中間一橫一豎的數字是 200(亮),它"看到"的是什麽?不是一個水果的畫麵,
而訓練神經網絡恰好也是這種活——對幾百萬個數字做大量簡單的乘法和加法。旗艦模型超過 1 億個參數,
一個人的臉可以有無數種表情 、把兩個結果綜合起來 ,
一堆數字,人類知道"要檢測垂直邊緣,即可訂閱。
這個困境持續了幾十年 ,曲線
0 0 200 0 0 0 0 200 0 0200 200 200 200 200 0 0 200 0 0 0 0 200 0 00 是黑色,而顏色在電腦裏是用數字表示的。純白是 255,
但文字呢?
當你對 ChatGPT 說"蘋果" ,
現在可以回答文章開頭的那個問題了:為什麽戴口罩手機就不認識你,這些可調整的數字,讓電腦自己學。沒有邊緣的區域呢 ?
圖片: 檢測器: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 。綜合判斷最終結果) 。逼網絡學到更通用的規律,然後比較兩組數字有多接近。
想象這樣一個過程:
- 第一層檢測器:從原始像素中找到各種邊緣——橫線、
這個設計很聰明,LFW 準確率 99.63%
- Labeled Faces in the Wild — LFW 人臉識別測試集官方頁麵
- Learning representations by back-propagating errors - Rumelhart, Hinton, Williams (1986) — 反向傳播算法的奠基論文 ,參數量更是以億計。本質上就是 :右邊的亮度 - 左邊的亮度。也就無法調整那些數字。是數字。

這就是 AI 在"看"這件事上卡住了幾十年的地方。
這是 「AI是怎麽回事」係列的第
1篇。算出每一個數字對這個錯誤的"貢獻"有多大。需要給電腦看幾百萬張人臉照片,讓我用一個簡化的例子來說明 。層層疊加
- 提取特征:最後一層輸出一組數字——你可以把它理解為你這張臉的"數字指紋"(專業術語叫"特征向量"
,現在你隻需要知道
:電腦有辦法算出調整的方向和幅度。接近黑色),我們先用一個更簡單的任務來說明這個過程——區分貓和狗
。說明邊緣越明顯。
如果我們換一塊顏色完全相同 、"神經網絡"名稱的起源
- ImageNet Classification with Deep Convolutional Neural Networks - Krizhevsky, Sutskever, Hinton (2012) — AlexNet 論文,叫神經網絡
。
電腦沒有被告知"要檢測邊緣" 。這樣就不會被一張照片騙過去。需要對幾百萬張圖片、6000 萬參數 ,但疊加四五層之後,就叫"深度神經網絡",我一直很好奇 AI 到底是怎麽工作的 ,處理一下 、是電腦自己從數據裏學出來的。
這就是 AI 的"聰明" :不是真的理解 ,

- 如果左右兩邊顏色一樣——正數和負數互相抵消,AlexNet 的 6000 萬個參數震驚了整個計算機視覺領域 。五官 、到達一個"很少出錯"的狀態。數字越小越暗,不過你不需要把這個類比想得太深——它隻是一種"層層傳遞、於是花了很長時間去拆這個東西——手機為什麽換了發型還能認出你,但對所有數字同時做這種微調,數字越大,
比如下麵這個 5×5 的小圖:

在電腦裏,
那為什麽到 2012 年才突然成功?
因為三個條件終於同時湊齊了:
1. 數據
2009 年,不是咬一口的味道——那它"看到"的是什麽 ?
文字怎麽變成數字?AI 又怎麽"理解"這些數字的意思?
下一篇,所以選擇了這樣的數字組合。GPU 算力、把邊緣變成形狀 ,什麽是"眼睛" ,同步更新在個人博客和微信公眾號
微信搜索"我沒有三顆心髒"或者掃描二維碼 ,電腦怎麽知道該把那些數字往大了調還是往小了調 ?
這是整個係統最精巧的部分 ,"這是狗" 。"這是狗" 、原理完全一樣 ,
科學家們嚐試了很多方法:
- 有人試著寫規則:"如果有兩個圓形在上麵 ,錯了多少 ?差了很多——它說 60% 是貓
,叫"參數"
。中間有一條從左上到右下的分界線——這就是一條邊緣
。

GPU 原本是用來生成(渲染)遊戲畫麵的。是因為上一層的某個檢測器輸出偏了
- 那個檢測器偏了
,檢測器關注的主要是五官區域的特征——發型變了,Graphics Processing Unit,
但如果讓電腦自己來選呢?
假設我們不再指定這 9 個數字,層數很多的神經網絡,想分享給你 。一個管上下——就能找到圖片中任意方向的邊緣。但換了個發型,它隻是在做加減乘除:把像素變成邊緣,

"標注好"的意思是:每張圖片都有人告訴你"這是貓" 、我產生了一個新的疑問:
AI 能"看"了——圖片在它眼裏是數字矩陣,豎線、你會看到一個讓我非常震撼的例子:"國王"減去"男人",加上"女人",隨機填一組數字,從互聯網上收集的真實場景人臉照片,什麽是"鼻子"。對應位置相乘再相加(這個操作的專業名稱叫"卷積",
實際使用時 ,
但如果我們告訴電腦"正確答案"呢 ?
就像老師批改作業一樣。200 是亮色(接近白色)。在 AI 領域有一個專門的名稱,變成幾百萬個數字(說明一下 :現代手機的人臉解鎖不隻靠普通攝像頭——比如 iPhone 的 Face ID 會用紅外線在你臉上投射上萬個不可見的小點,為什麽這幾個數字能檢測邊緣 ?先看看它怎麽用,現在一些新手機即使戴口罩也能解鎖——那是因為廠商後來專門用大量戴口罩的照片重新訓練了模型 ,重複幾百萬次之後,每張都貼好標簽——"這是貓"、沒有邊緣 。別擔心 ,上百層 ,瞳孔是深色的,檢測的東西連人類都說不清楚——但它們確實對區分貓和狗有用。斜線 、但正確答案是"狗" 。對每個位置都做一次這樣的計算。把所有檢測器發現的信息都匯集在一起 ,後續文章也會持續更新。算法改進——同時到位 ,為什麽 ?
先別急著回答 。得先回答一個基本問題:電腦看到的"照片"長什麽樣 ?
一張照片是由很多個小點組成的,結果是負數(有一條從亮到暗的邊緣)
差異越大 ,一層一層往回追溯,
一道簡單的數學題
假設我們有一小塊圖片 ,分給大量網上工人完成的平台),而不是死記每張圖的細節)。也就是你臉的輪廓。就能看到"臉"了。但邊緣隻是一堆線條 。結果是正數(有一條從暗到亮的邊緣)
- 有人試著寫規則:"如果有兩個圓形在上麵 ,錯了多少 ?差了很多——它說 60% 是貓
,叫"參數"
。中間有一條從左上到右下的分界線——這就是一條邊緣
。
- 如果左邊比右邊亮——負數那邊貢獻更大,中間的灰色就是 1 到 254。8 層網絡 ,就是一組數字組成的小模板——把它疊到圖片上,
就像考試之後對答案:
- 最終結果錯了
- 是因為最後一步的某個數字偏了
- 那個數字偏了 ,結果肯定是亂七八糟的。能識別的東西就越複雜。不是圖像,第二層找形狀 ,那些數字就會逐漸穩定下來,這些小點叫像素——你把手機照片放大再放大 ,比如:
0.1 -0.3 0.50.2 0.1 -0.40.3 0.2 0.1用這個隨機檢測器去掃描圖片,
仔細看這個檢測器的結構 :左邊一列全是負數,其中前 5 層做的就是我們前麵演示的操作——用檢測器在圖片上滑動 、是因為裏麵的某個數字該大一點
電腦會計算 :如果某個檢測器裏的某個數字稍微變大一點 ,隻是方向變了:它比較的是"下麵的亮度 - 上麵的亮度" 。層層提取特征——和我們前麵講的完全一樣)
- 層層檢測:這些數字經過很多層檢測器——第一層找邊緣
,就能找到圖片裏顏色變化的地方 。
整個網絡包含 6000 萬個可調整的數字 。一張 1000×1000 的照片 ,就能檢測出圖片裏有沒有某種特征。讓檢測器學會了隻靠眼睛和眉毛區域的特征來識別你。
訓練:電腦怎麽知道該往哪調?
你可能還記得前麵留下的那個問題 :猜錯的時候 ,
讓我用一個具體例子來演示 。就是一串能代表你長相特征的數字)
- 比較 :把這個數字指紋和你第一次錄入時存下的數字指紋做比較
- 判斷
- 如果左右兩邊顏色一樣——正數和負數互相抵消,AlexNet 的 6000 萬個參數震驚了整個計算機視覺領域 。五官 、到達一個"很少出錯"的狀態。數字越小越暗,不過你不需要把這個類比想得太深——它隻是一種"層層傳遞、於是花了很長時間去拆這個東西——手機為什麽換了發型還能認出你,但對所有數字同時做這種微調,數字越大,