Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 7d0fcd0

Browse files
authored
Merge pull request tensorflow#4766 from MarkDaoust/autopgraph-guide
Add clarifications
2 parents c5b8f2f + a73c656 commit 7d0fcd0

File tree

1 file changed

+28
-131
lines changed

1 file changed

+28
-131
lines changed

samples/core/guide/autograph.ipynb

Lines changed: 28 additions & 131 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@
55
"colab": {
66
"name": "autograph.ipynb",
77
"version": "0.3.2",
8-
"views": {},
9-
"default_view": {},
108
"provenance": [],
119
"private_outputs": true,
1210
"collapsed_sections": [
@@ -36,12 +34,7 @@
3634
"metadata": {
3735
"id": "llMNufAK7nfK",
3836
"colab_type": "code",
39-
"colab": {
40-
"autoexec": {
41-
"startup": false,
42-
"wait_interval": 0
43-
}
44-
}
37+
"colab": {}
4538
},
4639
"cell_type": "code",
4740
"source": [
@@ -116,12 +109,7 @@
116109
"metadata": {
117110
"id": "RSez0n7Ptcvb",
118111
"colab_type": "code",
119-
"colab": {
120-
"autoexec": {
121-
"startup": false,
122-
"wait_interval": 0
123-
}
124-
}
112+
"colab": {}
125113
},
126114
"cell_type": "code",
127115
"source": [
@@ -144,12 +132,7 @@
144132
"metadata": {
145133
"id": "mT7meGqrZTz9",
146134
"colab_type": "code",
147-
"colab": {
148-
"autoexec": {
149-
"startup": false,
150-
"wait_interval": 0
151-
}
152-
}
135+
"colab": {}
153136
},
154137
"cell_type": "code",
155138
"source": [
@@ -177,12 +160,7 @@
177160
"metadata": {
178161
"id": "ks_hiqcSJNvg",
179162
"colab_type": "code",
180-
"colab": {
181-
"autoexec": {
182-
"startup": false,
183-
"wait_interval": 0
184-
}
185-
}
163+
"colab": {}
186164
},
187165
"cell_type": "code",
188166
"source": [
@@ -217,12 +195,7 @@
217195
"metadata": {
218196
"id": "aA3gOodCBkOw",
219197
"colab_type": "code",
220-
"colab": {
221-
"autoexec": {
222-
"startup": false,
223-
"wait_interval": 0
224-
}
225-
}
198+
"colab": {}
226199
},
227200
"cell_type": "code",
228201
"source": [
@@ -250,12 +223,7 @@
250223
"metadata": {
251224
"id": "_EMhGUjRZoKQ",
252225
"colab_type": "code",
253-
"colab": {
254-
"autoexec": {
255-
"startup": false,
256-
"wait_interval": 0
257-
}
258-
}
226+
"colab": {}
259227
},
260228
"cell_type": "code",
261229
"source": [
@@ -278,12 +246,7 @@
278246
"metadata": {
279247
"id": "I1RtBvoKBxq5",
280248
"colab_type": "code",
281-
"colab": {
282-
"autoexec": {
283-
"startup": false,
284-
"wait_interval": 0
285-
}
286-
}
249+
"colab": {}
287250
},
288251
"cell_type": "code",
289252
"source": [
@@ -306,12 +269,7 @@
306269
"metadata": {
307270
"id": "SGjSq0WQvwGs",
308271
"colab_type": "code",
309-
"colab": {
310-
"autoexec": {
311-
"startup": false,
312-
"wait_interval": 0
313-
}
314-
}
272+
"colab": {}
315273
},
316274
"cell_type": "code",
317275
"source": [
@@ -342,12 +300,7 @@
342300
"metadata": {
343301
"id": "toxKBOXbB1ro",
344302
"colab_type": "code",
345-
"colab": {
346-
"autoexec": {
347-
"startup": false,
348-
"wait_interval": 0
349-
}
350-
}
303+
"colab": {}
351304
},
352305
"cell_type": "code",
353306
"source": [
@@ -375,12 +328,7 @@
375328
"metadata": {
376329
"id": "jlyQgxYsYSXr",
377330
"colab_type": "code",
378-
"colab": {
379-
"autoexec": {
380-
"startup": false,
381-
"wait_interval": 0
382-
}
383-
}
331+
"colab": {}
384332
},
385333
"cell_type": "code",
386334
"source": [
@@ -405,12 +353,7 @@
405353
"metadata": {
406354
"id": "BKhFNXDic4Mw",
407355
"colab_type": "code",
408-
"colab": {
409-
"autoexec": {
410-
"startup": false,
411-
"wait_interval": 0
412-
}
413-
}
356+
"colab": {}
414357
},
415358
"cell_type": "code",
416359
"source": [
@@ -467,12 +410,7 @@
467410
"metadata": {
468411
"id": "IAOgh62zCPZ4",
469412
"colab_type": "code",
470-
"colab": {
471-
"autoexec": {
472-
"startup": false,
473-
"wait_interval": 0
474-
}
475-
}
413+
"colab": {}
476414
},
477415
"cell_type": "code",
478416
"source": [
@@ -507,12 +445,7 @@
507445
"metadata": {
508446
"id": "ySTsuxnqCTQi",
509447
"colab_type": "code",
510-
"colab": {
511-
"autoexec": {
512-
"startup": false,
513-
"wait_interval": 0
514-
}
515-
}
448+
"colab": {}
516449
},
517450
"cell_type": "code",
518451
"source": [
@@ -547,12 +480,7 @@
547480
"metadata": {
548481
"id": "ABX070KwCczR",
549482
"colab_type": "code",
550-
"colab": {
551-
"autoexec": {
552-
"startup": false,
553-
"wait_interval": 0
554-
}
555-
}
483+
"colab": {}
556484
},
557485
"cell_type": "code",
558486
"source": [
@@ -591,12 +519,7 @@
591519
"metadata": {
592520
"id": "4yyNOf-Twr6s",
593521
"colab_type": "code",
594-
"colab": {
595-
"autoexec": {
596-
"startup": false,
597-
"wait_interval": 0
598-
}
599-
}
522+
"colab": {}
600523
},
601524
"cell_type": "code",
602525
"source": [
@@ -631,12 +554,7 @@
631554
"metadata": {
632555
"id": "ucmZyQVL03bF",
633556
"colab_type": "code",
634-
"colab": {
635-
"autoexec": {
636-
"startup": false,
637-
"wait_interval": 0
638-
}
639-
}
557+
"colab": {}
640558
},
641559
"cell_type": "code",
642560
"source": [
@@ -667,12 +585,7 @@
667585
"metadata": {
668586
"id": "1sjaFcL717Ig",
669587
"colab_type": "code",
670-
"colab": {
671-
"autoexec": {
672-
"startup": false,
673-
"wait_interval": 0
674-
}
675-
}
588+
"colab": {}
676589
},
677590
"cell_type": "code",
678591
"source": [
@@ -728,12 +641,7 @@
728641
"metadata": {
729642
"id": "xqoxumv0ssQW",
730643
"colab_type": "code",
731-
"colab": {
732-
"autoexec": {
733-
"startup": false,
734-
"wait_interval": 0
735-
}
736-
}
644+
"colab": {}
737645
},
738646
"cell_type": "code",
739647
"source": [
@@ -756,12 +664,7 @@
756664
"metadata": {
757665
"id": "Pe-erWQdBoC5",
758666
"colab_type": "code",
759-
"colab": {
760-
"autoexec": {
761-
"startup": false,
762-
"wait_interval": 0
763-
}
764-
}
667+
"colab": {}
765668
},
766669
"cell_type": "code",
767670
"source": [
@@ -786,6 +689,9 @@
786689
"\n",
787690
"def fit(m, x, y, opt):\n",
788691
" l, accuracy = predict(m, x, y)\n",
692+
" # Autograph automatically adds the necessary `tf.control_dependencies` here.\n",
693+
" # (Without them nothing depends on `opt.minimize`, so it doesn't run.)\n",
694+
" # This makes it much more like eager-code.\n",
789695
" opt.minimize(l)\n",
790696
" return l, accuracy\n",
791697
"\n",
@@ -826,15 +732,12 @@
826732
"metadata": {
827733
"id": "3xtg_MMhJETd",
828734
"colab_type": "code",
829-
"colab": {
830-
"autoexec": {
831-
"startup": false,
832-
"wait_interval": 0
833-
}
834-
}
735+
"colab": {}
835736
},
836737
"cell_type": "code",
837738
"source": [
739+
"# Use `recursive = True` to recursively convert functions called by this one.\n",
740+
"@autograph.convert(recursive=True)\n",
838741
"def train(train_ds, test_ds, hp):\n",
839742
" m = mlp_model((28 * 28,))\n",
840743
" opt = tf.train.MomentumOptimizer(hp.learning_rate, 0.9)\n",
@@ -893,12 +796,7 @@
893796
"metadata": {
894797
"id": "HYh6MSZyJOag",
895798
"colab_type": "code",
896-
"colab": {
897-
"autoexec": {
898-
"startup": false,
899-
"wait_interval": 0
900-
}
901-
}
799+
"colab": {}
902800
},
903801
"cell_type": "code",
904802
"source": [
@@ -909,9 +807,8 @@
909807
" )\n",
910808
" train_ds = setup_mnist_data(True, 50)\n",
911809
" test_ds = setup_mnist_data(False, 1000)\n",
912-
" tf_train = autograph.to_graph(train)\n",
913810
" (train_losses, test_losses, train_accuracies,\n",
914-
" test_accuracies) = tf_train(train_ds, test_ds, hp)\n",
811+
" test_accuracies) = train(train_ds, test_ds, hp)\n",
915812
"\n",
916813
" init = tf.global_variables_initializer()\n",
917814
" \n",
@@ -940,4 +837,4 @@
940837
"outputs": []
941838
}
942839
]
943-
}
840+
}

0 commit comments

Comments
 (0)