在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/人工智能  HTML/ pytorch怎么輸入多個特征

pytorch怎么輸入多個特征

我剛剛開始學(xué)習(xí)機器學(xué)習(xí)相關(guān)的內(nèi)容,在自己試著做一些小東西的時候發(fā)現(xiàn),網(wǎng)上的pytorch內(nèi)容只輸入了一個特征,可能是我的關(guān)鍵詞不對。如果我要使用pytorch創(chuàng)建一個模型的話,要怎么輸入多個特征來達到更好的計算效果呢?

如下,想做一個判斷加密類型的分類器,一個密文的類型可以通過字符類型和密文長度來判斷,但是現(xiàn)在我只能輸入一個特征,字符類型。

class PasswordClassifier(nn.Module):
    def __init__(self, i_char, o_labels):
        super(PasswordClassifier, self).__init__()
        self.l_char = nn.Linear(i_char, o_labels)

    def forward(self, f_char):
        return self.linear(f_char)

model = PasswordClassifier(CHARS_LEN, len(LABELS_INDEX))
loss_func = nn.CrossEntropyLoss()
optimizer = torch.optim.SGD(model.parameters(), lr=LEARNING_RATE)

現(xiàn)在我想再輸入一個密文長度特征,我應(yīng)該怎么給我的模型添加輸入特征和損失函數(shù)等內(nèi)容讓模型更好的聯(lián)系到輸出標(biāo)簽上?

回答
編輯回答
半心人

在問這個問題之前,我還不是很了解 nn.module 這個類,與 pytorch 的一些基礎(chǔ)知識

在pytorch的 nn.Module 類中,初始化 __init__ 的時候傳入的是各個層的特征數(shù)。
以我拿的分類器為例子來說,這個分類器很簡單,網(wǎng)絡(luò)中沒有太多的層次,就是做了一個線性回歸的操作。傳入的
i_char 為輸入特征個數(shù),o_labels 為輸入特征個數(shù)。比如,我的特征有密文類型和密文長度,密文類型產(chǎn)生的特征(先不算符號)有26 + 26 + 10 = 62個,這時候我還想要添加1個密文長度的特征,這時候就特征就有63個。

每次調(diào)用這個類也就是它的 __call__ 的時候,這個函數(shù)會調(diào)用 forward 這個函數(shù),并給這個函數(shù)傳入我們調(diào)用 model 的時候傳入的內(nèi)容。這個傳入內(nèi)容就是特征的相關(guān)內(nèi)容。

2018年7月7日 08:54