《回檔:換個姿勢再來一次》第1811章 哥,你什麼時候來的?(2)

作者:咖啡就蒜·21天前

每次提問都朝著要害而去。維傑的回答起初還遊刃有餘,到第三個問題時,額頭已滲出細的汗珠。

“計算複雜度方面,”維傑翻著幻燈片,試圖找到相應的分析頁面,“理論上是O(n2),但實際實現中我們採用了近似演算法……”

“近似演算法的誤差界是多?”曹鵬追問。

會議室安靜了幾秒。瑞迪抬起頭,目在兩人之間掃過,角似乎微微上揚了一毫米—,這是他對學生間高質量辯論的認可。

“這……我們還在分析。”維傑最終承認。

“那麼在你的實驗結果中,至應該標註‘使用近似演算法’的說明。”曹鵬的語氣沒有得意,只是陳述事實,“否則對比是不公平的。”

維傑點頭坐下時,曹鵬對他眨了眨眼,這是兩人之間的默契,辯論歸辯論,不影響午飯時一起吐槽系裡新出臺的伺服使用規定。

瑞迪教授朝曹鵬點頭,“上週我們討論了SIFT特徵在態場景中的漂移問題。曹鵬提出了一個新框架的初步想法。今天,請他詳細展開。”

曹鵬起,在靠近白板的位置坐下,他沒用投影,有些思路,手寫更能現思考的脈絡。

“謝謝教授。”他轉向小組,目掃過每個人的臉。

維傑抱著手臂,眉頭微皺,艾米麗已開啟筆記本,二年級博士生湯姆眼神放空,大概還沒從昨晚的Dota戰中回神,而博士後捷爾任斯基,則衝曹鵬眨眨眼。

“我們現有的影像分類流程:特徵提取、編碼、池化、分類。”曹鵬畫了四個方框,“問題在於,手工設計的特徵,比如SIFT....在類別增多、視角變化劇烈時,區分度下降。而編碼階段用的K-ans或稀疏編碼,本質是假設特徵服從單一分佈。”

說到這兒,他等等,看是否有人提問。維傑,但最終選擇放棄。

“我的提議是,放棄手工特徵,直接從畫素學起。”曹鵬在“特徵提取”框上打了個叉,“但不是用傳統的全連線神經網路,引數量太大,且忽略影像的空間區域。我設計了一個多尺度稀疏自編碼結構。”

他又在白板上畫出三層結構,第一層是小野的卷積核,提取邊緣紋理,第二層卷積核變大,整合區域結構,第三層是全連線層,但施加L1稀疏約束。每一層都用無監督預訓練初始化,再用反向傳播微調。

“關鍵在這裡,”曹鵬在第三層旁寫下公式,“我們不在畫素空間做稀疏,而是在特徵空間做。將每張圖的特徵啟用視為一個訊號,用字典學習找到過完備基,然後求解稀疏係數。”

“這樣,分類問題轉化為,在字典空間中找到最判別力的稀疏模式。”

說著,寫下一串數學符號。然後轉向實際問題,“我在Caltech101資料集上試了初步版本。64×64的圖,三層結構,第一層用6×6卷積核,步長2,得到16個特徵圖;第二層……”

“等等。”維傑終於舉手,語氣帶著質疑,“曹,你算過時間複雜度嗎?是第一層卷積,假設輸是64×64的RGB圖,6×6核,步長2,輸出16個特徵圖,一次前向傳播就需要多乘加作?這還沒算上稀疏編碼的迭代最佳化。你的模型能在合理時間訓練嗎?”

問題尖銳,但曹鵬預料到了。他保持平靜,甚至微笑。

“好問題。我算過。”他走到白板另一側,快速寫下算式,“第一層卷積,輸64×64×3,核6×6×3×16,步長2,輸出特徵圖尺寸30×30×16。乘加次數約:(6×6×3)×(30×30)×16 = 1,555,200次。對於Caltech-101的9144張圖,一個epoch是142億次作。在雙Xeon 3.0GHz的伺服上,用高度最佳化的C++和SSE指令,一個epoch大約需要47分鐘。”

數字確到個位。會議室安靜了。

“但這只是樸素實現。”曹鵬繼續,“我做了三最佳化,一,將卷積轉化為矩陣乘法,用Strassen演算法加速,二,利用特徵圖之間的獨立,平行計算。三,稀疏編碼階段,我用了改進的迭代收閾值演算法,將收斂速度提升了40%。最終,完整訓練一的時間是28分鐘,在可接範圍。”

維傑盯著算式,手指無意識敲著桌面。幾秒後,他抬頭,“準確率呢?你說了這麼多計算,但分類效果比SIFT+SP空間金字塔匹配好多?”

“Caltech-101,SIFT+SP最好結果是78.3%。”曹鵬出列印好的圖表,在白板上,“我的方法,在相同訓練、測試劃分下,目前是81.7%。錯誤分析顯示,提升主要來自類和通工類。”

“這些類別視角變化大,手工特徵容易失效。”

3.4個百分點的提升,在視覺領域已算顯著。艾米麗輕聲讚歎,湯姆也坐直了,只有捷爾任斯基,小聲的吹了個口哨。

但維傑還沒放棄,“你的模型引數量多大?過擬合風險呢?”

006005=3×46×4641217.1

%8.0tuoporD

DDVSK

ELL

aediADUC

綿

西

彿

猜你喜歡

同題材或同分類的其他作品。