@joelgrus joelgrus released this Oct 5, 2018

Assets 2

Major new features

  • A new framework for training state-machine-based models, and several examples of using this for semantic parsing. This still has a few rough edges, but we've successfully used it for enough models now that we're comfortable releasing it.
  • A model for neural open information extraction
  • A re-implementation of a graph-based semantic dependency parser.
  • A MultiProcessDataIterator for loading data on multiple threads on the CPU (we haven't actually used this much, though - if you have trouble with it, let us know).

Breaking Changes

  1. Previously if you were working on a GPU, you would specify a cuda_device at the time you called instance.as_tensor_dict(), and the tensors would be generated on the GPU initially. As we started to develop code for generating instances in parallel across multiple processes, we became concerned that over-generation of instances could potentially exhaust the GPU memory.

Accordingly, now instance.as_tensor_dict() (and all the field.as_tensor operations that underlie it) always return tensors on the CPU, and then the Trainer (or the evaluation loop, or whoever) moves them to the GPU right before sending them to the model.

Most likely this won't affect you (other than making your training loop a tiny bit slower), but if you've been creating your own custom Fields or Iterators, they'll require small changes as in #1731

List of commits

7ddc7f1 Automatically map function names to aliases for NLTK's logic parser (#1870)
3989000 Bug fix binary expression in updates to grammar (#1869)
3d78e46 Tutorial for the semantic parsing framework (#1853)
c530fde Update MODELS.md for Event2Mind. (#1866)
8ff8324 Add QuaRel semantic parser (#1857)
8236624 Compile and fix warning for regex in SQL action seq formatting (#1864)
5172c85 Create a markdown file that enumerates available models (#1802)
2111428 Use test-install rather than verify.py (#1849)
c635bc4 Graph parser for semantic dependencies (#1743)
c728951 Integrate new table context in variable free world (#1832)
3de6943 Avoid deprecation warnings (#1861)
a7da2ab Fast grammar generation (#1852)
d8b13e0 Simplified GrammarStatelet, made a new LambdaGrammarStatelet class for WikiTables (#1829)
1d50292 Use current_log_probs instead of log_probs in debug_info (#1855)
0934512 move ftfy to right section, fix req. check script (#1858)
6183c90 Remove wget in wikitables tests by using requests (#1854)
358c36b Raise RuntimeError if java is not available (#1856)
99308f6 Structured sql data (#1845)
53b166e Executor for WikiTables variable free language (#1762)
38c87e0 fix network issue (#1844)
0b852fb Add Open AI tokenizer, and ability to add special tokens to token indexer (#1836)
f7c4195 Faster data loading for SQL Context (#1838)
a1ec53d initial text2sql grammar with unconstrained context (#1834)
a6b4c30 Add per node beam size option to beam search (#1835)
63ba3fb make some sql context code more generic (#1831)
e84e496 Support adding to vocabulary from pretrained embeddings (#1822)
9c7d0d0 sql data updates (#1827)
b1db1c9 ATIS Predictor (#1818)
53bba3d SQL Executor (#1815)
8be358e Seq2Seq Test Cleanup (#1814)
02e2930 Model can store extra pretained embeddings (#1817)
f65ced5 Add an example of using ELMo interactively (#1771)
0459261 Atis model action refactored (#1792)
546242f Fixes for seq2seq model (#1808)
63fcada Make num_start_types optional in transition functions (#1811)
7833447 Load the pre-trained embeddings for all NER tokens (#1806)
c78bb36 Add a correctness test for Open AI transformer (#1801)
e64373c Update README.md
01d2906 Add tags_to_spans_function param to SpanBasedF1Measure. (#1783)
3906981 Moving the WikiTables executor into semparse.executors (#1786)
7647de8 Fixing the table format for the WikiTables executor (#1785)
6039ac0 SQL Coverage script (#1750)
0b44bce Rename SOURCE_COMMIT to ALLENNLP_SOURCE_COMMIT. (#1784)
9306e97 Add minimal configuration to existing models. (#1770)
ae72f79 Better multi-word predicates in Open IE predictors (#1759)
cca99b9 Add a predictor for Event2Mind. (#1779)
63dbdf1 one tutorial to rule them all (#1613)
8759ea3 Event2Mind (#1679)
c5501c7 fix trainer initialization (#1761)
898cfed BiattentiveClassificationNetwork with ELMo and without GloVe (#1767)
421f9a4 add simplest possible pretrained model interface (#1768)
b9cbfd6 Add an example of how to read ELMo embeddings with h5py (#1772)
e4f41e7 use managers for queues (#1769)
64f253f Add a requirements check to scripts/verify.py (#1699)
b5087e7 multiprocess dataset reader and iterator (#1760)
1761684 Fixed bug in _get_combination_and_multiply for batch size equal to 1 (#1764)
ffe037d Update README.md (#1763)
606a61a output metrics.json every epoch (#1755)
49f43ec Remove large openie model file (#1756)
609babe Add logging of learning rates to tensorboard (#1745)
eda2ba5 Set up SlantedTriangular for first batch (#1744)
1d81d8b Grammar for a variable free language for WikiTableQuestions (#1709)
4674b01 Make bmes_tags_to_spans support ill-formed spans. (#1710)
4c99f8e Text2sql reader (#1738)
8867f2f create tensors on cpu, move them to gpu later (#1731)
0664893 Discriminative fine-tuning, gradual unfreezing, slanted triangular learning rates (ULMFiT) (#1636)
1532886 Rename and organize tutorials (#1741)
72f7b4b Remove bucket iterator shuffle warning. (#1742)
8bbde0d Fix index_with bug in basic iterator (#1715)
3f54fc8 make openai transformer byte pair indexer add to the vocab (#1705)
7bf930f Add Open Information Extraction (#1726)
6c1607e bump gevent to 1.3.6 (#1732)
934ee17 Update training_and_evaluating.md (#1721)
72c9e98 Sql text utils (#1717)
ec25acd Update README.md
647e53e Removing contents of requirements.txt file (#1729)
a585994 Update configuration.md (#1722)
a61aa67 Moving allennlp.nn.decoding to allennlp.state_machines (#1714)
0b7bb20 Fixes and updates to README.md (#1718)
c47318b Add configs for tasks in ELMo paper, with and without ELMo (#1626)
f2884ad require torch 0.4.1 (#1708)
ef72e2e Save learning rate scheduler to training state (#1650)
6cb7005 Add average parameter to sequence cross entropy (#1702)
5e68d04 Rename SpanPruner -> Pruner, remove -infs (#1703)