我們之前了解了準(zhǔn)備工作,那么如果真的要做一個(gè)模型,我們會(huì)遇到什么問(wèn)題呢?
假設(shè)我們跟之前一樣,使用一個(gè)普通的神經(jīng)網(wǎng)絡(luò)模型,把輸入的one-hot向量當(dāng)成第一層的輸入層,然后經(jīng)過(guò)幾層神經(jīng)網(wǎng)絡(luò),得到一個(gè)同樣長(zhǎng)度的輸出,這樣做可以嗎?

這樣做其實(shí)會(huì)有幾個(gè)問(wèn)題:
1.首先,在序列模型當(dāng)中,輸入與輸出的個(gè)數(shù)是不確定的,這樣效果就不會(huì)很好。(雖然可以通過(guò)填補(bǔ)來(lái)增加長(zhǎng)度)
2.它沒(méi)有辦法共享一個(gè)語(yǔ)句在不同位置得到的特征,所以就很難對(duì)一個(gè)句子或者一個(gè)順序的數(shù)據(jù)進(jìn)行分析和特征提取。
那么我們提出一個(gè)比較簡(jiǎn)單的RNN模型(循環(huán)神經(jīng)網(wǎng)絡(luò)),我們使用一個(gè)個(gè)詞作為輸入量,每一個(gè)輸入量都對(duì)應(yīng)一個(gè)輸出量,然后在后一個(gè)詞的神經(jīng)網(wǎng)絡(luò)當(dāng)中,加入前一個(gè)詞的激活函數(shù),變成一個(gè)鏈。
在這種情況下,每一個(gè)詞的輸出都會(huì)受到前面信息的影響。

在這里他舉了一個(gè)例子:
1.泰迪若斯福特是一個(gè)好總統(tǒng)。
2.泰迪熊在售賣(mài)中。
在這兩句話(huà)當(dāng)中,只通過(guò)前面的三個(gè)單詞,我們很難知道泰迪這個(gè)詞究竟是否是一個(gè)人名,這受制于這個(gè)模型的單向傳播缺陷。但是在后面,我們會(huì)提到另外一個(gè)模型,BRNN(雙向循環(huán)神經(jīng)網(wǎng)絡(luò)),可以一定程度上解決這個(gè)問(wèn)題。

通過(guò)算式,我們對(duì)前一個(gè)輸入的a和當(dāng)前的輸入量x進(jìn)行參數(shù)相乘,再加上偏移量b就可以得到下一個(gè)a的值。
計(jì)算y的時(shí)候,使用到我們剛剛已經(jīng)計(jì)算好的a,乘上一個(gè)y的參數(shù),再加入一個(gè)偏移量。也就是相當(dāng)于這里建立了兩個(gè)小的神經(jīng)網(wǎng)絡(luò)。
然后在這里,定義了幾個(gè)關(guān)于計(jì)算方面的符號(hào):Waa,Wya,Wax,前面那個(gè)參數(shù),代表的是要得出的變量,后面那個(gè)參數(shù),代表的是要乘上的變量。

為了后面建立更復(fù)雜的神經(jīng)網(wǎng)絡(luò)的時(shí)候能看的更簡(jiǎn)便一些,我們需要將這些計(jì)算符號(hào)進(jìn)行進(jìn)一步的簡(jiǎn)化。通過(guò)矩陣乘法的方式來(lái)簡(jiǎn)化Wa和X與a之間相乘的算式。
同樣的,我們也對(duì)計(jì)算y的算式進(jìn)行一個(gè)簡(jiǎn)化操作。