AI搭建preparationの(transformers01)BertTokenizer实现分词编码

一、下载

bert-base-chinese镜像下载

二、简介作用:

|-----------|-------------------|----------------|-----------------|--------|------|
| 模型 | 每个参数占用的字节大小 | 模型大小 | 模型大小 | 层数 | 头数 |
| GPT-1 | 4 个字节的 FP32 精度浮点数 | 117M | 446MB | 12 | 12 |
| GPT-2 | 2 个字节的 FP16 | 1.5亿到1.75亿 | 0.5GB到1.5GB | 48 | 16 |
| GPT-3 | 2 个字节的 FP16 | 1.75万亿(17500亿) | 350GB | 175 | 96个头 |

BERT(Bidirectional Encoder Representations from Transformers)

针对中文语言,HuggingFace 团队推出了 bert-base-chinese 模型,提供语言处理能力。

Transformers提供两大类的模型架构,一类用于语言生成NLG任务,比如GPT、GPT-2、Transformer-XL、XLNet和XLM,

另一类主要用于**语言理解任务** ,如Bert、DistilBert、RoBERTa、XLM.

三、环境依赖

pip install transformers==4.20.0

transformers · PyPI

四、实践

1、 vocab.txt 是已经设定好的词表

2、分词编码

利用transformers库中的BertTokenizer实现分词编码

python 复制代码
from transformers import BertTokenizer#111
bert_name = './bert-base-chinese'
tokenizer = BertTokenizer.from_pretrained(bert_name)
text = '窗前明月光,'
input_ids = tokenizer.encode(
    text,#需要编码的文本;
add_special_tokens=True,#是否添加特殊token,即CLS分类token和SEP分隔token;
max_length=128,#文本的最大长度
truncation=True,#使用truncation=True来明确地将示例截断为最大长度。
padding='max_length',#将批次中所有序列填充到最长序列的长度
return_tensors='pt'# 返回的tensor类型,有4种为 ['pt', 'tf', 'np', 'jax'] 分别代表 pytorch tensor、tensorflow tensor、int32数组形式和 jax tensor;
)
print('text:\n', text)
print('text字符数:', len(text))
print('input_ids:\n', input_ids)
print('input_ids大小:', input_ids.size())

3、特殊标记

整个词表的大小为21128个字,共有5种特殊token标记:

PAD\]: 填充标记,编码为0; \[UNK\]: 未知字符标记,即该字不在所定义的词表中,编码为100; \[CLS\]: 分类标记,蕴含整个文本的含义,编码为101; \[SEP\]: 分隔字符标记,用于断开两句话,编码为102; \[MASK\]: 掩码标记,该字被遮挡,编码为103; *** ** * ** *** ### 4、补充: 某些transformers版本 或者会产生一些提醒,但是可以正常运行,我们可以加上以下语句来清除警告 > from transformers import logging > > logging.set_verbosity_error()

相关推荐
小鸡吃米…29 分钟前
机器学习 - K - 中心聚类
人工智能·机器学习·聚类
好奇龙猫1 小时前
【AI学习-comfyUI学习-第三十节-第三十一节-FLUX-SD放大工作流+FLUX图生图工作流-各个部分学习】
人工智能·学习
沈浩(种子思维作者)1 小时前
真的能精准医疗吗?癌症能提前发现吗?
人工智能·python·网络安全·健康医疗·量子计算
minhuan1 小时前
大模型应用:大模型越大越好?模型参数量与效果的边际效益分析.51
人工智能·大模型参数评估·边际效益分析·大模型参数选择
Cherry的跨界思维1 小时前
28、AI测试环境搭建与全栈工具实战:从本地到云平台的完整指南
java·人工智能·vue3·ai测试·ai全栈·测试全栈·ai测试全栈
MM_MS1 小时前
Halcon变量控制类型、数据类型转换、字符串格式化、元组操作
开发语言·人工智能·深度学习·算法·目标检测·计算机视觉·视觉检测
ASF1231415sd2 小时前
【基于YOLOv10n-CSP-PTB的大豆花朵检测与识别系统详解】
人工智能·yolo·目标跟踪
水如烟2 小时前
孤能子视角:“意识“的阶段性回顾,“感质“假说
人工智能
Carl_奕然2 小时前
【数据挖掘】数据挖掘必会技能之:A/B测试
人工智能·python·数据挖掘·数据分析
旅途中的宽~2 小时前
《European Radiology》:2024血管瘤分割—基于MRI T1序列的分割算法
人工智能·计算机视觉·mri·sci一区top·血管瘤·t1