如果你對人工智慧(AI)和物聯網(IoT)有一些瞭解的話,不可避免地會對這兩個領域結合的未來前景充滿想像。隨著電腦硬體技術的巨大進步,一些幾十年前的先進理論知識終於可以在現實生活中得到實際應用;加上隨著物聯網市場的不斷發展,人們能夠更加容易地取得高品質的資料,從而能夠開發出更好、更高性能的模型,特別是深度學習模型。

深度學習究竟是何方神聖?

近年來,人工智慧技術推動了其他無數技術的進步,而深度學習就是人工智慧技術的一種。儘管在上世紀50年代時,深度學習——正式稱謂是「深度神經網路」就已經誕生,且在上世紀80年代取得了關鍵演算法的突破,但直到最近,在電腦硬體進步到能夠滿足其理論需求的情況下,電腦科學家終於在巨大運算能力和海量資料的協助下,挖掘出神經網路的巨大潛力。

深度學習演算法由獨特的多層體系結構表徵,其中知識逐步從其作為輸入的原始資料中「抽象出來(abstracted away)」。例如,當訓練深度神經網路從一組隨機影像中辨識特定類型動物的圖片時,它首先從畫素級別考察影像,然後將該知識轉換為「更高級別」知識,例如感興趣物件的邊緣,然後在最終物件(或者,繼續我們的例子,動物)的一般視覺化特徵實施抽象之前、辨識特定特徵(例如爪子、尾巴等)。這裡有趣的一點是,可以與一種全新類型的影像(例如衛星影像)一起、重複使用涉及較底層知識的早期層——因為無論影像表示什麼,邊緣都一直還是邊緣。

值得注意的是,沒有資料科學家曾明確地設計電腦演算法來執行這種任務。相反,學習演算法需要消化數十萬幅影像,直到它自己找出並自己學習如何辨識所需的物件。

為什麼邊緣深度學習很重要?

硬體進步推動了深度學習研究的發展,同時,也有一些新的巨大發現驅動著物聯網設備的快速發展。值得一提的是,微控制器(MCU)的優勢為人工智慧應用創造了一個獨特的機會,特別是那些深度學習賦能的應用,它們正以前所未有的規模和速度為消費者所接受。

MCU在基於深度學習的應用中有著顯著優勢,它不僅可以縮短延遲、節省頻寬,而且能更好地保護隱私。這種直接安裝在物聯網設備上的人工智慧應用,稱之為人工智慧邊緣應用,一種應用應該部署在伺服器、雲端,或者是物聯網設備的邊緣,應取決於速度和精準度之間的權衡。一般來說,精準度越高,要求的系統就越複雜,模型會更大,因此不能總是儲存在物聯網設備有限的記憶體當中。

什麼是遷移學習(transfer learning)?

在心理學語境下,遷移學習被定義為研究人類學習或表現對初步經驗的依賴性。人類並沒有被教導如何執行和掌握每一項可能的任務,相反,當他們遇到新情況時,設法利用將舊知識外推到新環境,以獨特的舉一反三方式解決問題。例如,當孩子學會揮動網球拍以後,他或她可以輕鬆地將這套技能遷移到乒乓球或棒球的練習;在概念性理解方面也是如此,比如成年人在預算中常用到的統計學或其他數學知識。

與人類行為的方式相反,大多數機器學習演算法往往針對的是特定資料集或特定離散(discrete)任務的實現。機器學習研究人員最近越來越關注如何使電腦能夠重複利用獲得的知識,並將其重新應用於新任務和新領域,他們試圖抽象和遷移從多個應用中提取的「智慧」,通常有某種程度的相似。

雖然深度學習可以在無人監督的環境中使用,但它通常都是應用在監督學習(supervised learning)中。這意味著演算法從由輸入-輸出對構成的案例中學習,然後用它來嘗試辨識模式並提取關係;目的是從新的、以前沒有的資料中預測結果。深度學習在無數研究領域都有應用,但存在一個主要缺點:它們都是「貪婪」的演算法,需要大量資料才能調適在神經網路架構中發揮作用的數千個參數。這意味著不僅需要大量資料才能獲得上好性能;而且還需要對這些資料進行標記,這可能是項昂貴且耗時的工作,更糟糕的是,現實中高品質資料並不容易獲得,更別說準確標記,用來訓練模型了。

