做网站是先做后台还是前端,金乡网站建设,网站建设零基础,哈尔滨网站域名备案了解自然语言处理或者听说过大语言模型的同学都听过#xff0c;token。一般来说#xff0c;它代表的是语言中不可再分的最小单元。我们人类的语言不仅有文字#xff0c;还有语音。针对文字、语音来说#xff0c;它们都各自有不同的划分token的方法。本节将尽可能详细的介绍…了解自然语言处理或者听说过大语言模型的同学都听过token。一般来说它代表的是语言中不可再分的最小单元。我们人类的语言不仅有文字还有语音。针对文字、语音来说它们都各自有不同的划分token的方法。本节将尽可能详细的介绍它们。
文本和语音中的Token
文本就是我们人类的文字。不同的国家、民族、地区使用不同的文字不同的模型使用不同的切分这些文字的方法。所以有时候经常容易被闹晕乎。先介绍流行的用的人最多的划分token的方法。
第一种是phoneme表示一个发音的音标或发音的基本单位。 Lexicon:单词到音标的转换表。cat--K AE T.phoneme是以前一种的常见选择。第二种是Grapherne:最小的书写单位。英文中一个单词就是一个最小单位。但在单词之间通常还要加上空格“_”。 one_punch_man:这句话里N13。V26。中文的最小单位可以用一个一个字来表示。中文不需要加入空白。
第三种是word即词汇. one punch man按照这种方式的话就有3个token。“一拳” ”打死” ”你”。就有3个词汇。用词汇来表示token的话太多太多了。无法穷举出所有的词。
第四种是Morpheme:表达意思的最小单位。 unbreakable,可拆解为un, break, able.
最后一种是Bytes. 每一个符号都可以用UTF-8表示。 什么字符号都可以用UTF-8表示。太大了。 V总是256.
通常大家都用Grapheme和phoneme. 常见的大语言模型是如何划分token的指Chatgpt之类
Chatgpt3.5Chatgpt4:
官方介绍如何分词
-------------------------------我是翻译线-----------------------------------------------------------------------------------
OpenAI 的大型语言模型有时称为 GPT使用tokens处理文本tokens是一组文本中常见的字符序列。这些模型学习理解这些标记之间的统计关系并擅长生成标记序列中的下一个token。
您可以使用下面的工具来了解语言模型如何对一段文本进行标记以及该文本中的标记总数。
值得注意的是确切的标记化过程因模型而异。GPT-3.5 和 GPT-4 等较新的模型使用与以前的模型不同的标记器并且将为相同的输入文本生成不同的tokens。
-------------------------------我是翻译线-----------------------------------------------------------------------------------
我在Openai官网提供的版本中尝试了一下看他们是如何分词的
输入注释引号表示的是我输入的内容我实际上并没有输入引号“我是中国西北人”
Chatgpt3.5Chatgpt4的分词器输出“我”“是””中国“”西“”北“”人“。对应的id为“【[37046, 21043, 59795, 61786, 49409, 17792]】”。也就是说在这个模型中“我”是由37046表示的依此类推。模型最后输出的就是这些数字然后再拿这些数字去找对应的是哪个词。
人家输出的时候没有引号。再次提醒。
Chatglm以及Llama:
这两个模型都用的是谷歌的Sentencepiece包来进行分词的。把文本分完词之后再转换为词表中的id。
后面再继续完善一下这个章节。