Permalink
Browse files

Release DRAGNN (#1177)

* Release DRAGNN

* Update CoNLL evaluation table & evaluator.py
  • Loading branch information...
1 parent c774cc9 commit 7d30a017fe50b648be6dee544f8059bde52db562 @bogatyy bogatyy committed with calberti Mar 15, 2017
Showing with 515,667 additions and 779 deletions.
  1. +4 −0 syntaxnet/.dockerignore
  2. +79 −21 syntaxnet/Dockerfile
  3. +120 −456 syntaxnet/README.md
  4. +15 −2 syntaxnet/WORKSPACE
  5. +27 −0 syntaxnet/docker-devel/build_devel.sh
  6. +35 −0 syntaxnet/docker-devel/build_wheels.sh
  7. +5 −0 syntaxnet/dragnn/BUILD
  8. +116 −0 syntaxnet/dragnn/components/syntaxnet/BUILD
  9. +779 −0 syntaxnet/dragnn/components/syntaxnet/syntaxnet_component.cc
  10. +183 −0 syntaxnet/dragnn/components/syntaxnet/syntaxnet_component.h
  11. +1,174 −0 syntaxnet/dragnn/components/syntaxnet/syntaxnet_component_test.cc
  12. +49 −0 syntaxnet/dragnn/components/syntaxnet/syntaxnet_link_feature_extractor.cc
  13. +55 −0 syntaxnet/dragnn/components/syntaxnet/syntaxnet_link_feature_extractor.h
  14. +63 −0 syntaxnet/dragnn/components/syntaxnet/syntaxnet_link_feature_extractor_test.cc
  15. +85 −0 syntaxnet/dragnn/components/syntaxnet/syntaxnet_transition_state.cc
  16. +144 −0 syntaxnet/dragnn/components/syntaxnet/syntaxnet_transition_state.h
  17. +276 −0 syntaxnet/dragnn/components/syntaxnet/syntaxnet_transition_state_test.cc
  18. +48 −0 syntaxnet/dragnn/components/syntaxnet/testdata/master_spec.textproto
  19. +47 −0 syntaxnet/dragnn/components/syntaxnet/testdata/syntaxnet-tagger.label-map
  20. +65 −0 syntaxnet/dragnn/components/syntaxnet/testdata/syntaxnet-tagger.master-spec
  21. +50 −0 syntaxnet/dragnn/components/syntaxnet/testdata/syntaxnet-tagger.tag-map
  22. +4 −0 syntaxnet/dragnn/components/syntaxnet/testdata/syntaxnet-tagger.word-map
  23. +9 −0 syntaxnet/dragnn/components/util/BUILD
  24. +95 −0 syntaxnet/dragnn/components/util/bulk_feature_extractor.h
  25. +9 −0 syntaxnet/dragnn/conll2017/BUILD
  26. +40 −0 syntaxnet/dragnn/conll2017/conll_parser_trainer.sh
  27. +105 −0 syntaxnet/dragnn/conll2017/make_parser_spec.py
  28. +16 −0 syntaxnet/dragnn/conll2017/sample/zh-segmenter-resource/category-map
  29. +3,518 −0 syntaxnet/dragnn/conll2017/sample/zh-segmenter-resource/char-map
  30. +16,126 −0 syntaxnet/dragnn/conll2017/sample/zh-segmenter-resource/char-ngram-map
  31. +43 −0 syntaxnet/dragnn/conll2017/sample/zh-segmenter-resource/label-map
  32. +16,263 −0 syntaxnet/dragnn/conll2017/sample/zh-segmenter-resource/lcword-map
  33. BIN syntaxnet/dragnn/conll2017/sample/zh-segmenter-resource/prefix-table
  34. BIN syntaxnet/dragnn/conll2017/sample/zh-segmenter-resource/suffix-table
  35. +43 −0 syntaxnet/dragnn/conll2017/sample/zh-segmenter-resource/tag-map
  36. +42 −0 syntaxnet/dragnn/conll2017/sample/zh-segmenter-resource/tag-to-category
  37. +16,269 −0 syntaxnet/dragnn/conll2017/sample/zh-segmenter-resource/word-map
  38. BIN syntaxnet/dragnn/conll2017/sample/zh-segmenter.checkpoint.data-00000-of-00001
  39. BIN syntaxnet/dragnn/conll2017/sample/zh-segmenter.checkpoint.index
  40. BIN syntaxnet/dragnn/conll2017/sample/zh-segmenter.checkpoint.meta
  41. +187 −0 syntaxnet/dragnn/conll2017/sample/zh-segmenter.master_spec
  42. +340 −0 syntaxnet/dragnn/core/BUILD
  43. +347 −0 syntaxnet/dragnn/core/beam.h
  44. +773 −0 syntaxnet/dragnn/core/beam_test.cc
  45. +8 −0 syntaxnet/dragnn/core/component_registry.cc
  46. +14 −0 syntaxnet/dragnn/core/component_registry.h
  47. +120 −0 syntaxnet/dragnn/core/compute_session.h
  48. +384 −0 syntaxnet/dragnn/core/compute_session_impl.cc
  49. +142 −0 syntaxnet/dragnn/core/compute_session_impl.h
  50. +1,157 −0 syntaxnet/dragnn/core/compute_session_impl_test.cc
  51. +89 −0 syntaxnet/dragnn/core/compute_session_pool.cc
  52. +87 −0 syntaxnet/dragnn/core/compute_session_pool.h
  53. +211 −0 syntaxnet/dragnn/core/compute_session_pool_test.cc
  54. +67 −0 syntaxnet/dragnn/core/index_translator.cc
  55. +68 −0 syntaxnet/dragnn/core/index_translator.h
  56. +180 −0 syntaxnet/dragnn/core/index_translator_test.cc
  57. +78 −0 syntaxnet/dragnn/core/input_batch_cache.h
  58. +107 −0 syntaxnet/dragnn/core/input_batch_cache_test.cc
  59. +37 −0 syntaxnet/dragnn/core/interfaces/BUILD
  60. +52 −0 syntaxnet/dragnn/core/interfaces/cloneable_transition_state.h
  61. +126 −0 syntaxnet/dragnn/core/interfaces/component.h
  62. +30 −0 syntaxnet/dragnn/core/interfaces/input_batch.h
  63. +53 −0 syntaxnet/dragnn/core/interfaces/transition_state.h
  64. +113 −0 syntaxnet/dragnn/core/interfaces/transition_state_starter_test.cc
  65. +70 −0 syntaxnet/dragnn/core/ops/compute_session_op.cc
  66. +54 −0 syntaxnet/dragnn/core/ops/compute_session_op.h
  67. +396 −0 syntaxnet/dragnn/core/ops/dragnn_bulk_op_kernels.cc
  68. +588 −0 syntaxnet/dragnn/core/ops/dragnn_bulk_op_kernels_test.cc
  69. +115 −0 syntaxnet/dragnn/core/ops/dragnn_bulk_ops.cc
  70. +631 −0 syntaxnet/dragnn/core/ops/dragnn_op_kernels.cc
  71. +851 −0 syntaxnet/dragnn/core/ops/dragnn_op_kernels_test.cc
  72. +239 −0 syntaxnet/dragnn/core/ops/dragnn_ops.cc
  73. +36 −0 syntaxnet/dragnn/core/resource_container.h
  74. +49 −0 syntaxnet/dragnn/core/resource_container_test.cc
  75. +57 −0 syntaxnet/dragnn/core/test/BUILD
  76. +21 −0 syntaxnet/dragnn/core/test/generic.cc
  77. +25 −0 syntaxnet/dragnn/core/test/generic.h
  78. +63 −0 syntaxnet/dragnn/core/test/mock_component.h
  79. +61 −0 syntaxnet/dragnn/core/test/mock_compute_session.h
  80. +30 −0 syntaxnet/dragnn/core/test/mock_transition_state.h
  81. BIN syntaxnet/dragnn/core/testdata/brain-parser-model
  82. +86 −0 syntaxnet/dragnn/core/testdata/master_spec_link.textproto
  83. BIN syntaxnet/dragnn/core/testdata/repository
  84. BIN syntaxnet/dragnn/core/testdata/simple-tagger.brain-parser-model
  85. BIN syntaxnet/dragnn/core/testdata/simple-tagger.repository
  86. +46 −0 syntaxnet/dragnn/core/testdata/simple-tagger.tag-map
  87. +59 −0 syntaxnet/dragnn/core/testdata/simple_parser_master_spec.textproto
  88. +52 −0 syntaxnet/dragnn/core/testdata/simple_tagger_lstm_master_spec.textproto
  89. +63 −0 syntaxnet/dragnn/core/testdata/simple_tagger_master_spec.textproto
  90. +65 −0 syntaxnet/dragnn/core/testdata/simple_tagger_wrapped_lstm_master_spec.textproto
  91. +111 −0 syntaxnet/dragnn/core/testdata/split_tagger_master_spec.textproto
  92. +47 −0 syntaxnet/dragnn/core/testdata/syntaxnet_tagger.label-map
  93. +50 −0 syntaxnet/dragnn/core/testdata/syntaxnet_tagger.tag-map
  94. +4 −0 syntaxnet/dragnn/core/testdata/syntaxnet_tagger.word-map
  95. +185 −0 syntaxnet/dragnn/core/testdata/tagger_parser_master_spec.textproto
  96. +213 −0 syntaxnet/dragnn/core/testdata/ud-hungarian.master-spec
  97. +34 −0 syntaxnet/dragnn/io/BUILD
  98. +31 −0 syntaxnet/dragnn/io/sentence_input_batch.cc
  99. +37 −0 syntaxnet/dragnn/io/sentence_input_batch.h
  100. +54 −0 syntaxnet/dragnn/io/sentence_input_batch_test.cc
  101. +27 −0 syntaxnet/dragnn/io/syntaxnet_sentence.h
  102. +43 −0 syntaxnet/dragnn/protos/BUILD
  103. +39 −0 syntaxnet/dragnn/protos/data.proto
  104. +278 −0 syntaxnet/dragnn/protos/spec.proto
  105. +78 −0 syntaxnet/dragnn/protos/trace.proto
  106. +372 −0 syntaxnet/dragnn/python/BUILD
  107. +240 −0 syntaxnet/dragnn/python/biaffine_units.py
  108. +460 −0 syntaxnet/dragnn/python/bulk_component.py
  109. +463 −0 syntaxnet/dragnn/python/bulk_component_test.py
  110. +589 −0 syntaxnet/dragnn/python/component.py
  111. +55 −0 syntaxnet/dragnn/python/composite_optimizer.py
  112. +112 −0 syntaxnet/dragnn/python/composite_optimizer_test.py
  113. +341 −0 syntaxnet/dragnn/python/digraph_ops.py
  114. +163 −0 syntaxnet/dragnn/python/digraph_ops_test.py
  115. +9 −0 syntaxnet/dragnn/python/dragnn_ops.py
  116. +117 −0 syntaxnet/dragnn/python/evaluation.py
  117. +108 −0 syntaxnet/dragnn/python/evaluation_test.py
  118. +584 −0 syntaxnet/dragnn/python/graph_builder.py
  119. +655 −0 syntaxnet/dragnn/python/graph_builder_test.py
  120. +73 −0 syntaxnet/dragnn/python/lexicon.py
  121. +79 −0 syntaxnet/dragnn/python/lexicon_test.py
  122. +22 −0 syntaxnet/dragnn/python/load_dragnn_cc_impl.py
  123. +1,602 −0 syntaxnet/dragnn/python/network_units.py
  124. +144 −0 syntaxnet/dragnn/python/network_units_test.py
  125. +53 −0 syntaxnet/dragnn/python/render_parse_tree_graphviz.py
  126. +27 −0 syntaxnet/dragnn/python/render_parse_tree_graphviz_test.py
  127. +102 −0 syntaxnet/dragnn/python/render_spec_with_graphviz.py
  128. +60 −0 syntaxnet/dragnn/python/render_spec_with_graphviz_test.py
  129. +64 −0 syntaxnet/dragnn/python/sentence_io.py
  130. +67 −0 syntaxnet/dragnn/python/sentence_io_test.py
  131. +299 −0 syntaxnet/dragnn/python/spec_builder.py
  132. +122 −0 syntaxnet/dragnn/python/spec_builder_test.py
  133. +151 −0 syntaxnet/dragnn/python/trainer_lib.py
  134. +194 −0 syntaxnet/dragnn/python/visualization.py
  135. +42 −0 syntaxnet/dragnn/python/visualization_test.py
  136. +456 −0 syntaxnet/dragnn/python/wrapped_units.py
  137. +947 −0 syntaxnet/dragnn/tensorflow_ops.bzl
  138. +161 −0 syntaxnet/dragnn/tools/BUILD
  139. +71 −0 syntaxnet/dragnn/tools/build_pip_package.py
  140. +147 −0 syntaxnet/dragnn/tools/evaluator.py
  141. +10 −0 syntaxnet/dragnn/tools/oss_notebook_launcher.py
  142. +84 −0 syntaxnet/dragnn/tools/oss_setup.py
  143. +220 −0 syntaxnet/dragnn/tools/parse-to-conll.py
  144. +196 −0 syntaxnet/dragnn/tools/parser_trainer.py
  145. +153 −0 syntaxnet/dragnn/tools/segmenter-evaluator.py
  146. +176 −0 syntaxnet/dragnn/tools/segmenter_trainer.py
  147. +204 −0 syntaxnet/dragnn/tools/trainer.py
  148. +5 −0 syntaxnet/dragnn/viz/BUILD
  149. +17 −0 syntaxnet/dragnn/viz/Dockerfile
  150. +83 −0 syntaxnet/dragnn/viz/README.md
  151. +22 −0 syntaxnet/dragnn/viz/compile-minified.sh
  152. +21 −0 syntaxnet/dragnn/viz/develop.sh
  153. +248 −0 syntaxnet/dragnn/viz/dragnn_layout.js
  154. +20 −0 syntaxnet/dragnn/viz/index.html
  155. +114 −0 syntaxnet/dragnn/viz/interactive_graph.jsx
  156. +211 −0 syntaxnet/dragnn/viz/node_info.jsx
  157. +19 −0 syntaxnet/dragnn/viz/package.json
  158. +1 −0 syntaxnet/dragnn/viz/sample_master_state.json
  159. +151 −0 syntaxnet/dragnn/viz/trace_interaction_handlers.js
  160. +300 −0 syntaxnet/dragnn/viz/visualize.js
  161. BIN syntaxnet/dragnn/viz/viz.min.js.gz
  162. +32 −0 syntaxnet/dragnn/viz/webpack.config.js
  163. +218 −0 syntaxnet/examples/dragnn/basic_parser_tutorial.ipynb
  164. +42,519 −0 syntaxnet/examples/dragnn/data/es-universal-dev.conll
  165. +389,318 −0 syntaxnet/examples/dragnn/data/es-universal-train.conll
  166. BIN syntaxnet/examples/dragnn/data/mini-english.checkpoint
  167. BIN syntaxnet/examples/dragnn/data/mini-english.checkpoint.meta
  168. +156 −0 syntaxnet/examples/dragnn/interactive_text_analyzer.ipynb
  169. +111 −0 syntaxnet/g3doc/CLOUD.md
  170. +146 −0 syntaxnet/g3doc/DRAGNN.md
  171. +13 −0 syntaxnet/g3doc/METADATA
  172. +94 −0 syntaxnet/g3doc/conll2017/README.md
  173. +55 −0 syntaxnet/g3doc/conll2017/cooking.md
  174. BIN syntaxnet/g3doc/conll2017/paper.pdf
  175. +272 −0 syntaxnet/g3doc/dragnn/cpp_api.md
  176. +170 −0 syntaxnet/g3doc/dragnn/creating_components.md
  177. +74 −0 syntaxnet/g3doc/dragnn_ops.md
  178. +18 −0 syntaxnet/g3doc/dragnn_ops/advance_from_oracle.md
  179. +20 −0 syntaxnet/g3doc/dragnn_ops/advance_from_prediction.md
  180. +21 −0 syntaxnet/g3doc/dragnn_ops/attach_data_reader.md
  181. +18 −0 syntaxnet/g3doc/dragnn_ops/batch_size.md
  182. +27 −0 syntaxnet/g3doc/dragnn_ops/bulk_advance_from_oracle.md
  183. +23 −0 syntaxnet/g3doc/dragnn_ops/bulk_advance_from_prediction.md
  184. +34 −0 syntaxnet/g3doc/dragnn_ops/bulk_fixed_embeddings.md
  185. +30 −0 syntaxnet/g3doc/dragnn_ops/bulk_fixed_feature_ids.md
  186. +33 −0 syntaxnet/g3doc/dragnn_ops/bulk_fixed_features.md
  187. +23 −0 syntaxnet/g3doc/dragnn_ops/dragnn_embedding_initializer.md
  188. +19 −0 syntaxnet/g3doc/dragnn_ops/emit_all_final.md
  189. +20 −0 syntaxnet/g3doc/dragnn_ops/emit_annotations.md
  190. +18 −0 syntaxnet/g3doc/dragnn_ops/emit_oracle_labels.md
  191. +27 −0 syntaxnet/g3doc/dragnn_ops/extract_fixed_features.md
  192. +22 −0 syntaxnet/g3doc/dragnn_ops/extract_link_features.md
  193. +17 −0 syntaxnet/g3doc/dragnn_ops/get_component_trace.md
  194. +21 −0 syntaxnet/g3doc/dragnn_ops/get_session.md
  195. +9 −0 syntaxnet/g3doc/dragnn_ops/google3.md
  196. +22 −0 syntaxnet/g3doc/dragnn_ops/init_component_data.md
  197. +16 −0 syntaxnet/g3doc/dragnn_ops/release_session.md
  198. +20 −0 syntaxnet/g3doc/dragnn_ops/set_tracing.md
  199. +13 −0 syntaxnet/g3doc/dragnn_ops/tf.md
  200. +19 −0 syntaxnet/g3doc/dragnn_ops/write_annotations.md
  201. BIN syntaxnet/g3doc/full-trace-image.png
  202. BIN syntaxnet/g3doc/images/api_manager.png
  203. BIN syntaxnet/g3doc/images/beam_search_training.png
  204. BIN syntaxnet/g3doc/images/cloudshell2.jpg
  205. BIN syntaxnet/g3doc/images/dragnn-spec-overview.png
  206. BIN syntaxnet/g3doc/images/dragnn-train-eval.png
  207. BIN syntaxnet/g3doc/images/dragnn-unrolling.png
  208. BIN syntaxnet/g3doc/images/dragnn_tf_overview.png
  209. BIN syntaxnet/g3doc/images/ff_nn_schematic.png
  210. BIN syntaxnet/g3doc/images/hamburger.png
  211. BIN syntaxnet/g3doc/images/ipython-link.png
  212. BIN syntaxnet/g3doc/images/looping-parser.gif
  213. BIN syntaxnet/g3doc/images/notebook-upload.png
  214. BIN syntaxnet/g3doc/images/sawman.png
  215. BIN syntaxnet/g3doc/images/tutorial_1.png
  216. BIN syntaxnet/g3doc/images/tutorial_2.png
  217. +78 −0 syntaxnet/g3doc/structured.md
  218. +384 −0 syntaxnet/g3doc/syntaxnet-tutorial.md
  219. +104 −0 syntaxnet/g3doc/universal.md
  220. BIN syntaxnet/g3doc/unrolled-dragnn.png
  221. +143 −7 syntaxnet/syntaxnet/BUILD
  222. +1 −2 syntaxnet/syntaxnet/affix.h
  223. +9 −1 syntaxnet/syntaxnet/arc_standard_transitions.cc
  224. +1 −2 syntaxnet/syntaxnet/arc_standard_transitions_test.cc
  225. +1 −1 syntaxnet/syntaxnet/base.h
  226. +1 −1 syntaxnet/syntaxnet/beam_reader_ops.cc
  227. +3 −4 syntaxnet/syntaxnet/beam_reader_ops_test.py
  228. +61 −5 syntaxnet/syntaxnet/binary_segment_transitions.cc
  229. +40 −5 syntaxnet/syntaxnet/binary_segment_transitions_test.cc
  230. +38 −0 syntaxnet/syntaxnet/char_ngram_string_extractor.cc
  231. +105 −0 syntaxnet/syntaxnet/char_ngram_string_extractor.h
  232. +119 −0 syntaxnet/syntaxnet/char_ngram_string_extractor_test.cc
  233. +404 −0 syntaxnet/syntaxnet/char_shift_transitions.cc
  234. +170 −0 syntaxnet/syntaxnet/char_shift_transitions.h
  235. +253 −0 syntaxnet/syntaxnet/char_shift_transitions_test.cc
  236. +74 −5 syntaxnet/syntaxnet/document_filters.cc
  237. +1 −1 syntaxnet/syntaxnet/document_format.h
  238. +34 −0 syntaxnet/syntaxnet/embedding_feature_extractor.cc
  239. +8 −2 syntaxnet/syntaxnet/embedding_feature_extractor.h
  240. +11 −1 syntaxnet/syntaxnet/feature_extractor.cc
  241. +1 −1 syntaxnet/syntaxnet/feature_extractor.h
  242. +1 −1 syntaxnet/syntaxnet/fml_parser.h
  243. +4 −3 syntaxnet/syntaxnet/graph_builder.py
  244. +3 −4 syntaxnet/syntaxnet/graph_builder_test.py
  245. +118 −0 syntaxnet/syntaxnet/head_transitions.cc
  246. +79 −0 syntaxnet/syntaxnet/head_transitions.h
  247. +90 −0 syntaxnet/syntaxnet/head_transitions_test.cc
  248. +129 −0 syntaxnet/syntaxnet/label_transitions.cc
  249. +67 −0 syntaxnet/syntaxnet/label_transitions.h
  250. +120 −0 syntaxnet/syntaxnet/label_transitions_test.cc
  251. +101 −27 syntaxnet/syntaxnet/lexicon_builder.cc
  252. +51 −8 syntaxnet/syntaxnet/lexicon_builder_test.py
  253. +1 −2 syntaxnet/syntaxnet/load_parser_ops.py
  254. +1 −1 syntaxnet/syntaxnet/morphology_label_set.h
  255. +89 −0 syntaxnet/syntaxnet/once_transitions.cc
  256. +85 −0 syntaxnet/syntaxnet/once_transitions_test.cc
  257. +79 −8 syntaxnet/syntaxnet/ops/parser_ops.cc
  258. +1 −1 syntaxnet/syntaxnet/parser_eval.py
  259. +98 −5 syntaxnet/syntaxnet/parser_features.cc
  260. +18 −7 syntaxnet/syntaxnet/parser_features_test.cc
  261. +41 −30 syntaxnet/syntaxnet/parser_state.cc
  262. +20 −2 syntaxnet/syntaxnet/parser_state.h
  263. +1 −1 syntaxnet/syntaxnet/parser_trainer.py
  264. +6 −1 syntaxnet/syntaxnet/parser_transitions.cc
  265. +2 −9 syntaxnet/syntaxnet/parser_transitions.h
  266. +0 −1 syntaxnet/syntaxnet/populate_test_inputs.cc
  267. +1 −2 syntaxnet/syntaxnet/proto_io.h
  268. +1 −1 syntaxnet/syntaxnet/reader_ops.cc
  269. +3 −4 syntaxnet/syntaxnet/reader_ops_test.py
  270. +71 −0 syntaxnet/syntaxnet/segmenter_utils.cc
  271. +20 −1 syntaxnet/syntaxnet/segmenter_utils.h
  272. +118 −31 syntaxnet/syntaxnet/segmenter_utils_test.cc
  273. +0 −2 syntaxnet/syntaxnet/sentence_batch.h
  274. +22 −27 syntaxnet/syntaxnet/sentence_features.cc
  275. +41 −17 syntaxnet/syntaxnet/sentence_features.h
  276. +128 −5 syntaxnet/syntaxnet/sentence_features_test.cc
  277. +155 −0 syntaxnet/syntaxnet/shift_transitions.cc
  278. +5 −2 syntaxnet/syntaxnet/tagger_transitions.cc
  279. +1 −2 syntaxnet/syntaxnet/tagger_transitions_test.cc
  280. +20 −10 syntaxnet/syntaxnet/term_frequency_map.cc
  281. +4 −0 syntaxnet/syntaxnet/term_frequency_map.h
  282. +6 −0 syntaxnet/syntaxnet/testdata/context.pbtxt
  283. +79 −14 syntaxnet/syntaxnet/text_formats.cc
  284. +103 −24 syntaxnet/syntaxnet/text_formats_test.py
  285. +5 −4 syntaxnet/syntaxnet/unpack_sparse_features.cc
  286. +58 −0 syntaxnet/syntaxnet/util/BUILD
  287. +114 −0 syntaxnet/syntaxnet/util/check.py
  288. +172 −0 syntaxnet/syntaxnet/util/check_test.py
  289. +185 −0 syntaxnet/syntaxnet/util/registry.py
  290. +116 −0 syntaxnet/syntaxnet/util/registry_test.py
  291. +12 −0 syntaxnet/syntaxnet/util/registry_test_base.py
  292. +33 −0 syntaxnet/syntaxnet/util/registry_test_impl.py
  293. +5 −1 syntaxnet/syntaxnet/utils.h
  294. +57 −0 syntaxnet/syntaxnet/whole_sentence_features.cc
  295. +35 −0 syntaxnet/syntaxnet/whole_sentence_features.h
  296. +95 −0 syntaxnet/syntaxnet/whole_sentence_features_test.cc
  297. +1 −1 syntaxnet/tensorflow
  298. +19 −3 syntaxnet/tools/bazel.rc
View
@@ -0,0 +1,4 @@
+.git
+bazel/
+Dockerfile*
+tensorflow/.git
View
@@ -1,33 +1,91 @@
+# Java baseimage, for Bazel.
FROM java:8
ENV SYNTAXNETDIR=/opt/tensorflow PATH=$PATH:/root/bin
+# Install system packages. This doesn't include everything the TensorFlow
+# dockerfile specifies, so if anything goes awry, maybe install more packages
+# from there. Also, running apt-get clean before further commands will make the
+# Docker images smaller.
RUN mkdir -p $SYNTAXNETDIR \
&& cd $SYNTAXNETDIR \
&& apt-get update \
- && apt-get install git zlib1g-dev file swig python2.7 python-dev python-pip python-mock -y \
- && pip install --upgrade pip \
- && pip install -U protobuf==3.0.0b2 \
- && pip install asciitree \
- && pip install numpy \
- && wget https://github.com/bazelbuild/bazel/releases/download/0.4.3/bazel-0.4.3-installer-linux-x86_64.sh \
+ && apt-get install -y \
+ file \
+ git \
+ graphviz \
+ libcurl3-dev \
+ libfreetype6-dev \
+ libgraphviz-dev \
+ liblapack-dev \
+ libopenblas-dev \
+ libpng12-dev \
+ libxft-dev \
+ python-dev \
+ python-mock \
+ python-pip \
+ python2.7 \
+ swig \
+ vim \
+ zlib1g-dev \
+ && apt-get clean \
+ && (rm -f /var/cache/apt/archives/*.deb \
+ /var/cache/apt/archives/partial/*.deb /var/cache/apt/*.bin || true)
+
+# Install common Python dependencies. Similar to above, remove caches
+# afterwards to help keep Docker images smaller.
+RUN pip install --ignore-installed pip \
+ && python -m pip install numpy \
+ && rm -rf /root/.cache/pip /tmp/pip*
+RUN python -m pip install \
+ asciitree \
+ ipykernel \
+ jupyter \
+ matplotlib \
+ pandas \
+ protobuf \
+ scipy \
+ sklearn \
+ && python -m ipykernel.kernelspec \
+ && python -m pip install pygraphviz \
+ --install-option="--include-path=/usr/include/graphviz" \
+ --install-option="--library-path=/usr/lib/graphviz/" \
+ && rm -rf /root/.cache/pip /tmp/pip*
+
+# Installs the latest version of Bazel.
+RUN wget --quiet https://github.com/bazelbuild/bazel/releases/download/0.4.3/bazel-0.4.3-installer-linux-x86_64.sh \
&& chmod +x bazel-0.4.3-installer-linux-x86_64.sh \
- && ./bazel-0.4.3-installer-linux-x86_64.sh --user \
- && git clone --recursive https://github.com/tensorflow/models.git \
- && cd $SYNTAXNETDIR/models/syntaxnet/tensorflow \
- && echo -e "\n\n\n\n\n\n\n\n\n" | ./configure \
- && apt-get autoremove -y \
- && apt-get clean
+ && ./bazel-0.4.3-installer-linux-x86_64.sh \
+ && rm ./bazel-0.4.3-installer-linux-x86_64.sh
+
+COPY WORKSPACE $SYNTAXNETDIR/syntaxnet/WORKSPACE
+COPY tools/bazel.rc $SYNTAXNETDIR/syntaxnet/tools/bazel.rc
+COPY tensorflow $SYNTAXNETDIR/syntaxnet/tensorflow
+
+# Compile common TensorFlow targets, which don't depend on DRAGNN / SyntaxNet
+# source. This makes it more convenient to re-compile DRAGNN / SyntaxNet for
+# development (though not as convenient as the docker-devel scripts).
+RUN cd $SYNTAXNETDIR/syntaxnet/tensorflow \
+ && tensorflow/tools/ci_build/builds/configured CPU \
+ && cd $SYNTAXNETDIR/syntaxnet \
+ && bazel build -c opt @org_tensorflow//tensorflow:tensorflow_py
-RUN cd $SYNTAXNETDIR/models/syntaxnet \
- && bazel test --genrule_strategy=standalone syntaxnet/... util/utf8/...
+# Build the codez.
+WORKDIR $SYNTAXNETDIR/syntaxnet
+COPY dragnn $SYNTAXNETDIR/syntaxnet/dragnn
+COPY syntaxnet $SYNTAXNETDIR/syntaxnet/syntaxnet
+COPY third_party $SYNTAXNETDIR/syntaxnet/third_party
+COPY util/utf8 $SYNTAXNETDIR/syntaxnet/util/utf8
+RUN bazel build -c opt //dragnn/python:all //dragnn/tools:all
-WORKDIR $SYNTAXNETDIR/models/syntaxnet
+# This makes the IP exposed actually "*"; we'll do host restrictions by passing
+# a hostname to the `docker run` command.
+COPY tensorflow/tensorflow/tools/docker/jupyter_notebook_config.py /root/.jupyter/
+EXPOSE 8888
-CMD [ "sh", "-c", "echo 'Bob brought the pizza to Alice.' | syntaxnet/demo.sh" ]
+# This does not need to be compiled, only copied.
+COPY examples $SYNTAXNETDIR/syntaxnet/examples
+# Todo: Move this earlier in the file (don't want to invalidate caches for now).
+RUN jupyter nbextension enable --py --sys-prefix widgetsnbextension
-# COMMANDS to build and run
-# ===============================
-# mkdir build && cp Dockerfile build/ && cd build
-# docker build -t syntaxnet .
-# docker run syntaxnet
+CMD /bin/bash -c "bazel-bin/dragnn/tools/oss_notebook_launcher notebook --debug --notebook-dir=/opt/tensorflow/syntaxnet/examples"
Oops, something went wrong.

0 comments on commit 7d30a01

Please sign in to comment.