List

In the past months, we are helping a Taipei-based leading Network Attached Storage (NAS) company, Synology, for realizing convolutional neural networks into there key products — Synology Moments,which aims to provide effective and efficient solutions for manipulating hugely growing consumer photos in their products. The needs are strong and solid as the customers care the most for the photos and videos in the private (backup) storage. We help enable image recognition (objects, scene, etc.) and face recognition — all based on state-of-the-art CNN solutions.

The results are stunning and yield strongly positive customers feedbacks. We would like to share the experiences in the following blogs.

 

從事影像視訊分析研究15年,絕大部分考慮的是未來的應用或是核心的問題,沒想到這一段時間,有機會可以經歷整個智能產品從無到有的過程,協助設計適合使用者相簿管理的深度卷積網路。主要功能當然包括照片類別(物件)辨識,以及人臉辨識。

網路儲存伺服器(NAS) 公司群暉 (Synology) 的客戶中,相當多購買儲存設備是為了備份日益增加的照片以及視訊資料。所以這些數位內容的智能分析技術,就成為產品開發中的「剛需」。

雖然看到這幾年深度學習的突破發展,要設計出「穩定」、「高正確率」的卷積網路,並且將這些技術落實在所有的NAS硬體中,走進全球使用者的家裡、辦公室中,是相當大的挑戰。而且開始前,群暉尚未建立深度學習團隊,所以就有了這次雙方團隊產學合作的機會。

整個過程是相當有趣的,並且看到深度學習技術真正落實在產品 Synology Moments上,推出一個多月,全球使用者有相當好的回饋。內部評估,性能更高於類似的國外相簿雲服務。相關報導請參考

期間我們也學習到諸多經驗,樂意與大家分享。我們也發現兩個產品的實際問題 (open set 以及 multi-label)在未來各種智能辨識的產品開發上,都會是很大的挑戰,所以正式帶回實驗室,希望用更嚴謹的方式,找到更好的解法。

【深度網路設計?】

結論是為了優化產品,得設計自己的深度卷積網路。

原因很簡單,辨識的類別完全不同;絕大分的既有卷積網路為multi-class的問題(每張影像只有一個類別標註,和其他類別是互斥的),但是實際的應用是multi-label(每張影像必須有多個標註),比如說,全家在海灘拍了張照片,裡面有人、小孩、比基尼、球、陽傘、天空、沙灘、海洋、墨鏡等。

訓練標註的資料並非完全正確,如何讓網路訓練的過程中有容錯能力;絕大部份可得的資料是multi-class的,所以對於網路的訓練甚至是誤導,降低正確率。如何在設計的網路中有抗噪的能力?或是訓練的過程如何降低錯誤的影響?bootstrapping的策略為何?

另外某些標註是傾向於物件,只佔了畫面的小範圍(如墨鏡、沙灘球),有些卻是絕大部份的畫面(沙灘),如何正規化區域性以及全域性的卷積學習方式?

效率的問題呢?使用者平台設定為不使用GPU。如何降低運算時間? 我們發現最好的原則是先讓正確率提高,然後找尋同等效能(辨識能力)的等效低運算網路。所以團隊對於各種網路元件的運算量,也得有清楚的涉獵,能正確地評估。