日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

這篇文章的目的是回顧經過時間考驗的,被廣泛采用的想法。我將介紹一小部分技術,這些技術涵蓋了解現代深度學習研究所必需的許多基本知識。如果你是該領域的新手,那么這是一個很好的起點。

 

深度學習是一個瞬息萬變的領域,大量的研究論文和想法可能會令人不知所措。即使是經驗豐富的研究人員,也很難告訴公司PR什么是真正的突破。這篇文章的目的是回顧經受住時間考驗的想法,這也許是人們應該依靠的唯一參考標準。這些想法或對它們的改進已被反復使用。他們已經“家喻戶曉”。

 

如果你今天要開始學習深度學習,那么理解和實現這些技術中的每一個都將為你了解最新研究和開展自己的項目奠定良好的基礎。這就是我認為最好的入門方法。以歷史順序瀏覽論文也是了解當前技術的來歷以及為什么會發明它們。換句話說,我會盡量呈現最小集的想法,最必要的基本知識,了解現代的深度學習研究核心發展歷程。

免費pdf好書推薦:

2020最新版《神經網絡與深度學習》中文版PDF免費開放下載

劉知遠老師7月新書-《自然語言處理表示學習》免費書分享

 

關于深度學習的一個相當獨特的事情是它的應用領域(視覺,自然語言,語音,RL等)共享大多數技術。例如,某人曾在計算機視覺深度學習領域工作過,整個職業很快就能在NLP研究中取得成果。特定的網絡體系結構可能有所不同,但是概念,方法和代碼基本相同。我將嘗試介紹來自各個領域的想法,但此列表有一些警告:

1. 我的目標不是為這些技術提供深入的解釋或代碼示例。將長篇復雜的論文總結成一個段落是不容易的。相反,我將簡要概述每種技術,其歷史背景以及與論文和實現的鏈接。如果你想學習一些東西,我強烈建議你嘗試在不使用現有代碼庫或高級庫的情況下,從頭開始在原始PyTorch中重現其中的某些紙本結果。

 

2. 該列表偏向于我自己的知識和我熟悉的領域。我沒有很多激動人心的子領域。我會堅持大多數人認為的主流領域,包括視覺,自然語言,語音和強化學習/游戲。

 

3. 我將只討論具有已知能很好運行的官方或半官方開源實現的研究。有些研究不容易重現,因為它涉及巨大的工程挑戰,例如DeepMind的AlphaGo或OpenAI的Dota 2 AI,因此在這里我不會重點介紹。

 

4. 有些選擇是任意的。通常,大約在同一時間發布相當相似的技術。這篇文章的目的不是要進行全面的回顧,而是要使剛接觸該領域的新人了解涵蓋很多領域的各種觀點。例如,可能有數百種GAN變體,但是要了解GAN的一般概念,你學習哪一個都沒關系。

 

2012年-使用AlexNet和Dropout解決ImageNet

Papers

ImageNet Classification with Deep Convolutional Neural Networks (2012)[1]

 

Improving neural networks by preventing co-adaptation of feature detectors (2012) [2]

 

One weird trick for parallelizing convolutional neural networks (2014) [14]

 

Implementations

