iT邦幫忙

2023 iThome 鐵人賽

DAY 23
0
AI & Data

進入AI的世界系列 第 23

➤D-23 深度學習與主要神經網路-3(循環神經網路、自動編碼器)

  • 分享至 

  • xImage
  •  

循環神經網路

RNN基本定義與特色

指一種能利用記憶「過去歷史訊息」、結合「當前輸入」來對未來序列訊息進行預測的一種深度學習網路架構。
有下列幾個不同特色:
1. 兩個影響力
每個隱藏節點(Hᵢ)同時受到「上一個隱藏節點」(Hᵢ₋₁)與「目前的輸入」(Xᵢ)兩種參數所共同影響。
2. 節點彼此之間有關係不獨立
常同一層隱藏層的節點與節點之間有序列的關係存在。
3. 記憶功能
存在著記憶過去處理過訊息的機制。
4. 處理序列訊息
RNN主要運用在序列訊息上的處理,包含 文字序列(Word Sequence)聲音序列(Audio Sequence) 、影片序列(Video Sequence)、股票序列、氣候序列訊息等。


RNN適用類型

  1. 序列對序列的訊息(Sequence to Sequence) (M:M)
    指輸入一個序列的訊息,也輸出一個序列訊息的應用。
  2. 序列對象量的訊息(Sequence to Vector) (M:1)
    指輸入系列的訊息輸出一個單一向量值的運用,主要包括圖像標註(Sentiment Analysis),輸入一段文句,輸出這段文句的情緒是否正向還是負向。
  3. 向量對序列的訊息(Vector to Sequence) (1:M)
    指輸入一個向量輸出一系列的訊息,例如:輸入一個字而能輸出一系列的一句話、一首詩、一篇文章。

RNN缺點

  1. 無法記憶長期依賴關係(Long-term Deoendency)
    指某一個變數與遠距離另外一個變數間的依賴關係。
  2. 固定長度限制
    RNN輸入節點與輸出節點長度是固定的、一樣的,但許多序列對序列的應用並非如此,英文翻譯成法文並不一定是對等的字數,常輸入與輸出字數長度都不一樣。
    3.只有單向
    傳統RNN只由前面的訊息來預測後面的訊息,但往往一個字的精確預測需要前後兩個方向來連結才能更精準。

自動編碼器(Autoencoder, AE)

AE基本概念

由編碼器(Encoder)和解碼器(Decoder)組成,將編碼器所壓縮輸出到隱藏層的低維度隱藏特徵(Latent Feature/Code),經過解碼器解碼後,輸出一個與原來輸入數據惡爭完全一樣數據的一種神經網路。


AE主要步驟

  1. 壓縮一個隱藏特徵
    AE經過不斷學習後,會找出一個最能代表原始數據特徵的低維向量,稱之為隱藏特徵(Latent Feature)。
  2. 解壓縮成原來的輸入
    解碼器將低維的隱藏特徵「解壓縮」成原來的特徵表示,若其代表真實特徵的能力愈強,則解碼器輸出的結果愈像原來輸出數據。
  3. 重建誤差的極小化(Minimize Reconstruction Errors)
    輸出數據特徵和原來輸入的數據特徵中間的差異。

AE主要應用

  1. 推薦系統
    電影特徵原來可能有上百種,利用AE可以將這些複雜的變數降維成少數,每一個組合式的隱藏特徵,都是由原來的小特徵所組成,並用這幾個大特徵來了解消費者對這些特徵的不同偏好,來進行推薦。
  2. 異常偵測
    異常狀況並不常發生,訓練資料極少,故異常偵測常常利用AE的「重建誤差大小」來判斷是否異常,若一個異常狀況輸入正常狀況訓練出來的AE後,其輸出與正常狀況相比較其「重建誤差」會很大。

參考資料
人工智慧-概念應用與管理 林東清著


上一篇
➤D-22 深度學習與主要神經網路-2(CNN)
下一篇
➤D-24 深度學習與主要神經網路-4【完】(生成對抗網路、遷移式學習)
系列文
進入AI的世界30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言