BUILD 13.9 KB
Newer Older
1
# Description:
2
#   Contains files for loading, training and evaluating TF-Slim-based models.
3

4
5
6
package(
    default_visibility = ["//visibility:public"],
)
7
8
9
10
11
12
13
14

licenses(["notice"])  # Apache 2.0

exports_files(["LICENSE"])

py_library(
    name = "dataset_utils",
    srcs = ["datasets/dataset_utils.py"],
Derek Chow's avatar
Derek Chow committed
15
    deps = [
16
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
17
    ],
18
19
)

derekjchow's avatar
derekjchow committed
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
sh_binary(
    name = "download_and_convert_imagenet",
    srcs = ["datasets/download_and_convert_imagenet.sh"],
    data = [
        "datasets/download_imagenet.sh",
        "datasets/imagenet_2012_validation_synset_labels.txt",
        "datasets/imagenet_lsvrc_2015_synsets.txt",
        "datasets/imagenet_metadata.txt",
        "datasets/preprocess_imagenet_validation_data.py",
        "datasets/process_bounding_boxes.py",
        ":build_imagenet_data",
    ],
)

py_binary(
    name = "build_imagenet_data",
    srcs = ["datasets/build_imagenet_data.py"],
    deps = [
38
        # "//numpy",
39
        # "//tensorflow",
derekjchow's avatar
derekjchow committed
40
41
42
    ],
)

43
py_library(
44
45
    name = "download_and_convert_cifar10",
    srcs = ["datasets/download_and_convert_cifar10.py"],
Derek Chow's avatar
Derek Chow committed
46
47
    deps = [
        ":dataset_utils",
48
        # "//numpy",
49
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
50
    ],
51
52
)

53
py_library(
54
55
    name = "download_and_convert_flowers",
    srcs = ["datasets/download_and_convert_flowers.py"],
Derek Chow's avatar
Derek Chow committed
56
57
    deps = [
        ":dataset_utils",
58
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
59
    ],
60
61
)

62
py_library(
63
64
    name = "download_and_convert_mnist",
    srcs = ["datasets/download_and_convert_mnist.py"],
Derek Chow's avatar
Derek Chow committed
65
66
    deps = [
        ":dataset_utils",
67
        # "//numpy",
68
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
69
    ],
70
71
)

72
73
74
75
76
77
78
py_binary(
    name = "download_and_convert_data",
    srcs = ["download_and_convert_data.py"],
    deps = [
        ":download_and_convert_cifar10",
        ":download_and_convert_flowers",
        ":download_and_convert_mnist",
79
        # "//tensorflow",
80
81
82
    ],
)

83
py_library(
84
85
    name = "cifar10",
    srcs = ["datasets/cifar10.py"],
Derek Chow's avatar
Derek Chow committed
86
87
    deps = [
        ":dataset_utils",
88
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
89
    ],
90
91
)

92
py_library(
93
94
    name = "flowers",
    srcs = ["datasets/flowers.py"],
Derek Chow's avatar
Derek Chow committed
95
96
    deps = [
        ":dataset_utils",
97
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
98
    ],
99
100
)

101
py_library(
102
103
    name = "imagenet",
    srcs = ["datasets/imagenet.py"],
Derek Chow's avatar
Derek Chow committed
104
105
    deps = [
        ":dataset_utils",
106
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
107
    ],
108
109
)

110
py_library(
111
112
    name = "mnist",
    srcs = ["datasets/mnist.py"],
Derek Chow's avatar
Derek Chow committed
113
114
    deps = [
        ":dataset_utils",
115
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
116
    ],
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
)

py_library(
    name = "dataset_factory",
    srcs = ["datasets/dataset_factory.py"],
    deps = [
        ":cifar10",
        ":flowers",
        ":imagenet",
        ":mnist",
    ],
)

py_library(
    name = "model_deploy",
132
    srcs = ["deployment/model_deploy.py"],
Derek Chow's avatar
Derek Chow committed
133
    deps = [
134
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
135
    ],
136
137
138
139
)

py_test(
    name = "model_deploy_test",
140
    srcs = ["deployment/model_deploy_test.py"],
141
    srcs_version = "PY2AND3",
Derek Chow's avatar
Derek Chow committed
142
143
    deps = [
        ":model_deploy",
144
        # "//numpy",
145
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
146
    ],
147
148
149
)

py_library(
150
151
    name = "cifarnet_preprocessing",
    srcs = ["preprocessing/cifarnet_preprocessing.py"],
Derek Chow's avatar
Derek Chow committed
152
    deps = [
153
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
154
    ],
155
156
157
158
)

