熱線電話:13121318867

登錄
首頁精彩閱讀一文帶你深入了解,什么是深度學習及其工作原理
一文帶你深入了解,什么是深度學習及其工作原理
2019-12-25
收藏
一文帶你深入了解,什么是<a href='/map/shenduxuexi/' style='color:#000;font-size:inherit;'>深度學習</a>及其工作原理

作者 | CraigStedman

編譯 | CDA數據科學研究院

深度學習機器學習(ML)和人工智能(AI)的一種,它模仿人類獲取某些類型的知識的方式。深度學習是數據科學的重要元素,其中包括統計和預測模型。對于負責收集,分析和解釋大量數據的數據科學家而言,這是極為有益的。深度學習使此過程更快,更輕松。

從最簡單的角度講,可以將深度學習視為自動化預測分析的一種方式。盡管傳統的機器學習算法是線性的,但深度學習算法卻以越來越復雜和抽象的層次結構堆疊在一起。

要了解深度學習,請想象一個第一個單詞是dog的小孩。幼兒通過指向物體并說出“ 狗 ”一詞來了解狗是什么—不是狗。父母說:“是,那是狗”,或者:“否,那不是狗”。隨著幼兒繼續指向物體,他逐漸意識到所有狗所具有的特征。幼兒在不知情的情況下通過建立層次結構來闡明復雜的抽象概念(狗的概念),在層次結構中,每個抽象層次都是使用從層次結構的上一層獲得的知識來創建的。

深度學習如何工作

使用深度學習的計算機程序所經歷的過程與蹣跚學步的學習來識別狗的過程幾乎相同。層次結構中的每個算法都對其輸入應用非線性變換,并使用其學習的知識來創建統計模型作為輸出。迭代一直持續到輸出達到可接受的精度水平為止。數據必須經過的處理層數是促使標簽產生深刻影響的原因。

在傳統的機器學習中,學習過程是受監督的,并且程序員在告訴計算機應尋找哪種類型的事物以決定圖像包含狗還是不包含狗時,必須非常具體。這是一個費力的過程,稱為特征提取,計算機的成功率完全取決于程序員為“狗”準確定義特征集的能力。深度學習的優勢是程序無需監督即可自行構建功能集。無監督學習不僅更快,而且通常更準確。

一文帶你深入了解,什么是<a href='/map/shenduxuexi/' style='color:#000;font-size:inherit;'>深度學習</a>及其工作原理

最初,計算機程序可能會提供訓練數據-一組圖像,人類已經為這些圖像使用元標簽將每個圖像標記為“狗”或“非狗” 。該程序使用從訓練數據中接收到的信息來創建“狗”的功能集并建立預測模型。在這種情況下,計算機首先創建的模型可能會預測圖像中具有四只腿和一條尾巴的任何東西都應標記為“狗”。當然,該程序不知道標簽“四腿”或“尾巴”。它將僅查找數字數據中的像素模式。每次迭代,預測模型都會變得更加復雜和準確。

與需要花費數周甚至數月才能了解“狗”概念的幼兒不同,可以向使用深度學習算法的計算機程序顯示一個訓練集,并對數百萬張圖像進行分類,以準確識別其中包含狗的圖像。

為了達到可接受的精度水平,深度學習程序需要訪問大量的培訓數據和處理能力,在大數據和云計算時代之前,程序員都無法輕松獲得這兩種數據。因為深度學習編程可以直接從其自己的迭代輸出中創建復雜的統計模型,所以它能夠從大量未標記,未結構化的數據中創建準確的預測模型。這一點很重要,因為物聯網(IoT)繼續變得越來越普及,因為人類和機器創建的大多數數據都是非結構化的,并且沒有標簽。

什么是深度學習神經網絡?

一種高級的機器學習算法,稱為人工神經網絡,是大多數深度學習模型的基礎。結果,深度學習有時可能被稱為深度神經學習或深度神經網絡。

神經網絡有幾種不同的形式,包括遞歸神經網絡,卷積神經網絡,人工神經網絡和前饋神經網絡-每種都有針對特定用例的好處。但是,它們都以某種相似的方式發揮作用,通過輸入數據并讓模型自己確定模型是否對給定的數據元素做出了正確的解釋或決策。

