Skip to content

Commit 67ded14

Browse files
committed
Theano 模块完成
1 parent d554b73 commit 67ded14

12 files changed

+1179
-290
lines changed

09. theano/09.10 softmax on mnist.ipynb

Lines changed: 88 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@
187187
"name": "stderr",
188188
"output_type": "stream",
189189
"text": [
190-
"Using gpu device 1: Tesla K10.G2.8GB (CNMeM is disabled)\n"
190+
"Using gpu device 1: Tesla C2075 (CNMeM is disabled)\n"
191191
]
192192
}
193193
],
@@ -241,7 +241,7 @@
241241
"output_type": "stream",
242242
"text": [
243243
"(3, 4)\n",
244-
"[ 1. 0.99999994 1. ]\n"
244+
"[ 1.00000012 1. 1. ]\n"
245245
]
246246
}
247247
],
@@ -403,106 +403,106 @@
403403
"name": "stdout",
404404
"output_type": "stream",
405405
"text": [
406-
"000 0.8851\n",
407-
"001 0.8975\n",
408-
"002 0.9047\n",
409-
"003 0.9081\n",
410-
"004 0.9095\n",
411-
"005 0.9113\n",
412-
"006 0.9125\n",
406+
"000 0.8862\n",
407+
"001 0.8985\n",
408+
"002 0.9042\n",
409+
"003 0.9084\n",
410+
"004 0.9104\n",
411+
"005 0.9121\n",
412+
"006 0.9121\n",
413413
"007 0.9142\n",
414-
"008 0.9153\n",
415-
"009 0.9161\n",
416-
"010 0.9163\n",
417-
"011 0.917\n",
418-
"012 0.9175\n",
419-
"013 0.9173\n",
420-
"014 0.9185\n",
421-
"015 0.9188\n",
422-
"016 0.9188\n",
423-
"017 0.9195\n",
424-
"018 0.9193\n",
425-
"019 0.9197\n",
426-
"020 0.92\n",
427-
"021 0.9205\n",
428-
"022 0.9203\n",
429-
"023 0.9206\n",
414+
"008 0.9158\n",
415+
"009 0.9163\n",
416+
"010 0.9162\n",
417+
"011 0.9166\n",
418+
"012 0.9171\n",
419+
"013 0.9176\n",
420+
"014 0.9182\n",
421+
"015 0.9182\n",
422+
"016 0.9184\n",
423+
"017 0.9188\n",
424+
"018 0.919\n",
425+
"019 0.919\n",
426+
"020 0.9194\n",
427+
"021 0.9201\n",
428+
"022 0.9204\n",
429+
"023 0.9203\n",
430430
"024 0.9205\n",
431431
"025 0.9207\n",
432-
"026 0.9205\n",
433-
"027 0.921\n",
434-
"028 0.9215\n",
435-
"029 0.9214\n",
436-
"030 0.9216\n",
437-
"031 0.9218\n",
438-
"032 0.922\n",
439-
"033 0.9222\n",
440-
"034 0.9222\n",
441-
"035 0.9223\n",
442-
"036 0.9223\n",
443-
"037 0.9225\n",
444-
"038 0.9225\n",
445-
"039 0.9224\n",
446-
"040 0.9224\n",
432+
"026 0.9207\n",
433+
"027 0.9209\n",
434+
"028 0.9214\n",
435+
"029 0.9213\n",
436+
"030 0.9212\n",
437+
"031 0.9211\n",
438+
"032 0.9217\n",
439+
"033 0.9217\n",
440+
"034 0.9217\n",
441+
"035 0.922\n",
442+
"036 0.9222\n",
443+
"037 0.922\n",
444+
"038 0.922\n",
445+
"039 0.9218\n",
446+
"040 0.9219\n",
447447
"041 0.9223\n",
448-
"042 0.9222\n",
449-
"043 0.9222\n",
450-
"044 0.9223\n",
451-
"045 0.9221\n",
452-
"046 0.9222\n",
453-
"047 0.9225\n",
454-
"048 0.9227\n",
455-
"049 0.9229\n",
456-
"050 0.9231\n",
457-
"051 0.9231\n",
458-
"052 0.923\n",
448+
"042 0.9225\n",
449+
"043 0.9226\n",
450+
"044 0.9227\n",
451+
"045 0.9225\n",
452+
"046 0.9227\n",
453+
"047 0.9231\n",
454+
"048 0.9231\n",
455+
"049 0.9231\n",
456+
"050 0.9232\n",
457+
"051 0.9232\n",
458+
"052 0.9231\n",
459459
"053 0.9231\n",
460-
"054 0.9231\n",
461-
"055 0.9235\n",
462-
"056 0.9236\n",
463-
"057 0.9236\n",
464-
"058 0.9237\n",
465-
"059 0.9237\n",
466-
"060 0.9239\n",
467-
"061 0.9241\n",
460+
"054 0.9233\n",
461+
"055 0.9233\n",
462+
"056 0.9237\n",
463+
"057 0.9239\n",
464+
"058 0.9239\n",
465+
"059 0.9239\n",
466+
"060 0.924\n",
467+
"061 0.9242\n",
468468
"062 0.9242\n",
469-
"063 0.9244\n",
470-
"064 0.9244\n",
471-
"065 0.9243\n",
472-
"066 0.9242\n",
469+
"063 0.9243\n",
470+
"064 0.9243\n",
471+
"065 0.9244\n",
472+
"066 0.9244\n",
473473
"067 0.9244\n",
474-
"068 0.9244\n",
474+
"068 0.9245\n",
475475
"069 0.9244\n",
476476
"070 0.9244\n",
477-
"071 0.9244\n",
477+
"071 0.9245\n",
478478
"072 0.9244\n",
479479
"073 0.9243\n",
480-
"074 0.9244\n",
481-
"075 0.9245\n",
482-
"076 0.9245\n",
483-
"077 0.9243\n",
480+
"074 0.9243\n",
481+
"075 0.9244\n",
482+
"076 0.9243\n",
483+
"077 0.9242\n",
484484
"078 0.9244\n",
485-
"079 0.9245\n",
486-
"080 0.9244\n",
487-
"081 0.9244\n",
488-
"082 0.9245\n",
489-
"083 0.9244\n",
490-
"084 0.9244\n",
491-
"085 0.9244\n",
492-
"086 0.9245\n",
493-
"087 0.9246\n",
494-
"088 0.9245\n",
495-
"089 0.9246\n",
496-
"090 0.9247\n",
497-
"091 0.9248\n",
498-
"092 0.9247\n",
499-
"093 0.9248\n",
500-
"094 0.9248\n",
501-
"095 0.9248\n",
485+
"079 0.9244\n",
486+
"080 0.9243\n",
487+
"081 0.9242\n",
488+
"082 0.9239\n",
489+
"083 0.9241\n",
490+
"084 0.9242\n",
491+
"085 0.9243\n",
492+
"086 0.9244\n",
493+
"087 0.9243\n",
494+
"088 0.9243\n",
495+
"089 0.9244\n",
496+
"090 0.9246\n",
497+
"091 0.9246\n",
498+
"092 0.9246\n",
499+
"093 0.9247\n",
500+
"094 0.9246\n",
501+
"095 0.9246\n",
502502
"096 0.9246\n",
503503
"097 0.9246\n",
504-
"098 0.9247\n",
505-
"099 0.9247\n"
504+
"098 0.9246\n",
505+
"099 0.9248\n"
506506
]
507507
}
508508
],