py_library(
    name = "inception_preprocessing",
159
    srcs = ["preprocessing/inception_preprocessing.py"],
Derek Chow's avatar
Derek Chow committed
160
    deps = [
161
162
        # "//tensorflow",
        # "//tensorflow/python:control_flow_ops",
Derek Chow's avatar
Derek Chow committed
163
    ],
164
165
166
167
)

py_library(
    name = "lenet_preprocessing",
168
    srcs = ["preprocessing/lenet_preprocessing.py"],
Derek Chow's avatar
Derek Chow committed
169
    deps = [
170
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
171
    ],
172
173
174
175
)

py_library(
    name = "vgg_preprocessing",
176
    srcs = ["preprocessing/vgg_preprocessing.py"],
Derek Chow's avatar
Derek Chow committed
177
    deps = [
178
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
179
    ],
180
181
182
183
)

py_library(
    name = "preprocessing_factory",
184
    srcs = ["preprocessing/preprocessing_factory.py"],
185
    deps = [
186
        ":cifarnet_preprocessing",
187
188
189
        ":inception_preprocessing",
        ":lenet_preprocessing",
        ":vgg_preprocessing",
190
        # "//tensorflow",
191
192
193
    ],
)

194
195
196
197
198
199
200
# Typical networks definitions.

py_library(
    name = "nets",
    deps = [
        ":alexnet",
        ":cifarnet",
201
        ":cyclegan",
202
203
        ":inception",
        ":lenet",
204
        ":mobilenet",
205
        ":nasnet",
206
        ":overfeat",
207
        ":pix2pix",
maximneumann's avatar
maximneumann committed
208
        ":pnasnet",
209
210
211
212
213
214
215
216
217
218
        ":resnet_v1",
        ":resnet_v2",
        ":vgg",
    ],
)

py_library(
    name = "alexnet",
    srcs = ["nets/alexnet.py"],
    srcs_version = "PY2AND3",
219
    deps = [
pkulzc's avatar
pkulzc committed
220
        # "//tensorflow",
221
    ],
222
223
224
225
226
227
228
)

py_test(
    name = "alexnet_test",
    size = "medium",
    srcs = ["nets/alexnet_test.py"],
    srcs_version = "PY2AND3",
Derek Chow's avatar
Derek Chow committed
229
230
    deps = [
        ":alexnet",
231
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
232
    ],
233
234
235
236
237
)

py_library(
    name = "cifarnet",
    srcs = ["nets/cifarnet.py"],
Derek Chow's avatar
Derek Chow committed
238
    deps = [
239
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
240
    ],
241
242
)

243
244
245
246
247
py_library(
    name = "cyclegan",
    srcs = ["nets/cyclegan.py"],
    deps = [
        # "//numpy",
248
        # "//tensorflow",
249
250
251
252
253
254
255
256
257
258
    ],
)

py_test(
    name = "cyclegan_test",
    srcs = ["nets/cyclegan_test.py"],
    shard_count = 3,
    srcs_version = "PY2AND3",
    deps = [
        ":cyclegan",
259
        # "//tensorflow",
260
261
262
263
264
265
266
    ],
)

py_library(
    name = "dcgan",
    srcs = ["nets/dcgan.py"],
    deps = [
267
        # "//tensorflow",
268
269
270
271
272
273
274
275
276
277
    ],
)

py_test(
    name = "dcgan_test",
    srcs = ["nets/dcgan_test.py"],
    shard_count = 3,
    srcs_version = "PY2AND3",
    deps = [
        ":dcgan",
278
        # "//tensorflow",
279
280
281
    ],
)

282
283
284
285
286
287
288
289
290
py_library(
    name = "inception",
    srcs = ["nets/inception.py"],
    srcs_version = "PY2AND3",
    deps = [
        ":inception_resnet_v2",
        ":inception_v1",
        ":inception_v2",
        ":inception_v3",
Alex Kurakin's avatar
Alex Kurakin committed
291
        ":inception_v4",
292
293
294
    ],
)

Alex Kurakin's avatar
Alex Kurakin committed
295
296
297
298
py_library(
    name = "inception_utils",
    srcs = ["nets/inception_utils.py"],
    srcs_version = "PY2AND3",
299
    deps = [
pkulzc's avatar
pkulzc committed
300
        # "//tensorflow",
301
    ],
Alex Kurakin's avatar
Alex Kurakin committed
302
303
)

304
305
306
307
py_library(
    name = "inception_v1",
    srcs = ["nets/inception_v1.py"],
    srcs_version = "PY2AND3",
Alex Kurakin's avatar
Alex Kurakin committed
308
309
    deps = [
        ":inception_utils",
310
        # "//tensorflow",
Alex Kurakin's avatar
Alex Kurakin committed
311
    ],
312
313
314
315
316
317
)