遷移學習可對此提供真正幫助,它允許為特定任務開發的模型作為另一個任務的起點重新使用。對於機器學習科學家來說,這是個令人興奮的領域,因為它可以模仿人類將知識從一個專業任務推廣到另一個專業任務。事實上,如果想要縮小深度神經網路訓練所需要的資料規模,遷移學習將是一個關鍵策略。

還記得之前提出的關於模型如何學習辨識深度學習網路中物件邊緣的例子嗎?這是可以遷移到另一類電腦視覺任務的確切知識。透過這種方式,模型能夠學習如何辨識貓和狗等常見動物,也能夠遷移到更為複雜的任務上,比如辨識癌症影像中的細胞核。

20180912TA31P1 圖1 構建人工智慧應用時的不同學習方法。(來源:Figure Eight)

遷移學習策略

遷移學習無疑是解決大資料時代資訊匱乏困境的一種雅致而自然的方式。但是,在實踐中能夠使用它之前,需要回答一些關於遷移學習的重要策略性問題:

  1. 什麼時候適合使用它?

  2. 實施遷移的最佳方式是什麼?

要回答這些問題,有必要深入研究遷移學習理論,以瞭解現有的不同遷移學習方法。

正如我們所看到的,有時候,在目標域中獲取標記資料困難重重,而在另一個源域中卻存在著大量標記資料,這時直推遷移學習正好可以發揮作用。在某些情況下,來源和目標要素空間不同;有時它們相同,但輸入資料的邊際概率分佈不同,後一種情況的直推遷移學習與知識遷移的領域適應性密切相關。

然而,在科學家稱之為歸納遷移學習的子案例中,目標和源任務彼此不同;實際上,有時甚至源域和目標域也不相同。在這種情況下,一些特定於目標域的標記資料仍然是必需的,以便歸納目標域的客觀預測模型。

最後,即使目標任務與源任務不同,但仍然與源任務相關,無監督遷移學習設置允許(這是重點!)模型重用。

20180912TA31P2 圖2 不同的遷移學習策略。(來源:Figure Eight)

為什麼遷移學習對資料科學家很重要?

受監督的機器學習演算法有效的前提是,必須假設訓練資料屬於相同的特徵空間,並且具有與用於推理的資料相同的分佈。事實上,如果訓練有素的模型無法概括,資料科學家首先要做的就是檢查兩個統計分佈是否匹配,如果不匹配,也無需奇怪,有一種方法可以利用來自完全不同域的資料,該域資料豐富、標記成本低,且可將其用作培訓資料,以解決特別是因為資料量貧乏而難以解決的問題。沒錯,這就是遷移學習目標所在。

正如我們所看到的,遷移學習有助於解決與監督學習通常所必需的大量資料收集和標記相關的潛在挑戰。除了將預先學習的知識應用於全新任務之外,資料科學家還有一種期望,即透過重複使用這一先例知識,模型性能應該得到改善,與「傳統」監督學習情況相比,培訓時間應該大幅縮短。

事實上,在遷移學習的成功案例中,資料科學家可以預見到一些實際的好處,例如提高學習成績、同時避免大量的資料收集和標記工作:

· 他們期望更強的起點,這意味著源模型的初始預測能力(在對模型精煉之前)高於其他情況。

· 他們期望源模型的改進率(更好的「學習曲線」)比通常使用監督學習在目標資料集上訓練目標模型更好。

· 他們希望受訓模型融合技能的最終表現優於沒有遷移學習的情況。

簡言之,資料科學家希望:其建模生產力得到提升;其任務所需的資料量,以及運算量下降、更可預測的開發過程,甚至因正在遷移的方法或資料已經「真實並經過測試」,從而在某種程度降低風險。

