import torch
from transformers import AutoTokenizer, AutoModel, AdamW
from torch.utils.data import DataLoader, Dataset, random_split
import pandas as pd
from tqdm import tqdm
import random
from transformers import BertForSequenceClassification
下载预训练的BERT模型
使用 modelscope 下载预训练的中文BERT模型。
from modelscope import snapshot_download
model_dir = snapshot_download('tiansz/bert-base-chinese')
加载预训练模型和分词器
加载预训练的BERT模型和分词器。
tokenizer = AutoTokenizer.from_pretrained(model_dir)
model = BertForSequenceClassification.from_pretrained(model_dir)
https://nullskymc.cloud/Bert1/
PPT网址
https://bert-r9hswwn.gamma.site/
情感分析模型微调与评估
本文档展示了如何使用BERT模型进行中文情感分析的微调与评估。包括数据准备、模型微调、模型评估等步骤。
首先,我们需要导入相关的Python库和模块。
import torch from transformers import AutoTokenizer, AutoModel, AdamW from torch.utils.data import DataLoader, Dataset, random_split import pandas as pd from tqdm import tqdm import random from transformers import BertForSequenceClassification
使用 modelscope 下载预训练的中文BERT模型。
from modelscope import snapshot_download model_dir = snapshot_download('tiansz/bert-base-chinese')
加载预训练的BERT模型和分词器。
tokenizer = AutoTokenizer.from_pretrained(model_dir) model = BertForSequenceClassification.from_pretrained(model_dir)
注意:加载模型时,会有一些警告提示某些权重未初始化,这是正常的,因为我们需要对模型进行微调。
定义一个 SentimentDataset 类来处理情感分析的数据集。
class SentimentDataset(Dataset): def init(self, dataframe, tokenizer, max_length=128): self.dataframe = dataframe self.tokenizer = tokenizer self.max_length = max_length
读取训练数据文件,并将其处理为数据集对象。
with open(