AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


更新一下对AI文字接龙、token等概念到误解
发布日期:2024-08-27 07:38:18 浏览次数: 1609


最近看李宏毅教授的《生成式人工智能导论》和《这就是ChatGPT》,发现以前一些认知是错误的?,记录一下:

1、文字接龙

之前理解大模型的文字接龙是将问题和答案分开处理的,以为AI消化了问题后,开始按概率一个字一个字的出答案。


实际上,问题和答案是一个整体,大模型在生成答案时,问题和答案是不分开的。

模型出的第一个字,会与问题中的每个字进行注意力计算;

出的第二个字,会与问题中的每个字+答案第一个字进行计算;

出的第二个字,会与问题中的每个字+答案第一个字和第二个字进行计算;

依次到结束。

2、概率与多样性

之前以为大模型接龙每次都接概率最高的词。

实际上,局部最优未必整体最优。类似天龙八部的玲珑棋局,先局部送死才能赢得最后胜利。

接概率最高的词,容易出现的问题是:

一是,答案趋于单调,问相同问题回答相同答案;

二是,容易陷入循环,句子长了后就会出现结巴或饶舌现象。

所以接龙时会采用多种策略,以确保答案的多样性,避免单调或循环,比如:

1)温度,即随机性;

2)Top-K,按概率大小排序,取前K个结果,从结果里面随机选一个;

3)Top-P,找几个概率相加等于P的结果,从这里几个里面选择一个。

还有其他方法等。

3. Token

之前以为Token是由大模型自己训练切分的,它根据训练资料,可能会输出token“风和日丽”这个成语。

实际上,在训练初期,开发人员就定义好了token词表(比如llama2有32k,llama3是128k)。

这个词表包含了数字、字符、简单的单词或短词等开发人员设定好的token。

这些token可以组成长单词。但大模型是不会输出一个未定义token的。

一般情况下,多个token才能组成一个中文字,类似“风和日丽”这样的成语,肯定不会是一个token,除非在词表中单独定义。

为了适应某种场景,单独定义的情况有可能在垂直大模型中出现,比如某些医疗词语。

让模型逐个输出“对乙酰氨基酚”中的每个汉字,难免出错。

4. 向量的叠加

每个Token都对应一个向量,这个向量是通过训练得到的,称为embedding。

这些向量有两个特点:

一是,意思相近的Token会训练出相近的向量;

二是,这只是词表中词的向量,可以算基础向量,比如bank这个单词有两个含义,一个是银行,一个是河岸,但他们都是同一个基础向量。

单词在句子中经过注意力机制和位置编码后,基础向量会添加额外的含义,这时候银行bank和河岸bank的向量就会变的不一样。

这个叠加的过程也是多次多层的,神经网络一层一层的处理(添加、合并等等)一些信息。

5. 使用工具

之前认为使用工具是特殊的一种方式,其实使用工具也是文字接龙。

具体实现是模型接龙接到这个字时,从结果项中根据概率选出一个结果,这个结果是一个工具标识,比搜索、计算等。

程序就会执行这个工具,工具执行结束后,把执行结果放回到句子里,然后继续往下接。

比如问“1美元兑换多少人民币”,AI回答“1美元可以兑换”,这时“换”后面要接什么呢,模型算出来的结果是调用“搜索/计算器”工具。 


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询