遷移學習作為隨時可用的模式

從技術上來說,遷移學習是關於在模型參數內編碼的知識,並利用該知識來解決不同的問題。實踐中,遷移可以兩種不同的方式進行:從基於原始資料的現有模型開始,或僅基於現有資料。

· 資料科學家首先會在現有模型中尋找那些能夠滿足他/她需求的備選模型,他/她可能甚至不知道該模型最初受訓所用的資料。在這些情況下,討論「預訓練模型」,且遷移的知識已經編碼到模型本身中,而機器學習專家的工作僅僅是使用透過稱為暖開機的過程、從目標域中獲取的少量資料來微調模型。這是使用該過程最引人入勝的方式之一,因為實際上它使人工智慧系統能夠從少數案例中學習,從而使得訓練階段既快速又有效。這個過程是革命性的,因為它打開了協作人工智慧的大門,讓每個開發者和科學家都能利用現有的專業知識構建新知識,並且只專注於他們作為專家可以帶來的價值。

· 資料科學家意識到,可用於訓練監督模型的資料數量不足和/或品質不佳、或者標記資料太繁瑣或昂貴;並且決定透過利用另一個現有標記資料集從頭開始構建模型,而該資料集最初是在另一個任務或另一個域的背景下開發,這允許他/她使用現有標籤以便更省錢或更容易地收集標籤。在這種情況下,資料科學家從解決不同問題(不同任務)的常規監督學習方法開始,或使用另一個資料集解決手邊的問題,然後,他/她利用微調模型來最終使其適應他/她的問題。

遷移學習還提供了節省運算功率的機會,這在運算量很大的模型環境中尤為重要。

為什麼遷移學習對物聯網很重要?

開發定制應用時經常會碰到的一個難題是「冷開機」問題。冷開機指的是當新用戶流覽網站時,因為沒有收集到原始資料,他/她的行為或偏好是未知的,所以網站資訊的投放和呈現很難有針對性。這就是為什麼在開始透過流覽和購物生成更多資料之前,在電子商務網站上得到的推送通常令人失望。

物聯網存在類似問題。畢竟,由於新用戶的偏好未知,因此很難為新的互連產品訓練模型。在這些情況下,遷移學習方法可以提供幫助,因為熱重啟通常比重建整個模型所需的資料少得多,因此,它提供了一個機會,可以更快地「載入」新客戶,而無需收集大量資料。在此情況下,「基礎」模型將使用向大量客戶收集到資料的組合來生成,這更有可能是普通用戶預期的合理呈現。

遷移學習對於成功部署物聯網深度學習應用也至關重要,這些應用需要複雜的機器以如此快的速度生成如此多的資訊,以至根本無法找到足夠的人類專家來標記它們,並在合理時間內從頭開始訓練新模型。想一想:如果標記資料並訓練特定模型需要數天甚至數周時間,那麼當模型準備好應用時,它很可能已經過時了。

總結

遷移學習確實為新應用打開了大門,絕對是構建智慧物聯網應用的關鍵要素之一。但是,需要採取一些特殊的預防措施來確保正確使用該技術。

隨著消費者越來越關注其資料的使用,很自然地會質疑與物聯網相關的潛在資料安全問題。如前所述,遷移學習通常意味著使用現有資料集構建的模型作為開發新方案的起點,但這些資料不一定是開放性資料:它有時可能是一大群人的資料聚合,甚至(更少情況)特定消費者的資料集。作為一般規則,資料科學家更喜歡使用聚合資料集,這不僅因為它在為新客戶創建模型時提供了更可靠的世界觀,而且還因為涉及的資料越多,可直接辨識出特定個人的可能性就越小。

另外,還有更多與遷移學習相關的技術挑戰。事實上,在某些情況下,知識根本不應被遷移,因為暴力遷移可能會損害目標領域的學習績效,這種情況被稱為負遷移。如何避免負遷移是一個重要的開放性問題,在研究界(包括Figure Eight)引起了越來越多的關注。

(參考原文: Transfer learning for the IoT,by Jennifer Prendki)