py_library(
    name = "inception_v2",
    srcs = ["nets/inception_v2.py"],
    srcs_version = "PY2AND3",
Alex Kurakin's avatar
Alex Kurakin committed
318
319
    deps = [
        ":inception_utils",
320
        # "//tensorflow",
Alex Kurakin's avatar
Alex Kurakin committed
321
    ],
322
323
324
325
326
327
)

py_library(
    name = "inception_v3",
    srcs = ["nets/inception_v3.py"],
    srcs_version = "PY2AND3",
Alex Kurakin's avatar
Alex Kurakin committed
328
329
    deps = [
        ":inception_utils",
330
        # "//tensorflow",
Alex Kurakin's avatar
Alex Kurakin committed
331
332
333
334
335
336
337
338
339
    ],
)

py_library(
    name = "inception_v4",
    srcs = ["nets/inception_v4.py"],
    srcs_version = "PY2AND3",
    deps = [
        ":inception_utils",
340
        # "//tensorflow",
Alex Kurakin's avatar
Alex Kurakin committed
341
    ],
342
343
344
345
346
347
)

py_library(
    name = "inception_resnet_v2",
    srcs = ["nets/inception_resnet_v2.py"],
    srcs_version = "PY2AND3",
348
    deps = [
pkulzc's avatar
pkulzc committed
349
        # "//tensorflow",
350
    ],
351
352
353
354
355
356
357
358
)

py_test(
    name = "inception_v1_test",
    size = "large",
    srcs = ["nets/inception_v1_test.py"],
    shard_count = 3,
    srcs_version = "PY2AND3",
Derek Chow's avatar
Derek Chow committed
359
360
    deps = [
        ":inception",
361
        # "//numpy",
362
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
363
    ],
364
365
366
367
368
369
370
371
)

py_test(
    name = "inception_v2_test",
    size = "large",
    srcs = ["nets/inception_v2_test.py"],
    shard_count = 3,
    srcs_version = "PY2AND3",
Derek Chow's avatar
Derek Chow committed
372
373
    deps = [
        ":inception",
374
        # "//numpy",
375
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
376
    ],
377
378
379
380
381
382
383
384
)

py_test(
    name = "inception_v3_test",
    size = "large",
    srcs = ["nets/inception_v3_test.py"],
    shard_count = 3,
    srcs_version = "PY2AND3",
Derek Chow's avatar
Derek Chow committed
385
386
    deps = [
        ":inception",
387
        # "//numpy",
388
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
389
    ],
390
391
)

Alex Kurakin's avatar
Alex Kurakin committed
392
393
394
395
396
397
py_test(
    name = "inception_v4_test",
    size = "large",
    srcs = ["nets/inception_v4_test.py"],
    shard_count = 3,
    srcs_version = "PY2AND3",
Derek Chow's avatar
Derek Chow committed
398
399
    deps = [
        ":inception",
400
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
401
    ],
Alex Kurakin's avatar
Alex Kurakin committed
402
403
)

404
405
406
407
408
409
py_test(
    name = "inception_resnet_v2_test",
    size = "large",
    srcs = ["nets/inception_resnet_v2_test.py"],
    shard_count = 3,
    srcs_version = "PY2AND3",
Derek Chow's avatar
Derek Chow committed
410
411
    deps = [
        ":inception",
412
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
413
    ],
414
415
)

416
417
418
py_library(
    name = "lenet",
    srcs = ["nets/lenet.py"],
Derek Chow's avatar
Derek Chow committed
419
    deps = [
420
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
421
    ],
422
423
)

andrewghoward's avatar
andrewghoward committed
424
425
426
427
py_library(
    name = "mobilenet_v1",
    srcs = ["nets/mobilenet_v1.py"],
    srcs_version = "PY2AND3",
428
    deps = [
pkulzc's avatar
pkulzc committed
429
        # "//tensorflow",
430
    ],
andrewghoward's avatar
andrewghoward committed
431
432
)

433
434
435
436
py_library(
    name = "mobilenet_v2",
    srcs = glob(["nets/mobilenet/*.py"]),
    srcs_version = "PY2AND3",
437
    deps = [
438
        # "//tensorflow",
439
440
441
    ],
)

442
443
444
445
446
447
448
449
450
451
452
453
py_test(
    name = "mobilenet_v2_test",
    srcs = ["nets/mobilenet/mobilenet_v2_test.py"],
    srcs_version = "PY2AND3",
    deps = [
        ":mobilenet",
        # "//tensorflow",
    ],
)

