Skip to content

Commit 73cddeb

Browse files
committed
fix bug in GRU #88
1 parent cd848d2 commit 73cddeb

File tree

2 files changed

+29
-29
lines changed

2 files changed

+29
-29
lines changed

code/chapter06_RNN/6.7_gru.ipynb

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
"name": "stdout",
1818
"output_type": "stream",
1919
"text": [
20-
"1.0.0 cpu\n"
20+
"1.2.0 cpu\n"
2121
]
2222
}
2323
],
@@ -114,7 +114,7 @@
114114
" for X in inputs:\n",
115115
" Z = torch.sigmoid(torch.matmul(X, W_xz) + torch.matmul(H, W_hz) + b_z)\n",
116116
" R = torch.sigmoid(torch.matmul(X, W_xr) + torch.matmul(H, W_hr) + b_r)\n",
117-
" H_tilda = torch.tanh(torch.matmul(X, W_xh) + R * torch.matmul(H, W_hh) + b_h)\n",
117+
" H_tilda = torch.tanh(torch.matmul(X, W_xh) + torch.matmul(R * H, W_hh) + b_h)\n",
118118
" H = Z * H + (1 - Z) * H_tilda\n",
119119
" Y = torch.matmul(H, W_hq) + b_q\n",
120120
" outputs.append(Y)\n",
@@ -149,18 +149,18 @@
149149
"name": "stdout",
150150
"output_type": "stream",
151151
"text": [
152-
"epoch 40, perplexity 149.477598, time 1.08 sec\n",
153-
" - 分开 我不不你 我想你你的爱我 你不你的让我 你不你的让我 你不你的让我 你不你的让我 你不你的让我 你\n",
154-
" - 不分开 我想你你的让我 你不你的让我 你不你的让我 你不你的让我 你不你的让我 你不你的让我 你不你的让我\n",
155-
"epoch 80, perplexity 31.689210, time 1.10 sec\n",
156-
" - 分开 我想要你 我不要再想 我不要再想 我不要再想 我不要再想 我不要再想 我不要再想 我不要再想 我不\n",
157-
" - 不分开 我想要你 我不要再想 我不要再想 我不要再想 我不要再想 我不要再想 我不要再想 我不要再想 我不\n",
158-
"epoch 120, perplexity 4.866115, time 1.08 sec\n",
159-
" - 分开 我想要这样牵着你的手不放开 爱过 让我来的肩膀 一起好酒 你来了这节秋 后知后觉 我该好好生活 我\n",
160-
" - 不分开 你已经不了我不要 我不要再想你 我不要再想你 我不要再想你 不知不觉 我跟了这节奏 后知后觉 又过\n",
161-
"epoch 160, perplexity 1.442282, time 1.51 sec\n",
162-
" - 分开 我一定好生忧 唱着歌 一直走 我想就这样牵着你的手不放开 爱可不可以简简单单没有伤害 你 靠着我的\n",
163-
" - 不分开 你已经离开我 不知不觉 我跟了这节奏 后知后觉 又过了一个秋 后知后觉 我该好好生活 我该好好生活\n"
152+
"epoch 40, perplexity 150.963116, time 1.11 sec\n",
153+
" - 分开 我想你 我不你 我不你 我不你 我不你 我不你 我不你 我不你 我不你 我不你 我不你 我不你 我\n",
154+
" - 不分开 我想你 我不你 我不你 我不你 我不你 我不你 我不你 我不你 我不你 我不你 我不你 我不你 我\n",
155+
"epoch 80, perplexity 31.683252, time 1.16 sec\n",
156+
" - 分开 我想要你的微笑 一定 \n",
157+
" - 不分开 不知不觉 我不要再想 我不要再想 我不 我不 我不 我不 我不 我不 我不 我不 我不 我不 我不\n",
158+
"epoch 120, perplexity 5.855305, time 1.49 sec\n",
159+
" - 分开我 想要你这样打我妈妈 难道你手不会痛吗 我想你这样打我妈妈 难道你手 你怎么在我想 说散 你说我久\n",
160+
" - 不分开 没有你在我有多烦熬多烦恼 没有你烦 我有多烦恼 没有你在我有多难熬多难多 没有你烦 我有多\n",
161+
"epoch 160, perplexity 1.815359, time 1.04 sec\n",
162+
" - 分开 我想要这样牵 对你依依不舍 连隔壁邻居都猜到我现在的感受 河边的风 在吹着头发飘动 牵着你的手 一\n",
163+
" - 不分开 是后过风 迷不知蒙 我给再这样活 我该好好生活 不知不觉 你已经离开我 不知不觉 我跟了这节奏 \n"
164164
]
165165
}
166166
],
@@ -188,18 +188,18 @@
188188
"name": "stdout",
189189
"output_type": "stream",
190190
"text": [
191-
"epoch 40, perplexity 1.022157, time 1.02 sec\n",
192-
" - 分开手牵手 一步两步三步四步望著天 看星星 一颗两颗三颗四颗 连成线背著背默默许下心愿 看远方的星是否听\n",
193-
" - 不分开暴风圈来不及逃 我不能再想 我不能再想 我不 我不 我不能 爱情走的太快就像龙卷风 不能承受我已无处\n",
194-
"epoch 80, perplexity 1.014535, time 1.04 sec\n",
195-
" - 分开始想像 爸和妈当年的模样 说著一口吴侬软语的姑娘缓缓走过外滩 消失的 旧时光 一九四三 在回忆 的路\n",
196-
" - 不分开始爱像 不知不觉 你已经离开我 不知不觉 我跟了这节奏 后知后觉 又过了一个秋 后知后觉 我该好好\n",
197-
"epoch 120, perplexity 1.147843, time 1.04 sec\n",
198-
" - 分开都靠我 你拿着球不投 又不会掩护我 选你这种队友 瞎透了我 说你说 分数怎么停留 所有回忆对着我进攻\n",
199-
" - 不分开球我有多烦恼多 牧草有没有危险 一场梦 我面对我 甩开球我满腔的怒火 我想揍你已经很久 别想躲 说你\n",
200-
"epoch 160, perplexity 1.018370, time 1.05 sec\n",
201-
" - 分开爱上你 那场悲剧 是你完美演出的一场戏 宁愿心碎哭泣 再狠狠忘记 你爱过我的证据 让晶莹的泪滴 闪烁\n",
202-
" - 不分开始 担心今天的你过得好不好 整个画面是你 想你想的睡不著 嘴嘟嘟那可爱的模样 还有在你身上香香的味道\n"
191+
"epoch 40, perplexity 1.018485, time 0.79 sec\n",
192+
" - 分开的快乐是你 想你想的都会笑 没有你在 我有多难熬 没有你在我有多难熬多烦恼 没有你烦 我有多烦恼\n",
193+
" - 不分开不 我不 我不要再想你 爱情来的太快就像龙卷风 离不开暴风圈来不及逃 我不能再想 我不能再想 我不 \n",
194+
"epoch 80, perplexity 1.028805, time 0.74 sec\n",
195+
" - 分开始想像 爸和妈当年的模样 说著一口吴侬软语的姑娘缓缓走过外滩 消失的 旧时光 一九四三 回头看 的片\n",
196+
" - 不分开不 我不 我不 我不要再想你 爱情来的太快就像龙卷风 离不开暴风圈来不及逃 我不能再想 我不能再想 \n",
197+
"epoch 120, perplexity 1.012296, time 0.73 sec\n",
198+
" - 分开的话像语言暴力 我已无能为力再提起 决定中断熟悉 然后在这里 不限日期 然后将过去 慢慢温习 让我爱\n",
199+
" - 不分开不 我不 我不能 爱情走的太快就像龙卷风 不能承受我已无处可躲 我不要再想 我不要再想 我不 我不 \n",
200+
"epoch 160, perplexity 1.184842, time 0.74 sec\n",
201+
" - 分开的快乐是你 想我想大声宣布 对你依依不舍 连隔壁邻居都猜到我现在的感受 河边的风 在吹着头发飘动 牵\n",
202+
" - 不分开 快使用双截棍 哼哼哈兮 如果我有轻功 飞檐走壁 为人耿直不屈 一身正气 他们儿子我习惯 从小就耳濡\n"
203203
]
204204
}
205205
],
@@ -225,7 +225,7 @@
225225
],
226226
"metadata": {
227227
"kernelspec": {
228-
"display_name": "Python [default]",
228+
"display_name": "Python 3",
229229
"language": "python",
230230
"name": "python3"
231231
},
@@ -239,7 +239,7 @@
239239
"name": "python",
240240
"nbconvert_exporter": "python",
241241
"pygments_lexer": "ipython3",
242-
"version": "3.6.3"
242+
"version": "3.6.2"
243243
}
244244
},
245245
"nbformat": 4,

docs/chapter06_RNN/6.7_gru.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ def gru(inputs, state, params):
132132
for X in inputs:
133133
Z = torch.sigmoid(torch.matmul(X, W_xz) + torch.matmul(H, W_hz) + b_z)
134134
R = torch.sigmoid(torch.matmul(X, W_xr) + torch.matmul(H, W_hr) + b_r)
135-
H_tilda = torch.tanh(torch.matmul(X, W_xh) + R * torch.matmul(H, W_hh) + b_h)
135+
H_tilda = torch.tanh(torch.matmul(X, W_xh) + torch.matmul(R * H, W_hh) + b_h)
136136
H = Z * H + (1 - Z) * H_tilda
137137
Y = torch.matmul(H, W_hq) + b_q
138138
outputs.append(Y)

0 commit comments

Comments
 (0)