bert-base-chinese 判断上下句

利用BERT等模型来实现语义分割。BERT等模型在预训练的时候采用了NSP(next sentence prediction)的训练任务,因此BERT完全可以判断两个句子(段落)是否具有语义衔接关系。这里我们可以设置相似度阈值 MERGE_RATIO ,从前往后依次判断相邻两个段落的相似度分数是否大于MERGE_RATIO ,如果大于则合并,否则断开。

python 复制代码
import torch
from transformers import BertModel,BertTokenizer
#加载字典和分词工具,即tokenizer
tokenizer= BertTokenizer.from_pretrained('bert-base-chinese')  # 要跟预训练模型相匹配
#加载预训练模型
model= BertModel.from_pretrained('bert-base-chinese')
TEMPERATURE = 1 #温度函数 自定义
MERGE_RATIO = 0.9 #阈值分数 自定义

def is_nextsent(sent, next_sent):

        encoding = tokenizer(sent, next_sent, return_tensors="pt",truncation=True, padding=False)

        with torch.no_grad():
            outputs = model(**encoding, labels=torch.LongTensor([1]))
            logits = outputs.logits
            probs = torch.softmax(logits/TEMPERATURE, dim=1)
            next_sentence_prob = probs[:, 0].item()

        if next_sentence_prob <= MERGE_RATIO:

            return False
        else:
            return True
相关推荐
To_OC9 小时前
用 ESM 模块化搭建 DeepSeek LLM 调用,顺带用 Prompt 实现轻量 NLP 任务
人工智能·nlp·deepseek
me8321 天前
【AI面试】小白理解大模型:仅编码器(BERT类)、仅解码器(GPT类)和完整的编码器-解码器架构各有什么优缺点?
人工智能·gpt·ai·bert
极光代码工作室2 天前
基于NLP的论文关键词提取系统
python·深度学习·自然语言处理·nlp
kishu_iOS&AI3 天前
LLM —— 基础知识(Bert&GPT&T5)浅析
人工智能·gpt·bert
星川皆无恙3 天前
基于BERT+LSTM+CRF与知识图谱的医疗智能问答系统实战:Neo4j图数据库+实体识别+意图分析完整项目
数据库·人工智能·深度学习·bert·lstm·知识图谱·neo4j
毕竟是shy哥4 天前
基于提示引导适配器的实体级对齐遥感图文检索
人工智能·学习·bert·transformer
不好听6134 天前
Prompt 驱动 NLP:用大语言模型重新定义自然语言处理开发范式
设计模式·node.js·nlp
Goodbye5 天前
基于 Prompt 工程的 NLP 系统开发实践 —— 以 DeepSeek 大模型为例
nlp
jimi11265 天前
从零理解 Transformer
人工智能·深度学习·nlp
happyprince5 天前
17-Hugging Face Transformers之BERT 案例详解:Transformers 框架全模块串联
人工智能·深度学习·bert