Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge from awslabs/sockeye #2

Merged
merged 50 commits into from
Jun 29, 2018
Merged

Merge from awslabs/sockeye #2

merged 50 commits into from
Jun 29, 2018

Commits on May 12, 2018

  1. Configuration menu
    Copy the full SHA
    763efb3 View commit details
    Browse the repository at this point in the history

Commits on May 15, 2018

  1. Updating default parameters with values from our arXiv paper. (#381)

    * Updating default parameters with values from our arXiv paper.
    tdomhan committed May 15, 2018
    Configuration menu
    Copy the full SHA
    ec143fb View commit details
    Browse the repository at this point in the history
  2. Adding an end of sentence symbol to the source side. (#392)

    Adding an end of sentence symbol to the source side.
    tdomhan committed May 15, 2018
    Configuration menu
    Copy the full SHA
    bb0b782 View commit details
    Browse the repository at this point in the history

Commits on May 16, 2018

  1. Configuration menu
    Copy the full SHA
    b964fe6 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0c500a4 View commit details
    Browse the repository at this point in the history

Commits on May 17, 2018

  1. Configuration menu
    Copy the full SHA
    ad016dd View commit details
    Browse the repository at this point in the history
  2. Removed separate beam prune system test and added pruning to another … (

    #398)
    
    * Removed separate beam prune system test and added pruning to another system test. Prevents timeouts on CRON job for Travis.
    
    * fix
    fhieber committed May 17, 2018
    Configuration menu
    Copy the full SHA
    de627d6 View commit details
    Browse the repository at this point in the history
  3. Argument specifications for each CLI are now stored in a static struc…

    …ture. (#399)
    
    * Argument specifications for each CLI are now stored in a static structure.
    fhieber committed May 17, 2018
    Configuration menu
    Copy the full SHA
    5a3bf5f View commit details
    Browse the repository at this point in the history

Commits on May 18, 2018

  1. Update development.md (#401)

    Some notes on tests and PyPI.
    fhieber committed May 18, 2018
    Configuration menu
    Copy the full SHA
    80ac270 View commit details
    Browse the repository at this point in the history

Commits on May 19, 2018

  1. Added support for config files (#402)

    * Partially reverted 5a3bf5f
    
    * Added support for config files
    
    Specify a config file with --config. Command line parameters have
    precedence over the values read from the config file, as expected.
    
    The config file is a json serialization of the namespace returned by
    argparse, casted to a dictionary. The file args.json produced by the
    training can be used as config file.
    
    The config file does not need to be complete. Missing parameters will
    be read from the command line or will take default values.
    
    Additionally the functionality introduced in 5a3bf5f has been
    reimplemented, accessing the argument_definitions member of
    ConfigArgumentParser.
    
    * Added unit tests for config files
    
    * Addressed (most of) github comments
    
    * switch from json to yaml
    
    * changelog, minor version
    
    * Changed config file format to YAML
    
    * Typo
    
    * mypi
    
    * Added test overwriting config file argument with command line
    David Vilar authored and fhieber committed May 19, 2018
    Configuration menu
    Copy the full SHA
    948e4ec View commit details
    Browse the repository at this point in the history
  2. Fix logic with training resumption (#404)

    * Fix logic with training resumption
    
    * fix
    fhieber committed May 19, 2018
    Configuration menu
    Copy the full SHA
    3f8cb0b View commit details
    Browse the repository at this point in the history

Commits on May 21, 2018

  1. Merge in Sockeye Autopilot (#405)

    * Merge Sockeye Autopilot.
    
    * Typing cleanup.
    
    * Update version, changelog.
    
    * Update description of Autopilot in changelog.
    mjdenkowski committed May 21, 2018
    Configuration menu
    Copy the full SHA
    fea3d59 View commit details
    Browse the repository at this point in the history

Commits on May 23, 2018

  1. Added hard lexical constraints (Post & Vilar, NAACL 2018) (#349)

    * Added hard lexical constraints (Post & Vilar, NAACL 2018)
    
    This commit adds hard lexical constraints as described in Post & Vilar, 
    Fast Lexically Constrained Decoding with Dynamic Beam Allocation for Neural Machine Translation (NAACL 2018).
    Hard lexical constraints are words or phrases that must appear in the translation output.
    
    To use this feature, for a particular input sentences, create a (1-line) JSON object of the following form:
    ```
        { "text": "Einer soll ein hoch@@ rangi@@ ges Mitglied aus Berlin gewesen sein .",
          "constraints": ["is said to", "powerful"] }
    ```
    
    You then need to pass the JSON input flag (`--json-input`) to `sockeye.translate`.
    mjpost authored and fhieber committed May 23, 2018
    Configuration menu
    Copy the full SHA
    5873da5 View commit details
    Browse the repository at this point in the history
  2. Removed summation of gradient arrays when logging gradients. This clo…

    …gged the memory on the primary GPU device over time when many checkpoints were done. Gradient histograms are now logged to Tensorboard separated by device. (#407)
    fhieber committed May 23, 2018
    Configuration menu
    Copy the full SHA
    cfde4e4 View commit details
    Browse the repository at this point in the history
  3. Sacrebleu: added wmt18 data sets (#406)

    * added wmt18 data sets
    mjpost authored and fhieber committed May 23, 2018
    Configuration menu
    Copy the full SHA
    5861107 View commit details
    Browse the repository at this point in the history
  4. fix changelog (#408)

    fhieber committed May 23, 2018
    Configuration menu
    Copy the full SHA
    ecf03d8 View commit details
    Browse the repository at this point in the history

Commits on May 24, 2018

  1. Added tutorial about domain adaptation, including LHUC (#409)

    Included tutorial about adapting NMT models, including LHUC.
    David Vilar authored and fhieber committed May 24, 2018
    Configuration menu
    Copy the full SHA
    af59303 View commit details
    Browse the repository at this point in the history
  2. Update to MXNet 1.2 (#388)

    This PR updates Sockeye to MXNet 1.2 which was released May 21st 2018.
    
    Core change to Sockeye is the use of the new LayerNormalization operator which reduces GPU memory usage. It uses the same set of parameters existing models are compatible, but running sockeye now requires mxnet 1.2.
    fhieber committed May 24, 2018
    Configuration menu
    Copy the full SHA
    8835331 View commit details
    Browse the repository at this point in the history

Commits on May 25, 2018

  1. Introducing the image captioning module (#390)

    Introducing the image captioning module. Type of models supported: ConvNet encoder and Sockeye NMT decoders
    
    Features:
    -   Image encoder that extracts features using preetrained nets: `image_captioning.encoder`
    -   Feature extraction script to dump features to disk `image_captioning.extract_features`
    -   Pass-through embedding, since we do not need it for images
    -   Image-text iterator that loads features on the fly during training with the option of loading all to memory: `image_captioning.data_io`
    -   Training and inference pipelines for image captioning: `image_captioning.train`, `image_captioning.inference` and `image_captioning.captioner`
    -   README with instructions on how to use the image captioning module: `image_captioning/README.md`
    -   Visualization script that loads images and captions (prediction+ground truth) and display them: `image_captioning.visualize`
    lorisbaz authored and fhieber committed May 25, 2018
    Configuration menu
    Copy the full SHA
    09a9002 View commit details
    Browse the repository at this point in the history
  2. Removed some unused code in inference. (#412)

    Also some cleanup of overly long lines, imports etc.
    fhieber committed May 25, 2018
    Configuration menu
    Copy the full SHA
    776539d View commit details
    Browse the repository at this point in the history
  3. Added LHUC for transformer model (#414)

    * Added LHUC for transformer model
    
    Note: Changed apply() function of LHUC to __call__
    
    * Sized down transformer-lhuc integration test
    David Vilar authored and fhieber committed May 25, 2018
    Configuration menu
    Copy the full SHA
    c0f9a68 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    ff8e4c5 View commit details
    Browse the repository at this point in the history

Commits on May 26, 2018

  1. Configuration menu
    Copy the full SHA
    d2f0682 View commit details
    Browse the repository at this point in the history
  2. Downsized integration tests for faster test runs (#415)

    * Downsized integration tests for faster test runs
    
    * downsized integration test data set sizes
    fhieber committed May 26, 2018
    Configuration menu
    Copy the full SHA
    530e988 View commit details
    Browse the repository at this point in the history

Commits on May 27, 2018

  1. Configuration menu
    Copy the full SHA
    17bac9d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2e5d8c0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    163dec8 View commit details
    Browse the repository at this point in the history

Commits on May 30, 2018

  1. Add beam visualization tool to contrib/ (#328)

    * Add a fork of VizTools that generates D3-based graphs of beam searches output by sockeye's `beam_store` output handler.
    * Code added under `contrib/`
    Deseaus authored and fhieber committed May 30, 2018
    Configuration menu
    Copy the full SHA
    bc6571e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5db05f4 View commit details
    Browse the repository at this point in the history

Commits on May 31, 2018

  1. Refactored pruning logic and vectorized it (#423)

    This cleans up the pruning logic a little bit and continues work started in #422.
    
    Changes include:
    1) the modifications on various data structures as a result of pruning are now more local to where it matters.
    2) vectorized the pruning function and moved it to `utils.py` (similar to `topk()`). Also using a partial now. Vectorization may help us in moving operations to HybridBlocks in the future.
    fhieber committed May 31, 2018
    Configuration menu
    Copy the full SHA
    fc440df View commit details
    Browse the repository at this point in the history

Commits on Jun 1, 2018

  1. bugfix: added cast; plus fixed stupid mistakes in test cases (#426)

    * bugfix: added cast; plus fixed stupid mistakes in test cases that let it sneak in
    mjpost authored and fhieber committed Jun 1, 2018
    Configuration menu
    Copy the full SHA
    30a58fe View commit details
    Browse the repository at this point in the history

Commits on Jun 4, 2018

  1. Refactor beam search to use gluon hybrid blocks (#425)

    This refactors beam search to group fixed-size operations in beam search into cached ops through Gluon HybridBlocks.
    My testing showed ~3% speed improvement. Not much, but consistent.
    
    Another change that is included here is to not use columns from `sequences` to pass into the decoder step module, but use `best_word_indices` from the previous iteration. NDArray indexing seems expensive and ideally we should aim for avoiding all indexing ops in an iteration.
    fhieber committed Jun 4, 2018
    Configuration menu
    Copy the full SHA
    f56e783 View commit details
    Browse the repository at this point in the history

Commits on Jun 5, 2018

  1. Update README.md

    tdomhan committed Jun 5, 2018
    Configuration menu
    Copy the full SHA
    e50a8f7 View commit details
    Browse the repository at this point in the history

Commits on Jun 11, 2018

  1. Inference mypy fix (#432)

    * Beam search concat and mypy fix.
    
    * fix
    tdomhan committed Jun 11, 2018
    Configuration menu
    Copy the full SHA
    cd1161a View commit details
    Browse the repository at this point in the history
  2. Fix: Word based batching memory with longer source sentences. (#430)

    * Fix: Word based batching memory with longer source sentences.
    
    * comment clarification.
    
    * typos
    tdomhan committed Jun 11, 2018
    Configuration menu
    Copy the full SHA
    83468d2 View commit details
    Browse the repository at this point in the history

Commits on Jun 12, 2018

  1. added wmt18 en<>de (#431)

    * added wmt18 en<>de to autopilot
    mjpost committed Jun 12, 2018
    Configuration menu
    Copy the full SHA
    7a1f3f7 View commit details
    Browse the repository at this point in the history

Commits on Jun 13, 2018

  1. Fix for transformer-with-conv-embed encoder. (#434)

    * Fix for transformer-with-conv-embed encoder.
    
    * changelog
    
    * version fix
    tdomhan committed Jun 13, 2018
    Configuration menu
    Copy the full SHA
    bea8e6a View commit details
    Browse the repository at this point in the history

Commits on Jun 19, 2018

  1. Configuration menu
    Copy the full SHA
    e6a28fb View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    12abdef View commit details
    Browse the repository at this point in the history

Commits on Jun 20, 2018

  1. Avoid NDArray indexing for inference speedup. (#444)

    Surprisingly, allocating memory for sequences/attentions once in beam search and writing to index t seems to be slower than concatenating with every step.
    Likewise, getting rid of the pad_dist write to C.PAD_ID index is faster.
    
    This change gives about +1.5 sent/sec on a laptop/CPU and +0.1–0.5 on P2/P3s with latest MXNet.
    fhieber authored and mjpost committed Jun 20, 2018
    Configuration menu
    Copy the full SHA
    3c11dbd View commit details
    Browse the repository at this point in the history
  2. updated tutorial parameters to use RNN (#448)

    * updated tutorial parameters to use RNN
    
    * typo
    
    * updated layers
    mjpost authored and tdomhan committed Jun 20, 2018
    Configuration menu
    Copy the full SHA
    49c116b View commit details
    Browse the repository at this point in the history
  3. Switch to MKL versions of MXNet (#442)

    * Update requirements to mxnet-*mkl.
    
    * Update documentation and setup for requirements dir.
    
    * Use isclose to slightly relax equality check for coverage test.
    
    (Test was failing with MKL version of MXNet)
    
    * Add requirements to MANIFEST.in.
    
    * Update changelog.
    mjdenkowski committed Jun 20, 2018
    Configuration menu
    Copy the full SHA
    1e57ce4 View commit details
    Browse the repository at this point in the history

Commits on Jun 21, 2018

  1. bugfix: check for symlink existence before creating (#450)

    Occasionally this symlink exists and then the whole training procedures dies. My guess is that stray NFS files prevent the deletion of the temporary directory from the previous round. The other files are safely overwritten because they use direct writes instead of a symlink. This should solve that problem.
    mjpost committed Jun 21, 2018
    Configuration menu
    Copy the full SHA
    795a584 View commit details
    Browse the repository at this point in the history
  2. Set theme jekyll-theme-slate

    tdomhan committed Jun 21, 2018
    Configuration menu
    Copy the full SHA
    eb155a3 View commit details
    Browse the repository at this point in the history

Commits on Jun 22, 2018

  1. Configuration menu
    Copy the full SHA
    a0eebaa View commit details
    Browse the repository at this point in the history
  2. Added ROUGE score evaluation

    ROUGE is now available as the stopping criterion for tasks such as summarization.
    Zarana-Parekh authored and mjpost committed Jun 22, 2018
    Configuration menu
    Copy the full SHA
    a4f8698 View commit details
    Browse the repository at this point in the history

Commits on Jun 25, 2018

  1. Use version of NDArray split that always returns a list. (#454)

    * Fix source factor splitting for single factor.
    
    - Use version of ndarray split that always returns a list for uniform
    handling.
    
    * Unit test for factor splitting.
    
    * Update version, changelog.
    
    * Keep original split call for sym_gen.
    mjdenkowski authored and tdomhan committed Jun 25, 2018
    Configuration menu
    Copy the full SHA
    c59361d View commit details
    Browse the repository at this point in the history

Commits on Jun 27, 2018

  1. Fixing the pyyaml version. (#458)

    The new pyyaml version is introducing some issues, which we should fix. For now let's depend on the old version to unblock Travis.
    tdomhan authored and mjpost committed Jun 27, 2018
    Configuration menu
    Copy the full SHA
    241a6c8 View commit details
    Browse the repository at this point in the history

Commits on Jun 28, 2018

  1. Configuration menu
    Copy the full SHA
    d48cc5c View commit details
    Browse the repository at this point in the history
  2. add Multi-instance translate chapter in README and its script example (

    …#361)
    
    * add chapter multi-instance translate for README.md and script mlt-trans to run multi-instance
    
    * add chapter multi-instance translate for README.md
    
    * change method to get physical cores number and add hyperlink for C4 and C5 in README.md
    
    * add option for running as benchmark or not
    
    * rewrite mlt-trans script using  python and move it to tutorials
    
    * change code according to the commnets
    
    * add chapter multi-instance translate for README.md and script mlt-trans to run multi-instance
    
    * add chapter multi-instance translate for README.md
    
    * change method to get physical cores number and add hyperlink for C4 and C5 in README.md
    
    * move mlt_cpu_trans_benchmark to tutorials and rename it process_per_core_translation
    
    * fix typo
    
    * add option for running as benchmark or not
    
    * rewrite mlt-trans script using  python and move it to tutorials
    
    * change code according to the commnets
    
    * move mlt_cpu_trans_benchmark to tutorials and rename it process_per_core_translation
    
    * add python script in tutortial
    
    * add license (Apache) and authors
    rongzha1 authored and tdomhan committed Jun 28, 2018
    Configuration menu
    Copy the full SHA
    951e71e View commit details
    Browse the repository at this point in the history