日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 人文社科 > 生活经验 >内容正文

生活经验

TensorRT IRNNv2Layer

發(fā)布時(shí)間:2023/11/28 生活经验 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TensorRT IRNNv2Layer 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

TensorRT IRNNv2Layer

IRNNv2Layer層實(shí)現(xiàn)遞歸層,如遞歸神經(jīng)網(wǎng)絡(luò)(RNN)、門(mén)控遞歸單元(GRU)和長(zhǎng)短期記憶(LSTM)。支持的類(lèi)型有RNN、GRU和LSTM。它執(zhí)行一個(gè)遞歸操作,其中操作由幾個(gè)著名的遞歸神經(jīng)網(wǎng)絡(luò)(RNN)“單元”之一定義。

圖層說(shuō)明

該層接受輸入序列X,初始隱藏狀態(tài)H0,如果該單元是長(zhǎng)短期存儲(chǔ)器(LSTM)單元,則為初始單元狀態(tài)C0,并產(chǎn)生一個(gè)輸出Y,該輸出Y表示跨T個(gè)時(shí)間步計(jì)算的最終RNN“子層”的輸出(見(jiàn)下文)。可選地,該層還可以產(chǎn)生表示最終隱藏狀態(tài)的輸出hT,并且,如果單元是LSTM單元,則輸出cT表示最終單元狀態(tài)。

將單元的操作定義為函數(shù)G(x,h,c)。此函數(shù)接受向量輸入x、h和c,并產(chǎn)生最多兩個(gè)向量輸出h’和c’,表示執(zhí)行單元操作后的隱藏狀態(tài)和單元狀態(tài)。

在默認(rèn)(單向)配置中,RNNv2層應(yīng)用如下圖所示的Gas:






another layer are dropped.

network->markOutput(*pred->getOutput(1));

pred->getOutput(1)->setType(DataType::kINT32);

rnn->getOutput(1)->setName(HIDDEN_OUT_BLOB_NAME);

network->markOutput(*rnn->getOutput(1));

if
(rnn->getOperation() == RNNOperation::kLSTM)

{

rnn->getOutput(2)->setName(CELL_OUT_BLOB_NAME);

network->markOutput(*rnn->getOutput(2));

};

See the C++ class IRNNv2Layer or the Python
class IRNNv2Layer for further details.

  1. RNNv2 Layer Setup

網(wǎng)絡(luò)的第一層是RNN層。這是在addRNNv2Layer()函數(shù)中添加和配置的。該層由以下配置參數(shù)組成。

操作

這定義了RNN單元的操作。支持的操作目前有relu、LSTM、GRU和tanh。

方向

這定義了RNN是單向的還是雙向的(BiRNN)。

輸入模式

這定義了RNN的第一層是執(zhí)行矩陣乘法(線性模式),還是跳過(guò)矩陣乘法(跳過(guò)模式)。

例如,在sampleCharRNN中使用的網(wǎng)絡(luò)中,我們使用了一個(gè)線性的、單向的LSTM單元,其中包含層數(shù)為層數(shù)的層數(shù)。下面的代碼顯示了如何創(chuàng)建這個(gè)RNNv2層。

auto rnn =network->addRNNv2(*data, LAYER_COUNT, HIDDEN_SIZE, SEQ_SIZE, RNNOperation::kLSTM);

注:對(duì)于RNNv2層,需要單獨(dú)設(shè)置權(quán)重和偏差。有關(guān)詳細(xì)信息,請(qǐng)參見(jiàn)RNNv2層-可選輸入。

有關(guān)更多信息,請(qǐng)參閱TensorRT API文檔。

  1. RNNv2 Layer - Optional Inputs

如果存在需要將hidden和cell狀態(tài)預(yù)初始化為非零值的情況,那么可以通過(guò)setHiddenState和setCellState調(diào)用對(duì)它們進(jìn)行預(yù)初始化。這些是RNN的可選輸入。

C++ code snippet

rnn->setHiddenState(*hiddenIn);

if(rnn->getOperation() == RNNOperation::kLSTM)

rnn->setCellState(*cellIn);

Python code snippet

rnn.hidden_state =hidden_in

if rnn.op ==trt.RNNOperation.LSTM:

rnn.cell_state =cell_in

總結(jié)

以上是生活随笔為你收集整理的TensorRT IRNNv2Layer的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。