深度學習是一組令人興奮的神經網絡新技術。通過結合先進的訓練技術和神經網絡架構組件,現在可以創建神經網絡,該神經網絡可以處理表格數據、圖像、文本和音頻作為輸入和輸出。深度學習允許神經網絡以類似人腦功能的方式學習信息的層次結構。本課程將向學生介紹經典的神經網絡結構,卷積神經網絡(CNN),長短期記憶(LSTM),門通遞歸神經網絡(GRU),一般對抗網絡(GAN)和強化學習。本課程將涵蓋這些在計算機視覺、時間序列、安全、自然語言處理(NLP)和數據生成方面的應用。高性能計算(HPC)方面將演示如何在圖形處理單元(GPU)和網格上利用深度學習。重點主要放在深度學習對問題的應用上,并介紹一些數學基礎。學生將使用Python編程語言,使用谷歌TensorFlow和Keras實現深度學習。在學習這門課程之前,不需要了解Python;但是,假設您熟悉至少一種編程語言。本課程將以混合形式提供,包括課堂教學和在線教學。
本教科書通過應用在電氣工程和計算機科學(EECS)說明了應用概率的技術。作者介紹了使用基于概率模型和技術的算法的信息處理和通信系統,包括網絡搜索、數字鏈接、語音識別、GPS、路線規劃、推薦系統、分類和估計。然后,他解釋了這些應用是如何工作的,并在此過程中,為讀者提供了應用概率的關鍵概念和方法的理解。Python實驗室使讀者能夠進行實驗并鞏固他們的理解。這個版本包括新的主題,統計測試,社會網絡,排隊網絡,和神經網絡。有關本書的輔助資料,包括Python演示和伯克利使用的Python實驗室的例子。
機器學習中復雜的統計數據讓許多開發人員感到擔憂。了解統計學可以幫助你建立強大的機器學習模型,針對給定的問題陳述進行優化。這本書將教你所有需要執行復雜的統計計算所需的機器學習。您將獲得有關監督學習、非監督學習、強化學習等統計信息。了解真實世界的例子,討論機器學習的統計方面,并熟悉它。您還將設計用于執行諸如模型、參數擬合、回歸、分類、密度收集等任務的程序。
到本書結束時,你將掌握機器學習所需的統計數據,并能夠將你的新技能應用于任何類型的行業問題。
掌握使用PyTorch實現深度學習解決方案的實踐方面,使用實踐方法理解理論和實踐。Facebook的人工智能研究小組開發了一個名為PyTorch的平臺,該平臺擁有良好的理論基礎和實用技能,為你在現實世界中應用深度學習做好了準備。
首先,您將了解PyTorch的深度學習是如何以及為什么成為一種具有開創性的框架,它帶有一組工具和技術來解決現實世界中的問題。接下來,這本書將為你打下線性代數、向量微積分、概率和最優化的數學基礎。在建立了這個基礎之后,您將繼續討論PyTorch的關鍵組件和功能,包括層、損失函數和優化算法。
您還將了解基于圖形處理單元(GPU)的計算,這對訓練深度學習模型是必不可少的。介紹了深度學習的前饋網絡、卷積神經網絡、循環神經網絡、長短時記憶網絡、自動編碼器網絡和生成對抗網絡等關鍵網絡結構。在許多訓練和優化深度學習模型的技巧的支持下,這個版本的Python深度學習解釋了使用PyTorch將這些模型帶到生產中的最佳實踐。
你會: 回顧機器學習的基本原理,如過擬合、欠擬合和正則化。 了解深度學習的基本原理,如前饋網絡,卷積神經網絡,遞歸神經網絡,自動微分和隨機梯度下降。 使用PyTorch深入應用線性代數 探索PyTorch的基本原理及其構建塊 使用調優和優化模型
近年來,自然語言處理的研究方法取得了一些突破。這些突破來源于兩個新的建模框架以及在計算和詞匯資源的可用性的改進。在這個研討會小冊子中,我們將回顧這些框架,以一種可以被視為現代自然語言處理開端的方法論開始:詞嵌入。我們將進一步討論將嵌入式集成到端到端可訓練方法中,即卷積神經網絡和遞歸神經網絡。這本小冊子的第二章將討論基于注意力的模型的影響,因為它們是最近大多數最先進的架構的基礎。因此,我們也將在本章中花很大一部分時間討論遷移學習方法在現代自然語言處理中的應用。最后一章將會是一個關于自然語言生成的說明性用例,用于評估最先進的模型的訓練前資源和基準任務/數據集。
//compstat-lmu.github.io/seminar_nlp_ss20/
在過去的幾十年里,人工智能技術的重要性和應用不斷得到關注。在當今時代,它已經與構成人類塑造環境的大部分環境密不可分。因此,商業、研究和開發、信息服務、工程、社會服務和醫學等無數部門已經不可逆轉地受到人工智能能力的影響。人工智能有三個主要領域組成了這項技術:語音識別、計算機視覺和自然語言處理(見Yeung (2020))。在這本書中,我們將仔細研究自然語言處理(NLP)的現代方法。
這本小冊子詳細介紹了用于自然語言處理的現代方法,如深度學習和遷移學習。此外,本研究亦會研究可用于訓練自然語言處理任務的資源,并會展示一個將自然語言處理應用于自然語言生成的用例。
為了分析和理解人類語言,自然語言處理程序需要從單詞和句子中提取信息。由于神經網絡和其他機器學習算法需要數字輸入來進行訓練,因此應用了使用密集向量表示單詞的詞嵌入。這些通常是通過有多個隱藏層的神經網絡學習的,深度神經網絡。為了解決容易的任務,可以應用簡單的結構神經網絡。為了克服這些簡單結構的局限性,采用了遞歸和卷積神經網絡。因此,遞歸神經網絡用于學習不需要預先定義最佳固定維數的序列的模型,卷積神經網絡用于句子分類。第二章簡要介紹了NLP中的深度學習。第三章將介紹現代自然語言處理的基礎和應用。在第四章和第五章中,將解釋和討論遞歸神經網絡和卷積神經網絡及其在自然語言處理中的應用。
遷移學習是每個任務或領域的學習模型的替代選擇。在這里,可以使用相關任務或領域的現有標記數據來訓練模型,并將其應用到感興趣的任務或領域。這種方法的優點是不需要在目標域中進行長時間的訓練,并且可以節省訓練模型的時間,同時仍然可以(在很大程度上)獲得更好的性能。遷移學習中使用的一個概念是注意力,它使解碼器能夠注意到整個輸入序列,或自注意,它允許一個Transformer 模型處理所有輸入單詞,并建模一個句子中所有單詞之間的關系,這使得快速建模一個句子中的長期依賴性成為可能。遷移學習的概念將在小冊子的第6章簡要介紹。第七章將通過ELMo、ULMFiT和GPT模型來描述遷移學習和LSTMs。第八章將詳細闡述注意力和自注意力的概念。第九章將遷移學習與自注意力相結合,介紹了BERT模型、GTP2模型和XLNet模型。
為NLP建模,需要資源。為了找到任務的最佳模型,可以使用基準測試。為了在基準實驗中比較不同的模型,需要諸如精確匹配、Fscore、困惑度或雙語評估替補學習或準確性等指標。小冊子的第十章簡要介紹了自然語言處理的資源及其使用方法。第11章將解釋不同的指標,深入了解基準數據集SQuAD、CoQa、GLUE和SuperGLUE、AQuA-Rat、SNLI和LAMBADA,以及可以找到資源的預訓練模型和數據庫,如“帶代碼的論文”和“大壞的NLP數據庫”。
在小冊子的最后一章中,介紹了生成性NLP處理自然語言生成,從而在人類語言中生成可理解的文本。因此,不同的算法將被描述,聊天機器人和圖像字幕將被展示,以說明應用的可能性。
本文對自然語言處理中各種方法的介紹是接下來討論的基礎。小冊子的各個章節將介紹現代的NLP方法,并提供了一個更詳細的討論,以及各種示例的潛力和限制。
由沃德(Brian Ward)著,姜南、袁志鵬譯的《精通Linux(第2版)》講解了Linux操作系統的工作機制以及運行Linux系統所需的常用工具和命令。根據系統啟動的大體順序,本書更深入地介紹從設備管理到網絡配置的各個部分,最后演示了系統各部分的運行方式,并介紹了一些基本技巧和開發人員常用的工具。
Linux不像其他操作,會對用戶隱藏很多重要的東西。相反,Linux會讓用戶掌控一切。而要掌控一切,就必須理解這個操作系統的工作機制,包括如何啟動、如何連網,以及Linux內核如何工作。本書是暢銷書的新版本,作者擁有多年的實踐經驗,內容通俗易懂。通過這本書,讀者可以迅速從Linux新手變成老鳥,把作者豐富的經驗裝進自己的知識庫。
<章節目錄>
第1章概述 第2章基礎命令和目錄結構 第3章設備管理 第4章硬盤和文件系統 第5章Linux內核的啟動 第6章用戶空間的啟動 第7章系統配置:日志、系統時間、批處理任務和用戶 第8章進程與資源利用詳解 第9章網絡與配置 第10章網絡應用與服務 第11章shell腳本 第12章在網絡上傳輸文件 第13章用戶環境 第14章Linux桌面概覽 第15章開發工具 第16章從C代碼編譯出軟件 第17章在基礎上搭建
語言是一種固有的時間現象。當我們理解和產生口語時,我們處理不確定長度的連續輸入流。即使在處理書面文本時,我們通常也按順序處理。語言的時代性反映在我們使用的隱喻中;我們談論的是對話流、新聞源和twitter流,所有這些都喚起了這樣一種觀念:語言是一個隨時間展開的序列。這種時間性質反映在我們用來處理語言的算法中。例如,當應用于詞性標注問題時,維特比算法每次遞增地輸入一個單詞,并將沿途收集到的信息傳遞下去。另一方面,我們研究的用于情感分析和其他文本分類任務的機器學習方法沒有這種時間性質——它們假設同時訪問輸入的所有方面。前饋神經網絡尤其如此,包括它們在神經語言模型中的應用。這些完全連接的網絡使用固定大小的輸入,以及相關的權重,一次性捕獲示例的所有相關方面。這使得處理不同長度的序列變得困難,并且無法捕捉語言的重要時間方面。
本章涵蓋了兩個密切相關的深度學習架構,旨在解決這些挑戰:循環神經網絡和transformer網絡。這兩種方法都具有直接處理語言的順序性質的機制,允許它們處理可變長度的輸入,而不使用任意固定大小的窗口,并捕獲和利用語言的時間性質。
當看到這些材料時,一個明顯的問題可能會出現:“為什么還要寫一本深度學習和自然語言處理的書呢?”一些優秀的論文已經出版,涵蓋了深度學習的理論和實踐方面,以及它在語言處理中的應用。然而,從我教授自然語言處理課程的經驗來看,我認為,盡管這些書的質量非常好,但大多數都不是針對最有可能的讀者。本書的目標讀者是那些在機器學習和自然語言處理之外的領域有經驗的人,并且他們的工作至少部分地依賴于對大量數據,特別是文本數據的自動化分析。這些專家可能包括社會科學家、政治科學家、生物醫學科學家,甚至是對機器學習接觸有限的計算機科學家和計算語言學家。
現有的深度學習和自然語言處理書籍通常分為兩大陣營。第一個陣營專注于深度學習的理論基礎。這對前面提到的讀者肯定是有用的,因為在使用工具之前應該了解它的理論方面。然而,這些書傾向于假設一個典型的機器學習研究者的背景,因此,我經常看到沒有這種背景的學生很快就迷失在這樣的材料中。為了緩解這個問題,目前存在的第二種類型的書集中在機器學習從業者;也就是說,如何使用深度學習軟件,而很少關注理論方面。我認為,關注實際方面同樣是必要的,但還不夠。考慮到深度學習框架和庫已經變得相當復雜,由于理論上的誤解而濫用它們的可能性很高。這個問題在我的課程中也很常見。
因此,本書旨在為自然語言處理的深度學習搭建理論和實踐的橋梁。我涵蓋了必要的理論背景,并假設讀者有最少的機器學習背景。我的目標是讓任何上過線性代數和微積分課程的人都能跟上理論材料。為了解決實際問題,本書包含了用于討論的較簡單算法的偽代碼,以及用于較復雜體系結構的實際Python代碼。任何上過Python編程課程的人都應該能夠理解這些代碼。讀完這本書后,我希望讀者能有必要的基礎,立即開始構建真實世界的、實用的自然語言處理系統,并通過閱讀有關這些主題的研究出版物來擴展他們的知識。
//clulab.cs.arizona.edu/gentlenlp/gentlenlp-book-05172020.pdf
圖神經網絡(GNNs)最近在人工智能領域變得越來越受歡迎,這是因為它們具有提取相對非結構化數據類型作為輸入數據的獨特能力。盡管GNN體系結構的一些元素在操作上與傳統神經網絡(以及神經網絡變體)的概念相似,但其他元素則不同于傳統的深度學習技術。本教程通過整理和呈現最常見類型的GNNs的動機、概念、數學和應用的詳細信息,向一般深度學習愛好者展示了GNNs的強大功能和新穎之處。重要的是,我們以介紹性的速度簡要地介紹了本教程,并提供了理解和使用GNNs的實用和可訪問的指南。
摘要:
當代人工智能(AI),或者更具體地說,深度學習(DL)近年來被稱為神經網絡(NN)的學習架構所主導。NN變體被設計用于提高某些問題領域的性能;卷積神經網絡(CNN)在基于圖像的任務環境中表現突出,而遞歸神經網絡(RNN)在自然語言處理和時間序列分析空間中表現突出。神經網絡也被用作復合DL框架的組件——它們在生成對抗網絡(GANs)中被用作可訓練的生成器和判別器,在transformers [46]中被用作編碼器和解碼器。雖然在計算機視覺中作為輸入的圖像和在自然語言處理中作為輸入的句子看起來是不相關的,但是它們都可以用一個單一的、通用的數據結構來表示:圖(見圖1)。
形式上,圖是一組不同的頂點(表示項目或實體),這些頂點通過邊(表示關系)選擇性地連接在一起。被設計來處理這些圖的學習架構是有名稱的圖神經網絡(GNN)。輸入圖之間的頂點和邊的數量可以改變。通過這種方式,GNNs可以處理非結構化的、非歐幾里得數據[4],這一特性使得它們在圖形數據豐富的特定問題域中具有價值。相反,基于NN的算法通常需要對具有嚴格定義維數的結構化輸入進行操作。例如,構建一個用于在MNIST數據集上進行分類的CNN,其輸入層必須為28×28個神經元,后續輸入給它的所有圖像大小必須為28×28像素,才能符合這個嚴格的維數要求[27]。
圖作為數據編碼方法的表達性,以及GNNs相對于非結構化輸入的靈活性,推動了它們的研究和開發。它們代表了一種探索相對通用的深度學習方法的新方法,并且它們促進了深度學習方法對數據集的應用,直到最近,這些數據集還不能使用傳統的神經網絡或其他此類算法。
本篇內容結構:
//deepai.org/publication/a-practical-guide-to-graph-neural-networks
簡介: 深度學習無處不在。例如,當在線使用許多應用程序甚至在購物時,都會看到它。我們被深度學習所包圍,甚至根本沒有意識到這一點,這使學習深度學習變得至關重要,因為可以利用它做很多事情,這遠遠超出了您的想象。當您學習本書時,您可以在Mac,Linux或Windows系統上運行的許多示例代碼。您也可以使用Google Colab之類的工具在線運行代碼。 本書的第一部分為您提供了一些入門信息,除了安裝一些必備軟件,還會了解一些基本數學知識。
目錄:
說明
Chapter 1:深度學習介紹
Chapter 2:機器學習介紹
Chapter 3:使用python
chapter 4:利用深度學習看框架
chapter 5:回顧數學與優化
chapter 6:線性回歸基礎
chapter 7:神經網絡
Chapter 8:構建基礎神經網絡
Chapter 9:深度學習
Chapter 10:解釋卷積神經網絡
Chapter 11:循環神經網絡
Chapter 12:圖片分類
Chapter 13:循環神經網絡
Chapter 14:語言處理
Chapter 15:生成音樂和虛擬藝術
Chapter 16:生成對抗網絡
Chapter 17:深度強化學習
Chapter 18:深度學習的應用
Chapter 19:十個必備的深度學習工具
Chapter 20:十個使用深度學習的場景