草庐IT

ChatGPT“石破天惊”,下一个AI杀手级应用在哪?

贝多财经 2023-06-20 原文

自2022年11月上线后,ChatGPT就一路开挂,不仅5天时间便突破百万用户,月活用户突破 1 亿更是仅用时2个月,成为史上增速最快的消费级应用,远超TikTok、Facebook、Google等全球应用,可谓来势汹汹。

ChatGPT表现出很高的人机交互水平,以及自然语言大模型具备面向通用人工智能的特征,在众多行业领域有着广泛的应用潜力。ChatGPT大热之下,其背后技术的原理是什么?AIGC的兴起给金融、跨境电商等众多行业带来怎样的机遇与挑战?AI又将如何赋能商业决策?

 

真正与人类进行交流

ChatGPT是由OpenAI团队开发和训练的一个人工智能聊天机器人程序,使用了Transformer架构,它拥有语言理解和文本生成能力,尤其是通过连接大量的语料库来训练模型,这些语料库包含了真实世界中的对话,使得ChatGPT具备上知天文下知地理,还能根据聊天的上下文进行互动的能力,做到与真正人类几乎无异的聊天场景进行交流。

2020年5月的GPT-3,参数量达到了1750亿,堪称“大力出奇迹”。ChatGPT 作为基于GPT-3.5架构开发的大规模对话AI模型,刚一问世就令全球为之震动,而其很可能是GPT-4 正式推出之前的演练。

不过,在萨摩耶云科技集团数据业务部副总经理易小华看来,从技术角度来说,ChatGPT本身使用到的技术在过去5年已被业界反复验证,并不存在非常大的突破。“OpenAI多年的厚积为现在的薄发打下了基础,它所积累的模型规模已经把竞争对手甩在身后。”易小华感叹。

ChatGPT的数据飞轮开始转动

从GPT1.0到GPT3.0,再到目前ChatGPT所使用的GPT3.5 , 在过去5年的时间,OpenAI投入了大量的人力、财力、算力,将其模型规模积累壮大。

2018 年 OpenAI 采用 Transformer Decoder 结构在大规模语料上训练了 GPT1 模型,揭开了NLP模型预训练+微调的新范式。2019 年,OpenAI 提出了 GPT2,GPT2 拥有和 GPT1 一样的模型结构,但得益于更多和更高的数据质量以及新引入的多任务学习方式,语言生成能力得到大幅提升。之后由于 GPT 采用 Decoder 单向结构天然缺陷是无法感知上下文,Google 很快提出了 Encoder 结构的 Bert 模型可以感知上下文,效果上也明显有提升,同年 Google 采用Encoder-Decoder 结构,提出了 T5 模型,从此大规模预训练语言模型朝着三个不同方向发展。

易小华认为,直到2020 年 OpenAI 提出了 GPT3 将 GPT 模型提升到全新的高度,其训练参数达到了 1750 亿,训练语料超45TB,自此GPT系列模型的数据飞轮便转动起来,超大模型时代开启, NLP 任务走向了预训练+情境学习新路线。由于 GPT3 可以产生通顺的句子,但是准确性等问题一直存在,于是出现了InstructGPT、ChatGPT 等后续优化的工作,通过加入强化学习模式实现了模型可以理解人类指令的含义,会甄别高水准答案,质疑错误问题和拒绝不适当的请求等。

强大的ChatGPT如何训练而成?

ChatGPT使用了RHLF( 人工反馈强化学习能力)方法来训练模型,它分三步来训练:

第一步:训练监督策略模型。为了让GPT 3.5初步具备理解指令的意图,首先会在数据集中随机抽取问题,由人类标注人员,给出高质量答案,然后用这些人工标注好的数据来微调 GPT-3.5模型,经过微调的模型已经具备在对话场景初步理解人类意图的能力。

