有效學習:人工智能的近期未來
已發表: 2017-11-09這些有效的學習技術不是新的深度學習/機器學習技術,而是將現有技術擴充為黑客
毫無疑問,人工智能的最終未來是達到並超越人類智能。 但這是一個牽強附會的壯舉。 即使是我們當中最樂觀的人也打賭,人類水平的人工智能(AGI 或 ASI)將在 10 到 15 年後出現,懷疑者甚至願意打賭,如果可能的話,這將需要幾個世紀的時間。 好吧,這不是這篇文章的內容。
在這裡,我們將討論一個更切實、更近的未來,並討論新興和強大的人工智能算法和技術,在我們看來,這些算法和技術將塑造人工智能的近期未來。
人工智能已經開始在一些選定的特定任務中超越人類。 例如,在診斷皮膚癌方面擊敗醫生,在世界錦標賽上擊敗圍棋選手。 但是,相同的系統和模型將無法執行與他們訓練解決的任務不同的任務。 這就是為什麼從長遠來看,無需重新評估即可高效執行一組任務的通用智能係統被稱為人工智能的未來。
但是,在不久的將來,在 AGI 出現之前,科學家們如何才能讓 AI 驅動的算法克服他們今天面臨的問題,走出實驗室,成為日常使用的對象?
當你環顧四周時,人工智能一次只贏得一座城堡(閱讀我們關於人工智能如何超越人類的帖子,第一部分和第二部分)。 在這樣一場雙贏的比賽中可能會出現什麼問題? 隨著時間的推移,人類正在產生越來越多的數據(這是人工智能消耗的飼料),我們的硬件能力也在變得越來越好。 畢竟,數據和更好的計算是 2012 年深度學習革命開始的原因,對吧? 事實是,人類期望的增長比數據和計算的增長更快。 數據科學家必須想出超出目前存在的解決方案來解決現實世界的問題。 例如,大多數人認為的圖像分類在科學上是一個已解決的問題(如果我們抵制說 100% 準確率或 GTFO 的衝動)。
我們可以使用人工智能對匹配人類能力的圖像(比如說貓圖像或狗圖像)進行分類。 但這可以用於現實世界的用例嗎? 人工智能能否為人類面臨的更多實際問題提供解決方案? 在某些情況下,是的,但在很多情況下,我們還沒有做到。
我們將引導您完成挑戰,這些挑戰是使用 AI 開發現實世界解決方案的主要障礙。 假設您要對貓和狗的圖像進行分類。 我們將在整個帖子中使用這個示例。

我們的示例算法:對貓和狗的圖像進行分類
下圖總結了挑戰:

開發現實世界的人工智能所涉及的挑戰
讓我們詳細討論這些挑戰:
用較少的數據學習
- 大多數成功的深度學習算法消耗的訓練數據要求根據其包含的內容/特徵對其進行標記。 這個過程稱為註解。
- 算法不能使用你周圍自然發現的數據。 幾百個(或幾千個數據點)的註釋很容易,但我們的人類級圖像分類算法需要一百萬個帶註釋的圖像才能很好地學習。
- 所以問題是,註釋一百萬張圖像是否可能? 如果不是,那麼人工智能如何使用較少數量的註釋數據進行擴展?
解決不同的現實世界問題
- 雖然數據集是固定的,但現實世界的使用更加多樣化(例如,在彩色圖像上訓練的算法可能在灰度圖像上與人類不同)。
- 雖然我們改進了計算機視覺算法來檢測物體以匹配人類。 但如前所述,與在許多意義上更通用的人類智能相比,這些算法解決了一個非常具體的問題。
- 我們的示例 AI 算法對貓和狗進行分類,如果不輸入稀有狗的圖像,將無法識別該物種。
調整增量數據
- 另一個主要挑戰是增量數據。 在我們的示例中,如果我們試圖識別貓和狗,我們可能會在首次部署時針對不同物種的許多貓和狗圖像訓練我們的 AI。 但是在完全發現一個新物種時,我們需要訓練算法來識別“Kotpies”和以前的物種。
- 雖然新物種可能比我們想像的更類似於其他物種,並且可以很容易地訓練以適應算法,但有些地方更難,需要完全重新訓練和重新評估。
- 問題是我們能讓人工智能至少適應這些小變化嗎?
為了讓 AI 立即可用,想法是通過一組稱為 Effective Learning 的方法來解決上述挑戰(請注意,這不是官方術語,我只是為了避免寫 Meta-Learning、Transfer Learning、Few每次射擊學習、對抗學習和多任務學習)。 在 ParallelDots,我們現在正在使用這些方法來解決 AI 的狹隘問題,贏得小型戰鬥,同時為更全面的 AI 征服更大的戰爭做準備。 讓我們一次向您介紹這些技術。
值得注意的是,這些有效學習技術中的大多數都不是什麼新鮮事物。 他們現在只是看到了復甦。 SVM(支持向量機)研究人員已經使用這些技術很長時間了。 另一方面,對抗性學習是 Goodfellow 最近在 GAN 方面的研究成果,而神經推理是一組新的技術,數據集最近才可用。 讓我們深入探討這些技術將如何幫助塑造人工智能的未來。
遷移學習

