Zhichao Geng
Zhichao Geng
之前可能finetune功能被使用的比较少,一直没被反映过问题。等着我后面统一修一下finetune功能
目前上面的test.py、train.py就是测试和训练的代码,但是大家不能直接运行,因为这几个文件是我对未封装的模型训练调参用的,与当前环境下文件的目录结构无法匹配,发上来是为了给对训练过程感兴趣的朋友参考一下。 test.py中的数据,chars_vocab\label_vocab是fastNLP中的Vocabulary类(标签集、词表)。all_data是一个词典,共有train\test\dev三个key,对应了三个词典,此处三个词典又分别具有14个key(代表4项任务的13个语料库),对应了14个fastNLP的DataSet类,其中包含了输入序列、序列长度、序列的标签等信息。对于CWS的数据,每个DataSet由若干条下方元组组成: +--------------------------+--------------------------+---------+ | words | target | seq_len | +--------------------------+--------------------------+---------+ | ['[unused2]', '许','可', '... | ['S', 'B', 'E', 'B', ... | 24 | +--------------------------+--------------------------+---------+ 具体的测试算法,使用了fastNLP中的tester与SpanFPreRecMetric。fastNLP提供了从训练模型到测试模型的一系列流程代码。
订正一下,CWS的数据当中,输入序列不是字符序列,而是已经被Vocabulary处理过的数字序列;此外每个元组中还包括当前数据的任务类别,即CWS。
现在没有这个接口,后面的版本可以考虑加
这个问题确实存在,当时设计finetune的时候忽略了这一点。我做完当前的投稿之后会改一下这一条
目前还不支持
` import os os.path.expanduser(os.path.join("~", ".fastNLP","fasthan")) ` Run this code and you can get a path. Put the .zip file at this directory ,unzip it, delete the .zip file then you...
目前还没有尝试过在aarch64环境中使用
这两个文件是二进制文件,分别存储了一个Vocabulary类实例与dict类实例,需要使用 torch.load 函数来读取才能看到内容
在论文完成后不管能不能发表,届时都会贴上来,里面会详细得说明模型结构和训练策略。 对于数据格式,train.py加载的是处理好并用torch.save保存的数据,是fastNLP里的DataSet类,其中包含了输入串、序列长度、标签序列等等。 对于加载模型,在训练和测试时是直接用torch. save,torch. load加载整个模型;在FastHan()初始化时则是先随机初始化一个模型,再torch. load模型的state dict并赋值