淺談Keras的Sequential與PyTorch的Sequential的區(qū)別
深度學(xué)習(xí)庫(kù)Keras中的Sequential是多個(gè)網(wǎng)絡(luò)層的線性堆疊,在實(shí)現(xiàn)AlexNet與VGG等網(wǎng)絡(luò)方面比較容易,因?yàn)樗鼈儧](méi)有ResNet那樣的shortcut連接。在Keras中要實(shí)現(xiàn)ResNet網(wǎng)絡(luò)則需要Model模型。
下面是Keras的Sequential具體示例:
可以通過(guò)向Sequential模型傳遞一個(gè)layer的list來(lái)構(gòu)造該模型:
from keras.models import Sequential from keras.layers import Dense, Activation model = Sequential([ Dense(32, input_dim=784), Activation('relu'), Dense(10), Activation('softmax'), ])
也可以通過(guò).add()方法一個(gè)個(gè)的將layer加入模型中:
model = Sequential() model.add(Dense(32, input_dim=784)) model.add(Activation('relu'))
Keras可以通過(guò)泛型模型(Model)實(shí)現(xiàn)復(fù)雜的網(wǎng)絡(luò),如ResNet,Inception等,具體示例如下:
from keras.layers import Input, Dense from keras.models import Model # this returns a tensor inputs = Input(shape=(784,)) # a layer instance is callable on a tensor, and returns a tensor x = Dense(64, activation='relu')(inputs) x = Dense(64, activation='relu')(x) predictions = Dense(10, activation='softmax')(x) # this creates a model that includes # the Input layer and three Dense layers model = Model(input=inputs, output=predictions) model.compile(optimizer='rmsprop', loss='categorical_crossentropy', metrics=['accuracy']) model.fit(data, labels) # starts training
在目前的PyTorch版本中,可以?xún)H通過(guò)Sequential實(shí)現(xiàn)線性模型和復(fù)雜的網(wǎng)絡(luò)模型。PyTorch中的Sequential具體示例如下:
model = torch.nn.Sequential( torch.nn.Linear(D_in, H), torch.nn.ReLU(), torch.nn.Linear(H, D_out), )
也可以通過(guò).add_module()方法一個(gè)個(gè)的將layer加入模型中:
layer1 = nn.Sequential() layer1.add_module('conv1', nn.Conv2d(3, 32, 3, 1, padding=1)) layer1.add_module('relu1', nn.ReLU(True)) layer1.add_module('pool1', nn.MaxPool2d(2, 2))
由上可以看出,PyTorch創(chuàng)建網(wǎng)絡(luò)的方法與Keras類(lèi)似,PyTorch借鑒了Keras的一些優(yōu)點(diǎn)。
以上這篇淺談Keras的Sequential與PyTorch的Sequential的區(qū)別就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python實(shí)現(xiàn)磁盤(pán)日志清理的示例
這篇文章主要介紹了python實(shí)現(xiàn)磁盤(pán)日志清理的示例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-11-11Python編程itertools模塊處理可迭代集合相關(guān)函數(shù)
本篇博客將為你介紹Python函數(shù)式編程itertools模塊中處理可迭代集合的相關(guān)函數(shù),有需要的朋友可以借鑒參考下,希望可以有所幫助2021-09-09循環(huán)神經(jīng)網(wǎng)絡(luò)TextRNN實(shí)現(xiàn)情感短文本分類(lèi)任務(wù)
這篇文章主要為大家介紹了循環(huán)神經(jīng)網(wǎng)絡(luò)TextRNN實(shí)現(xiàn)情感短文本分類(lèi)任務(wù)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04把項(xiàng)目從Python2.x移植到Python3.x的經(jīng)驗(yàn)總結(jié)
這篇文章主要介紹了把項(xiàng)目從Python2.x移植到Python3.x的經(jīng)驗(yàn)總結(jié),包括作者所使用的Jinja2框架中一些需要注意的地方,需要的朋友可以參考下2015-04-04使用TensorBoard進(jìn)行超參數(shù)優(yōu)化的實(shí)現(xiàn)
這篇文章主要介紹了使用TensorBoard進(jìn)行超參數(shù)優(yōu)化的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07pandas groupby + unstack的使用說(shuō)明
這篇文章主要介紹了pandas groupby + unstack的使用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03使用PyTorch將數(shù)據(jù)從CPU移動(dòng)到GPU的四個(gè)方法
這篇文章給大家介紹了在 PyTorch 中,將數(shù)據(jù)從 CPU 移動(dòng)到 GPU 的幾種方法,使用 .to() 方法,使用 .cuda() 方法,使用 torch.Tensor 構(gòu)造函數(shù)和使用 torch.tensor 構(gòu)造函數(shù)這四個(gè)方法,通過(guò)代碼示例介紹非常詳細(xì),需要的朋友可以參考下2024-01-01