成為AI工程師必學的深度學習與 PyTorch 實作
成為AI工程師必學的深度學習與 PyTorch 實作
完課後,你將學會
Multilayer Perceptron (MLP, 多層感知器):也稱為前饋神經網路,是深度學習中最基礎的模型,可用於處理結構化的資料,例如表格中的數值、類別等,並進行分類、回歸等任務。
Convolutional Neural Network (CNN,卷積神經網路):用於對影像或音訊等二維和一維資料進行分析和處理,能夠有效地提取出其特徵,並進行影像分類、目標檢測等任務。
Recurrent Neural Network (RNN,遞迴神經網路)Family:包含RNN、Long Short Term Memory Network (LSTM,長短期記憶網路):用於處理序列型資料,能夠有效地捕捉序列間的長期相依性,被廣泛應用於語音辨識、機器翻譯等自然語言處理領域。
Transformer:用於處理序列型的資料,透過學習來估計全部序列之間的的關聯性,能共有效的通盤考慮整段資料的特性,被廣泛用在自然語言領域,近年來也被導入影像相關AI模型。
Generative Adversarial Network (GAN,生成對抗網路):是一種生成模型,能夠透過兩個神經網路之間的對抗訓練,從噪聲中生成出與真實資料相似的新資料,用於影像生成、音訊生成等任務。
課程成果
4-5 影像切割方法介紹(U-NET)
在實務上最常拿來使用就是影像的前景背景切割,也就是如果要做去背的動作,可以靠大量資料模型訓練後,讓模型學習到哪些是主要要切割出來的物體。
5-4 Transformer
我們簡單操作NLP相關的範例,利用網路上別人的開源資料進行英中翻譯的Transformer (簡易版)的PytTorch模型建立和模型訓練。
5-5 實作:股價預測
我們將進行股價資料爬蟲 (直接利用yfinance模組),然後採用LSTM利用過去的股價進行未來股價的預測。除了股價預測之外,只要資料都是時序資料都也可以進行相同的程式操作,包含庫存預測或是失業率預測等。
課程介紹
什麼是 PyTorch?
PyTorch是一個基於Torch函式上,針對Python所開發的機器學習庫,為深度學習的框架之一,主要應用於電腦視覺和自然語言處理。
PyTorch 的設計目標是提供一個簡單易用、靈活且高效的工具,深受在深度學習領域的工作者的喜愛。它最大的核心功能是提供自動微分,幫助開發人員可以更容易地定義和優化神經網絡模型。同時,PyTorch的動態計算圖表更貼近Python風格的編程,因此更易於開發和調試。你可以使用標準的Python語句進行調試,並且更容易理解和檢查中間結果。
另一個特點是會使用動態計算圖表。相較於其他框架 (TensorFlow),PyTorch的計算圖是在運行時就構建的,表示計算會在每一行程式碼都完成後執行,使得使用者可以更靈活地進行模型構建和調試。此外,PyTorch還支援多GPU平行加速,可以加快模型訓練的速度。
PyTorch與TensorFlow的差異
PyTorch和TensorFlow是當今兩個最受歡迎且廣泛使用的深度學習框架,它們有一些重要的差異:
社群生態系統:TensorFlow擁有更大的社群生態系統和更廣泛的應用案例支援。許多大型公司和研究機構使用TensorFlow進行深度學習研究和應用開發。然而,PyTorch近年來的快速發展也使其社群生態系統不斷擴大,並且在學術界和研究領域中獲得了廣泛的支持,並且在最新、State-of-the-art和開源的AI算法幾乎都以PyTorch撰寫。
開發和調試:由於PyTorch的動態圖和Python風格的編程,它通常被認為更容易於開發和調試。您可以使用標準的Python語句進行調試,並且更容易理解和檢查中間結果。
課程説明
本課程講師是擁有13年以上的AI產學經驗、並且任職上市公司人工智慧研發部副理的黃志勝老師,以業界需求的實務角度著眼,貼近初學者的心態著手,介紹完整的近代人工智慧,神經網路的模型學習技巧,例如參數初始和更新方式、梯度更新方式、損失函數等。以及網路架構的介紹,包含感知神經網路、卷積神經網路、和時序系列神經網路(RNN、LSTM、Transformer)等,並帶著學員學習PyTorch的操作,詳述近代人工智慧應用與深度學習的相關技術。
主要重點有:
深度學習與 PyTorch 基礎觀念:從深度學習的基礎觀念開始介紹,深度學習的演變以及使用 PyTorch 進行深度學習專案的開發。
類神經網路相關主題:探討損失函數、梯度下降法、參數影響等,並如何選擇優化器。
卷積神經網路(CNN):利用 PyTorch 建立 CNN 網路,學習建構和訓練模型,進行物件偵測及影像偵測等實作。並完成三項實作練習:
CNN影像分類
(貓狗分類)
YOLO物件偵測
(人臉偵測)
U-NET影像切割
(PASCAL VOC)
時序神經網路:遞迴神經網路(RNN)、長短記憶模型(LSTM)、GRU 網路和 Transformer 自注意力機制,並實際應用於以下兩項實作練習:
股價預測
英中文翻譯
課程適合誰
1. 想成為 AI 工程師者
2. 想了解深度學習 (Deep Learning)與訓練模型者
3. 想學習 PyTorch 操作、神經網路者
課程特色
1. 課程搭配卷積神經網路(CNN)與時序神經網路範例實作
2. 內容含市面少有的 Transformer : 自注意力 (Self-Attention)
教學
3. 老師擁有 13年學術上和業界的經驗,課程所教授的知識都是在
業界實際使用到的內容
課程大綱
一、深度學習與PyTorch基礎觀念
深度學習的演變
為什麼要使用 PyTorch:PyTorch 如何協助深度學習專案的開發
PyTorch 數值型態與基本運算
ONNX簡介
Pytorch dataloader
二、類神經網路
感知機神經網路
常用的 Activation Function (激勵函數, ACT)
透過 Activation Function 做到特徵非線性轉換
三、神經網路怎麼學習
損失函數
梯度下降法
倒傳遞學習法
參數常規化
參數初始方式
優化器(Optimizer)的選擇
四、卷積神經網路(CNN)
卷積神經網路常用的原件,例如:
卷積(Convolution)
最大池化(Max pooling)
全連結層(Fully connection)
激勵函數(Activation function)
Softmax函數...等等
CNN經典模型介紹 :
Alexnet、VGG、GoogleNet、Inceptionv2-v4、ResNet、DenseNet、MobileNet等等。
如何利用Pytorch自行建立CNN網路,以ResNet為例。
物件偵測方法介紹(YOLO)
影像切割方法介紹(U-NET)
資料增強(Data Augumentation)
實作:使用預模型做遷移學習、訓練自己的深度學習模型
CNN影像分類 (貓狗分類)
YOLO物件偵測(人臉偵測)
U-NET影像切割(PASCAL Visual Object Classes(PASCAL VOC))
五、時序神經網路
遞迴神經網路(RNN)
長短期記憶模型(LSTM)
GRU網路
Transformer:自注意力(Self-Attention)
實作:股價預測
實作:中英文翻譯
解鎖
Generative Adversarial Network (GAN)
Mastertalks