第二步:训练奖励模型。这个阶段主要是通过人工标注训练数据,来训练奖励模型。在数据集中随机抽取问题,使用第一阶段生成的模型,对于每个问题,生成多个不同的回答。人类标注者对这些结果综合考虑给出排名顺序。这一过程类似于教练或老师辅导。

接下来,使用这个排序结果数据来训练奖励模型。对多个排序结果,两两组合,形成多个训练数据对比。RM模型接受一个输入,给出评价回答质量的分数。

第三步:使用PPO强化学习来增强第一步生成的微调模型。首先初始化 PPO 模型,采样一批和前面用户提交 prompt 不同的集合,使用 PPO 模型生成答案。利用第二步回报模型对答案打分,通过产生的策略梯度去更新 PPO 模型。这一步利用强化学习来鼓励 PPO 模型生成更符合奖励模型判别高质量的答案。

然后通过第二和第三步的反复迭代,使得 PPO 模型的生成能力越来越强,直到人都很难分辨出来。

瑕不掩瑜,新技术革命风暴袭来

尽管ChatGPT表现出出色的上下文对话能力甚至编程能力,完成了大众对人机对话机器人从“人工智障”到“有趣”的印象改观。我们也要看到,ChatGPT技术仍然有一些局限性,还在不断地进步。比如,其未经大量语料训练的领域缺乏“人类常识”和引申能力,甚至会一本正经的“胡说八道”;ChatGPT无法处理复杂冗长或者特别专业的语言结构;需要非常大量的算力(芯片)来支持其训练和部署;无论是训练时间或训练成本,都是普通训练者难以接受的;ChatGPT仍然是黑盒模型,目前还未能对内在算法逻辑进行分解。

从辩证的角度来看,ChatGPT虽不完美,但它提升了理解人类思维的准确性,带来了里程碑式的技术革命。它将带动AI杀手级应用出现,代替大量低端人力,将给世界带来新的产业革命;使用大模型(或LLM)可以接近人类的思考能力;科技领先的马太效应会越来越明显。

ChatGPT在全球迅速掀起浪潮,中信证券研究院报告认为,中短期内产业化的方向,主要为文字模态的AIGC应用、代码开发相关、图像生成领域、智能客服四大板块。而业内普遍认为,ChatGPT引领的大模型正在让AI技术从五年前的“能听会看”,走到今天的“能思考、会创作”,未来有望实现“会推理、能决策”的重大进步,其在决策智能领域有着广阔的应用潜力。

萨摩耶云科技集团在决策智能技术攻坚已取得重要原始性突破,在金融、跨境电商物流、电信领域积累了丰富的经验。“我们认为,ChatGPT可在营销、客服、风险控制、代码编写、跨境电商内容生成等业务场景中发挥重要价值。”易小华说。

重新赋能金融与跨境电商决策

营销和客服是金融领域不可缺少的两个环节,在营销环节,客户会通过广告投放,短信,外呼,app推送,资源位个性化展示、微信公众号等各种营销渠道接触到金融服务,在客户服务环节,客户也会通过App,电话,短信,微信公众号等渠道享受到客户服务。在这期间客户都会涉及到和机器人以及金融服务人员打交道,通过使用金融机构语料训练类似于ChatGPT的语言生成模型,再结合个性化推荐、用户画像,业务API等技术,可以很好的解决线上线下协同过程中的自动化断点问题,实现营销和客服过程的自动化、提升营销和客服效率以及用户体验。”

易小华表示,把传统机器学习,个性化推荐、知识图谱、决策引擎等技术和LLM模型技术融合,会进一步优化模型的智能性,改变信贷服务的人机交互体验,使得金融服务更有温度。“我们试图在营销和客服场景中建立新的人机协作模式。一方面,在营销上基于人群和标签划分进行个性化推荐,在客服上执行问题理解、对话管理、问题推荐、答案生成等机器任务。另一方面,人工方面则主要专注于话术推荐和会话摘要生成等。”

