電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>PyTorch教程16.3之情感分析:使用卷積神經(jīng)網(wǎng)絡(luò)

PyTorch教程16.3之情感分析:使用卷積神經(jīng)網(wǎng)絡(luò)

2023-06-05 | pdf | 0.44 MB | 次下載 | 免費

資料介紹

第 7 節(jié)中,我們研究了使用二維 CNN 處理二維圖像數(shù)據(jù)的機制,這些機制應(yīng)用于相鄰像素等局部特征。盡管最初是為計算機視覺設(shè)計的,但 CNN 也廣泛用于自然語言處理。簡單地說,只需將任何文本序列視為一維圖像即可。通過這種方式,一維 CNN 可以處理局部特征,例如n- 文本中的克。

在本節(jié)中,我們將使用textCNN模型來演示如何設(shè)計用于表示單個文本的 CNN 架構(gòu) ( Kim, 2014 )。圖 16.2.1使用帶有 GloVe 預(yù)訓(xùn)練的 RNN 架構(gòu)進行情感分析相比,圖 16.3.1的唯一區(qū)別在于架構(gòu)的選擇。

https://file.elecfans.com/web2/M00/A9/CD/poYBAGR9PKeAQJkEAAKGTT5l5tQ032.svg

圖 16.3.1本節(jié)將預(yù)訓(xùn)練的 GloVe 提供給基于 CNN 的架構(gòu)以進行情感分析。

import torch
from torch import nn
from d2l import torch as d2l

batch_size = 64
train_iter, test_iter, vocab = d2l.load_data_imdb(batch_size)
from mxnet import gluon, init, np, npx
from mxnet.gluon import nn
from d2l import mxnet as d2l

npx.set_np()

batch_size = 64
train_iter, test_iter, vocab = d2l.load_data_imdb(batch_size)

16.3.1。一維卷積

在介紹模型之前,讓我們看看一維卷積是如何工作的。請記住,這只是基于互相關(guān)運算的二維卷積的特例。

https://file.elecfans.com/web2/M00/A9/CD/poYBAGR9PKmAM7I9AACdHttTIPM876.svg

圖 16.3.2一維互相關(guān)運算。陰影部分是第一個輸出元素以及用于輸出計算的輸入和核張量元素: 0×1+1×2=2.

如圖 16.3.2所示,在一維情況下,卷積窗口在輸入張量上從左向右滑動。在滑動過程中,輸入子張量(例如,01圖 16.3.2中)包含在某個位置的卷積窗口和內(nèi)核張量(例如,12圖 16.3.2中)按元素相乘。這些乘法的總和給出單個標(biāo)量值(例如, 0×1+1×2=2圖 16.3.2中)在輸出張量的相應(yīng)位置。

我們在以下函數(shù)中實現(xiàn)一維互相關(guān) corr1d。給定一個輸入張量X和一個內(nèi)核張量 K,它返回輸出張量Y

def corr1d(X, K):
  w = K.shape[0]
  Y = torch.zeros((X.shape[0] - w + 1))
  for i in range(Y.shape[0]):
    Y[i] = (X[i: i + w] * K).sum()
  return Y
def corr1d(X, K):
  w = K.shape[0]
  Y = np.zeros((X.shape[0] - w + 1))
  for i in range(Y.shape[0]):
    Y[i] = (X[i: i + w] * K).sum()
  return Y

我們可以從 圖 16.3.2構(gòu)造輸入張量X和核張量來驗證上述一維互相關(guān)實現(xiàn)的輸出。K

X, K = torch.tensor([0, 1, 2, 3, 4, 5, 6]), torch.tensor([1, 2])
corr1d(X, K)
tensor([ 2., 5., 8., 11., 14., 17.])
X, K = np.array([0, 1, 2, 3, 4, 5, 6]), np.array([1, 2])
corr1d(X, K)
array([ 2., 5., 8., 11., 14., 17.])

對于任何具有多個通道的一維輸入,卷積核需要具有相同數(shù)量的輸入通道。然后對于每個通道,對輸入的一維張量和卷積核的一維張量進行互相關(guān)運算,將所有通道的結(jié)果相加得到一維輸出張量。圖 16.3.3顯示了具有 3 個輸入通道的一維互相關(guān)運算。

https://file.elecfans.com/web2/M00/AA/48/pYYBAGR9PK6ADR-WAAEf3eRCIIg775.svg

圖 16.3.3具有 3 個輸入通道的一維互相關(guān)操作。陰影部分是第一個輸出元素以及用于輸出計算的輸入和核張量元素: 0×1+1×2+1×3+2×4+2×(?1)+3×(?3)=2.

我們可以對多個輸入通道進行一維互相關(guān)運算,并驗證 圖 16.3.3中的結(jié)果。

def corr1d_multi_in(X, K):
  # First, iterate through the 0th dimension (channel dimension) of `X` and
  # `K`. Then, add them together
  return sum(corr1d(x, k) for x, k in zip(X, K))

X = torch.tensor([[0, 1, 2, 3, 4, 5, 6],
       [1, 2, 3, 4, 5, 6, 7],
       [2, 3, 4, 5, 6, 7, 8]])
K = torch.tensor([[1, 2], [3, 4], [-1, -3]])
corr1d_multi_in(X, K)
tensor([ 2., 8., 14., 20., 26., 32.])
def corr1d_multi_in(X, K):
  # First, iterate through the 0th dimension (channel dimension) of `X` and
  # `K`. Then, add them together
  return sum(corr1d(x, k) for x, k in zip(X, K))

X = np.array([[0, 1, 2, 3, 4, 5, 6],
       [1, 2, 3, 4, 5, 6, 7],
       [2, 3, 4, 5, 6, 7, 8]])
K = np.array([[1, 2], [3, 4], [-1, -3]])
corr1d_multi_in(X, K)
array([ 2., 8., 14., 20., 26., 32.])

請注意,多輸入通道一維互相關(guān)等同于單輸入通道二維互相關(guān)。為了說明,圖 16.3.3中的多輸入通道一維互相關(guān)的等效形式是圖 16.3.4中的單輸入通道二維互相關(guān) ,其中卷積核必須與輸入張量相同。

https://file.elecfans.com/web2/M00/AA/48/pYYBAGR9PLKASTSGAAEeO2Qhstk969.svg

圖 16.3.4單輸入通道的二維互相關(guān)運算。陰影部分是第一個輸出元素以及用于輸出計算的輸入和核張量元素:


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關(guān)電源設(shè)計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅(qū)動電路設(shè)計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學(xué)會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費