py_library(
    name = "mobilenet",
454
455
    deps = [
        ":mobilenet_v1",
456
        ":mobilenet_v2",
457
458
459
    ],
)

andrewghoward's avatar
andrewghoward committed
460
461
462
463
464
465
466
467
py_test(
    name = "mobilenet_v1_test",
    size = "large",
    srcs = ["nets/mobilenet_v1_test.py"],
    shard_count = 3,
    srcs_version = "PY2AND3",
    deps = [
        ":mobilenet_v1",
468
        # "//numpy",
469
        # "//tensorflow",
470
471
472
    ],
)

473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
py_binary(
    name = "mobilenet_v1_train",
    srcs = ["nets/mobilenet_v1_train.py"],
    deps = [
        ":dataset_factory",
        ":mobilenet_v1",
        ":preprocessing_factory",
        # "//tensorflow",
    ],
)

py_binary(
    name = "mobilenet_v1_eval",
    srcs = ["nets/mobilenet_v1_eval.py"],
    deps = [
        ":dataset_factory",
        ":mobilenet_v1",
        ":preprocessing_factory",
        # "//tensorflow",
    ],
)

495
496
497
498
499
py_library(
    name = "nasnet_utils",
    srcs = ["nets/nasnet/nasnet_utils.py"],
    srcs_version = "PY2AND3",
    deps = [
500
        # "//tensorflow",
501
502
503
504
505
506
507
508
509
    ],
)

py_library(
    name = "nasnet",
    srcs = ["nets/nasnet/nasnet.py"],
    srcs_version = "PY2AND3",
    deps = [
        ":nasnet_utils",
510
        # "//tensorflow",
511
512
513
514
515
516
517
518
519
520
    ],
)

py_test(
    name = "nasnet_utils_test",
    size = "medium",
    srcs = ["nets/nasnet/nasnet_utils_test.py"],
    srcs_version = "PY2AND3",
    deps = [
        ":nasnet_utils",
521
        # "//tensorflow",
522
523
524
525
526
527
528
529
530
531
532
    ],
)

py_test(
    name = "nasnet_test",
    size = "large",
    srcs = ["nets/nasnet/nasnet_test.py"],
    shard_count = 10,
    srcs_version = "PY2AND3",
    deps = [
        ":nasnet",
533
        # "//tensorflow",
andrewghoward's avatar
andrewghoward committed
534
535
536
    ],
)

maximneumann's avatar
maximneumann committed
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
py_library(
    name = "pnasnet",
    srcs = ["nets/nasnet/pnasnet.py"],
    srcs_version = "PY2AND3",
    deps = [
        ":nasnet",
        ":nasnet_utils",
        # "//tensorflow",
    ],
)

py_test(
    name = "pnasnet_test",
    size = "large",
    srcs = ["nets/nasnet/pnasnet_test.py"],
    shard_count = 4,
    srcs_version = "PY2AND3",
    deps = [
        ":pnasnet",
        # "//tensorflow",
    ],
)

560
py_library(
561
562
563
    name = "overfeat",
    srcs = ["nets/overfeat.py"],
    srcs_version = "PY2AND3",
564
    deps = [
pkulzc's avatar
pkulzc committed
565
        # "//tensorflow",
566
    ],
567
568
569
570
571
572
573
)

py_test(
    name = "overfeat_test",
    size = "medium",
    srcs = ["nets/overfeat_test.py"],
    srcs_version = "PY2AND3",
Derek Chow's avatar
Derek Chow committed
574
575
    deps = [
        ":overfeat",
576
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
577
    ],
578
579
)

580
581
582
583
py_library(
    name = "pix2pix",
    srcs = ["nets/pix2pix.py"],
    srcs_version = "PY2AND3",
584
    deps = [
pkulzc's avatar
pkulzc committed
585
        # "//tensorflow",
586
    ],
587
588
589
590
591
592
593
594
)

py_test(
    name = "pix2pix_test",
    srcs = ["nets/pix2pix_test.py"],
    srcs_version = "PY2AND3",
    deps = [
        ":pix2pix",
595
        # "//tensorflow",
596
597
598
    ],
)

599
600
601
602
py_library(
    name = "resnet_utils",
    srcs = ["nets/resnet_utils.py"],
    srcs_version = "PY2AND3",
603
    deps = [
pkulzc's avatar
pkulzc committed
604
        # "//tensorflow",
605
    ],
606
607
608
609
610
611
612
613
)

