AIGC:LLM大型语言模型是怎么交流的? ———分词

前言

今天我们来聊聊什么是LLM,LLM又是怎么交流的呢?

准备工作

通过 Google Colab,用户可以创建和共享Jupyter笔记本,运行Python代码,访问云端计算资源,以及使用大量开源机器学习框架和库,而无需担心硬件或软件配置问题。

LLM

"LLM" 是 "Large Language Model" 的缩写,翻译过来就是"大型语言模型"。这一术语通常用来描述在自然语言处理(NLP)领域中的一类强大的神经网络模型,这些模型在大规模文本数据上进行预训练,然后可以用于各种自然语言理解和生成任务。

这类大型语言模型具有很高的参数数量,通常拥有数亿甚至数十亿的参数。由于这些模型规模庞大,能够学习到丰富的语言表示,包括词汇、语法、语义等方面的知识。它们在理解和生成自然语言方面的表现十分强大,可以执行诸如文本生成、机器翻译、问答系统等任务。

一些知名的大型语言模型包括:

  1. GPT-3(Generative Pre-trained Transformer 3): 由 OpenAI 开发的模型,拥有 1750 亿个参数。它是目前公开可用的最大的语言模型之一。
  2. BERT(Bidirectional Encoder Representations from Transformers): 由Google开发,采用双向 Transformer 编码器,用于预训练自然语言理解任务。
  3. T5(Text-To-Text Transfer Transformer): 由Google开发,使用统一的文本输入输出框架,适用于各种自然语言处理任务。

这些大型语言模型在推动自然语言处理领域的研究和应用方面发挥了关键作用,它们能够从海量的文本数据中学到通用的语言表示,使得它们在各种自然语言任务中都能够表现出色。

分词

计算机怎么样理解我们句子中的结构和含义呢?通过分词

在自然语言处理中,分词是将文本分割成有意义的最小单元(词)的过程。对于大型语言模型(LLM),分词是模型在理解和处理文本时的一个重要步骤。不同的语言和模型可能使用不同的分词方法。

但我们在使用大型语言模型(LLM)时,通常无需手动执行分词步骤,因为这些模型在训练阶段已经学习了丰富的语言知识,包括词汇和语法。你可以直接将原始文本传递给模型,而模型会自动处理分词。例如,使用 OpenAI 的 GPT-3 模型,你可以直接提供自然语言的文本,而无需显式进行分词。

接下来我们来看看如何进行分词

我们进入Google Colab网站,将代码放进此网站运行。这个网站十分的方便,当我们使用Google Colab 运行python时,可以不用担心配置环境。

点击文件-> 新建笔记本 点击左上角 +代码

输入pip install transformers, 安装transformer包

当左下角出现Successfully说明安装成功

输入:

python 复制代码
from transformers import AutoTokenizer
sens="来颗奇趣蛋,我要找一个好工作"  # 人类语言 -> LLM
tokenizer = AutoTokenizer.from_pretrained('uer/roberta-base-finetuned-dianping-chinese')
tokenizer

使用 Hugging Face 的 transformers 库中的 AutoTokenizer 类来加载一个预训练的中文 RoBERTa 模型(uer/roberta-base-finetuned-dianping-chinese),并使用它对输入文本进行分词(tokenization)。

输入:

python 复制代码
tokens = tokenizer.tokenize(sens)
tokens

tokenizer.tokenize(sens):调用分词器的 tokenize 方法,将输入的文本进行分词处理

输入:tokenizer.vocab

  • vocab:这是分词器的一个属性,表示词汇表。词汇表是模型训练时学到的所有单词、子词或标记的集合。对于预训练的语言模型,词汇表是在大规模文本数据上学到的,并包含了模型在训练过程中遇到的所有单词和标记。

使用 tokenizer.vocab 可以获取分词器使用的词汇表,你可以查看其中包含的单词、标记以及它们在词汇表中的索引等信息。

使用了分词器(tokenizer)将文本转换成模型可以理解的表示形式,其中涉及了将 tokens 转换成对应的 token IDs

输入:

python 复制代码
str_len = tokenizer.decode(ids, skip_special_tokens=False)
str_len

使用了分词器(tokenizer)将通过编码得到的 token IDs 转换回原始的文本形式

今天的内容就到这啦,如果你觉得小编写的还不错的话,或者对你有所启发,请给小编一个辛苦的赞吧

相关推荐
Code侠客行11 分钟前
Scala语言的编程范式
开发语言·后端·golang
EQUINOX130 分钟前
3b1b线性代数基础
人工智能·线性代数·机器学习
Kacey Huang1 小时前
YOLOv1、YOLOv2、YOLOv3目标检测算法原理与实战第十三天|YOLOv3实战、安装Typora
人工智能·算法·yolo·目标检测·计算机视觉
加德霍克1 小时前
【机器学习】使用scikit-learn中的KNN包实现对鸢尾花数据集或者自定义数据集的的预测
人工智能·python·学习·机器学习·作业
Light Gao1 小时前
AI赋能未来:Agent能力与AI中间件平台对行业的深远影响
人工智能·ai·中间件·大模型
moton20171 小时前
云原生:构建现代化应用的基石
后端·docker·微服务·云原生·容器·架构·kubernetes
骇客野人1 小时前
【人工智能】循环神经网络学习
人工智能·rnn·学习
何中应2 小时前
Spring Boot中选择性加载Bean的几种方式
java·spring boot·后端
速融云3 小时前
汽车制造行业案例 | 发动机在制造品管理全解析(附解决方案模板)
大数据·人工智能·自动化·汽车·制造
web2u3 小时前
MySQL 中如何进行 SQL 调优?
java·数据库·后端·sql·mysql·缓存