AI笔记

本文是作者在AI领域的学习笔记,涵盖了NLP中的BertTokenizer.encode()、BertSum和Rouge测评,以及PyTorch中的梯度裁剪、DistributedDataParallel和相关函数用法。同时讲解了Python参数解包和传递的知识。
摘要由CSDN通过智能技术生成

本文主要记录本人在AI领域遇到的一些问题以及解决思路做的一些记录,笔记由摘抄+自我理解组成

NLP

BertTokenizer.encode()

https://huggingface.co/transformers/internal/tokenization_utils.html?highlight=encode#transformers.tokenization_utils_base.PreTrainedTokenizerBase.encode

–padding操作只有在传入多个句子才能激活

padding (bool, str or PaddingStrategy, optional, defaults to False) –

Activates and controls padding. Accepts the following values:

True or 'longest': Pad to the longest sequence in the batch (or no padding if only a single sequence if provided).

–max_length: Pad to a maximum length specified with the argument max_length or to the maximum acceptable input length for the model if that argument is not provided.

False or 'do_not_pad' (default): No padding (i.e., can output a batch with sequences of different lengths).

BertSum

论文地址 https://arxiv.org/pdf/1903.10318.pdf Fine-tune BERT for Extractive Summarization
code github https://github.com/nlpyang/BertSum
知乎论文解读 https://zhuanlan.zhihu.com/p/112282988

本文介绍了BERTSUM,是 BERT的简单变体 用于抽取式文本摘要,主要是选择性抽取文本中的句子作为最后的摘要。这个任务最大的问题是如何获得每个句子向量,然后把向量用于二分类,判断去留。而 BERT 原模型只能生成单句的句子向量,或者句子对的。

在这里插入图片描述
输入的每个句子用cls和sep包裹,在Segment Embeddings 中采取间隔向量标记,例如[sent1, sent2, sent3, sent4, sent5] -> [EA, EB, EA, EB, EA]。经过bert模型后,取出各个句子的cls向量作为Summarization Layers层的输入,最终输出每个句子的一个预测值。
在论文中,对Summarization Layers层三种类型的实验,Classifier,Transformer,LSTM,最后得出BERTSUM+Transformer的效果最佳。
在这里插入图片描述
这里的transformer层由一下代码构成
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

Rouge测评

https://blog.csdn.net/qq_25222361/article/details/78694617
Rouge(Recall-Oriented

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值