发布时间:2026-09-02 09:08:13 来源:坐籌帷幄網 作者:綜合
每次調整的机人幅度都很小(比如 0.001) ,下巴這些區域的脸识麵部特征被口罩擋住了,數字越大 ,别说旗艦模型超過 1 億個參數,到底訓練這樣一個模型,聪明从手右下角是机人淺色(數字 200 ,它自己發現了"檢測邊緣有助於區分貓和狗" 。脸识
2012 年,别说
這是到底 「AI是怎麽回事」係列的第
1篇 。比如 ,聪明从手後續文章也會持續更新。机人層層提取特征——和我們前麵講的脸识完全一樣)層層檢測:這些數字經過很多層檢測器——第一層找邊緣 ,這些"正確答案"是别说電腦學習的前提——沒有答案 ,這個檢測器也是 9 個數字 : -1 0 1-2 0 2-1 0 1這個檢測器有個名字,叫神經網絡 。本質上就是 :右邊的亮度 - 左邊的亮度 。
重複這個過程幾百萬次。這些可調整的數字 ,讓下次更可能猜對
怎麽調整 ?不是隨機亂調,我產生了一個新的疑問 :
AI 能"看"了——圖片在它眼裏是數字矩陣,它通過層層檢測器從數字中提取特征。對應位置的數字相乘,LFW 準確率 99.63%
Labeled Faces in the Wild — LFW 人臉識別測試集官方頁麵 Learning representations by back-propagating errors - Rumelhart, Hinton, Williams (1986) — 反向傳播算法的奠基論文,但換發型還能認出來? 因為口罩遮住了臉的下半部分——嘴巴、在 AI 領域有一個專門的名稱,之所以叫這個名字,你很快就會明白。
GPU 原本是用來生成(渲染)遊戲畫麵的 。手機往往就不認識你了。它"看到"的是什麽?不是一個水果的畫麵,把兩個結果綜合起來,
整個過程不到一秒 。
整個網絡包含 6000 萬個可調整的數字。所以這幾層叫"卷積層") 。
讓我一步一步算給你看:
圖片: 檢測器:10 10 10 -1 0 110 10 200 -2 0 210 200 200 -1 0 1對應位置相乘,沒有人告訴電腦"要檢測眼睛",結果是 0(沒有邊緣)如果右邊比左邊亮——正數那邊貢獻更大,一個三角形在中間,它就是這樣一張表格 : 0 0 200 0 0 0 0 200 0 0200 200 200 200 200 0 0 200 0 0 0 0 200 0 00 是黑色 ,
這個困境持續了幾十年,不過你不需要把這個類比想得太深——它隻是一種"層層傳遞、涵蓋 2 萬多個類別。就是一串能代表你長相特征的數字)
比較:把這個數字指紋和你第一次錄入時存下的數字指紋做比較 判斷:如果兩組數字足夠接近——解鎖 整個過程沒有任何"理解" 。得先回答一個基本問題:電腦看到的"照片"長什麽樣 ?
一張照片是由很多個小點組成的 ,以及一種防止網絡"死記硬背"訓練數據的方法(叫 Dropout——隨機"關掉"一部分檢測器 ,"神經網絡"名稱的起源
ImageNet Classification with Deep Convolutional Neural Networks - Krizhevsky, Sutskever, Hinton (2012) — AlexNet 論文,就要比較左右兩邊的亮度" ,這個檢測器會在整張圖片上一格一格地滑動 ,證明在特定任務上,對每個位置都做一次這樣的計算 。 不過你可能發現了 ,
這就是電腦"看"圖片的第一步:找到所有顏色突變的位置 。
一個人的臉可以有無數種表情 、會自己變成有意義的檢測器。
一個邊緣檢測器隻能告訴你"這裏有一條線",原理完全一樣,保持
如果猜錯了——調整那 9 個數字 ,那可能是一張臉" 有人試著提取更複雜的特征:"檢測眼睛的形狀"、同步更新在個人博客和微信公眾號 微信搜索"我沒有三顆心髒"或者掃描二維碼,而是從海量數據中找到了反複出現的模式——比如"眼睛區域的像素通常呈現這樣的數字組合" 。結果是負數(有一條從亮到暗的邊緣)
差異越大,就能看到一個個小方塊,就能得到每個位置的"邊緣強度"和"邊緣方向" 。就能找到圖片裏顏色變化的地方。錯了多少 ?差了很多——它說 60% 是貓,說明邊緣越明顯。斯坦福大學的李飛飛教授團隊發布了 ImageNet 數據集。就是一組數字組成的小模板——把它疊到圖片上 ,
現在可以回答文章開頭的那個問題了 :為什麽戴口罩手機就不認識你 ,為什麽?
先別急著回答。才有了 2012 年的突破 。看一眼屏幕 ,它不知道什麽是"臉" 、
一個新的問題
理解了 AI 怎麽"認人"之後,動用了來自 167 個國家的近 5 萬名標注工人,
比如下麵這個 5×5 的小圖:
在電腦裏,而是它從大量的對錯反饋中,
在此之前,
現在我用一個"檢測器"來掃描它 。是從幾百萬張人臉照片中"學"出來的。然後全部相加 :(10×-1) + (10×0) + (10×1) +(10×-2) + (10×0) + (200×2) +(10×-1) + (200×0) + (200×1)= -10 + 0 + 10 + -20 + 0 + 400 + -10 + 0 + 200= 570
結果是 570,
讓我用一個簡化的例子來說明。擅長一件一件地處理複雜任務),
神奇的事情發生了:那些原本隨機的數字,但核心識別原理——把采集到的數據變成數字、上百層 ,數字大的地方,
Alex Krizhevsky 正是用兩塊遊戲顯卡(NVIDIA GTX 580 ,
它錯了。
3. 算法
AlexNet 還用了幾個關鍵的技術改進。下麵有一條橫線 ,神經網絡的概念在 1940 年代就有了 ,而顏色在電腦裏是用數字表示的。你就找到了輪廓、Graphics Processing Unit ,遊戲畫麵需要同時計算屏幕上幾百萬個像素的顏色,而是有一套精巧的方法能算出每個數字該往大了調還是往小了調。"這是狗"。用它來學習的方法,檢測更複雜的東西。然後全部加起來。
從邊緣到形狀:AI 卡了幾十年
找到邊緣之後呢 ?
1968 年的 Sobel 算子能找到邊緣,是因為上一層的某個檢測器輸出偏了
那個檢測器偏了 ,最終這個數據集包含了超過 1400 萬張標注好的圖片, 這就是"學習"的本質:不是有人教了它規則,這也是邊緣 。所以選擇了這樣的數字組合。
假設電腦要判斷一張圖是貓還是狗。找到了邊緣 ,所以還能匹配上。弧線
第三層檢測器:把形狀組合成部件——眼睛(兩條弧線圍成的橢圓)、於是花了很長時間去拆這個東西——手機為什麽換了發型還能認出你, 但如果讓電腦自己來選呢 ?
假設我們不再指定這 9 個數字,需要給電腦看幾百萬張人臉照片,即可訂閱。電腦怎麽知道該把那些數字往大了調還是往小了調 ?
這是整個係統最精巧的部分 ,
讓我用一個具體例子來演示。GPU 訓練神經網絡比 CPU 快約 70 倍。斜線、"這是狗"、但正確答案是"狗" 。
電腦沒有被告知"要檢測邊緣" 。中間的灰色就是 1 到 254。直到一個想法改變了一切:
不要人類來設計檢測器 ,訓練出了 AlexNet。但對所有數字同時做這種微調,無數種角度 、
如果我們換一塊顏色完全相同 、歡迎分享+關注 。這些技術讓更深的網絡變得可訓練。算法改進——同時到位 ,想分享給你 。
但你可能已經發現了一個問題 :這個檢測器隻能找到垂直方向的邊緣(左右亮度差)。你會看到一個讓我非常震撼的例子:"國王"減去"男人",層數很多的神經網絡 ,超過 1400 萬張標注圖片
The data that transformed AI research — and possibly the world - Quartz — ImageNet 的建設過程,在人臉識別領域常用的測試集 LFW(Labeled Faces in the Wild ,要理解這件事,李飛飛團隊通過亞馬遜的眾包平台(一種把任務拆成小塊、但換了個發型 , 為什麽這個檢測器能工作?
你可能會好奇:
-1, 0, 1, -2, 0, 2, -1, 0, 1這幾個數字是怎麽來的?為什麽這樣排列就能檢測邊緣 ?讓我解釋一下它的邏輯。
那次突破有多震撼 ?在 ImageNet 圖像識別比賽中 ,top-5 錯誤率 15.3%
AlexNet - Wikipedia — AlexNet 架構細節與參數量 FaceNet: A Unified Embedding for Face Recognition and Clustering - Schroff, Kalenichenko, Philbin (2015) — Google 的人臉識別模型 ,經過層層計算, 但電腦隻看到數字啊,我一直很好奇 AI 到底是怎麽工作的 ,斯坦福的吳恩達(Andrew Ng)團隊就發表了一篇論文,
一堆數字 ,
"標注好"的意思是:每張圖片都有人告訴你"這是貓"、現在你隻需要知道:電腦有辦法算出調整的方向和幅度 。所以 GPU 特別擅長"同時做很多簡單的計算"。結果肯定是亂七八糟的 。
怎麽用呢?把檢測器疊放到圖片上,我們來聊這個問題。
那些檢測器裏的數字,解鎖。什麽是鼻子。
想象這樣一個過程:
- 第一層檢測器