14.AI搭建preparationのBERT预训练模型进行文本分类

一、回顾:

  1. 对深度学习框架Python2.0进行自然语言处理有了一个基础性的认识
  2. 注意力模型编码器(encoder_layer,用于分类的全连接层dense_layer),抛弃了传统的循环神经网络和卷积神经网络,通过注意力模型将任意位置的两个单词的距离转换成1
  3. 编码器层和全连接层分开,利用训练好的模型作为编码器独立使用,并且根据具体项目接上不同的尾端,以便在运训练好的编码器上通过微调进行训

二、BERT简介:

Bidirectional Encoder Representation From transformer,替代了 word embedding 的新型文字编码方案,BERT 实际有多个encoder block叠加而成,通过使用注意力模型的多个层次来获得文本的特征提取

三、基本架构与应用

1.MLM:随机从输入语料中这闭掉一些单词,然后通过上下文预测该单词

2.NSP:判断句子B是否句子A的上下文

四、使用HUGGING FACE获取BERT与训练模型

1.安装

复制代码
pip install transformers

2.引用

复制代码
import torch
from transformers import BertTokenizer
from transformers import BertModel
tokenizer = BertTokenizer.from_pretrained('bert-base-chinese')
pretrain_model = BertModel.from_pretrained("bert-base-chinese")

3. 运用代码_获取对应文本的TOKEN

3.1('bert-base-chinese'模型)

复制代码
import torch
from transformers import BertTokenizer
from transformers import BertModel
tokenizer = BertTokenizer.from_pretrained('bert-base-chinese')
pretrain_model = BertModel.from_pretrained("bert-base-chinese")

tokens = tokenizer.encode("床前明月光",max_length=12,padding="max_length",truncation=True)
print(tokens)
print("----------------------")
print(tokenizer("床前明月光",max_length=12,padding="max_length",truncation=True))
print("----------------------")
tokens = torch.tensor([tokens]).int()
print(pretrain_model(tokens))

3.2("uer/gpt2-chinese-ancient"模型)

复制代码
import torch
from transformers import BertTokenizer,GPT2Model
model_name = "uer/gpt2-chinese-ancient"
tokenizer = BertTokenizer.from_pretrained(model_name)
pretrain_model = GPT2Model.from_pretrained(model_name)

tokens = tokenizer.encode("春眠不觉晓",max_length=12,padding="max_length",truncation=True)
print(tokens)
print("----------------------")
print(tokenizer("春眠不觉晓",max_length=12,padding="max_length",truncation=True))
print("----------------------")

tokens = torch.tensor([tokens]).int()
print(pretrain_model(tokens))

4.进行文本分类

数据准备>数据处理>模型设计>模型训练

get_data:

model:

train:

finally,随着训练,准确率会越来越高

相关推荐
丝斯2011几秒前
AI学习笔记整理(43)——NLP之大规模预训练模型BERT
人工智能·学习·自然语言处理
yong99902 分钟前
信号分形维数计算方法与MATLAB实现
开发语言·人工智能·matlab
爱吃大芒果4 分钟前
openJiuwen(Windows端)大模型添加及AI Agent创建教程
人工智能·ubuntu·openjiuwen
工藤学编程5 分钟前
零基础学AI大模型之个人助理智能体之tool_calling_agent实战
人工智能·langchain
WZgold1416 分钟前
黄金再创新高!2026 年金价走势预测
大数据·人工智能·经验分享·区块链
雷焰财经6 分钟前
生成式AI走进金融核心系统——效率革命还是风险放大器?
人工智能
TOPGUS6 分钟前
谷歌第三季度财报发布:AI搜索并未蚕食传统搜索,反而正在创造增量
大数据·人工智能·搜索引擎·谷歌·seo·数字营销
百度智能云技术站7 分钟前
基于 vLLM 的大模型推理服务秒级扩缩容的工程优化实践
人工智能
下海fallsea10 分钟前
AI竞争的答案:只买人不买产品
大数据·人工智能