趣文网 > 作文大全

谷歌开源项目飞马PEGASUS:可以自动进行文章摘要

2020-12-03 23:15:01
相关推荐

来源:TechWeb.com.cn

谷歌于去年年底发布了一个精简型的机器语义分析项目:飞马(PEGASUS):预先机器学习及训练后的自动文章摘要项目。近期这个项目迎来的新的版本,这个小型项目可以非常精准的自动提取出文章中的摘要,并且只用一千个训练模型就可以生成媲美人类的摘要内容。

当对包括文本摘要在内的下游NLP任务进行微调时,最近针对大型文本语料库进行自我学习的目标的预训练工作已显示出巨大的成功。

但是,尚未探讨为抽象文本摘要量身定制的预训练目标。此外,缺乏跨不同领域的系统评估。在这项工作中,我们提出了在大规模文本语料库上使用新的自我训练目标对基于大型编解码器模型进行预训练的方法。在PEGASUS中,重要句子从输入文档中删除/掩盖,并作为其余句子的一个输出序列一起生成,类似于摘录摘要。

我们在涉及新闻,科学,故事,说明,电子邮件,专利和立法法案的12个下游汇总任务中评估了最佳PEGASUS模型。

实验表明,在通过ROUGE分数衡量的所有12个下游数据集上,它均达到了最先进的性能。我们的模型还显示了在低资源汇总方面的令人惊讶的性能,超过了仅使用1000个学习后的6个数据集上的最新结果。

最后,我们使用人工评估验证了我们的结果,并表明我们的模型摘要可在多个数据集上实现人工表现。

附件:如何部署一个自动摘要的环境

项目地址:https://github.com/google-research/pegasus

设定

使用GPU在Google云端上创建实例(可选)

请先创建一个项目并创建一个实例gcloud compute instances create ${VM_NAME} zone=${ZONE} machine-type=n1-highmem-8 accelerator type=nvidia-tesla-v100,count=1 boot-disk-size=500GB image-project=ml-images image-family=tf-1-15 maintenance-policy TERMINATE restart-on-failure

安装库和依赖项

在github上克隆库并安装要求。git clone https://github.com/google-research/pegasuscd pegasusexport PYTHONPATH=.pip3 install -r requirements.txt 按照说明安装gsutil。

下载“混合与动态”模型的vocab,经过预训练和微调的检查点。

mkdir ckptgsutil cp -r gs://pegasus_ckpt/ ckpt/

对下游数据集进行微调

在现有数据集上

对现有数据集进行微调aeslc。python3 pegasus/bin/train.py params=aeslc_transformer param_overrides=vocab_filename=ckpt/pegasus_ckpt/c4.unigram.newline.10pct.96000.model train_init_checkpoint=ckpt/pegasus_ckpt/model.ckpt-1500000 model_dir=ckpt/pegasus_ckpt/aeslc 评估经过微调的数据集。

python3 pegasus/bin/evaluate.py params=aeslc_transformer param_overrides=vocab_filename=ckpt/pegasus_ckpt/c4.unigram.newline.10pct.96000.model,batch_size=1,beam_size=5,beam_alpha=0.6 model_dir=ckpt/pegasus_ckpt/aeslc 请注意,上面的示例使用的是单个GPU,因此batch_size远小于本文报告的结果。

添加新的微调数据集

支持两种类型的数据集格式:TensorFlow数据集(TFDS)或TFRecords。本教程说明如何在TFDS中添加新的数据集。(希望对微调数据集进行监督,请supervised_keys在数据集信息中提供)。

Tfrecords格式要求每个记录都是的tf示例{"inputs":tf.string, "targets":tf.string}。

例如,如果您注册了一个new_tfds_dataset用于训练和评估的TFDS数据集,并且有一些文件名为tfrecord格式new_dataset_files.tfrecord*用于测试,则可以在中注册它们/pegasus/params/public_params.py。

@registry.register("new_params")def my_param(param_overrides): return public_params.transformer_params( { "train_pattern": "tfds:new_tfds_dataset,train", "dev_pattern": "tfds:new_tfds_dataset,validation", "test_pattern": "tfrecord:new_dataset_files.tfrecord*", "max_input_len": 512, "max_output_len": 128, "train_steps": 10000, "learning_rate": 0.0001, "batch_size": 8, }, param_overrides)

评估指标。

评估结果可在中找到mode_dir。自动为每个评估点计算汇总指标。ROUGE是总结质量的主要指标。

BLEU是替代语言生成的质量指标。

提取碎片覆盖率和密度是衡量摘要抽象性的指标。

重复率测量代重复失败模式。

长度统计数据比较黄金摘要来测量解码的长度分布。

可以在以下几种类型的输出文件中找到model_dir

text_metrics-*。txt:以上指标以文本格式显示。每行包含度量标准名称,95%下限值,平均值,95%上限值。 输入-.txt,目标-.txt,预测-* .txt:模型输入/输出的原始文本文件。

预训练

(在C4或任何其他语料库上)的预训练需要定制构建的tensorflow,其中包括进行实时解析的操作,这些操作将原始文本文档处理为模型输入并指定ID。有关详细信息,请参阅pegasus / ops / pretrain_parsing_ops.cc和pegasus / data / parsers.py。

阅读剩余内容
网友评论
相关内容
延伸阅读
小编推荐

大家都在看

作文集封面 科技创新作文 我学会了什么作文 妈妈我想对你说作文400字 写景的作文400字 我的一天作文 我长大了作文 我的自画像作文300字 爱是什么作文 旅游作文 小学作文 写事作文500字 我的一天作文600字 初一作文 关于劳动的作文 童年作文 我的家乡作文600字 感恩作文600字 端午节作文 四年级下册作文 我的奇思妙想作文400字四年级 我的初中生活作文600字 我的妈妈 作文 责任作文 写人作文400字 六年级下册语文第一单元作文 写过年的作文 我的妈妈作文400字 以爱为主题的作文 好书推荐作文