而在金融风险控制方面,利用知识图谱引擎原有的隐性集团识别、深度链扩散、子图筛选等能力基础上,类似于ChatGPT的大语言模型可扩展出更高维度、更大范围的隐性关系识别。通过对用户信用数据、历史借款记录、还款记录等数据分析,评估用户风险等级,实现对关键要素提取、资料自动化审核、风险点提示等风控领域的业务流程自动化水平的提升,向金融机构提供全方位智能风险管理服务,大幅提高风险识别能力。

当前,在跨境电商领域的应用方面,虽然ChatGPT可以直接帮助卖家生成内容,但是效果还是需要进一步改进。OpenAI提供了对GPT模型进行微调然后生成自定义GPT模型的接口能力,萨摩耶云科技集团通过调用接口,实现上传自己的训练语料对GPT模型进行微调,达到定制化模型的效果。未来,其可帮助跨境电商卖家在产品编写/优化listing、提升跨境电商平台店铺和产品排名、输出丰富优质的邮件营销内容、提供即时客户服务改善客户体验、开展智能广告投放提升转化率等层面进行降本增效。

人工智能已在多领域广泛应用,ChatGPT高超的人机交互水平、通用人工智能的特征,让世界为之惊叹。“不断进化的ChatGPT将为识别、生成和决策重新赋能,对社会经济发展可能会产生渗透性、颠覆性的作用。如何应对人工智能会是件有意思的事情,但AI的未来肯定超酷。”易小华对ChatGPT的应用前景充满期待。