它是什麼?
顧名思義,學習是在遷移學習的同一算法中從一個任務轉移到另一個任務。 在具有較大數據集的一個任務(源任務)上訓練的算法可以在有或沒有修改的情況下作為算法的一部分進行傳輸,該算法試圖在(相對)較小的數據集上學習不同的任務(目標任務)。
一些例子
在對象檢測等不同任務中使用圖像分類算法的參數作為特徵提取器是遷移學習的一個簡單應用。 相反,它也可以用於執行複雜的任務。 谷歌開發的算法比醫生更好地對糖尿病視網膜病變進行分類,不久前是使用遷移學習製作的。 令人驚訝的是,糖尿病視網膜病變檢測器實際上是一個真實世界的圖像分類器(狗/貓圖像分類器),用於對眼睛掃描進行分類的遷移學習。
告訴我更多!
在深度學習文獻中,您會發現數據科學家將神經網絡的這些從源任務轉移到目標任務的部分稱為預訓練網絡。 微調是指目標任務的錯誤被溫和地反向傳播到預訓練網絡中,而不是使用未經修改的預訓練網絡。 可以在這裡看到計算機視覺中遷移學習的一個很好的技術介紹。 這個簡單的遷移學習概念在我們的一套有效學習方法中非常重要。
為你推薦:
多任務學習
它是什麼?


在多任務學習中,同時解決多個學習任務,同時利用任務之間的共性和差異。 令人驚訝的是,有時一起學習兩個或多個任務(也稱為主要任務和輔助任務)可以使任務的結果更好。 請注意,並非每一對、三重或四重任務都可以被視為輔助任務。 但是當它起作用時,它是準確度的自由增加。
一些例子
例如,在 ParallelDots,我們的 Sentiment、Intent 和 Emotion Detection 分類器被訓練為多任務學習,與我們單獨訓練它們相比,這提高了它們的準確性。 我們所知道的 NLP 中最好的語義角色標籤和 POS 標記系統是多任務學習系統,因此也是計算機視覺中用於語義和實例分割的最佳系統之一。 谷歌提出了多模式多任務學習者(一個模型來統治他們),可以在同一個鏡頭中從視覺和文本數據集中學習。
告訴我更多!
在現實世界的應用程序中看到的多任務學習的一個非常重要的方面是訓練任何任務成為防彈,我們需要尊重許多領域數據來自(也稱為領域適應)。 我們的貓和狗用例中的一個例子是一種算法,它可以識別不同來源的圖像(比如 VGA 攝像頭和高清攝像頭,甚至紅外攝像頭)。 在這種情況下,可以將域分類的輔助損失(圖像來自哪裡)添加到任何任務中,然後機器學習使得算法在主要任務(將圖像分類為貓或狗圖像)上不斷提高,但是故意在輔助任務上變得更糟(這是通過從域分類任務反向傳播反向誤差梯度來完成的)。 這個想法是該算法學習主要任務的判別特徵,但忘記了區分域的特徵,這將使其變得更好。 多任務學習及其領域適應表親是我們所知道的最成功的有效學習技術之一,並且在塑造人工智能的未來方面發揮著重要作用。
對抗學習
它是什麼?

對抗性學習作為一個領域是從 Ian Goodfellow 的研究工作演變而來的。 雖然對抗學習最流行的應用無疑是生成對抗網絡 (GAN),它可以用來生成令人驚嘆的圖像,但這套技術還有多種其他方式。 通常,這種受博弈論啟發的技術有兩種算法:生成器和鑑別器,其目的是在訓練時互相欺騙。 正如我們所討論的,生成器可用於生成新的新穎圖像,但也可以生成任何其他數據的表示以隱藏鑑別器的細節。 後者是我們對這個概念如此感興趣的原因。
一些例子
這是一個新領域,圖像生成能力可能是天文學家等最感興趣的人關注的焦點。 但我們相信,正如我們稍後所說的那樣,這也會發展出新的用例。
告訴我更多!
使用 GAN 損失可以改善域適應遊戲。 這裡的輔助損失是 GAN 系統而不是純域分類,其中判別器試圖對數據來自哪個域進行分類,而生成器組件試圖通過將隨機噪聲作為數據呈現來欺騙它。 根據我們的經驗,這比普通的域適應(這對代碼也更不穩定)更有效。
少鏡頭學習
它是什麼?

