語言模型
一段自然語言文字可以看作是乙個離散時間序列,給定乙個長度為t
tt的詞的序列ω1,
ω2,.
..,ω
t,\omega_,...,\omega_}
ω1,ω2
,..
.,ωt
,語言模型的目標就是評估該序列是否合理,即計算該序列的概率。假設序列的每個詞是依次生成的,則:
p (ω
1,ω2
,...
,ωt)
=πt=
1tp(
ωt∣ω
1,..
.,ωt
−1)=
p(ω1
)p(ω
2∣ω1
)...
p(ωt
∣ω1ω
2...
ωt−1
)p(\omega_,\omega_,...,\omega_)=\pi_^p(\omega_ | \omega_,...,\omega_)=p(\omega_)p(\omega_ | \omega_)...p(\omega_ | \omega_\omega_...\omega_)
p(ω1,
ω2,
...,
ωt)
=πt=
1tp
(ωt
∣ω1
,...
,ωt−
1)=
p(ω1
)p(
ω2∣
ω1)
...p
(ωt
∣ω1
ω2.
..ωt
−1)
語言模型的引數就是詞的概率以及給定前幾個詞情況下的條件概率。設訓練資料集為乙個大型文字語料庫,如維基百科的所有條目,詞的概率可以通過該詞在訓練資料集中的相對詞頻來計算,例如,ω
1\omega_
ω1的概率可以計算為:
p ^(
ω1)=
n(ω1
)n
\hat(\omega_) = \frac)}
p^(ω1
)=nn
(ω1
)其中n (ω
1)
n(\omega_)
n(ω1)
為語料庫中以\omega_作為第乙個詞的文字的數量,n
nn為語料庫中文字的總數量。
p ^(
ω2∣ω
1)=n
(ω1,
ω2)n
(ω1)
\hat(\omega_ | \omega_) = \frac,\omega_)})}
p^(ω2
∣ω1
)=n(
ω1)
n(ω1
,ω2
)其中n(ω
1,ω2
)n(\omega_,\omega_)
n(ω1,
ω2)
為語料庫中以ω
1\omega_
ω1作為第乙個詞,ω
2\omega_
ω2作為第二個詞的文字的數量。
時序資料的取樣
時序資料的取樣有兩種:隨機取樣和相鄰取樣。
(1)隨機取樣
每次迭代中隨機取樣乙個小批量作為訓練資料。在隨機取樣中,每個樣本是原始序列上任意擷取的一段序列,相鄰的兩個隨機小批量在原始序列上的位置不一定相毗鄰。
(2)相鄰取樣
在相鄰取樣中,相鄰的兩個隨機小批量在原始序列上的位置相毗鄰。
動手學深度學習
線性回歸的基本要素 模型 為了簡單起見,這裡我們假設 只取決於房屋狀況的兩個因素,即面積 平方公尺 和房齡 年 接下來我們希望探索 與這兩個因素的具體關係。線性回歸假設輸出與各個輸入之間是線性關係 price warea area wage age b price warea area wage a...
動手學pytorch 語言模型
假設序列 w 1,w 2,ldots,w t 中的每個詞是依次生成的,我們有 begin p w 1,w 2,ldots,w t prod t p w t mid w 1,ldots,w p w 1 p w 2 mid w 1 cdots p w t mid w 1w 2 cdots w end 例...
動手學深度學習(一)
其中 w1 和 w2 是權重 weight b 是偏差 bias 且均為標量。訓練資料 損失函式 通常,我們用訓練資料集中所有樣本誤差的平均來衡量模型 的質量 w 1,w 2,b 為使訓練樣本平均損失最小的解 優化演算法 b 代表每個小批量中的樣本個數 批量大小,batch size 稱作學習率 l...