首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

[大模型学习]tokenizer——将文本处理为token

Tokenizer是自然语言处理领域中非常重要的一个部分,它将原始的文本数据转换为模型可以输入的token序列。常见的tokenizer包括:

WordPiece Tokenizer: 一种基于字母的tokenization方法,通过学习字母级别的token来构建vocabulary,适用于处理不定长度的词汇。常用于BERT等Transformer模型。

BPE Tokenizer (Byte-Pair Encoding): 一种基于字节级的tokenization方法,通过识别高频出现的字节对来构建vocabulary,适用于处理未登录词和多语言场景。常用于GPT、RoBERTa等模型。

SentencePiece Tokenizer: 一种无需预先定义vocabulary的tokenization方法,能自动学习vocabulary。可处理未登录词和多语言场景,常用于训练多语言模型。

SpaCy Tokenizer: 工业级NLP工具包spaCy提供的tokenizer,针对不同语言有专门的优化,支持tokenization、词性标注、命名实体识别等功能。

注意,token可以是字符,也可以是单词.总之就是将原本的文本处理为字典,这些字典包含一系列token.

BPE原理

step 1:设定最大分词词典数量vocab size,初始化一个词典

step 2:将语料中所有文本切成单个字符形式加入词典,并且将,,,空格符等特殊字符也加入词典

step 3:对已经切为字符的语料,全局统计一轮连续两个字符出现组合的频率

step 4:取最大频率的组合,将这两个字符合并为一个整体,将这个整体添加到词典,并且在语料中将这两个字符也同步全部替换为这个新的整体,当作一个词

step 5:重复step 3和step 4直到达到vocab size或者无法再合并为止

step 6:将最终的词典生成分词编码模型文件,比如tokenizer.model,后续的任务都以这个分词词典来切词和编码

学习资料

Byte-Pair Encoding tokenization - Hugging Face NLP Course

  • 发表于:
  • 原文链接https://page.om.qq.com/page/Odg3hPNqxdck9RAiVw-jqpTw0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券