使用Python和PyTorch進行的EITC/AI/DLPP深度學習是歐洲IT認證計劃,其基礎是使用PyTorch機器學習庫在Python中進行深度學習編程的基礎。
EITC/AI/DLPP使用Python和PyTorch進行深度學習的課程側重於使用PyTorch庫在以下結構中組織的深度學習Python編程的實踐技能,其中包括全面的視頻教學內容,作為此EITC認證的參考。
深度學習(也稱為深度結構化學習)是基於帶有表示學習的人工神經網絡的更廣泛的機器學習方法系列的一部分。 學習可以是有監督的,半監督的或無監督的。 諸如深度神經網絡,深度信念網絡,遞歸神經網絡和卷積神經網絡之類的深度學習架構已應用於計算機視覺,機器視覺,語音識別,自然語言處理,音頻識別,社交網絡過濾,機器翻譯,生物信息學等領域,藥物設計,醫學圖像分析,材料檢查和棋盤遊戲程序,它們產生的結果可與人類專家的表現相媲美,甚至在某些情況下甚至超過了人類專家的表現。
Python是一種解釋性的高級通用編程語言。 Python的設計理念通過顯著使用大量空白來強調代碼的可讀性。 它的語言構造和麵向對象的方法旨在幫助程序員為大型和大型項目編寫清晰的邏輯代碼。 由於Python具有完善的標準庫,因此通常被稱為“包含電池”的語言。 借助TensorFlow,Keras,Pytorch和Scikit-learn之類的庫,Python通常用於人工智能項目和機器學習項目。
Python是動態類型的(在運行時執行靜態編程語言在編譯過程中執行的許多常見編程行為)和垃圾回收(使用自動內存管理)。 它支持多種編程範例,包括結構化(特別是過程式),面向對象和功能性編程。 它是由Guido van Rossum於1980年代後期創建的,並於1991年首次發布,它是ABC編程語言的後繼者。 2.0年發布的Python 2000引入了新功能,例如列表推導和帶有引用計數的垃圾收集系統,並在2.7年隨版本2020停產。Python3.0在2008年發布,是該語言的主要修訂版,並非完全向後兼容,並且許多Python 2代碼不會在Python 3上未經修改地運行。由於Python 2的使用壽命終止(並且pip在2021年不再支持),因此僅支持Python 3.6.x和更高版本,而舊版本仍受支持支持例如Windows 7(以及不限於64位Windows的舊安裝程序)。
Python解釋器受主流操作系統的支持,並且可以用於更多版本(過去也受支持)。 全球程序員社區開發和維護CPython,這是一個免費的開源參考實現。 一個非營利組織,Python軟件基金會,負責管理和指導Python和CPython開發的資源。
截至2021年2020月,Python在TIOBE最受歡迎的編程語言索引中排名第三,僅次於C和Java,此前曾獲得第二名並獲得2007年最受歡迎的語言獎。它在2010、2018年被評為年度編程語言和XNUMX年。
一項經驗研究發現,腳本語言(例如Python)比常規語言(例如C和Java)在涉及字符串操作和字典搜索的編程問題上的生產率更高,並確定內存消耗通常“比Java更好,而不是Java”。比C或C ++差得多”。 使用Python的大型組織包括Wikipedia,Google,Yahoo!,CERN,NASA,Facebook,Amazon,Instagram。
除其人工智能應用程序外,Python作為具有模塊化體系結構,簡單語法和富文本處理工具的腳本語言,通常用於自然語言處理。
PyTorch是一個基於Torch庫的開源機器學習庫,用於計算機視覺和自然語言處理等應用程序,主要由Facebook的AI研究實驗室(FAIR)開發。 它是根據Modified BSD許可發布的免費開源軟件。 儘管Python接口更加優美,並且是開發的主要重點,但PyTorch也具有C ++接口。 PyTorch之上構建了許多深度學習軟件,包括Tesla Autopilot,Uber的Pyro,HuggingFace的變形金剛,PyTorch Lightning和Catalyst。
- 通過圖形處理單元(GPU)進行強大的Tensor計算(如NumPy)
- 基於基於磁帶的自動(計算)差分系統構建的深度神經網絡
Facebook同時運行PyTorch和卷積體系結構以實現快速功能嵌入(Caffe2),但由這兩個框架定義的模型相互不兼容。 Facebook和Microsoft於2017年2月創建了Open Neural Network Exchange(ONNX)項目,用於在框架之間轉換模型。 Caffe2018於XNUMX年XNUMX月末合併為PyTorch。
PyTorch定義了一個稱為Tensor(torch.Tensor)的類,用於存儲數字的均質多維矩形陣列並對其進行操作。 PyTorch張量類似於NumPy陣列,但也可以在具有CUDA功能的Nvidia GPU上運行。 PyTorch支持張量的各種子類型。
Pytorch的重要模塊很少。 這些包括:
- Autograd模塊:PyTorch使用一種稱為自動分化的方法。 記錄器記錄已執行的操作,然後向後重播以計算梯度。 當構建神經網絡以通過計算前向傳遞時參數的微分來節省一個時間時,此方法特別強大。
- Optim模塊:torch.optim是一個模塊,可實現用於構建神經網絡的各種優化算法。 大多數常用方法已經受支持,因此無需從頭開始構建它們。
- nn模塊:PyTorch autograd使定義計算圖和獲取梯度變得容易,但是原始autograd對於定義復雜的神經網絡而言可能太低了。 這是nn模塊可以提供幫助的地方。
要詳細了解認證課程,您可以擴展和分析下表。
EITC/AI/DLPP Deep Learning with Python and PyTorch Certification Curriculum 參考了 Harrison Kinsley 以視頻形式提供的開放獲取教學材料。 學習過程分為逐步結構(課程 -> 課程 -> 主題),涵蓋相關課程部分。 還提供與領域專家的無限諮詢。
有關認證程序檢查的詳細信息 如何操作.
下載 EITC/AI/DLPP Deep Learning with Python and PyTorch 程式的完整離線自學準備資料(PDF 檔案)