前面的文章概略描述物件偵測技術對推動產業智能化至關重要,近年核心技術也由傳統做法提升為深度學習,帶來更多突破。
接下來我們要面對這些技術轉化為產品時會遭遇怎樣的問題?如何克服?特別是過去幾年有幸協助開發各式應用,看到了這當中的一些盲點。
最關鍵的問題是正確率。正確率的描述非常籠統,一般我們會更細分為precision(P)以及recall(R),前者代表所回報的物件中有多少比例是正確的,比如說畫面中框列了10輛車子,有幾輛是對的;後者代表實際的物件標的中找到多少比例,例如畫面中有10輛車子,實際框列了幾台。
如果P跟R都是100%的話代表這是完美的系統(沒有誤判、沒有缺漏),一般無法達到,所以在開發過程中為了理解各個技術元件或是比較各方法間的效能,我們會畫出所謂的PR curve,呈現不同情境下的P跟R。
一般而言,PR curve底下的面積越大時,代表系統的效能越好(也就是P跟R可以在較高的情境下共存)。
我們很難設計單一演算法P跟R都是完美無缺。一般在檢測環境(AOI、自駕時)中比較在乎recall,所以會刻意將所有可能物件挑出,但是會造成P下降(多了假警報),解決方法是接續使用其他演算法再進行過濾,剔除誤判,或是利用其他訊號源再確認,比如說使用雷達訊號標定可能物件之後,再使用攝影機辨認是否為車輛。
在某些應用中比較在乎precision,可以犧牲recall。例如搜尋系統中。尋找大量照片時,因為使用者不清楚有多少真實標的(例如:狗)存在,我們只需將有把握的標的呈現出來,並按照信心度排序,就能滿足使用者的需要。一般推薦系統也是採用這樣的策略,確保使用者的滿意度。
物件偵測正確率不高是什麼原因?在產品開發上我們當然建議使用開源軟體,降低開發時間。但即使是最前瞻的研究成果,在產品使用上還是有很多問題,其中最關鍵,也是大家通常忽略的是所謂「anchor」的設定。
大部分的物件偵測演算法都會使用anchor,代表幾組不同長寬比的矩形,類似於物件外框的模板,用來標定物件外框。因為這些演算法(通常是學術界所開始的)都測試在公開資料集,所以anchor的設定一般都是優化這些資料集中的物件,而其中的物件大小、長寬比例、視角等與實際場域中差異相當大,所以正確率無法提升。
例如公開資料集內的人大都是站立的,而實際場域中姿態變化較多。尤其是在AOI檢測上更會遇到這樣的狀況,通常瑕疵的長寬比跟一般常見物件的比例是不同的,或是光學文字辨識(OCR)時得先框出文字範圍,再行辨識,而這些文字區間的長寬比差異甚大。
解決anchor在實際場域上的限制,可以試著修改或是增減需要的anchor種類。不過另一種常見的作法是直接使用anchor-free的策略(如FCOS),不使用預設模板,在偵測時,以某個基準點,往外推估可能物件的長寬,在實際使用上有不錯的效能。
公開資料集中物件樣貌與場域中有很大的差異(例如人臉資料庫中大都未配戴眼鏡),所以實際場域的資料還是得收集,當然越多對產品效能越好。
之前我們大都使用國外的資料標註服務,近來國內社福企業結合身障人士提供類似服務,幾次合作下來,也呈現不錯的工作品質。另在時間與成本考量下,有其他方法可以善用未標註的資料,可以參考之前的文章。
除了使用公開資料集外,也可以善用網路公開資訊(在未侵權的情形下)收集資料。例如之前曾經看過的案例是利用美國購車(新車、二手車)網站上各種車輛的完整分類、各角度的照片等,用來增益車輛偵測的資料。
降低耗能、效率提升絕對是必要的,特別是在深度學習技術結合低耗電智能晶片呈現極佳的產業機會。有許多方法在之前文章都已經提過,混搭使用之後在各個情境下都可以達到產品的要求,可以做為參考。我們也觀察到智能技術逐漸由雲端落地到多樣的終端產品上,智能化的資通訊設備絕對是我們產業再提升的機會。
徐宏民(Winston Hsu)現任富智捷(MobileDrive)技術長暨副總經理以及台大資訊工程學系教授。哥倫比亞大學電機博士,專精於機器學習、大規模影像視訊搜尋與辨識。為訊連科技研發團隊創始成員,慧景科技(thingnario)共同創辦人,NVIDIA AI Lab計畫主持人;曾任IBM華生研究中心客座研究員、美國微軟研究院客座研究員。習慣從學術及產業界的角度檢驗技術發展的機會;十餘年產學合作及新創經驗。曾獲2018 IBM Research Pat Goldberg Memorial Best Paper Award 、2018偽裝人臉辨識冠軍、傑出資訊人才獎、吳大猷先生紀念獎等國內外研究獎項。