py_library(
    name = "resnet_v1",
    srcs = ["nets/resnet_v1.py"],
    srcs_version = "PY2AND3",
    deps = [
        ":resnet_utils",
614
        # "//tensorflow",
615
616
617
618
619
620
621
    ],
)

py_test(
    name = "resnet_v1_test",
    size = "medium",
    srcs = ["nets/resnet_v1_test.py"],
Derek Chow's avatar
Derek Chow committed
622
    shard_count = 2,
623
    srcs_version = "PY2AND3",
Derek Chow's avatar
Derek Chow committed
624
    deps = [
625
        ":resnet_utils",
Derek Chow's avatar
Derek Chow committed
626
        ":resnet_v1",
627
        # "//numpy",
628
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
629
    ],
630
631
632
633
634
635
636
637
)

py_library(
    name = "resnet_v2",
    srcs = ["nets/resnet_v2.py"],
    srcs_version = "PY2AND3",
    deps = [
        ":resnet_utils",
638
        # "//tensorflow",
639
640
641
642
643
644
645
    ],
)

py_test(
    name = "resnet_v2_test",
    size = "medium",
    srcs = ["nets/resnet_v2_test.py"],
Derek Chow's avatar
Derek Chow committed
646
    shard_count = 2,
647
    srcs_version = "PY2AND3",
Derek Chow's avatar
Derek Chow committed
648
    deps = [
649
        ":resnet_utils",
Derek Chow's avatar
Derek Chow committed
650
        ":resnet_v2",
651
        # "//numpy",
652
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
653
    ],
654
655
656
657
658
659
)

py_library(
    name = "vgg",
    srcs = ["nets/vgg.py"],
    srcs_version = "PY2AND3",
660
    deps = [
pkulzc's avatar
pkulzc committed
661
        # "//tensorflow",
662
    ],
663
664
665
666
667
668
669
)

py_test(
    name = "vgg_test",
    size = "medium",
    srcs = ["nets/vgg_test.py"],
    srcs_version = "PY2AND3",
Derek Chow's avatar
Derek Chow committed
670
671
    deps = [
        ":vgg",
672
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
673
    ],
674
675
676
677
678
)

py_library(
    name = "nets_factory",
    srcs = ["nets/nets_factory.py"],
Derek Chow's avatar
Derek Chow committed
679
680
    deps = [
        ":nets",
681
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
682
    ],
683
684
685
686
687
688
)

py_test(
    name = "nets_factory_test",
    size = "medium",
    srcs = ["nets/nets_factory_test.py"],
Derek Chow's avatar
Derek Chow committed
689
    shard_count = 2,
690
    srcs_version = "PY2AND3",
Derek Chow's avatar
Derek Chow committed
691
692
    deps = [
        ":nets_factory",
693
        # "//tensorflow",
Derek Chow's avatar
Derek Chow committed
694
    ],
695
696
)

697
698
py_library(
    name = "train_image_classifier_lib",
699
700
701
702
703
704
    srcs = ["train_image_classifier.py"],
    deps = [
        ":dataset_factory",
        ":model_deploy",
        ":nets_factory",
        ":preprocessing_factory",
705
        # "//tensorflow",
706
    ],
707
708
)

709
710
711
712
713
714
715
716
717
py_binary(
    name = "train_image_classifier",
    srcs = ["train_image_classifier.py"],
    paropts = ["--compress"],
    deps = [
        ":train_image_classifier_lib",
    ],
)

718
719
py_library(
    name = "eval_image_classifier_lib",
720
    srcs = ["eval_image_classifier.py"],
721
722
    deps = [
        ":dataset_factory",
723
        ":nets_factory",
724
        ":preprocessing_factory",
725
        # "//tensorflow",
726
727
    ],
)
728

729
730
731
732
733
734
735
736
py_binary(
    name = "eval_image_classifier",
    srcs = ["eval_image_classifier.py"],
    deps = [
        ":eval_image_classifier_lib",
    ],
)

737
738
739
py_binary(
    name = "export_inference_graph",
    srcs = ["export_inference_graph.py"],
pkulzc's avatar
pkulzc committed
740
    paropts = ["--compress"],
741
742
743
    deps = [
        ":dataset_factory",
        ":nets_factory",
744
745
        # "//tensorflow",
        # "//tensorflow/python:platform",
746
747
748
749
750
751
752
753
754
755
756
757
758
    ],
)

py_test(
    name = "export_inference_graph_test",
    size = "medium",
    srcs = ["export_inference_graph_test.py"],
    srcs_version = "PY2AND3",
    tags = [
        "manual",
    ],
    deps = [
        ":export_inference_graph",
759
760
        # "//tensorflow",
        # "//tensorflow/python:platform",
761
762
    ],
)