Migrated repository
Go to file
FengZiYjun f2fc98b5e6 add Field support in Predictor:
- apply DataSet in Predictor; remove sub-predictors; add "task" argument to specify which task to predict, as how Trainer/Tester did.
- remove Action class
- add helper function for DataSet, to create DataSet easily
- more code comments
- clean up unnecessary codes
- add unit tests for Batch, Predictor, Preprocessor, Trainer, Tester
2018-09-16 14:08:52 +08:00
.github add logging in Trainer & Tester 2018-08-17 11:16:13 +08:00
docs add mathjax and update pictures 2018-09-12 16:57:55 +08:00
examples format test folder 2018-09-14 14:19:39 +08:00
fastNLP add Field support in Predictor: 2018-09-16 14:08:52 +08:00
reproduction - clean up unused codes 2018-09-02 13:32:57 +08:00
test add Field support in Predictor: 2018-09-16 14:08:52 +08:00
.travis.yml Update .travis.yml 2018-08-17 19:28:38 +08:00
LICENSE add LICENSE, setup.py & requirements.txt 2018-05-25 18:32:02 +08:00
README.md Merge pull request #60 from KuNyaa/master 2018-09-06 09:56:14 +08:00
requirements.txt add tensorboardX for loss visualization 2018-09-03 19:37:44 +08:00
setup.py Text classification interface is ready. 2018-09-05 10:00:57 +08:00

fastNLP

Build Status codecov PyPI version Hex.pm Documentation Status

fastNLP is a modular Natural Language Processing system based on PyTorch, for fast development of NLP tools. It divides the NLP model based on deep learning into different modules. These modules fall into 4 categories: encoder, interaction, aggregation and decoder, while each category contains different implemented modules. Encoder modules encode the input into some abstract representation, interaction modules make the information in the representation interact with each other, aggregation modules aggregate and reduce information, and decoder modules decode the representation into the output. Most current NLP models could be built on these modules, which vastly simplifies the process of developing NLP models. The architecture of fastNLP is as the figure below:

Requirements

  • numpy>=1.14.2
  • torch==0.4.0
  • torchvision>=0.1.8
  • tensorboardX

Resources

Installation

Run the following commands to install fastNLP package.

pip install fastNLP

Cloning From GitHub

If you just want to use fastNLP, use:

git clone https://github.com/fastnlp/fastNLP
cd fastNLP

PyTorch Installation

Visit the [PyTorch official website] for installation instructions based on your system. In general, you could use:

# using conda
conda install pytorch torchvision -c pytorch
# or using pip
pip3 install torch torchvision

TensorboardX Installation

pip3 install tensorboardX

Project Structure

FastNLP
├── docs
├── fastNLP
│   ├── core
│   │   ├── action.py
│   │   ├── __init__.py
│   │   ├── loss.py
│   │   ├── metrics.py
│   │   ├── optimizer.py
│   │   ├── predictor.py
│   │   ├── preprocess.py
│   │   ├── README.md
│   │   ├── tester.py
│   │   └── trainer.py
│   ├── fastnlp.py
│   ├── __init__.py
│   ├── loader
│   │   ├── base_loader.py
│   │   ├── config_loader.py
│   │   ├── dataset_loader.py
│   │   ├── embed_loader.py
│   │   ├── __init__.py
│   │   └── model_loader.py
│   ├── models
│   ├── modules
│   │   ├── aggregation
│   │   ├── decoder
│   │   ├── encoder
│   │   ├── __init__.py
│   │   ├── interaction
│   │   ├── other_modules.py
│   │   └── utils.py
│   └── saver
├── LICENSE
├── README.md
├── reproduction
├── requirements.txt
├── setup.py
└── test
    ├── core
    ├── data_for_tests
    ├── __init__.py
    ├── loader
    ├── modules
    └── readme_example.py