Few Shot Learning 是一項技術研究,與傳統算法相比,深度學習(或任何機器學習算法)算法使用更少的示例進行學習。 One Shot Learning 基本上是使用一個類別的一個示例進行學習,歸納 k-shot 學習意味著使用每個類別的 k 個示例進行學習。
一些例子
很少有鏡頭學習作為一個領域在所有主要的深度學習會議上看到大量論文,現在有特定的數據集可以對結果進行基準測試,就像 MNIST 和 CIFAR 用於正常的機器學習一樣。 One-shot Learning 在某些圖像分類任務中看到了許多應用,例如特徵檢測和表示。
告訴我更多!
有多種方法可用於 Few Shot 學習,包括遷移學習、多任務學習以及作為算法的全部或部分的元學習。 還有其他方法,例如使用巧妙的損失函數、使用動態架構或使用優化技巧。 零鏡頭學習是一類聲稱可以預測算法甚至沒有見過的類別的答案的算法,基本上是可以使用新型數據進行擴展的算法。
元學習
它是什麼?

元學習正是它聽起來的樣子,一種經過訓練的算法,在看到數據集時,它會為該特定數據集生成一個新的機器學習預測器。 如果您第一眼看到這個定義,它就非常具有未來感。 你會覺得“哇! 這就是數據科學家所做的”,它正在使“21 世紀最性感的工作”自動化,從某種意義上說,元學習者已經開始這樣做了。
一些例子
元學習最近成為深度學習的熱門話題,有很多研究論文問世,最常用的技術是超參數和神經網絡優化、尋找好的網絡架構、Few-Shot 圖像識別和快速強化學習。
告訴我更多!
有些人將這種決定參數和超參數(如網絡架構)的完全自動化稱為 autoML,您可能會發現人們將元學習和 AutoML 稱為不同的領域。 儘管圍繞它們進行了大肆宣傳,但事實是元學習者仍然是隨著數據複雜性和多樣性的增加而擴展機器學習的算法和途徑。
大多數元學習論文都是聰明的黑客,根據維基百科,它們具有以下屬性:
- 該系統必須包括一個學習子系統,它可以根據經驗進行調整。
- 通過利用在單個數據集上的先前學習集中或從不同領域或問題中提取的元知識來獲得經驗。
- 學習偏差必須動態選擇。
子系統基本上是一種設置,當域(或全新域)的元數據被引入它時會適應。 該元數據可以說明類別數量的增加、複雜性、顏色和紋理以及對象(在圖像中)、樣式、語言模式(自然語言)和其他類似特徵的變化。 在這裡查看一些超酷的論文:Meta-Learning Shared Hierarchies and Meta-Learning Using Temporal Convolutions。 您還可以使用元學習架構構建 Few Shot 或 Zero Shot 算法。 元學習是最有前途的技術之一,將有助於塑造人工智能的未來。
神經推理
它是什麼?

神經推理是圖像分類問題中的下一件大事。 神經推理是模式識別之上的一個步驟,其中算法正在超越簡單地識別和分類文本或圖像的想法。 神經推理正在解決文本分析或視覺分析中更通用的問題。 例如,下圖表示神經推理可以從圖像中回答的一組問題。
告訴我更多!
這套新技術是在 Facebook 的 bAbi 數據集或最近的 CLEVR 數據集發布之後出現的。 用於破譯關係而不僅僅是模式的技術具有巨大的潛力,不僅可以解決神經推理,還可以解決包括 Few Shot 學習問題在內的多個其他難題。
回去
現在我們知道了這些技術是什麼,讓我們回過頭來看看它們是如何解決我們開始的基本問題的。 下表概述了有效學習技術應對挑戰的能力:

有效學習技術的能力
- 上面提到的所有技術都有助於以某種方式使用較少的數據來解決訓練問題。 雖然元學習將提供僅與數據一起塑造的架構,但遷移學習正在使來自其他領域的知識變得有用,以彌補更少的數據。 很少有鏡頭學習致力於將問題作為一門科學學科。 對抗學習可以幫助增強數據集。
- 領域適應(一種多任務學習)、對抗性學習和(有時)元學習架構有助於解決數據多樣性引起的問題。
- 元學習和少數鏡頭學習有助於解決增量數據的問題。
- 神經推理算法在合併為元學習者或少數鏡頭學習者時具有解決現實世界問題的巨大潛力。
請注意,這些有效學習技術不是新的深度學習/機器學習技術,而是將現有技術作為黑客技術進行擴充,使它們更加物有所值。 因此,您仍然會看到我們的常規工具(例如卷積神經網絡和 LSTM)在運行,但添加了一些香料。 這些有效的學習技術可以使用更少的數據並一次執行許多任務,有助於更輕鬆地生產和商業化人工智能驅動的產品和服務。 在 ParallelDots,我們認識到高效學習的力量並將其作為我們研究理念的主要特徵之一。
Parth Shrivastava 的這篇文章首次出現在 ParallelDots 博客上,經許可轉載。