09. theano/09.14 convolutional net on mnist.ipynb

Lines changed: 31 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@
105105
"source": [
106106
"`conv2d` 函数接受两个输入:\n",
107107
"\n",
108-
"- 对应参数矩阵的 `4D` 张量,其形状如下:\n",
108+
"- 对应输入的 `4D` 张量,其形状如下:\n",
109109
" \n",
110110
" `[mini-batch size, number of feature maps at layer m-1, image height, image width]`\n",
111111
" \n",
@@ -149,22 +149,49 @@
149149
"outputs": [],
150150
"source": [
151151
"def model(X, w, w2, w3, w4, p_drop_conv, p_drop_hidden):\n",
152+
" \n",
153+
" # X: 128 * 1 * 28 * 28\n",
154+
" # w: 32 * 1 * 3 * 3\n",
155+
" # full mode\n",
156+
" # l1a: 128 * 32 * (28 + 3 - 1) * (28 + 3 - 1)\n",
152157
" l1a = rectify(conv2d(X, w, border_mode='full'))\n",
158+
" # l1a: 128 * 32 * 30 * 30\n",
159+
" # ignore_border False\n",
160+
" # l1: 128 * 32 * (30 / 2) * (30 / 2)\n",
153161
" l1 = max_pool_2d(l1a, (2, 2), ignore_border=False)\n",
154162
" l1 = dropout(l1, p_drop_conv)\n",
155163
"\n",
156-
" l2a = rectify(conv2d(l1, w2))\n",
164+
" # l1: 128 * 32 * 15 * 15\n",
165+
" # w2: 64 * 32 * 3 * 3\n",
166+
" # valid mode\n",
167+
" # l2a: 128 * 64 * (15 - 3 + 1) * (15 - 3 + 1)\n",
168+
" l2a = rectify(conv2d(l1, w2)) \n",
169+
" # l2a: 128 * 64 * 13 * 13\n",
170+
" # l2: 128 * 64 * (13 / 2 + 1) * (13 / 2 + 1)\n",
157171
" l2 = max_pool_2d(l2a, (2, 2), ignore_border=False)\n",
158172
" l2 = dropout(l2, p_drop_conv)\n",
159173
"\n",
174+
" # l2: 128 * 64 * 7 * 7\n",
175+
" # w3: 128 * 64 * 3 * 3\n",
176+
" # l3a: 128 * 128 * (7 - 3 + 1) * (7 - 3 + 1)\n",
160177
" l3a = rectify(conv2d(l2, w3))\n",
161-
" l3b = max_pool_2d(l3a, (2, 2), ignore_border=False)\n",
178+
" # l3a: 128 * 128 * 5 * 5\n",
179+
" # l3b: 128 * 128 * (5 / 2 + 1) * (5 / 2 + 1)\n",
180+
" l3b = max_pool_2d(l3a, (2, 2), ignore_border=False) \n",
181+
" # l3b: 128 * 128 * 3 * 3\n",
182+
" # l3: 128 * (128 * 3 * 3)\n",
162183
" l3 = T.flatten(l3b, outdim=2)\n",
163184
" l3 = dropout(l3, p_drop_conv)\n",
164-
"\n",
185+
" \n",
186+
" # l3: 128 * (128 * 3 * 3)\n",
187+
" # w4: (128 * 3 * 3) * 625\n",
188+
" # l4: 128 * 625\n",
165189
" l4 = rectify(T.dot(l3, w4))\n",
166190
" l4 = dropout(l4, p_drop_hidden)\n",
167191
"\n",
192+
" # l5: 128 * 625\n",
193+
" # w5: 625 * 10\n",
194+
" # pyx: 128 * 10\n",
168195
" pyx = softmax(T.dot(l4, w_o))\n",
169196
" return l1, l2, l3, l4, pyx"
170197
]

09. theano/09.17 operator and elementwise operations.ipynb

Lines changed: 0 additions & 48 deletions
This file was deleted.

0 commit comments

Comments
 (0)