神經網絡涉及反復試驗的過程,因此它們需要大量的數據進行訓練。僅在大多數企業接受大數據分析并積累大量數據存儲之后,神經網絡才流行起來,這并非巧合。由于模型的前幾次迭代涉及對圖像或語音部分的內容進行過某種程度的猜測,因此必須標記訓練階段使用的數據,以便模型可以查看其猜測是否準確。這意味著,盡管許多使用大數據的企業擁有大量數據,但非結構化數據的幫助較小。非結構化數據只有經過訓練并達到可接受的準確性水平,才能通過深度學習模型進行分析,但是深度學習模型無法對非結構化數據進行訓練。

一文帶你深入了解,什么是<a href='/map/shenduxuexi/' style='color:#000;font-size:inherit;'>深度學習</a>及其工作原理

深度學習方法

可以使用各種不同的方法來創建強大的深度學習模型。這些技術包括學習率衰減,遷移學習,從頭開始和輟學訓練。

學習率下降。學習速率是一個超參數-一個在學習過程之前定義系統或為其系統設置條件的因素-每次更改模型權重時,該模型將控制模型對響應于估計誤差的變化量。太高的學習率可能會導致訓練過程不穩定或無法獲得最佳的權重。太小的學習率可能會導致冗長的培訓過程,從而有可能被卡住。

學習速率衰減方法-也稱為學習速率退火或自適應學習速率-是調整學習速率以提高性能并減少訓練時間的過程。訓練過程中最簡單,最常見的學習率調整包括隨時間降低學習率的技術。

轉移學習。這個過程涉及完善先前訓練過的模型;它需要一個到現有網絡內部接口。首先,用戶向現有網絡提供包含以前未知分類的新數據。一旦對網絡進行了調整,就可以使用更具體的分類功能執行新任務。這種方法的優點是所需數據比其他方法少得多,從而將計算時間減少到數分鐘或數小時。

從頭開始訓練。此方法要求開發人員收集大標簽的數據集并配置可以學習功能和模型的網絡體系結構。該技術對于新應用程序以及具有大量輸出類別的應用程序特別有用。但是,總的來說,這是一種不太常見的方法,因為它需要大量的數據,導致培訓需要幾天或幾周的時間。

退出。該方法試圖通過在訓練過程中從神經網絡中隨機刪除單元及其連接來解決具有大量參數的網絡的過擬合問題。已經證明,輟學方法可以提高神經網絡在語音識別,文檔分類和計算生物學等領域的監督學習任務上的性能。

深度學習應用示例

由于深度學習模型以類似于人腦的方式處理信息,因此它們可以應用于人們執行的許多任務。目前,深度學習已用于大多數常見的圖像識別工具,自然語言處理和語音識別軟件中。這些工具開始在自動駕駛汽車和語言翻譯服務等各種應用程序中出現。

一文帶你深入了解,什么是<a href='/map/shenduxuexi/' style='color:#000;font-size:inherit;'>深度學習</a>及其工作原理

深度學習有什么用?

如今,深度學習的用例包括所有類型的大數據分析應用程序,尤其是那些側重于自然語言處理,語言翻譯,醫學診斷,股市交易信號,網絡安全和圖像識別的應用程序。

當前正在使用深度學習的特定領域包括:

  • 客戶體驗。深度學習模型已經用于聊天機器人。并且,隨著它的不斷成熟,有望在各種業務中實施深度學習,以改善客戶體驗并提高客戶滿意度。
  • 文字生成。正在教機器文本的語法和樣式,然后使用該模型自動創建與原始文本的正確拼寫,語法和樣式匹配的全新文本。
  • 航空航天和軍事。深度學習被用于從衛星中檢測物體,以識別出感興趣的區域以及部隊的安全區域或不安全區域。
  • 工業自動化。深度學習通過提供自動檢測何時工人或物體離機器太近的服務來改善工廠和倉庫等環境中的工人安全。
  • 添加顏色??梢允褂?a href='/map/shenduxuexi/' style='color:#000;font-size:inherit;'>深度學習模型將顏色添加到黑白照片和視頻中。過去,這是一個非常耗時的手動過程。
  • 醫學研究。癌癥研究人員已開始在其實踐中實施深度學習,以自動檢測癌細胞。
  • 計算機視覺。深度學習極大地增強了計算機視覺,為計算機提供了極高的精度,可進行對象檢測以及圖像分類,恢復和分割。

局限與挑戰

深度學習模型的最大局限性在于它們通過觀察來學習。這意味著他們只知道他們所訓練的數據中包含的內容。如果用戶的數據量很少或來自某個特定來源(不一定代表更廣泛的功能區域),則模型將無法以可推廣的方式學習。