有关ChatGPT“石破天惊”,下一个AI杀手级应用在哪?的更多相关文章

  1. ruby - 使用 Vim Rails,您可以创建一个新的迁移文件并一次性打开它吗? - 2

    使用带有Rails插件的vim,您可以创建一个迁移文件,然后一次性打开该文件吗?textmate也可以这样吗? 最佳答案 你可以使用rails.vim然后做类似的事情::Rgeneratemigratonadd_foo_to_bar插件将打开迁移生成的文件,这正是您想要的。我不能代表textmate。 关于ruby-使用VimRails,您可以创建一个新的迁移文件并一次性打开它吗?,我们在StackOverflow上找到一个类似的问题: https://sta

  2. ruby-on-rails - Rails - 一个 View 中的多个模型 - 2

    我需要从一个View访问多个模型。以前,我的links_controller仅用于提供以不同方式排序的链接资源。现在我想包括一个部分(我假设)显示按分数排序的顶级用户(@users=User.all.sort_by(&:score))我知道我可以将此代码插入每个链接操作并从View访问它,但这似乎不是“ruby方式”,我将需要在不久的将来访问更多模型。这可能会变得很脏,是否有针对这种情况的任何技术?注意事项:我认为我的应用程序正朝着单一格式和动态页面内容的方向发展,本质上是一个典型的网络应用程序。我知道before_filter但考虑到我希望应用程序进入的方向,这似乎很麻烦。最终从任何

  3. ruby-on-rails - 渲染另一个 Controller 的 View - 2

    我想要做的是有2个不同的Controller,client和test_client。客户端Controller已经构建,我想创建一个test_clientController,我可以使用它来玩弄客户端的UI并根据需要进行调整。我主要是想绕过我在客户端中内置的验证及其对加载数据的管理Controller的依赖。所以我希望test_clientController加载示例数据集,然后呈现客户端Controller的索引View,以便我可以调整客户端UI。就是这样。我在test_clients索引方法中试过这个:classTestClientdefindexrender:template=>

  4. ruby-on-rails - 如果 Object::try 被发送到一个 nil 对象,为什么它会起作用? - 2

    如果您尝试在Ruby中的nil对象上调用方法,则会出现NoMethodError异常并显示消息:"undefinedmethod‘...’fornil:NilClass"然而,有一个tryRails中的方法,如果它被发送到一个nil对象,它只返回nil:require'rubygems'require'active_support/all'nil.try(:nonexisting_method)#noNoMethodErrorexceptionanymore那么try如何在内部工作以防止该异常? 最佳答案 像Ruby中的所有其他对象

  5. ruby - 为什么 SecureRandom.uuid 创建一个唯一的字符串? - 2

    关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭8年前。Improvethisquestion为什么SecureRandom.uuid创建一个唯一的字符串?SecureRandom.uuid#=>"35cb4e30-54e1-49f9-b5ce-4134799eb2c0"SecureRandom.uuid方法创建的字符串从不重复?

  6. ruby-on-rails - Rails - 从另一个模型中创建一个模型的实例 - 2

    我有一个正在构建的应用程序,我需要一个模型来创建另一个模型的实例。我希望每辆车都有4个轮胎。汽车模型classCar轮胎模型classTire但是,在make_tires内部有一个错误,如果我为Tire尝试它,则没有用于创建或新建的activerecord方法。当我检查轮胎时,它没有这些方法。我该如何补救?错误是这样的:未定义的方法'create'forActiveRecord::AttributeMethods::Serialization::Tire::Module我测试了两个环境:测试和开发,它们都因相同的错误而失败。 最佳答案

  7. ruby - 用 Ruby 编写一个简单的网络服务器 - 2

    我想在Ruby中创建一个用于开发目的的极其简单的Web服务器(不,不想使用现成的解决方案)。代码如下:#!/usr/bin/rubyrequire'socket'server=TCPServer.new('127.0.0.1',8080)whileconnection=server.acceptheaders=[]length=0whileline=connection.getsheaders想法是从命令行运行这个脚本,提供另一个脚本,它将在其标准输入上获取请求,并在其标准输出上返回完整的响应。到目前为止一切顺利,但事实证明这真的很脆弱,因为它在第二个请求上中断并出现错误:/usr/b

  8. ruby - 一个 YAML 对象可以引用另一个吗? - 2

    我想让一个yaml对象引用另一个,如下所示:intro:"Hello,dearuser."registration:$introThanksforregistering!new_message:$introYouhaveanewmessage!上面的语法只是它如何工作的一个例子(这也是它在thiscpanmodule中的工作方式。)我正在使用标准的ruby​​yaml解析器。这可能吗? 最佳答案 一些yaml对象确实引用了其他对象:irb>require'yaml'#=>trueirb>str="hello"#=>"hello"ir

  9. ruby - Rails 关联 - 同一个类的多个 has_one 关系 - 2

    我的问题的一个例子是体育游戏。一场体育比赛有两支球队,一支主队和一支客队。我的事件记录模型如下:classTeam"Team"has_one:away_team,:class_name=>"Team"end我希望能够通过游戏访问一个团队,例如:Game.find(1).home_team但我收到一个单元化常量错误:Game::team。谁能告诉我我做错了什么?谢谢, 最佳答案 如果Gamehas_one:team那么Rails假设您的teams表有一个game_id列。不过,您想要的是games表有一个team_id列,在这种情况下

  10. 亚特兰蒂斯的回声(中文版): chatGPT 的杰作 - 2

    英文版英文链接关注公众号在“亚特兰蒂斯的回声”中踏上一段难忘的冒险之旅,深入未知的海洋深处。足智多谋的考古学家AriaSeaborne偶然发现了一件古代神器,揭示了一张通往失落之城亚特兰蒂斯的隐藏地图。在她神秘的导师内森·兰登教授的指导和勇敢的冒险家亚历克斯·默瑟的帮助下,阿丽亚开始了一段危险的旅程,以揭开这座传说中城市的真相。他们的冒险之旅带领他们穿越险恶的大海、神秘的岛屿和充满陷阱和谜语的致命迷宫。随着Aria潜在的魔法能力的觉醒,她被睿智勇敢的QueenNeria的幻象所指引,她让她为即将到来的挑战做好准备。三人组揭开亚特兰蒂斯令人惊叹的隐藏文明,并了解到邪恶的巫师马拉卡勋爵试图利用其古

随机推荐