当前位置: 首页 > news >正文

网站做动态图片用云空间制作网站

网站做动态图片,用云空间制作网站,服务器搭建网站域名配置,郑州铭功路网站建设上一篇文章讲解了Langchain,实现一个简单的demo,结合利用 LangChain 和 BERT 用于命名实体识别。 一、命名实体识别模型训练(bert+CRF) bert作为我们的预训练模型(用于将输入文本转换为特征向量),CRF作为我们的条件随机场(将嵌入特征转为标签),既然要训练,那么我们的损失函…

上一篇文章讲解了Langchain,实现一个简单的demo,结合利用 LangChain 和 BERT 用于命名实体识别。

一、命名实体识别模型训练(bert+CRF)

bert作为我们的预训练模型(用于将输入文本转换为特征向量),CRF作为我们的条件随机场(将嵌入特征转为标签),既然要训练,那么我们的损失函数采用CRF 损失。

注意区分 交叉熵损失和CRF损失

CRF本身也有学习参数,一起参与梯度更新,只是参数为一块转移矩阵实现标签之间的关系建模。

实现代码如下,

模型和 分词器都是使用的bert base chinese

实现了一个结合BERT和CRF模型的命名实体识别(NER)任务。首先,定义了BertCRF类,利用BERT进行特征提取,并通过CRF层进行序列标签预测。数据预处理部分使用BertTokenizerFast对输入文本进行分词,同时将标签对齐到子词级别,处理特殊token。在数据加载方面,使用Hugging Face的datasets库加载MSRA NER数据集,并利用DataCollatorForTokenClassification动态填充批次。

import torch
import torch.nn as nn
from torch.utils.data import DataLoader
from transformers import BertTokenizerFast, BertForTokenClassification, DataCollatorForTokenClassification
from torchcrf import CRF
from torch.optim import AdamW
from datasets import load_dataset
from seqeval.metrics import classification_report, accuracy_score
from tqdm.auto import tqdm# 定义BERT + CRF模型
class BertCRF(nn.Module):def __init__(self, bert_model_name, num_labels):super(BertCRF, self).__init__()# 使用预训练的BERT模型进行特征提取self.bert = BertForTokenClassification.from_pretrained(bert_model_name, num_labels=num_labels)# CRF层进行标签序列建模self.crf = CRF(num_labels, batch_first=True)def forward(self, input_ids, attention_mask, labels=None):# BERT输出outputs = self.bert(input_ids, attention_mask=attention_mask)emissions = outputs[0]  # 获取BERT的最后隐藏层输出if labels is not None: # 训练模式loss = -self.crf(emissions, labels, mask=attention_mask.bool())return losselse:predictions = self.crf.decode(emissions, mask=attention_mask.bool())return predictions# 数据预处理函数
def preprocess_data(examples):"""对批数据进行分词并对齐标签。HuggingFace 的 tokenizer 在 `is_split_into_words=True` 且 `batched=True` 时可以一次处理多句子。这里根据 `word_ids(batch_index=...)` 把原始词级别标签扩展到子词级别;对特殊 token (CLS、SEP、PAD) 使用 -100,使其在计算 loss 时被忽略。`msra_ner` 数据集的 `ner_tags` 已经是整数 ID,因此无需 label2id 转换。"""# 分词tokenized = tokenizer(examples["tokens"],
http://www.dtcms.com/a/493897.html

相关文章:

  • 深圳外贸网站制作美的地产集团官方网站建设
  • 网站不备案不能用吗网站备案被注销
  • 网站建设与规划实验总结做网站创新互联
  • node做网站怎么知道蜘蛛来过平台如何制作网站
  • WordPress如何修改固定链接手机端网站优化
  • 做网站的优点建网站视频教程
  • 外贸网站国际化怎么做失信人信息查询
  • 淘宝网站运营的工作怎么做网站建设的文章
  • 鄂尔多斯建设局网站oa管理系统项目文档
  • 自适应网站如何做mip网页wordpress评论框加
  • 重庆网站设计开发培训学校网站验收标准
  • 中国电力建设股份有限公司官方网站企业网站的建立主要用于企业内部发布信息
  • 糗事百科网站源码盐城快速建设网站找哪家
  • 做网站开发还会有前途吗好的外国设计网站推荐
  • 广东东莞免费网站制作公司义乌网站建设设
  • 短网站生成金坛网站优化
  • 做网站的公司主要是干啥wordpress导入导出
  • 中文域名指向同一个网站毕节地seo
  • asp.net做网站网站推广的方法有
  • 华企网站建设找活做的网站
  • 广东省住房和城乡建设厅网站进不去网站怎么做小程序
  • 生活家装饰官方网站京津冀协同发展的路径主要涉及
  • 登陆建设银行wap网站制作系部网站首页
  • wordpress获取站点标题虚拟主机便宜
  • 贷款网站源码下载wordpress 主机屋
  • 海西高端网站建设公司企业管理公司全是骗子
  • 自己做的网站怎么上传到网络公司网站做一年多少钱
  • 营销类网站设计 要点公司网站备案
  • 济南企业建站品牌摄影网站都有什么
  • 网站开发建设专业的公司三亚北京网站建设