AlexNet in PyTorch(https://pytorch.org/hub/pytorch_vision_alexnet)

 

AlexNet in TensorFlow(https://github.com/tensorflow/models/blob/master/research/slim/nets/alexnet.py)

一文回顧深度學習發展史上最重要經典模型

 

資料來源:https : //papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks

AlexNet通常被認為是導致深度學習和人工智能研究近來蓬勃發展的算法。它是基于Yann LeCun開發的早期LeNet的深度卷積神經網絡。AlexNet 通過結合GPU的強大功能和先進的算法,大大超越了以前對ImageNet數據集中的圖像進行分類的方法。它證明了神經網絡確實有效!AlexNet也是最早使用Dropout [2]的平臺之一,此后它已成為提高各種深度學習模型的泛化能力的關鍵組成部分。

 

AlexNet使用的體系結構,一系列卷積層,ReLU非線性和最大池化,已成為將來的計算機視覺體系結構可以擴展和建立的公認標準。如今,諸如PyTorch之類的軟件庫是如此強大,并且與最新的體系結構相比,AlexNet非常簡單,因此僅需幾行代碼即可實現。注意,AlexNet的許多實現(例如上面鏈接的實現)都使用一種怪異的技巧中 描述的網絡的細微變化來并行化卷積神經網絡[14]。(https://arxiv.org/abs/1404.5997)

 

2013年-通過深度強化學習玩Atari

Papers

Playing Atari with Deep Reinforcement Learning (2013)聽[7]

 

Implementations

DQN in PyTorch(https://pytorch.org/tutorials/intermediate/reinforcement_q_learning.html)

 

DQN in TensorFlow(https://www.tensorflow.org/agents/tutorials/1_dqn_tutorial)

一文回顧深度學習發展史上最重要經典模型

 

 

資料來源:https : //deepmind.com/research/publications/human-level-control-through-deep-reinforcement-learning

在最近在圖像識別和GPU方面取得突破的基礎上,DeepMind的團隊成功地訓練了一個網絡,可以通過原始像素輸入來玩Atari游戲。而且,相同的神經網絡體系結構學會了玩七種不同的游戲,而沒有被告知任何特定于游戲的規則,這證明了這種方法的普遍性。

 

強化學習與“監督學習”(例如圖像分類)的不同之處在于,Agent必須在多個時間步長(例如贏得比賽)中學習最大化的獎勵總和,而不僅僅是預測標簽。由于Agent直接與環境交互,并且每個動作都會影響環境,因此訓練數據不是獨立的且分布均勻(iid),這使得許多機器學習模型的訓練非常不穩定。這是通過使用諸如經驗重播等技術解決的[15]。

 

盡管沒有明顯的算法創新可以使這項工作奏效,但這項研究巧妙地結合了現有技術,在GPU上訓練的卷積神經網絡和體驗重播,以及一些數據處理技巧,以實現大多數人無法預期的令人印象深刻的結果。這使人們有信心擴展“深度強化學習”技術,以解決更復雜的任務,例如Go,Dota 2,Starcraft 2等。

 

此后,Atari Games [21]已成為強化學習研究的標準基準。最初的方法僅解決了7場比賽(超過了人類的基準),但是在未來幾年中,基于這些思想的進步將開始在越來越多的游戲上擊敗人類。蒙特祖瑪的《復仇》是一款特別的游戲,因需要長期規劃而聞名,被認為是最難解決的游戲之一。直到最近[23] [22],這些技術才在所有57款游戲中都超過了人類的水平。

 

2014年-帶注意力(Attention)的編碼器-解碼器網絡

Papers

Sequence to Sequence Learning with Neural Networks [4]

 

Neural machine Translation by Jointly Learning to Align and Translate [3]

 

Implementations

Seq2Seq with Attention in PyTorch(https://pytorch.org/tutorials/intermediate/seq2seq_translation_tutorial.html#)

 

Seq2Seq with Attention in TensorFlow(https://www.tensorflow.org/addons/tutorials/networks_seq2seq_nmt)

一文回顧深度學習發展史上最重要經典模型

 

來源:https : //ai.googleblog.com/2017/04/introducing-tf-seq2seq-open-source.html

深度學習最令人印象深刻的結果主要是與視覺相關的任務,并且是由卷積神經網絡驅動的。盡管NLP社區在使用LSTM網絡[16]和編碼器-解碼器體系結構[4]進行語言建模和翻譯方面取得了成功,但直到注意力機制[3]的發明才開始取得令人矚目的成就。

 

在處理語言時,每個token(可能是字符,單詞或介于兩者之間的某種事物)都會被饋送到循環網絡(例如LSTM)中,該網絡維護一種先前處理過的輸入的memory。換句話說,一個句子與時間序列非常相似,每個token都是一個時間步。這些循環模型通常很難處理長期的依賴關系。當他們處理序列時,他們很容易“忘記”較早的輸入,因為它們的梯度需要通過許多時間步長傳播。使用梯度下降來優化這些模型非常困難。

 

新的注意力機制有助于緩解這一問題。它通過引入快捷方式連接為網絡提供了一種在較早的時間步長自適應“回頭看”的選項。這些連接使網絡可以決定在生成特定輸出時哪些輸入很重要。典范的例子是翻譯:生成輸出詞時,通常會映射到一個或多個特定的輸入詞。

免費pdf好書推薦:

2020最新版《神經網絡與深度學習》中文版PDF免費開放下載

劉知遠老師7月新書-《自然語言處理表示學習》免費書分享

 

2014-Adam優化器

Papers

Adam: A Method for Stochastic Optimization [12]

 

Implementations

Implementing Adam in Python(https://d2l.ai/chapter_optimization/adam.html)

 

PyTorch Adam implementation(https://pytorch.org/docs/master/_modules/torch/optim/adam.html)

 

TensorFlow Adam implementation(https://github.com/tensorflow/tensorflow/blob/v2.2.0/tensorflow/python/keras/optimizer_v2/adam.py#L32-L281)

一文回顧深度學習發展史上最重要經典模型

 

資料來源:http : //arxiv.org/abs/1910.11758

通過使用優化器使損失函數(例如平均分類誤差)最小化來訓練神經網絡。優化器負責弄清楚如何調整網絡參數以使其了解目標。大多數優化器

 

基于隨機梯度下降法(SGD)的變體。但是,許多這些優化器本身都包含可調參數,例如學習率。為特定問題找到正確的設置,不僅可以減少訓練時間,而且由于可以找到更好的損失函數局部最小值,因此也可以得到更好的結果。

 

大型研究實驗室經常運行昂貴的超參數搜索,這些搜索帶有復雜的學習速率計劃,以便從簡單但對超參數敏感的優化器(例如SGD)中獲得最大收益。當它們超過現有基準時,有時是由于花費大量資金來優化優化器的結果。這樣的細節常常在已發表的研究論文中沒有提到。沒有相同預算來優化其優化器的研究人員陷入了更糟糕的結果。

 

Adam優化器建議使用梯度的第一和第二階來自動調整學習率。結果證明是非常可靠的,并且對超參數選擇不太敏感。換句話說,Adam經常可以正常工作,不需要像其他優化程序一樣進行廣泛的調整[24]。盡管調整得非常好的SGD仍然可以獲得更好的結果,但是Adam使研究更容易進行,因為如果某些事情不起作用,你就知道這不太可能是調整不當的優化器的錯。

 

2014/2015-生成對抗網絡(GAN)

Papers

Generative Adversarial Networks [6]

 

Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks [17]

 

Implementations

DCGAN in PyTorch(https://pytorch.org/tutorials/beginner/dcgan_faces_tutorial.html)

 

DCGAN in TensorFlow(https://www.tensorflow.org/tutorials/generative/dcgan)

一文回顧深度學習發展史上最重要經典模型

 

來源:https://developers.google.com/machine-learning/gan/gan_structure

生成模型(例如變體自動編碼器)的目標是創建看起來逼真的數據樣本,例如你可能在某處看到的這些人臉圖像。因為他們必須對整個數據分布進行建模(很多像素!),而不僅僅是將貓或狗分類為判別模型,所以此類模型通常很難訓練。生成對抗網絡(GAN)就是這樣一種模型。

 

GAN的基本思想是串聯訓練兩個網絡-生成器和鑒別器。生成器的目標是生成使鑒別器蒙蔽的樣本,該樣本經過訓練可以區分真實圖像和生成的圖像。隨著時間的流逝,鑒別器將在識別假貨方面變得更好,但生成器也將在欺騙鑒別器方面變得更好,從而生成看起來更逼真的樣本。GAN的第一次迭代會產生模糊的低分辨率圖像,并且訓練起來非常不穩定。但是隨著時間的推移,變化和改進,例如DCGAN [17],Wasserstein GAN [25],CycleGAN [26],StyleGAN(v2)[27],以及其他許多人都基于此想法來生成高分辨率的逼真的圖像和視頻。

 

2015年-殘差網絡(ResNet)

Papers

Deep Residual Learning for Image Recognition聽[13]

 

Implementations

ResNet in PyTorch(https://github.com/pytorch/vision/blob/master/torchvision/models/resnet.py)

 

ResNet in Tensorflow(https://github.com/tensorflow/tensorflow/blob/v2.2.0/tensorflow/python/keras/Applications/resnet.py)

一文回顧深度學習發展史上最重要經典模型

 

研究人員一直在AlexNet突破的基礎上發展了一段時間,發明了基于卷積神經網絡的性能更好的架構,例如VGGNet [28],Inception [29]等。ResNet是這一系列快速發展中的下一個迭代。迄今為止,ResNet變體通常用作各種任務的基準模型架構,也用作更復雜的架構的基礎。

 

除了在ILSVRC 2015分類挑戰中獲得第一名之外,ResNet 之所以與眾不同,還在于其與其他網絡體系結構相比的深度。本文中介紹的最深層網絡具有1,000層,并且仍然表現良好,盡管在基準任務上比其101和152層對應的網絡稍差。由于梯度消失了,訓練這樣的深度網絡是一個具有挑戰性的優化問題,它也出現在序列模型中。沒有多少研究人員認為訓練如此深的網絡可以帶來良好的穩定結果。

 

ResNet使用了身份快捷方式連接來幫助梯度流動。解釋這些連接的一種方法是ResNet僅需要學習從一層到另一層的“增量”,這通常比學習完整的轉換要容易。這種身份連接是公路網[30]中提出的連接的特例,而連接又受到LSTM使用的門控機制的啟發。

 

2017-Transformer

Papers

Attention is All You Need聽[5]

 

Implementations

PyTorch: Sequence-to-Sequence Modeling with nn.Transformer and TorchText(https://pytorch.org/tutorials/beginner/transformer_tutorial.html)

 

Tensorflow: Transformer model for language understanding(https://www.tensorflow.org/tutorials/text/transformer)

 

HuggingFace Transformers Library(https://github.com/huggingface/transformers)

一文回顧深度學習發展史上最重要經典模型

 

資料來源:https : //arxiv.org/abs/1706.03762

帶注意力機制的序列到序列模型(在本文的前面已經介紹過)工作得很好,但是由于它們的遞歸特性需要順序計算,因此它們有一些缺點。它們很難并行化,因為它們一次只處理一步。每個時間步取決于上一個。這也使得很難將它們縮放到非常長的序列。即使有了他們的注意力機制,他們仍然在建模復雜的遠程依賴項方面仍在掙扎。大多數“工作”似乎都是在循環層中完成的。

 

Transformer解決了這些問題,方法是完全消除重復現象,并用多個前饋自我關注層代替它,并行處理所有輸入,并在輸入和輸出之間產生相對較短的路徑(使用梯度下降易于優化)。這使他們真正快速地訓練,易于擴展并且能夠處理更多數據。為了告訴網絡有關輸入的順序(在遞歸模型中是隱式的),Transformers使用了位置編碼[19]。要了解有關Transformer工作原理的更多信息(一開始可能會有些困惑),我建議你使用圖示指南。

 

要說Transformer比幾乎任何人都預期的要好,那是輕描淡寫。在接下來的幾年中,它們將成為絕大多數NLP和其他序列任務的標準體系結構,甚至進入計算機視覺體系結構。

 

2018年-BERT和經過微調的NLP模型

Papers

BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding [9]

 

Implementations

Fine-Tuning BERT with HuggingFace(https://huggingface.co/transformers/training.html)

一文回顧深度學習發展史上最重要經典模型

 

預訓練是指訓練模型以執行某些任務,然后將學習到的參數用作初始化以學習相關任務。這具有直覺的意義-已經學會將圖像分類為貓或狗的模型應該已經了解了有關圖像和毛茸茸的動物的一般知識。當對該模型進行微調以對狐貍進行分類時,我們希望它比必須從頭學習的模型做得更好。類似地,已經學會預測句子中下一個單詞的模型應該已經學會了有關人類語言模式的一般知識。我們希望它對于相關任務(如翻譯或情感分析)是一個很好的初始化方法。

 

預訓練和微調已在Computer Vision和NLP中成功使用,但是很長一段時間以來它一直是視覺標準,但使其在NLP中正常工作似乎更具挑戰性。大多數最新結果仍來自完全受監督的模型。隨著Transformer的出現,研究人員終于開始進行預培訓工作,從而產生了諸如ELMo [34],ULMFiT [35]和OpenAI的GPT之類的方法。

 

BERT是此類開發的最新成果,許多人認為它已經開啟了NLP研究的新紀元。像大多數其他模型一樣,它沒有經過預測其他單詞的預訓練,而是預測了句子中任何地方的被屏蔽(有意刪除)的單詞,以及兩個句子是否可能彼此跟隨。請注意,這些任務不需要標記的數據。它可以在任何文本上進行訓練,而且很多!這個預先訓練的模型可能已經學習了一些關于語言的一般屬性,然后可以對其進行微調以解決監督任務,例如問題回答或情緒預測。BERT在各種各樣的任務中都表現出色。HuggingFace等公司輕松下載和微調針對任何NLP任務的類似BERT的模型。從那時起,BERT就建立在諸如XLNet [31]和RoBERTa [32]和ALBERT [33]的發展之上。

 

2019/2020年及以后-BIG語言模型,自監督學習?

整個深度學習歷史上最明顯的趨勢也許就是慘痛的教訓。更好的并行化(=更多數據)和更多模型參數的算法進步一次又一次地贏得了“更智能的技術”。這種趨勢似乎延續到2020,其中GPT-3 ,通過OpenAI一個巨大的175十億參數語言模型,顯示了出乎意料的良好的泛化能力,盡管它的簡單訓練目標和標準架構。

 

同樣的趨勢是諸如對比自監督學習(例如SimCLR)之類的方法,它們可以更好地利用未標記的數據。隨著模型變得越來越大,訓練起來越來越快,可以有效利用Web上大量未標記數據并學習可以轉移到其他任務的通用知識的技術變得越來越有價值并被廣泛采用。

分享到:
標簽:深度 學習
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定