11月7日晚,估计是最近 AI 圈子里最热闹的一次。大家也都知道原因,openAI的首届开发者大会。
这次大会也被媒体称为 “ 王炸更新 ”“ BAT 沉默 ”。线上直播短短一小时,发布了许多重磅消息,同时,我们也见证了openAI的进化之路。
那么我们也紧跟热点,今天来浅谈一下 Huggingface 中的 Transformer模型。
内容
生成式人工智能 AIGC,(Artificial Intelligence Generated Content)是人工智能1.0时代进入2.0时代的重要标志。它是指利用人工智能技术生成内容的能力。
GAN、CLIP、Transformer、Diffusion、预训练模型、多模态技术、生成算法等技术的累积融合,催生了AIGC的爆发。算法不断迭代创新、预训练模型引发AIGC技术能力质变,多模态推动AIGC内容多边形,使得AIGC具有更通用和更强的基础能力。
而huggingface在国内应用的模块也是十分广泛,LSTM、Word2Vec、GloVe、ELMo和Transformers等几种模型,Transformers是一种新颖的神经网络架构,它在2017年由Google的研究人员提出,用于解决机器翻译等自然语言处理的任务。
那么Transformer它为什么能够支撑GPT模型的诞生,并且开启了人工智能大模型的全盛时代呢?
Transformer的特点
这个就要讲到Transformer模型区别于传统的循环神经网络、图神经网络和生成对抗网络,它采用了一种称为自注意力机制的方法,而这种方法的特点:
第一,并行计算,它可以进行全局的并行计算,而传统的循环神经网络是顺序计算的,相比之下,Transformer中的encoder模块的自注意力机制大大提高了计算效率。
第二,长程依赖建模,Transformer的自注意力机制能够直接捕捉不同位置之间的依赖关系,能够更好地建模长程依赖,这样一来,模型就能更好地理解和处理远距离的语义关系。
第三,空间有效性,Transformer只需要在解码器和编码器的各自位置嵌入中保存位置信息,节省了大量存储空间且更加高效,而传统的循环神经网络需要保存每个时间的隐藏状态,消耗大量的存储空间。
第四,生成能力,Transformer的生成能力是它成为重要模型架构之一的主要原因,它能够生成连续文本、翻译结果、图像描述等等。
使用Transformer模型
我们知道了它的特点,接下来可以看看我们利用Transformer模型能够做到什么呢?
我们可以利用pipeline派发模块中的情感分析数据库判断输入的语句是消极还是积极
!pip install transformers from transformers import pipeline # pipeline 派发模块 classifer = pipeline('sentiment-analysis') # 情感分析
result = classifer('i love you')
输出: 'label': 'POSITIVE', 'score': 0.9998656511306763
result = classifer('thank you')
输出:'label': 'POSITIVE', 'score': 0.9998352527618408