Skip to main content

fastNLP: Deep Learning Toolkit for NLP, developed by Fudan FastNLP Team

Project description

fastNLP

Build Status codecov Pypi Hex.pm Documentation Status

fastNLP 是一款轻量级的 NLP 处理套件。你既可以使用它快速地完成一个命名实体识别(NER)、中文分词或文本分类任务; 也可以使用他构建许多复杂的网络模型,进行科研。它具有如下的特性:

  • 统一的Tabular式数据容器,让数据预处理过程简洁明了。内置多种数据集的DataSet Loader,省去预处理代码。
  • 各种方便的NLP工具,例如预处理embedding加载; 中间数据cache等;
  • 详尽的中文文档以供查阅;
  • 提供诸多高级模块,例如Variational LSTM, Transformer, CRF等;
  • 封装CNNText,Biaffine等模型可供直接使用;
  • 便捷且具有扩展性的训练器; 提供多种内置callback函数,方便实验记录、异常捕获等。

安装指南

fastNLP 依赖如下包:

  • numpy
  • torch>=0.4.0
  • tqdm
  • nltk

其中torch的安装可能与操作系统及 CUDA 的版本相关,请参见 PyTorch 官网 。 在依赖包安装完成的情况,您可以在命令行执行如下指令完成安装

pip install fastNLP

参考资源

内置组件

大部分用于的 NLP 任务神经网络都可以看做由编码(encoder)、聚合(aggregator)、解码(decoder)三种模块组成。

fastNLP 在 modules 模块中内置了三种模块的诸多组件,可以帮助用户快速搭建自己所需的网络。 三种模块的功能和常见组件如下:

类型 功能 例子
encoder 将输入编码为具有具 有表示能力的向量 embedding, RNN, CNN, transformer
aggregator 从多个向量中聚合信息 self-attention, max-pooling
decoder 将具有某种表示意义的 向量解码为需要的输出 形式 MLP, CRF

完整模型

fastNLP 为不同的 NLP 任务实现了许多完整的模型,它们都经过了训练和测试。

你可以在以下两个地方查看相关信息

项目结构

fastNLP的大致工作流程如上图所示,而项目结构如下:

fastNLP 开源的自然语言处理库
fastNLP.core 实现了核心功能,包括数据处理组件、训练器、测速器等
fastNLP.models 实现了一些完整的神经网络模型
fastNLP.modules 实现了用于搭建神经网络模型的诸多组件
fastNLP.io 实现了读写功能,包括数据读入,模型读写等

In memory of @FengZiYjun. May his soul rest in peace. We will miss you very very much!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

FastNLP-0.4.0rc1.tar.gz (133.5 kB view details)

Uploaded Source

File details

Details for the file FastNLP-0.4.0rc1.tar.gz.

File metadata

  • Download URL: FastNLP-0.4.0rc1.tar.gz
  • Upload date:
  • Size: 133.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.5

File hashes

Hashes for FastNLP-0.4.0rc1.tar.gz
Algorithm Hash digest
SHA256 cfc6a76d8209adce15411624dc659b9e42a30dc29d2271de09767d26e37d3e16
MD5 a3751eab95c2f4819c5dffb90e17f2ec
BLAKE2b-256 557c1ab76e30d200df1fdd0b7064ebe37ea023badd0e11e444d4d452a15052c6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page