更多文章欢迎关注公众号: stackoveriow
2023年是真正意义上的AI之年,因为ChatGPT
2007年,iPhone开启了智能手机时代,2023年,我们迎来了人工智能时代,我们正处于历史的大转折点上,这也许是启蒙运动级别的思想和社会转折,工业革命级别的生产和生活转折。继22年12月份从GPT-3到CHAT-GPT之后,stackoverflow 第2次来谈谈ChatGPT,准确地说,是近来学习ChatGPT的心得体会
OpenAI的账号是去年12月份申请的,距今已经快5个月了,18刀确实没有消耗完,然而请求不可用了,因为账号资金过期。由于国内网络和代理的缘故,登陆总是 “Oops”和 “You are being rate limited”。升级Plus账户,即便用了支持外币的卡,也有 “Your card has been declined” 的问题,索性直接白嫖了大学同学的账号,这里对同学表示忠心的感谢,希望他在日不落帝国的博士之路一帆风顺
一些名词解释
ChatGPT相关的有哪些专有名词需要了解呢?下面是我个人的总结:
GPT:
Generative Pre-trained Transformer 中文翻译为:生成式预训练变换器,其基于transformer架构的、经过预训练的、生成性的模型。其发展历史,参考从GPT-3到CHAT-GPT
AGI:
通用人工智能(artificial general intelligence),看到AGI翻译成了通用人工智能,直译AGI应该是人工通用智能,我还特意问了一个ChatGPT这个问题。可以认为是领域内专有名词
现在正在训练的是GPT-5,它被认为肯定可以通过图灵测试,达到通用人工智能的水准。AGI的一个特点是贵!据Morgan Stanley分析,正在训练之中的GPT-5,用了25000块NVIDIA最新的GPU,这种GPU每块价值一万刀
LLM:
大语言模型(Large Language Model),大语言模型是指一类基于深度学习技术的自然语言处理模型,它可以自动学习语言的规则和结构,从而生成文本、回答问题等任务,GPT-3是最出名的大语言模型
多模态:
第一次了解这个概念的时候,还在念书,是快手的一位技术大佬介绍他们的推荐引擎是支持多模态的,这里可以认为文本是一种模态,音频是一种模态,视频是一种模态。ChatGPT-3是你只能给它输入文字,多模态是你可以给它输入图片、声音和视频,它的原理大概是先把一切媒体都转化成语言,再用语言模型处理
涌现:
英文
emerge
,当一个系统的复杂到一定程度时,就会发生超越系统元素简单叠加的,自组织的现象,一个蚂蚁很笨,可是蚁群非常的聪明,市场中的每个人都是自由独立的,可是整个市场好像有某种顺序,神经元是简单的,但是大脑却产出了意识…语言模型在参数量级突破了一定阈值(千亿)后,开悟了(就像王阳明龙场驿站开悟了那样),涌现出很多能力,工程师们及业界大佬们也没有弄明白模型涌现出这些能力的内部机制
思维链:
模型涌现新能力的关键机制,叫做思维链(Chain-of-Thought),思维链就是当模型听到一个东西之后,它会噼里啪啦地自说自话,把它知道的有关这个东西的各种事情一个个说出来(每个词都有对应概率,可认为是模型思考的过程),然后根据思维链结果产出最终结果(有点二阶导数的味道了)。只要我们预设好每次模型先思考,在回答问题,她就能运用思维链,也就有了思考能力
CNN
卷积神经网络(Convolutional Neural Network):是一种深度学习算法,CNN可以通过卷积和池化操作,从图像中有效地提取出特征,然后通过全连接层进行分类或回归等任务,主要用于图像和视频处理
RNN
循环神经网络(Recurrent Neural Network),是一种能够处理序列数据的神经网络模型。其结构类似于多个神经网络单元,按照时间序列连接起来的模型。每个时间步,当前输入和上一时刻的输出会一起输入给网络,生成当前时刻的输出
传统的RNN存在“梯度消失”和“梯度爆炸”等问题,导致网络难以训练和优化,可以通过长短时记忆网络(LSTM)和门控循环单元(GRU)来解决
GNN
生成性神经网络(Generative Neural Networks)的特点在于生成二字,生成新的数据样本,如图像、文本、音频。生成性神经网络不仅可以对已有数据进行分类和预测,还可以生成新的数据,类似于人类的创造力。应用在如图像生成、文本生成、音频生成等领域
生成性神经网络的训练方法是用两个具有互补学习目标的网络相互对抗:一个叫生成器,负责生成内容,一个叫判别器,负责判断内容的质量,二者随着训练互相提高
Transformer架构:
Transformer是一种基于自注意力机制(self-attention mechanism)的神经网络架构,主要用于自然语言处理任务,例如机器翻译、文本分类、语音识别
Transformer的创新之处在于它不依赖于传统的CNN和RNN,而是通过自注意力机制对输入序列进行编码和解码,并通过多头自注意力机制来处理序列。深入了解可以读读What Is ChatGPT Doing … and Why Does It Work?
自注意力机制
在自注意力机制(Self-Attention Mechanism)中,每个元素都可以通过计算与其他元素的相似度(如点积),得到一个权重向量,该向量用于表示该元素在序列中的重要程度。通过引入自注意力机制,Transformer可以更好地捕捉序列中的长距离依赖关系,并在机器翻译、文本分类、语音识别等任务中取得更好的效果
平行语料库:
平行语料库(Parallel Corpus)是指一种包含两个或多个语言相对应的句子或文本的数据集,这些句子或文本在语义上相似或相关,用于支持跨语言的自然语言处理任务。比如,在一份英汉平行语料库中,一句英文句子可能对应着一句汉语翻译
和ChatGPT相关的牛人,也是需要我们了解的,这里仅介绍2位
排行榜第一位:OpenAI的CEO山姆·阿尔特曼(Sam Altman),没别的,就单单OpenAI CEO的这个title
排行榜第二位:wolfram网站的创始人:stephen wolfram,网传他是世上目前活着的最聪明的人TOP3,而且不知道剩下的2个人是谁,目前LLVM无法精确处理一些数据计算问题,但是可以通过 Tool Manipulation的方式 引入 wolfram 来解决
stephenwolfram 写的文章 what-is-chatgpt-doing-and-why-does-it-work 是深入了解ChatGPT的必读文章
一些问答
无论是ChatGPT还是近期各大公司发布的AI,都是基于大型语言模型的(至少他们是这么号称的),那么语言模型的发展过程是怎么样的呢?
在 A Survey of Large Language Models 这篇paper中,将LM(Language Model) 语言模型的发展划分了以下四个阶段
1️⃣ Statistical language models (SLM),主要基于马尔科夫假设(预测当前文本的只参考前x个文本,类似条件概率)
2️⃣ Neural language models (NLM),基于神经网络的语言模型,如CNN,RNN
3️⃣ Pre-trained language models (PLM),基于并行化,自注意力机制的 Transformer架构的语言模型,特点是 “pre-training”,”Fine-tuning“
4️⃣ Large language models (LLM) ,在PLM的的基础上发展而来,特点就是 大,特别大
AGI 通用人工智能 的出现会立即改造经济活动么?
一般不会立即改造经济活动,比如蒸汽机和电力,都是逐渐的改造社会的经济活动的。爱迪生1879年发明了电灯,但是过了20年,美国才有3%的家庭用上了电,1910年新工厂还是优先采用蒸汽动力
以前的工厂用蒸汽动力都是一根蒸汽轴连接所有机器,蒸汽一开所有机器都开。改用电力之后,工厂发现如果每台机器都有独立的电源,那就完全可以用到哪台开哪台,这岂不是更省钱吗?这并不容易,因为这意味着你必须对机器进行改造,什么机床、钻头、金属切割器、压力机,都得根据独立电源重新设计。这是需要时间的,所以电力并没有立即改造经济活动
未来,AI作为社会新的通用基础设施,改造经济活动也是需要时间的
什么是少样本学习?
所谓少样本学习(Few-Shot Learning),就是你给大语言模型一两个例子,它就能学会你的意思并且可以提供相似的输出。少样本学习是语言模型大了之后,涌现出来的能力,模型越大(参数越多)少样本学习能力越强
进行少样本学习会改变语言模型的参数么?
少样本学习不是对模型训练的一部分。我们接触到的模型都是已经训练完毕的,参数已经固定了。少样本学习是这个模型的一个能力,是一种模仿,并不会改变模型本身。当对话结束以后,模型就会忘记你出的例题
如果你的每次对话都能改变ChatGPT的参数,那这个模型岂不是太脆弱了(假设你每次喂得都是数据垃圾)
AI 的大规模应用是让普通人与精英的差距拉大了还是缩小了?
在很多方面是缩小了。最起码,如今任何人都能很方便的找到很多专业问题的答案,ChatGPT把很多以前的所谓精英都变成了伪精英。一个混了个博士学位实则毫无本领的人,根本打不过一个头脑灵活并且掌握了AI的人
普通人可以用ChatGPT干嘛?
首先我就是普通人,在ChatGPT中,我建立了4个Chat,分别是
1️⃣ A-开发助手 : 主要用来处理平时的开发相关的问题,使用GPT辅助/分担部分工作内容,A是我的同事
2️⃣ B-翻译助手 :这个主要是用来中英互译的,聊天内容可以回溯,昨天查询的单词,今天可以复习,是一个很好的英语学习助手,B是我的同学
3️⃣ C-不明白助手 :如果我有什么疑问,我都会向这个助手提问,他几乎都是知无不言,言无不尽,C是我的老师
这种问答,对话的学习方式应该是最原始的学习方式,在书籍没有那么流行,没有教程的年代(孔子和苏格拉底那个年代),不就是这种学习方式么?
4️⃣ D-Chat-Ideas-Bot-4 :用来闲聊,和好想法的记录及辅助创造,ABC3个助手都是基于GPT-3.5的,Plus版本response非常快,D助手是GPT-4的,反应迟钝,所以特定场景才亮这把剑
ABCD只是对日常的使用场景进行了一个简单的分类,聊天问答,其实是ChatGPT 的最浅层能力,比这更重要的是:如何引导AI更好的回答的自己的问题,也就是修炼自己提示工程的能力,深入使用ChatGPT的小伙伴一定发现了,同一个问题,不同的问法的会产生不同的效果,多数时候仅仅一句「请仔细思考」,或者「请一步一步来」,都会得到一个更准确的回复
一般而言,提示公式 = 任务(要求模型生成什么内容) + 角色(模型扮演什么角色) + 指令(生成文本时,模型应该遵循什么),有时候的还可以添加种子词等,有兴趣可以读读 Art-Asking-ChatGPT-High-Quality-Answer 这本教程
有的人甚至对GPT的回复做逆向工程,在人肉识别到一个好的回复之后,让他自己分析为什么产出这样的回复。使用GPT的整个过程就好像寻宝之旅,提示工程就是那本宝藏地图
GPT的命门(Bug)是什么?
1️⃣ 模型在自己不知道的时候,会一本正经的胡说八道,这一点倒是很像人类中的那么一小撮,对应的提升的方向叫做:信息校准
2️⃣ 目前支撑的token数有限(可以理解为输入/出的最大字数有限制),目前没有明显的办法来向模型教授新的事实
3️⃣ 模型缺乏自我更新或适应变化环境的能力。一旦训练好,就是固定的。可以进行微调,但是会导致性能下降或过度拟合
让GPT处理新知识的办法有哪些?
让GPT处理新知识有两个办法
一个办法是在模型的基础上再多喂一些料,继续训练,这个叫做fine tune(微调),比较费时费力,这个会改变原本模型的参数
另一个办法是让模型临时“学习”新的知识,这就是Bing Chat和现在网上很多调用API读书的小工具所做的。这本质上不是训练,而是小样本学习,是对模型的应用,这个方法的缺点是能输入的信息总量有限
和ChatGPT交互,喂给他的数据,他下一次重新对话会有这个记忆吗?
他只记得一次对话中你给他输入的大约前4000(V-3.5)个字
如何处理公司私有数据涉密问题?
可以引进 OpenAI 的训练好的模型(或者其他的大语言模型),在公司内部 fine tune,而不把公司数据给 OpenAI。事实上,这就是现在的标准做法
一点感慨
因为我是万sir的铁粉,他在2020年就解读过GPT-3这个玩意,所以很早就知道这个东西。去年年底,万sir又解读了ChatGPT,我抱着试试的心态通过各种渠道第一时间就拿到了OpenAI的公测账号,彼时我的心态还停留在ChatGPT是个牛x的玩具,自我感觉对于搜索引擎的资深用户来说,用搜索引擎找到的答案是难道会不如ChatGPT?浅浅的感觉这波AI浪潮,和之前的元宇宙一样,泡沫大大的有
近来,对ChatGPT相关的领域知识展开了地毯式的学习和了解,对之前那个没有深入了解就着急忙慌地结论的我表示:嗤之以鼻!泡沫是有,但是比元宇宙,web3靠谱多了
我还记得那晚,在阅读 Stephen Wolfram 写的文章 what-is-chatgpt-doing-and-why-does-it-work(知乎有译文)的时候,真的有被,”卧槽,卧槽,卧槽“ 到,对于AI领域来说,这是从基于规则的AI 到 基于统计分析AI的跨越之后的,又一次巨大的跨越。注:目前只是窥见了冰山一角
对于AI:Stay humble and embrace change ,或者用 Steve Jobs的话说,Stay Hungry. Stay Foolish
文章首发在公众号 : stackoverflow , 欢迎关注
最后:祝春安
学习材料来源
[1] 得到万维钢《精英日课-5》,https://www.dedao.cn/course/article?id=a8QZdRM1OmLxVvGo37JG69rgYPjqWp&source=search
[2] 必读文章What is chatgpt doing and why does it work : https://writings.stephenwolfram.com/2023/02/what-is-chatgpt-doing-and-why-does-it-work/
[3] 热心网友总结的学习线路图: https://gofurther.feishu.cn/docx/Enofdl25BotoVrxth8ec4rNBn5c
[4] 综述 A Survey of Large Language Models : https://arxiv.org/abs/2303.18223,
[5] 论文解读-技术GitHub 16.7k Star https://github.com/mli/paper-reading