


下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、遷移學習讓深度學習更容易遷移學習讓深度學習更容易深度學習在一些傳統(tǒng)方法難以處理的領域有了很大的進展。這 種成功是由于改變了傳統(tǒng)機器學習的幾個出發(fā)點,使其在應用于非結構化數據時性能很好。如今深度學習模型可以玩游戲,檢測癌癥,和人類交談,自動駕駛。深度學習變得強大的同時也需要很大的代價。進行深度學習需要大量的數據、昂貴的硬件、 甚至更昂貴的精英工程人才。在Cloudera Fast Forward實驗室,我們對能解決這些問題的創(chuàng)新特別興奮。我們最新的研 究報告深入探討了多任務學習,一種允許機器學習模型同時從多個任務中學習的方法。其中 的一個好處就是可以減少訓練數據需求。在本文中,我們將講述遷移學習
2、,這是一種可以將知識從一項任務遷移到另一項任務的相 關技術。遷移學習允許你從相關問題中轉移知識而不是針對問題開發(fā)一個完全定制的解決方 案,這能幫助你更輕松地解決特定問題。通過遷移這些知識,你可以減少很多開支,接下來 看一下該方法如何有效地解決上述問題。為什么深度學習不同于其他方法于其他方法 遷移學習不是一種新技術,也不是專門針對 深度學習的,但考慮到最近深度學習的進展,它是一種令人興奮的新技術。首先,有必要說 明深度學習與傳統(tǒng)機器學習的不同之處。深度學習是在較低的抽象層次上進行的深度學習是在較低的抽象層次上進行的機器學習 是機器自動學習函數權重的一種方式。確定函數如何從提供的輸入產生輸出是比較
3、困難的。如果對函數沒有任何限制,那么可能 性是無窮無盡的。為了簡化這個任務,我們通常在功能上強加某種類型的結構基于我們正 在解決的問題的類型或者簡單的嘗試和誤差。這種結構定義了一種機器學習模型。理論上,結構是無限的,但在實踐中,大多數機器學習用例都可以通過應用少數的結構來 解決:線性模型、樹的集合和支持向量機。數據科學家的工作就是從這一小部分可能的結構 中選擇正確的結構使用。這些模型可以作為黑盒對象從各種成熟的機器學習庫中獲得,并且只需要幾行代碼就可以 訓練出來。例如,可以使用Python的scikit-learn來訓練一個隨機森林模型,如下所示clf =RandomForestClassif
4、ier() clf.fit(past_data, labels) predictions = clf.predict(future_data)或 R 中的線性回歸模型:linearModel - lm(y X, data=pastData) predictions - predict(linearModel, futureData)雖然深度學習是在較低的層次上進行的,但并不是在有限的模型結構中進行選 擇的,而是允許實踐者加上自己設計的模型結構。構建塊是可以認為是基本數據轉換的模塊。 這意味著在應用深度學習時,我們需要打開黑盒子,而不是通過算法固定地實現。這樣以來就允許開發(fā)者構建更強大的模型,從
5、另一個角度來看這也為模型構建添加了一個 全新的維度。盡管大量的深度學習研究報告、實用指南被發(fā)表,但要有效地組織這些轉變可 能是一個困難的過程??紤]一個極其簡單的卷積神經網絡圖像分類器,它在流行的深度學習庫PyTorch中定義: class Net(nn.Module): def _init_(self): super(Net, self)._init_() self.conv1 = nn.Conv2d(1, 10, kernel_size=5) self.conv2 = nn.Conv2d(10, 20, kernel_size=5) self.conv2_drop = nn.Dropout2
6、d() self.fc1 = nn.Linear(320, 50) self.fc2 = nn.Linear(50, 10) def forward(self, x): x = F.relu(F.max_pool2d(self.conv1(x), 2) x = F.relu(F.max_pool2d(self.conv2_drop(self.conv2(x), 2) x =x.view(-1, 320) x = F.relu(self.fc1(x) x = F.dropout(x, training=self.training) x = self.fc2(x) return F.log_sof
7、tmax(x, dim=1)因為我們使用的是低級的構建塊,所以我們可以更改模型的單個組 件(例如F.relu,F.sigmoid。這為我們提供了可能會產生不同結果的全新模型體系結構,而這 種可能性是無限的。深度學習尚未被充分理解深度學習尚未被充分理解即使給定一個固定的神經網絡架構,訓練也是非常困難的。首先,深度學習損失函數不是一般的凸函數,這意味著訓練不一定會 產生最好的解決方案。其次,深度學習仍然是非常新的,它的許多組成部分還沒有被很好地理解。例如,批處理歸一化最近受 到了關注,因為一些模型中它似乎對良好結果至關重要,但專家們無法就原因達成一致。研 究員阿里拉希米在最近的一次機器學習會議上把
8、深度學習比作煉金術引起了一些爭議。自動特征工程程深度學習中增加的復雜性使一種稱為表示學習的技術得以實現,這就是 為什么神經網絡經常被稱為自動特征工程??傊?,我們以這樣一種方式構建模型而不需要 從數據集中人工設計有用的特征,這樣它們就可以學習任何必要的、對手頭任務有用的特征。 將特征工程放到模型上是非常強大的,但是需要大量數據和大量計算能力的模型成本。你能做什么你能做什么與其他機器學習方法相比,深度學習顯得很復雜,以至于它似乎 難以融入你的業(yè)務。對于資源有限的組織來說,這種感覺更加強烈。對于真正需要投入大量資源進行開發(fā)的組織,可能確實需要雇傭專家并購買專門的硬件。 但在很多情況下,這是不必要的。
9、有很多方法可以在不進行巨額投資的情況下有效地應用它, 這就是遷移學習的由來。轉移學習是使知識從一種機器學習模式遷移到另一種機器學習模式的技術。這些模型可能 是多年來對模型結構的研究、對龐大數據集的訓練以及多年的計算時間進行優(yōu)化的結果。通 過遷移學習,你可以不用付出任何代價就能從這項工作中獲得好處。什么是轉移學習什么是轉移學習?大多數機器學習任務從零知識開始,這意味著模型的結 構和參數開始是隨機猜測的。例如:檢測貓模型是通過猜測開始訓練的,它通過聚集它所見過的許多不同的貓的共同模 式,逐漸了解貓是什么。在這種情況下,模型學到的所有東西都來自所給出的數據。但這是解決問題的唯一方法嗎? 在某些情況下
10、,好像是。檢測貓的模型在不相關的應用程序中可能是無用的,比如詐騙檢測。它只知道如何理解貓 的圖片,而不是信用卡交易。但在其他情況下,兩個系統(tǒng)之間好像能夠在任務之間共享信息。貓檢測器在相關任務中很有用,比如貓的面部定位。檢測器應該已經知道如何檢測貓的胡 須、鼻子和眼睛所有這些東西在定位貓的臉時都很有用。這就是轉移學習的本質:采用一個已經學會如何很好地完成一項任務的模型,并將部分知識 遷移到相關任務。當我們檢查自己的學習經驗時,也證明著遷移學習的正確性;我們定期會遷移過去學到的技 能,以便更快地學習新的技能。例如,一個已經學會扔棒球的人不需要完全重新學習扔球的 技巧來學習如何扔足球。這些事情是內在
11、相關的,做好其中一件事的能力自然會轉化為做好 另一件事的能力。在機器學習領域,沒有比過去五年的計算機視覺領域更好的例子了。一開始訓練模型是很 少見的。相反,我們從一個預先訓練好的模型開始,這個模型已經知道如何分類簡單的物體, 比如貓、狗和雨傘。學習對圖像進行分類的模型首先要學習檢測一般圖像特征,如邊緣、形 狀、文本和面孔。預訓練模型具有這些基本技能。通過在新數據集上添加層或重新訓練,可以稍微修改預先 訓練的分類模型,將這些昂貴的基本技能遷移到新的專門化中,這就是遷移學習。遷移學習需要更少的訓練數據遷移學習需要更少的訓練數據當你在一個新的與貓相關的 任務中再次用你的貓檢測模型時,你的模型已經有了
12、認識一百萬只貓的智慧,這意味著你 不需要使用幾乎同樣多的圖片來訓練新的任務。通過遷移學習的模型泛化能力更好通過遷移學習的模型泛化能力更好遷移學習提高了泛 化能力,或者提高了模型在未經訓練的數據上表現良好的能力。這是因為預先訓練的模型是 有目的地訓練任務,這些任務迫使模型學習在相關上下文中有用的通用特性。當模型遷移到 一個新的任務時,很難對新的訓練數據進行過度擬合,因為模型只能從一個非常一般的知識 庫中增量地學習。建立一個泛化能力好的模型是機器學習中最困難也是最重要的部分之一。遷移學習訓練過程并不那么脆弱遷移學習訓練過程并不那么脆弱從一個預先訓練好的模 型開始有助于克服訓練一個復雜模型的、令人沮喪的、脆弱的和混亂的過程。遷移學習將可 訓練參數的數量減少了 100%,使訓練更穩(wěn)定,更容易調試。轉移學習使深度學習更容易轉移學習使深度學習更容易最后,遷移學習使深度學習更容 易進行,因為不需要自己成為專家來獲得專家級別的結果。比如流行的圖像分類模型Resnet-50。這個特定的架構是如何選擇的?這是多年來各種深度學習專家的研究和實驗的結果。在這個 復雜的結構中有2500萬個權重,如果沒
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 聚焦海上成品油運輸合同新篇章
- 瑜伽課程預約合同
- 酒店經營轉讓合同范本
- 草莓購銷合同范本
- 工程項目合同廉政承諾書范文
- 誠信標志合作合同范本
- 人工智能在醫(yī)療保健中的創(chuàng)新考核試卷
- 木材切削刀具的選用與磨損分析考核試卷
- 云母制品在太陽能熱水器中的應用考核試卷
- 安全網絡數據安全應急響應考核試卷
- 2025年上半年潛江市城市建設發(fā)展集團招聘工作人員【52人】易考易錯模擬試題(共500題)試卷后附參考答案
- 旋轉類機電設備故障預測、診斷研究
- 新媒體營銷(第三版) 課件全套 林海 項目1-6 新媒體營銷認知-新媒體營銷數據分析
- 愚公移山英文 -中國故事英文版課件
- DB52∕T 1413-2019 黎平牛-行業(yè)標準
- 公園綠化養(yǎng)護景觀綠化維護項目迎接重大節(jié)會活動的保障措施
- 國內外旅游公共服務研究的文獻綜述
- 集團公司各職能部管控分權手冊
- 機車電測儀表使用及檢修
- PMS顏色對照表
- 2012年北京大學醫(yī)學部外國留學生本科入學考試
評論
0/150
提交評論