Commit Graph

149 Commits

Author SHA1 Message Date
xuyige
50faa936b4 add RTE and QNLI loader 2019-06-25 17:22:10 +08:00
xuyige
bc5e071253 Delete matching.py 2019-06-24 21:56:14 +08:00
xuyige
e0b23b16db update data loader of matching 2019-06-24 21:44:43 +08:00
yh_cc
39dd086262 1.修改CrossEntropyLoss中存在的反直觉bug; 2.更新sequence labeling 2019-06-24 09:56:28 +08:00
xuyige
3593f0a545 fix bugs in matching dataloader 2019-06-23 18:42:57 +08:00
xuyige
d1f531c049 update matching dataloader in reproduction/matching 2019-06-23 18:25:04 +08:00
yh_cc
8f7ed07441 1. 在vocabulary的from_dataset中增加no_create_entry_dataset选项,用于传递dev和test
2. 调整各种Embedding的实现,使得确保来自dev和test的未发现词使用unk的表示
3. 在Embedding中增加dropout_word的选项,使得可以随机drop掉词语
4. 以及其它若干小的bug
2019-06-21 11:06:35 +08:00
yh
a137038eb2 修复ELMO与LSTM无法使用nn.DataParallel的问题 2019-06-19 19:43:53 +08:00
yh_cc
4533427ea3 sequence labeling更新 2019-06-19 11:14:41 +08:00
yh_cc
4d138ed7f8 Merge branch 'dev0.5.0' of github.com:fastnlp/fastNLP into dev0.5.0 2019-06-18 10:02:29 +08:00
yh_cc
9a8fe42cd4 新增NER的数据加载与模型代码; 修改metric中的typo; 修改LSTM中的默认初始化将forget gate设置为1. 2019-06-18 10:02:24 +08:00
xuyige
93620e76ed update framework of matching 2019-06-18 02:04:53 +08:00
xuyige
342b7026d7 Merge remote-tracking branch 'origin/dev0.5.0' into dev0.5.0 2019-06-17 21:48:42 +08:00
xuyige
39388567ad update matching.py 2019-06-17 21:48:18 +08:00
yh_cc
2f5d8967a3 1. 适配将Batch修改为pytorch的DataLoader的修改
2. 修改embedding.py中的bug
3. ConllReader默认跳过所有的DOCSTART标签
4. 交换bert的heavy lifting到_bert, 将BertEncoder在bert.py中暴露
5. crf中allow_transition的include_end_start修改为false,以与CRF的默认值适配
6. allow_transition与SpanMetric支持BIOES类型的tag
7. datainfo中增加打印格式化输出
2019-06-17 20:18:07 +08:00
yh_cc
839d712467 增强field中的value_count支持对nested的field的支持 2019-06-17 16:46:39 +08:00
yhcc
66f51395d7
Merge pull request #166 from fastnlp/batch
[new] 兼容pytorch的DataLoader,替换Batch为DataSetIter
2019-06-17 16:42:28 +08:00
lyhuang18
c78811f87f add TC/MTL16Loader 2019-06-16 23:43:37 +08:00
yh_cc
4b5113cbea prefecth变更为deprecated warning; 2019-06-15 14:17:48 +08:00
yh_cc
17b5fd0066 1. 删除Trainer中对train_data必须为DataSet的assert
2. 删除Trainer的prefetch参数; 在注释中增加num_workers参数
3. Trainer中默认sampler为RandomSampler
2019-06-15 13:10:28 +08:00
yh_cc
6309eafd25 1. 在fieldarray中支持split,int等handy的function
2. 重大更新,支持ElmoEmbedding, BertEmbedding
2019-06-12 11:10:33 +08:00
yh_cc
37c50d6625 Merge branch 'dev0.5.0' of github.com:fastnlp/fastNLP into dev0.5.0 2019-06-11 16:42:11 +08:00
Violet Yao
83729dfc39 moved test to reproduction folder 2019-06-09 21:46:34 +08:00
Violet Yao
ad6a55ba26 fixed comment format 2019-06-08 14:32:25 +08:00
Violet Yao
2edb2a1a00 added yelpLoader 2019-06-08 14:27:52 +08:00
yh_cc
9e5c4f665c Merge branch 'dev0.5.0' of github.com:fastnlp/fastNLP into dev0.5.0 2019-06-08 09:48:11 +08:00
yh_cc
bddce51b05 merge update 2019-06-08 09:47:39 +08:00
xuyige
8e82c91751 update bert for nli in reproduction/matching 2019-06-06 00:09:25 +08:00
xuyige
96687251a8 update reproduction/README.md 2019-06-05 16:10:13 +08:00
xuyige
e643d7aed5 update reproduction/README.md 2019-06-05 16:07:56 +08:00
yunfan
60de1b2c52 add text_classification reproduction dir 2019-06-05 11:05:46 +08:00
xuyige
e05c182b05 firstly add matching in reproduction 2019-06-05 01:01:30 +08:00
yh_cc
d71f0eef13 序列标注的SemiCRFRelay中文分词. 2019-06-04 23:40:46 +08:00
yh
07c3533126 cws实例第一次提交 2019-06-04 22:16:58 +08:00
ChenXin
881ce01762
Dev0.4.0 (#149)
* 1. CRF增加支持bmeso类型的tag 2. vocabulary中增加注释

* BucketSampler增加一条错误检测

* 1.修改ClipGradientCallback的bug;删除LRSchedulerCallback中的print,之后应该传入pbar进行打印;2.增加MLP注释

* update MLP module

* 增加metric注释;修改trainer save过程中的bug

* Update README.md

fix tutorial link

* Add ENAS (Efficient Neural Architecture Search)

* add ignore_type in DataSet.add_field

* * AutoPadder will not pad when dtype is None
* add ignore_type in DataSet.apply

* 修复fieldarray中padder潜在bug

* 修复crf中typo; 以及可能导致数值不稳定的地方

* 修复CRF中可能存在的bug

* change two default init arguments of Trainer into None

* Changes to Callbacks:
* 给callback添加给定几个只读属性
* 通过manager设置这些属性
* 代码优化,减轻@transfer的负担

* * 将enas相关代码放到automl目录下
* 修复fast_param_mapping的一个bug
* Trainer添加自动创建save目录
* Vocabulary的打印,显示内容

* * 给vocabulary添加遍历方法

* 修复CRF为负数的bug

* add SQuAD metric

* add sigmoid activate function in MLP

* - add star transformer model
- add ConllLoader, for all kinds of conll-format files
- add JsonLoader, for json-format files
- add SSTLoader, for SST-2 & SST-5
- change Callback interface
- fix batch multi-process when killed
- add README to list models and their performance

* - fix test

* - fix callback & tests

* - update README

* 修改部分bug;调整callback

* 准备发布0.4.0版本“

* update readme

* support parallel loss

* 防止多卡的情况导致无法正确计算loss“

* update advance_tutorial jupyter notebook

* 1. 在embedding_loader中增加新的读取函数load_with_vocab(), load_without_vocab, 比之前的函数改变主要在(1)不再需要传入embed_dim(2)自动判断当前是word2vec还是glove.
2. vocabulary增加from_dataset(), index_dataset()函数。避免需要多行写index dataset的问题。
3. 在utils中新增一个cache_result()修饰器,用于cache函数的返回值。
4. callback中新增update_every属性

* 1.DataSet.apply()报错时提供错误的index
2.Vocabulary.from_dataset(), index_dataset()提供报错时的vocab顺序
3.embedloader在embed读取时遇到不规则的数据跳过这一行.

* update attention

* doc tools

* fix some doc errors

* 修改为中文注释,增加viterbi解码方法

* 样例版本

* - add pad sequence for lstm
- add csv, conll, json filereader
- update dataloader
- remove useless dataloader
- fix trainer loss print
- fix tests

* - fix test_tutorial

* 注释增加

* 测试文档

* 本地暂存

* 本地暂存

* 修改文档的顺序

* - add document

* 本地暂存

* update pooling

* update bert

* update documents in MLP

* update documents in snli

* combine self attention module to attention.py

* update documents on losses.py

* 对DataSet的文档进行更新

* update documents on metrics

* 1. 删除了LSTM中print的内容; 2. 将Trainer和Tester的use_cuda修改为了device; 3.补充Trainer的文档

* 增加对Trainer的注释

* 完善了trainer,callback等的文档; 修改了部分代码的命名以使得代码从文档中隐藏

* update char level encoder

* update documents on embedding.py

* - update doc

* 补充注释,并修改部分代码

* - update doc
- add get_embeddings

* 修改了文档配置项

* 修改embedding为init_embed初始化

* 1.增加对Trainer和Tester的多卡支持;

* - add test
- fix jsonloader

* 删除了注释教程

* 给 dataset 增加了get_field_names

* 修复bug

* - add Const
- fix bugs

* 修改部分注释

* - add model runner for easier test models
- add model tests

* 修改了 docs 的配置和架构

* 修改了核心部分的一大部分文档,TODO:
1. 完善 trainer 和 tester 部分的文档
2. 研究注释样例与测试

* core部分的注释基本检查完成

* 修改了 io 部分的注释

* 全部改为相对路径引用

* 全部改为相对路径引用

* small change

* 1. 从安装文件中删除api/automl的安装
2. metric中存在seq_len的bug
3. sampler中存在命名错误,已修改

* 修复 bug :兼容 cpu 版本的 PyTorch
TODO:其它地方可能也存在类似的 bug

* 修改文档中的引用部分

* 把 tqdm.autonotebook 换成tqdm.auto

* - fix batch & vocab

* 上传了文档文件 *.rst

* 上传了文档文件和若干 TODO

* 讨论并整合了若干模块

* core部分的测试和一些小修改

* 删除了一些冗余文档

* update init files

* update const files

* update const files

* 增加cnn的测试

* fix a little bug

* - update attention
- fix tests

* 完善测试

* 完成快速入门教程

* 修改了sequence_modeling 命名为 sequence_labeling 的文档

* 重新 apidoc 解决改名的遗留问题

* 修改文档格式

* 统一不同位置的seq_len_to_mask, 现统一到core.utils.seq_len_to_mask

* 增加了一行提示

* 在文档中展示 dataset_loader

* 提示 Dataset.read_csv 会被 CSVLoader 替换

* 完成 Callback 和 Trainer 之间的文档

* index更新了部分

* 删除冗余的print

* 删除用于分词的metric,因为有可能引起错误

* 修改文档中的中文名称

* 完成了详细介绍文档

* tutorial 的 ipynb 文件

* 修改了一些介绍文档

* 修改了 models 和 modules 的主页介绍

* 加上了 titlesonly 这个设置

* 修改了模块文档展示的标题

* 修改了 core 和 io 的开篇介绍

* 修改了 modules 和 models 开篇介绍

* 使用 .. todo:: 隐藏了可能被抽到文档中的 TODO 注释

* 修改了一些注释

* delete an old metric in test

* 修改 tutorials 的测试文件

* 把暂不发布的功能移到 legacy 文件夹

* 删除了不能运行的测试

* 修改 callback 的测试文件

* 删除了过时的教程和测试文件

* cache_results 参数的修改

* 修改 io 的测试文件; 删除了一些过时的测试

* 修复bug

* 修复无法通过test_utils.py的测试

* 修复与pytorch1.1中的padsequence的兼容问题; 修改Trainer的pbar

* 1. 修复metric中的bug; 2.增加metric测试

* add model summary

* 增加别名

* 删除encoder中的嵌套层

* 修改了 core 部分 import 的顺序,__all__ 暴露的内容

* 修改了 models 部分 import 的顺序,__all__ 暴露的内容

* 修改了文件名

* 修改了 modules 模块的__all__ 和 import

* fix var runn

* 增加vocab的clear方法

* 一些符合 PEP8 的微调

* 更新了cache_results的例子

* 1. 对callback中indices潜在None作出提示;2.DataSet支持通过List进行index

* 修改了一个typo

* 修改了 README.md

* update documents on bert

* update documents on encoder/bert

* 增加一个fitlog callback,实现与fitlog实验记录

* typo

* - update dataset_loader

* 增加了到 fitlog 文档的链接。

* 增加了 DataSet Loader 的文档

* - add star-transformer reproduction
2019-05-22 18:43:56 +08:00
FengZiYjun
0c5630bd16 Ready for V0.3.1
* 升级parser API和模型
* update docs: add new pages for tutorials
* upgrade CWS api download source
* add a new method for dataset field access
* add introduction for bert
* add more unit tests for api/processor
* remove unused test data. Add new test data.
2019-02-04 09:44:54 +08:00
FengZiYjun
986541139a 整理所有dataset loader,建立单元测试 2019-02-02 16:46:42 +08:00
FengZiYjun
887fc9281f update callbacks:
* rename callback methods. Use fastai's notation.
* add a new callback method - on_valid_begin
2019-01-25 21:43:24 +08:00
yunfan
c02980e006 Merge branch 'yyff' into dev 2019-01-21 14:55:53 +08:00
yunfan
e93c6f0053 Merge branch 'dev' of https://github.com/choosewhatulike/fastNLP-private into dev 2019-01-21 14:52:24 +08:00
FengZiYjun
b14dd58828 Update POS API 2019-01-19 18:48:57 +08:00
yunfan
de856fb8eb update reproduction 2019-01-19 16:22:01 +08:00
yunfan
eb55856c78 - fix parser train 2019-01-19 16:07:10 +08:00
FengZiYjun
864c2238f8 添加FieldArray对list of np.array的支持 2019-01-17 22:42:40 +08:00
FengZiYjun
b93ca9bb30 * FieldArray添加对list of np.array的支持
* 添加测试:FieldArray的初始化
2019-01-17 15:39:13 +08:00
FengZiYjun
e4f997d52a refactor type system in FieldArray:
* 重构dtype的检测代码,在FieldArray的初始化和append两处,达到更好的代码复用
* 类型检测的责任完全落在FieldArray,DataSet与之配合
测试:
* 整理dtype相关的测试代码
* 给所有tutorial添加测试
其他:
* 完善一个完整的Conll dataset loader
* 升级POS tag model训练脚本
2019-01-17 12:25:37 +08:00
yh
8091a734ee 1. 将pad的功能从FieldArray中剥离出来,使用Padder完成各种padding操作。
2. FieldArray默认使用AutoPadder, AutoPadder的行为与之前不使用padder是一致的的
3. 为了解决二维padding的问题,引入了EngChar2dPadder用于对character进行padding
4. 增加一份padding的tutorial。
2019-01-15 22:21:55 +08:00
yh
1f50b01ffa conflict solved 2019-01-15 15:16:20 +08:00
yh
6a0a1ed4ad train增加注释;attention增加注释;新增transformer分词 2019-01-15 14:58:43 +08:00
FengZiYjun
1fdaf236d2 Updates:
* 改名: chinese_word_segment ---> Chinese_word_segmentation
* 改名: pos_tag_model ---> POS_tagging
* 添加4个对Batch的测试
* 删除无用的chinese_word_segment/run.py
2019-01-15 14:56:01 +08:00