偏差問題也是深度學習模型的主要問題。如果模型訓練包含偏差的數據,則該模型將在其預測中重現這些偏差。對于模型深度學習的程序員來說,這是一個令人頭疼的問題,因為模型會根據數據元素的細微變化來學習區分。通常,程序員所確定的因素往往很重要。這意味著,例如,面部識別模型可能會基于種族或性別等事物來確定人的性格,而程序員不會意識到。

學習率也可能成為深度學習模型的主要挑戰。如果速率太高,則該模型將收斂太快,從而產生次優解決方案。如果速率太低,則該過程可能會卡住,甚至很難找到解決方案。

深度學習模型的硬件要求也會造成限制。需要多核高性能圖形處理單元(GPU)和其他類似的處理單元,以確保提高效率和減少時間消耗。但是,這些單元價格昂貴并且消耗大量能量。其他硬件要求包括隨機存取存儲器(RAM)和硬盤驅動器或基于RAM的固態驅動器(SSD)。

一文帶你深入了解,什么是<a href='/map/shenduxuexi/' style='color:#000;font-size:inherit;'>深度學習</a>及其工作原理

其他限制和挑戰包括:

  • 深度學習需要大量數據。此外,功能更強大,更準確的模型將需要更多參數,進而需要更多數據。
  • 訓練后,深度學習模型將變得僵化,無法處理多任務。他們可以提供有效且準確的解決方案,但只能解決一個特定問題。即使解決類似的問題,也需要重新培訓系統。
  • 任何需要推理的應用程序(例如編程或應用科學方法)的長期規劃和類似算法的數據處理,即使對于大數據,也完全超出了當前深度學習技術的能力范圍。

深度學習機器學習

深度學習機器學習的一個子集,它通過解決問題的方式與眾不同。機器學習需要領域專家來識別大多數應用功能。另一方面,深度學習會逐步學習特征,從而消除了對領域專業知識的需求。這使得深度學習算法的訓練時間比機器學習算法要長得多,機器學習算法只需要幾秒鐘到幾小時。但是,在測試期間反之亦然。深度學習算法運行測試所需的時間比機器學習算法要少得多,后者的測試時間隨數據量的增加而增加。

此外,機器學習不需要像深度學習那樣昂貴的高端機器和高性能GPU。

最后,由于其卓越的可解釋性或理解解決方案的能力,許多數據科學家選擇傳統的機器學習而非深度學習。當數據較小時,機器學習算法也是首選。

深度學習變得更可取的情況包括:數據量大,特征自省或對諸如語音識別和自然語言處理之類的復雜問題缺乏領域理解的情況。

歷史

深度學習的歷史可以追溯到1943年,當時Warren McCulloch和Walter Pitts使用數學和算法為神經網絡創建了一個計算模型。但是,直到2000年代中期才出現“深度學習”一詞。在Geoffrey Hinton和Ruslan Salakhutdinov發表論文之后,它得到了普及,該論文顯示了如何一次訓練多層神經網絡。

一文帶你深入了解,什么是<a href='/map/shenduxuexi/' style='color:#000;font-size:inherit;'>深度學習</a>及其工作原理

2012年,Google的算法揭示了識別貓的能力,從而在深度學習方面給人留下了深刻的印象。兩年后的2014年,谷歌從英國收購了人工智能初創公司DeepMind。兩年后,2016年,谷歌DeepMind的算法AlphaGo掌握了復雜的棋盤游戲Go,在漢城的一場比賽中擊敗了職業玩家Lee Sedol。

最近,深度學習模型已在人工智能領域產生了大部分進步。深度強化學習已經成為一種將AI與復雜的應用程序集成的方法,例如機器人技術,視頻游戲和自動駕駛汽車。深度學習與強化學習之間的主要區別在于,深度學習從訓練集學習,然后將學到的知識應用于新的數據集,而深度強化學習則通過使用連續反饋調整動作來動態學習,以優化獎勵。

強化學習代理具有提供對生成對抗網絡(GAN)的快速而強大的控制的能力。對抗閾值神經計算機(ATNC)將深度強化學習與GAN結合在一起,以設計具有特定的所需藥理學性質的有機小分子。

GAN還被用于生成用于機器學習任務的人工訓練數據,可用于數據集不平衡的情況或數據包含敏感信息的情況。

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