请问一下 这种做人工智能的公司 是怎么做的?

在人工智能公司做销售,是怎样一种体验?在人工智能公司做销售,是怎样一种体验?KnowingAI知智百家号“会不会需要技术背景?门槛高不高?客户对人工智能了解吗?需求量大不大?竞争这么激烈,怎么搞定客户?关于人工智能公司的销售工作,实在有太多谜团。「KnowingAI知智」特别找到三家当红人工智能公司,与其销售、售前负责人进行了访谈。其中包括在银行和公安领域深耕,已经拿到四大行订单的云从科技;成立至今已 10 年,如今以绝对优势占领车载市场的思必驰;以及正在人工智能售前领域发力,9 个月完成 3 轮融资的智能一点。三家公司分属计算机视觉、语音语言交互和对话系统三大垂直技术应用方向,且分属 B 轮、C 轮、Pre-A 轮不同的融资阶段。希望他们的经历和思考能对诸位有所启示。一、抓过逃犯的技术服务部负责人我是安光照,现在在负责云从科技北区的技术服务部。从大三在中科院重庆研究院实习,到毕业后的工作,再到现在来北区,最开始到现在我一直跟着周老师(云从科技创始人周曦)。其实最开始是做研发,转成售前的契机是一方面性格上坐不住、喜欢和人打交道,又很了解公司的产品和算法。2015 年云从正式成立,第一时间就成立了北区办事处,我就过来加入北区技术服务部了。云从正式成立到现在还不到三年,并不像大公司一样把售前、售中、售后分得那么明确。特别是北区要负责北方几个大省,项目太多、发展太快、我们的研发和算法又都在上海和重庆,拉人过来成本太高。做标书、前期技术方案交流,甚至后期的实施、部署、现场对接,这些销售做不了的技术工作我们都做。后来,我们这些售前就直接改成技术服务部了。这也是人脸最早在金融业爆发的原因,不管柜台还是手机端,银行的场景大部分是 人和证件照的 1:1 比对 ,绝大部分场景都是配合式的,实现起来相对简单。公安的场景就比较复杂,刑侦破案需要对路上的行人做实时分析,和在逃人员库进行实时对比,这样的 1:N 的场景相对就比较难。虽然难,但公安场景很有趣。从用人脸发现线索、找到这个人的轨迹,再到破案抓人,是一件很有成就感的事。从开始到现在,项目的 实施周期 在变、 环境 在变、 客户的认知 也在变。最开始我们不懂银行,手里只有一套核心比对算法,要去和银行的各个部门聊架构、聊场景、聊对接。第一个银行从介入到上线,差不多花了三个月。现在一个一个项目做过来,其实大部分城商行的架构和系统大同小异,如果没有定制化需求,一般两周左右就能接入上线。像最近银行的刷脸取款这种需求,就需要针对场景定制化开发对接,五到六周也能上线。最开始做市场的时候客户很少,只要不是很离谱的需求,我们都答应。但其实在技术评估上要投入很多,或者干脆就做不了。因为做人脸比对,曾经就有客户希望比对鼻子的相似度,证明两个鼻子是同一个人的。这种识别就不再是人脸识别,不仅需要大量鼻子的数据,其他的成本、工作量都非常大。但话说回来,有了鼻子的相似度,又能对客户的工作有多大帮助?不过 客户的认知变化很快。2015 年上半年见客户时,不管银行还是公安,他们对人脸识别都没有概念,我们当时 PPT 的第一张就是「什么是人脸识别」。那时候人脸识别这个市场很小,客户们都觉得有没有人脸识别无所谓。从接触、引导到让客户慢慢接受、认同人脸识别是银行的刚需,差不多要花上半年时间。现在 60-70% 的银行都用上了人脸识别,由于 银行业同行业竞争 的特点,客户已经从最初的「有没有无所谓」变成「赶紧上线吧」。从接触、招标到中标、做完项目,已经差不多一个月就能结束,周期变得很短。随着需求量逐渐变得很大,加上媒体的关注和推动,客户对人脸识别开始变得很懂。我们再也不用去介绍什么是人脸识别,甚至有的客户比我们还懂。所以现在(做售前)也越来越难了,最开始是客户不懂我懂,现在是客户懂、我要比客户还懂才行,对我们的要求也慢慢变得更高。特别是售前需要和客户聊技术方案,有的客户甚至会问很深层次的算法,如果达不到客户预期,他们就会对公司产生质疑。这就对售前和销售的 技术背景 开始有所要求。我们当然希望能招聘做过人工智能相关工作的人员,做过语音识别、车牌识别也可以,因为大家都是相通的。不过确实不好招,人脸识别公司很火,大家不会轻易跳槽,公司要保护核心团队,挖人也很不容易。从头培养自己的销售人员后期可以做,但现在需求量这么大,从头培养很不现实。今天入职的同事,第二天就要去见客户,如果是没有背景或者经验或者应届毕业生,肯定都做不了。但不是说培训不重要,而是非常重要。算法在迭代,产品也在迭代。如果没有系统培训,入职两个月后对产品的了解还停留在入职时,就跟不上公司的发展。短培训每周一次,大培训一个月左右一次,产品迭代版本多的时候甚至要半个月一次。有时候总部也会派人在全国的各个办事处,巡回来做培训。因为本地化运营策略,我们在全国各省都有办事处或办公室。响应速度快加上承诺人员驻场,无论客户有什么问题都能马上见到人解决,这就非常踏实。对于客户来说, 算法是虚的,实在的是服务和后期的实施运维 。像农行总行,上线交付完毕依然有两个人驻场,随时运维保障。不管银行还是公安,当地有人的话响应速度、客户关系,都会好一些。像银行圈子其实不大,这么多案例下来,云从已经有了上线快、支持力度好的评价,口口相传大家都相信,这就是口碑。在过去工作中印象最深的经历……应该是去年的一个公安项目。当时 A 市市局项目金额比较大,全国二十多家人脸识别的厂商都来竞争。市局让每个厂商选一个区做动态布控(抓在逃犯人),谁的算法抓得到人,就用谁的方案。当时我和销售两个人扛着服务器跑到 A 市的 X 区,但这个区和当地友商关系比较好,就用各种理由拒绝我们。没办法,我们俩就在公安局门口硬等,公安局抗不过,就让我们去位置很偏、刚刚成立的 Y 区。我们再扛着服务器过去,求人家让我们做试点,终于把系统装了上去。从 7 月到 10 月,我就一直在 A 市守着,盯人、协调、能干的什么都干。终于有一天系统报出了第一个结果。系统显示 80% 的相似度我心里也没底,但总感觉应该是一个人。公安问怎么办,这人抓不抓?我说抓!跟着就上了警车。没穿警服、也不敢上去按人,但记得系统上的显示的名字,我就喊「某某某!」他一下回了头,身后的警察马上冲上去抓人。这是第一件事儿,后来我们又破了一个案子,公安觉得确实有帮助。市局觉得我们不错,就以我们的系统为核心搭建了自己的平台。现在想想 7 月里扛着服务器大汗淋漓还被拒绝,真的很尴尬。但从没有商务关系,到用技术去征服、让客户认可人脸识别算法,一路走来很辛酸、也很有成就感。现在我也会和技术服务部的同事们说,客户现在都很懂技术,不管价格高低,一定要能帮客户解决问题。我们有技术、客户有场景,能协助客户做事情,自然而然就会被信任。二、从语音识别研发工程师,到负责产品业务的副总裁我是雷雄国,在思必驰任副总裁,负责智能硬件物联网场景下的方案销售和产品工作。和计算机视觉公司不太一样,因为签单后需要做长期的、包括版本更新、新技术实时集成等工作,所以智能语音技术公司的 销售周期比较长,售前、售后工作也比较多 。作为技术型人工智能公司,我们的销售、售前需要根据客户的多样化需求来提供个性化的解决方案,售后也需要根据客户不同的软硬件环境及实际应用场景来解决实际遇到的技术问题,这就要求我们的销售、售前和售后团队对 语音技术的基本原理 、 应用场景 都要有比较深入的理解和认知除此之外,客户关系维护和 客户新需求的挖掘 也是我们团队的核心工作任务。人工智能技术的产品化目前处在爆发前期,客户很多时候需要全方位的服务和支持,这就需要我们的销售、产品、项目和技术团队会出于不同的层面去维护客户关系。不仅可以大大加速客户产品的落地,还可以对产品的情况进行回访、沟通,甚至寻找新的产品需求,进行二次销售。重视客户关系维护的另一个重要原因,是目前语音行业的客户争夺比较激烈。现在的语音行业做的还是外包式的项目服务,厂商也比较多。大家都在提供定制解决方案或 SDK,技术定制化、客户的产品需求和体验版本升级的速度并不吻合。不管做任何客户的定制的解决方案,耗费的时间精力都是一样的,所以行业大部分公司都对大客户趋之若鹜,对中小客户支持有限今年我们发布了全链路的语音平台 DUI,目标就是把这种定制规模化。从识别、合成到理解,从孤立的技术点到完整的解决方案,语音交互功能的集成和开发过程相对较长。通过让客户自己来完成对话逻辑、热词等部分,定制方案就变得更加便捷。DUI 开放后,有一些我们没想到的客户和需求出现了。比如智能客服的需求量就特别大,还有医疗方向的 智能门诊 、 微信助手 、 APP 助手等等。我们服务客户的数量、场景、质量都得到了大幅的提升。虽然现在在开放 DUI 满足更多的用户,但在 2015 年以前人工智能没那么火的时候,客户都需要我们主动去找。那时的客户常常把语音想得很万能,也不理解什么是场景化。要么把技术看得很了不起,觉得什么都能做。有些客户会问声纹识别能不能识别我是谁?连用户数据都没有,怎么做识别?而且声纹技术的不可控因素太大,情绪、身体状况都会影响识别效果。要么就是把技术想的很简单。语音交互是一个很长的链条,有的客户说是只要识别,但其实他想要的还有从识别、合成到理解的一系列交互。还有一个问题是传统客户、移动互联网客户不知道语音和人工智能技术能带来什么,以及怎么与产品结合。反映出的问题是AI 产品经理的匮乏—— 既懂人工智能技术、又懂产品体验的人太少像现在很火的智能音箱就不是自身的火热,是智能助理、社会终端的火热。它其实是一个以音箱外形呈现的,物联网家居的中心入口。语音是 人机交互的手段 ,不是功能。它可以与社交、电商、医疗、教育结合,凡是需要与机器进行互动操作的都可以嵌入。做语音项目实现的周期不稳定,很大原因是受客户方案和想法的成熟度,以及技术和客户的配合程度影响。作为一线团队的销售团队,不仅要面对产品需求和客户,也是公司的脸面,我们会要求团队达到一定程度的对行业的认知和对技术的认知。招聘合适的销售的确难,不过我们现在招聘销售有一个好处是车载、家居都有传统行业的影子。并不一定要求销售懂 AI 行业,如果是做家居、了解家居行业也是可以的不管是销售还是技术支持,培训必不可少。不仅有周期性的正式培训,不同的部门也会通过周例会、月度例会、晨会来做提升。还有「案发现场」的回溯,我们的每个客户状况都会在内部以文字的形式记录呈现,共同讨论学习。除此之外,还有研发同事做技术层面的相关培训。NCMMSC2017 学术会议刚结束,实验室的同学就通过视频会议的方式进行了分享,感兴趣的同事都可以参与。在负责销售和产品之前,我的职位是语音技术高级研发工程师。2015 年思必驰转型面向 2B 市场,决定向移动互联网和智能硬件渗透,需要有人去开辟市场。当时确定了车载、家居、机器人三大方向,深圳作为中国硬件方案商的聚集地,是第一批客户、最核心的客户的所在地。我对技术了解比较深,也愿意去开辟这个市场,就一个人去深圳着手建立产品和销售团队。印象最深的、最难的,还是最开始的部分,从技术型变成产品业务型,这个过程比较痛苦。现在看来,其中一个非常重要的心得,是一定要站在 客户和体验 的角度去应用技术完成产品,而不仅仅是只从技术角度去思考问题。最开始见客户时如果有两种方法达成需求,技术型人往往会选择纯粹的技术型方法,但其实是可以通过产品体验和产品自身巧妙解决,而非只有技术型方法。出于对客户的尊重,没办法拿出具体的例子。但曾经有一次做快捷唤醒需求时,客户希望在各种场景下都能达到免唤醒词的效果,比如在车载环境下实现「(导航)高速优先,(音乐)下一首歌」的需求。从产品的角度,这的确能大幅提升用户的体验;但从技术的角度看,引入大量的唤醒词会造成系统的额外开销,还会增大误唤醒概率。后来,我们决定在高频指令上使用唤醒词方案。为了降低误唤醒率,还引入了 One Shot 「一语即达」功能,以更偏向产品的方式实现了客户的需求。三、正在改变售前行业的「AI 应用顾问」我是国鹏飞,在智能一点担任大客户经理,或者说「AI 应用顾问」。将销售称为「AI 应用顾问」,是因为我们不像传统公司以销售产品为主,而是通过不断了解用户痛点、提供帮助,来帮用户解决问题。在「AI 应用顾问」之外,还有一个岗位是客户经理(Account Manager)。「AI 应用顾问」负责前期接触客户,客户经理则负责偏技术性的工作,两者之间有紧密的分工协作。我们现在主要的服务对象是电商,特别是母婴行业电商的售前导购。很多客户对自己的问题很清楚,但对行业共有的问题不是特别了解。「AI 应用顾问」要了解各家的情况,对行业普遍存在的问题做深度的调研和分析,再根据客户不同的状况提供建议性解决方案。人员分配、 数据分析 、 用户画像 及 生命周期管理 等等,都是电商的常见问题。电商发展到今天,流量的红利基本消失殆尽。商家想要持续增长,必须对用户进行精细化管理,通过精准的个性化服务提高回购率,也就是深挖用户消费行为的长尾部分。通过数据和模型了解到的一些现象,我们自己都很吃惊。比如从凌晨到早上 9 点这段时间有 10-15% 的客户咨询量,这部分往往没人处理,因为客服一般是早上 9 点上班,晚上 12 点下班。当我们把这个数据拿给客户看时,他们也傻眼了。流量红利消失殆尽的今天,就算 5% 对电商来说都是一个不小的数目。而且半夜前来咨询的客户,往往购买意向极强。对于这种情况,解决方案一般有两种,一种是让客服提前到 6:30 上班——6:30 上班一方面不现实,一方面也会增加用人成本。另一种就是用机器人自动顶上。智点交互推荐系统是目前我们主推的产品。这个系统通过人机多轮交互,推理理解用户意图再做精准、有效的推荐,也可以简单的理解为「更好用的机器人」。目前市面上的机器人系统采用「QA 机器人+检索」的技术实现方式,这种方式的特点就是单轮对话、被动问答,只能解决消费者的一部分问题,大量问题还是需要客服引导。了解消费者的意图、再基于此将商品推荐给消费者,对电商意义更大,因为赚钱永远比省钱更重要。我们比较巧妙的是,一方面通过技术 从过往数据中找到比较好的应答方式 ;一方面我们还加入了 由人参与设计的主动引导等机制,这样机器人就不再像关键词回复那样生硬机械。消费者的特点是只要能跟人聊,就不会和机器聊。我们要做的就是缩小这种差距,即使是在跟一个机器人聊也不感到违和。但并不是说用机器人解决一切问题,我们 希望机器人可以更好的与人协作 ,比如通过数据找出哪些地方薄弱、哪些人做得更好。做得更好的金牌客服,其行为不仅可以成为机器人的训练数据,还可以作为其他客服学习的榜样,帮助完成客服培训。目前我们的策略是深耕母婴垂直行业。一是因为母婴人群多、购买力强、交互需求强,数据敏感和复杂度高。除了对话系统和推荐系统, 知识图谱 也是我们在这个行业构建的门槛之一。行业知识图谱不仅需要技术支持,还需要业务经验和时间积累才能梳理完成。在母婴行业应用、打磨好我们的产品后,其模式和流程也能在金融、医疗领域更好应用。客服行业最初只有 IM(即时通讯)交互,后来为了让 IM 交互更方便,客服行业引入了流程化,包括工单、CRM 库(客户管理系统)、CallCenter 集成等等,但更多的还是要靠人工完成。数据的处理方式也很原始,往往只能把互动记录整理成表格来分析,不仅不直观,还丢掉了很多数据维度。相较来说,我们这种智能客服系统不仅可以帮助电商降低人员成本,还能帮助进行前期培训,合理安排客服人员,减少不必要的人力投入。和视觉或者语音可能要看技术指标不同,电商的评判标准很简单,就是使用后能不能承接更多客户、留住他们并转化现阶段的智能客服行业竞争还没有这么激烈,更多的是和人去比。我们公司虽然是技术背景,但有比较强的服务意识,更注重能不能帮助客户解决问题。要么帮客户赚钱,要么帮客户省钱,才会获得更多依赖。尽管是新兴 AI 公司,我们的理念可能不太一样。所以直接面对客户的销售对我们来说非常重要。招聘时我们会考虑三个因素:专业技能,沟通能力等软实力,以及价值观。说起来很虚,但价值观会在关键时刻会产生比较大的影响。这些条件叠加后合适的人就更少了。我们可能更倾向于少而精的队伍,内部也会有定期的专门培训。说了这么多其实判断标准其实很简单,就是 客户满不满意我之前在 Iaas、Saas、Pass 方向都做过,来这儿是因为的确看到了能颠覆行业的技术变化。刚过来时去出差,才了解到智能导购机器人需求这么大,过去做传统多媒体客服中心的时根本没意识到。特别是淘系电商的人员、活动变动非常大,甚至以 15 分钟为单位改变,客服自己常常都很迷茫。就市场环境看,我们的产品的确是能解决问题的。这些年的工作心得,是销售没有特殊技巧, 勤劳是最特殊的技巧。销售是客户定位、KP 寻找、商务沟通、商务谈判、项目落地的漏斗过程,每一步都不可缺少。如果能踏踏实实的走下来,结果必然是可以期待的。四、我们观察到的一些特点以上就是三位来自不同领域人工智能公司销售、售前负责人的经历与感受。除此之外,在访谈中我们还发现人工智能公司销售、售前工作的如下特点:1、组织模式上人工智能公司很少将售前、售中、售后做清晰分割,往往选择「销售+技术支持团队」模式由销售对客户进行初次接触和沟通,技术支持团队负责在客户和技术团队之间的技术沟通,甚至包括方案落地等相关工作。销售、技术支持人员占公司人员比例为20%左右。2、业务模式上B 轮及 B 轮前的人工智能公司往往选择垂直行业做切入和深耕因此销售、技术支持工作也相对聚焦,需要对垂直行业的长时间观察和接触,积累客户资源,并用经验服务客户。3、人员要求上由于人工智能行业的火热,销售、技术支持人员需求激增。需要一定的人工智能行业或被结合的行业背景,以便迅速展开工作,因此适合的人选并不多。且销售产品多为非标准、需要适配、定制的技术型产品,销售人员需要一定的 技术储备 ,技术支持团队需要一定的 落地能力4、成长方式上由于产品、算法迭代速度高,人工智能公司往往会提供定期培训, 频率相对密集,需要销售、技术支持人员有较强的适应、学习能力。5、分工定位上「对技术公司而言,技术能力是核心;第二是工程化落地能力,将技术转化为产品;第三是技术服务能力,即销售、售前、售中、售后对客户的支持。」技术、工程化、销售能力,三者缺一不可。也许是服务于售前领域,智能一点对于人工智能公司的销售工作有很多思考。访谈中智能一点 CEO 胡云华的一段话令人深有感触,故作为本文结尾。「虽然现在是 AI 的时代,最后还是要落到能带来什么改变。只有专业的人关心,普通的人感受不到它的好,就没有价值。销售肩负着这个伟大的的使命,既要懂技术、又要传递价值、还要服务好客户、把痛点和需求带回来,在 AI 创业公司中非常重要。要相信靠团队才能得到比较好的结果,不是只靠技术就能解决问题。过去不是,现在不是,我想未来也不会是。」本文仅代表作者观点,不代表百度立场。系作者授权百家号发表,未经许可不得转载。KnowingAI知智百家号最近更新:简介:更懂人工智能行业的知识传播者。作者最新文章相关文章请问一下人工智能中的 apprenticeship learning algorithm是什么算法? 请具体介绍一下,谢谢~_百度知道
请问一下人工智能中的 apprenticeship learning algorithm是什么算法? 请具体介绍一下,谢谢~
请介绍一下 apprenticeship learning algorithm的正确中文翻译,以及具体的算法思想。
请问一下具体是什么样的算法思想。
我有更好的答案
学徒学习算法
学徒学习(apprenticeship learning),又称为示教学习( imitation learning)、模仿学习( imitation learning)或者观察学习( learning bywatching)等.它是指学习者模仿专家的行为或者控制策略的过程.
采纳率:31%
为您推荐:
其他类似问题
人工智能的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。登录以解锁更多InfoQ新功能
获取更新并接收通知
给您喜爱的内容点赞
关注您喜爱的编辑与同行
966,690 三月 独立访问用户
语言 & 开发
架构 & 设计
文化 & 方法
您目前处于:
人工智能与软件架构
人工智能与软件架构
0&他的粉丝
日. 估计阅读时间:
,人工智能、区块链、大数据、架构等领域海内外先驱实践!
亲爱的读者:我们最近添加了一些个人消息定制功能,您只需选择感兴趣的技术主题,即可获取重要资讯的。
相关厂商内容
相关赞助商
人工智能(Artificial Intelligence)是一个大的概念,是让机器像人一样思考甚至超越人类;
机器学习(Mechine Learning)是实现人工智能的一种方法,机器学习最基本的做法,是使用算法来解析数据、从中学习,然后对真实世界中的事件做出决策和预测;
深度学习(Deep learning)又是机器学习的一种实现方式,他是模拟人神经网络的方式,用更多的层数,更多的神经元,然后给系统输入海量的数据,来训练网络;
统计学是机器学习和神经网络的一种基础知识,从传统分工来看,统计学一般是数学、统计等专业研究的方向,而机器学习是计算机科学的研究方向,但是目前大家的研究成果越来越殊途同归,有统计学的大师就认为统计实际上一直在从事机器学习的工作。
对于深度学习、统计的专家来说,他们更加关注于模型、算法等等,找到可以普适性解决问题的办法。而对于我们应用来说,具体的算法实现不需要我们考虑太多,而是找到适合的场景、合适的模型、匹配的算法,所以应用人工智能实际上是一个计算机、统计、知识工程、行业知识的一个交叉应用。在经常涉及到的应用中,我一般在处理结构化、半结构化数据时优先考虑传统统计学的方法,例如分类、数据相关性、回归等,而处理非结构化数据时(例如图像、视频、文本)优先考虑深度学习的方法,但这些方法也需要有统计学知识。所以,需要补课:线性代数、数理统计、Python,我觉得《机器学习实战》这书入门不错,上述几方面知识都介绍了。
应用人工智能实现增强智能的三个层面
应用人工智能的时候,人们会有一个误区,总是希望得到一个意想不到的结果,也就是希望探索出新知识。经常有人问我,得到的结果好像没有什么我不知道的,我说这就对了,因为你是专家,要是计算机得到的结果都是不可知的,你怎么能相信他?例如AlphaGo下的棋,绝大多数都是人类已知的,非常少非常少的情况下,下出一招另类,这已经是一个顶天星的水平了。很多人失望了,这还有啥意思,其实意义很大:
(1)计算机可以让常人快速获得以往专家才能具备的知识
例如有经验的客户经理,肯定非常了解客户的情况,谁是优质客户,谁需要什么产品等等,不需要计算机。但是通过用户画像等人工智能的手段,计算机可以让经验不够丰富的人,也具备了上述经验,这个做法价值就非常高,毕竟专家是少的;
(2)帮助专家减少重复性的工作
例如医生在做病理检测时,绝大多数没有生病的情况和有典型病理特征的情况,机器都可以提醒医生,节约医生的宝贵时间。如此看来,我们就会理解,人工智能不是替代人,而是给人类增加一个智能的助手,是增强智能(IA Intelligence Augmentation)。
计算机作为一个智能助手,可以在不同层面和手段帮助我们,我把他分为机械智能、实现意图的智能和创造意图的智能三个方面:
(1)机械智能
我们目前从事的主要工作都是这个,事先设定规则(代码也是规则),让计算机完成大量重复计算,充分利用计算机的计算能力,替代人的手工劳动,这是一个以规则为核心的模式,而这些规则来自于人现有的知识;
(2)实现意图智能
人知道最终结果是什么,但是并不告诉计算机采用什么样的规则计算,通过大量数据训练计算机找到规则,然后再让计算机完成大量重复计算,计算机究竟找到的规则是什么,有可能人并不一定能理解,其实往往也不需要理解,把计算机当成了黑盒;
(3)创造意图智能
也就是让计算机自己找到人并不知道的新知识,这也是我们最向往的场景。
从具体的实现层面看,第一种情况无疑是最多的,我们需要提炼总结规则,用好第一种情况很重要;第二种情况以前相对少一些,但恰恰是目前需要改进的,在第二种情况下我们往往优先用统计学的方法处理结构化、半结构化数据(例如格式化日志),用深度学习的方法处理非结构化数据,这就需要让我们的团队具备人工智能的思维。
实践人工智能应用需要新思维,不能再用规则理解计算机实现智能的方式
实践人工智能,需要在在思维上进行调整。我们往往习惯于用制定规则的方式指挥计算机,输入计算规则和输出结果都是已知的,也就是我上面说的机械智能方式。但后两种模式就不是规则方式了,因为规则是计算机找到的,这也就是经常说的数据训练。
这里我举一个我们自己实现的例子,让大家理解一下什么是模型、算法和数据训练。
先说一个背景,我们在梳理现有企业数据架构的时候,需要建立数据间的关联,用人进行梳理费工费力,我们就打算用计算机自动完成一部分,然后人工修正,这就是一个增强智能(IA)的例子。这里面就有一个情况,如果数据库中没有建立外键,如何把这种实际的外键关系找出来,我们就用这个例子解释一下机械智能和实现意图智能的方法:
(1)用规则的方式查找外键关系
首先要定义规则,外键关联的规则包括字段类型一致、长度一致、包含相同数据等等,然后在所有数据中遍历,进行匹配。这种方式需要有完整的数据,而且是否为外键关系的判断规则往往有些模糊,在没有得到全量数据时有一定局限性;
(2)用统计学方法查找外键关系
首先,我们定义出字段的特征(类似用户画像),字段特征是一个向量,就是一个一维数组,包括表名、字段名、字段类型、注释、样例数据最大长度、样例数据最小长度等等,由于表名、字段名不是数值,我们要把他们变成数值,可以和同一个标准字符串作比较,也就是通过移位的方式把字符串移动成标准字符串,移动次数越少,相似度就越高,这样就得到了一个真正的一维数组(向量)了。
其次,我们拿出一部分已知关系的表和字段,作为训练样本,逐一计算两个字段之间的相关系数(相关系数的计算方法是现成的,我这里就不介绍了,一上公式我就晕,Python的发行版Anaconda里面就有,用了这个就体会到 Python 是最好的语言了),相关系数高的说明特征类似,认定为外键关系。这时候人工判断一下,如果结果不错,那这个模型就是正确的,如果结果不好就换一种相关系数计算方法,或者改变数据特征,或者对数据特征进行加工,总之,外键特征作为一个客观存在,一定能够找到符合的特征,这就是数据训练。通过数据训练,找到合适的字段特征(模型)和计算方法(算法),也可以交给计算机做处理了,把所有的外键找出来。
你看,这里没有定义规则,处理方法是通过数据训练的方式,让计算机自己找出来的,我不需要知道相关系数这玩意到底是什么意思,这就是上面说的,计算机是一个黑盒。
需要说明的事,在上述例子中,我简化了不少动作,实际上最开始还找出来很多不是外键关系的字段,例如 createTime,我们还要把这种噪音字段的特征训练出来,剔除噪音。
这个示例说明了应用人工智能时不同的两种思维模式,简单的说不能再用创造规则的方式指挥计算机,而是训练计算机自己找出规律。
上面我们分析了人工智能相应的基本概念,人工智能的几种模式以及应用人工智能时需要的思维突破,下面我们从软件架构发展和面临的挑战,看看应用人工智能时的切入点在哪里,哪里更容易爆发出人工智能的火花。
应对软件架构分而治之带来集成的挑战,探索智能的连接
什么是软件架构,在InfoQ出版的《聊聊架构》中讲的很清楚(感谢老王,总结非常到位),软件架构就是
(1)根据问题确定系统边界;
(2)按一定原则进行切分;
(3)建立不同模块间的沟通机制;
(4)整体性交付软件功能。
可见,架构的关键是分而治之的哲学,但切分是为了软件研发、运维方便,软件的目标是整体交付,分与合存在这矛盾,这一矛盾是由集成解决的,但是集成往往是复杂的,大家在架构方面的分享,也以如何切分居多,如何集成相对较少。
集成工作的复杂度影响了复杂度系统的研发
Unix的实践无疑对软件架构有着巨大的影响,做一个事情,做到最好,一直是 Unix 风格所倡导的,但&在理想世界中,Unix程序员只愿意手工打造小巧完美的软件宝石,每个都那么小巧、那么优雅、那么完美。然而显示中很不幸的是,太多复杂问题需要复杂的解决方案。仅仅十行的程序,再优雅也无法控制喷气式客机。那儿有太多的装备、太多的通路和界面,太多不同的处理机,太多不同操作人员定义的子系统,他们甚至连基本的约定都无法统一。即使能够成功地将航空系统所有的个体软件部分做的优雅,但拼装结果很可能是一堆庞大、复杂、糟糕的代码&&&喷气客机的复杂是必然的。
过去有个尖锐的观点,不能为简单性而牺牲功能,因为飞机必须要能飞。正是这个事实,航空控制系统并不会产生关于复杂度的圣战----Unix程序员往往敬而远之(摘自《Unix编程艺术》)。
不幸的是,我们面临的往往是复杂性的系统,片面理解Unix风格分而治之往往带来更大的集成难度。为了降低集成的难度,我们往往采用巨石型的系统架构,用一个大一统的方式设计系统,仅仅在系统内部进行模块的拆分,用codebase和规范进行约束,走上了和Unix风格背道而驰的道路。当性能和可维护性压力到来后,这样的系统又不得不进行拆分:我过去常常看到,当软件系统达到 100 万行代码规模时,人们会觉得维护困难,产生了强烈的拆分念头;当达到 300 万行代码规模时,人们往往再也按耐不住拆分的欲望;当达到 500 万行代码规模时,再保守的组织也会作出拆分的决定。
软件架构中复杂的集成工作需要利用人工智能方式简化下来
回顾一下解决集成问题的历史,我们会发现较早的集成架构模式来自于 Unix,就是众说周知的管道(Pipe)模式。Pipe模式将数据传递到一个任务序列中,管道扮演者流水线的角色,数据在这里被处理然后传递到下一个步骤。
管道模式作为一种最基本的方式,理论上可以解决所有集成问题,但涉及到具体问题时,就需要针对不同情况做应对,针对各种复杂的情况,可以总结出更多的模式,《企业集成模式》(EIP)一书中围绕消息集成,总结出若干集成模式,可谓是消息集成的集大成式总结。但EIP的集成模式主要针对系统间后台服务的集成,SOA架构提出了以Portal(前端集成)、BPM(流程集成)、ESB(服务集成)、DI(数据集成)以及事件/消息集成的多层面集成体系,更加系统性的为集成工作提供指导。SOA的集成方式需要一系列的集成基础设施支持,属于一种中心化的集成方式,我们可以称之为MiddleBox的方式,在微服务架构提出后,我们会采用把集成逻辑与业务功能部署在一起的去中心化集成方式,可以称之为MiddlePipe的模式。
集成方式一路演进下来,主要是集成的手段上不断翻新,多种框架和基础设施越来越多的解决了非功能需求,例如 ESB 可以解决路由、安全、流控等问题,一定程度上减少了集成的工作量。但集成的业务复杂度还存在很多,这里我列举几个常见的问题:
(1)数据的查找问题
针对业务需求,需要使用已存在的数据和服务,但在企业环境中,系统、服务、数据众多(想象一下具有10多万服务、10多万数据标准的情况),想找到试用的服务和数据,不是一件容易的事情,一般我们都要依赖专家在这方面的知识,通过总体设计指定了数据的流向,这依赖于专家的能力,专家的能力也是慢慢积累起来的。我们需要帮助业务更快速的找到数据和服务,帮助专家快速实现积累,减少重复劳动。
(2)数据的适配问题
通过服务方式进行集成,原子服务往往需要大量的输入参数。举个例子,调用一个发短信的接口,不仅仅是收信人电话号码和短信内容,还要包括很多业务含义的参数,例如发信人的姓名、组织、发信的系统、发信的原因、发信时和客户接触的渠道(客服渠道、网点渠道、网银渠道、自助终端等等)、发信时关联的产品,这些信息是可以用来计算成本、控制次数、避免重复骚扰客户;用户名、密码、验证码、发送时间等这是用作安全验证的;优先级、发送渠道等是用来做流量控制的;流水号、全局业务ID、请求ID、请求时间等等是用来做监控的。上述信息来自与每次发短信的上下文,在实际开发期间就要做很多的赋值、转换工作,将上下文的信息传递给服务,这种转换就像下图那样,典型的面多了加水,水多了加面。我们需要根据当前上下文和服务的特征,自动的进行一些适配,避免人工的重复性劳动。
(点击放大图像)
(3)系统的联动问题
当一个业务事件产生时,有很多相关联的系统都会需要作出关联性反映,例如一个航班延误,就会涉及机票的改签、酒店的改期、接车服务的改期、会议安排的变更、日程计划的变更。一般我们会设计一个事件中心,为各个系统开发出监听的程序,当事件到来时判断上下文信息,决定产生的动作。如果事先没有设定的规则,就无法产生联动,我们期待更加自动化的建立这种联动关系,让计算机智能的产生动作而不仅仅通过人为设置。
类似问题还有很多,我们期待能够更加智能的集成。
需要集成的部分不只是软件本身,软件过程也是一个复杂的集成/协作工作
分而治之的软件需要通过集成方式整体交付,软件的生产过程也是一个多人、多组织协作的过程,也需要集成。把软件看成是一个产品,产品就有策划、研发、运营和退出各个阶段,每个阶段可能由不同的人或组织完成。软件的研发阶段就是一个一个项目的实施过程,包括立项、执行和完工。这样的过程组织起来,就是一条软件生产的流水线。从早期瀑布式的软件研发,到后来敏捷研发过程、CMM,到目前风头正劲的DevOps,都是在解决软件生产流水线不同阶段的协作问题,敏捷针对软件定义、设计、构建(开发)阶段的协作,持续集成是构建(开发)与测试阶段的协作,持续交付是从定义阶段到部署(交付)阶段的协作。
(点击放大图像)
协作中面临的问题,就是集成的问题,我们可以想到很多,这里也举几个例子:
(1)需求、设计与构建(开发)的沟通问题:我们需要把需求/设计的知识图谱化、条目化,自动与开发工作做一定程度的适配,减少需求/设计到代码的转换工作;
(2)构建(开发)与测试的沟通问题:我们需要根据服务和数据特性以及积累的历史数据,自动产生测试用例和测试方法;
(3)运营的沟通问题:我们需要通过应用画像、资源画像等方式,服务与物理资源之间建立连接,快速定位问题,进行容量预测,实现更智能的运维。
在软件架构中应用人工智能的目标:通过增强智能方式实现软件系统与软件工程的智能连接
应对复杂集成的挑战,我们可以引入人工智能的思路,将人与软件之间、物体与软件之间、软件与软件之间、软件生产线各环节之间通过知识使能的方式集成起来,在传统完全依赖规则进行集成的方式基础上,采用新的集成方法:以上下文信息为输入,利用专家已有的知识,通过数据训练和强化学习的方式,让计算机能够理解集成的意图,成为我们的智能助手,帮助我们实现智能的连接,进而可以让计算机探索新的连接知识。这里,我把连接也分为三个层面:机械连接、基于知识连接、创造知识连接。
从智能连接入手探索在软件架构中应用人工智能
从何处入手,探索人工智能在软件中的应用,是大家最关注的话题,这里我把普元在探索人工智能初期经历的几个案例,给大家做一个介绍。普元董事长刘亚东博士早年就从事神经网络的研究,他指出在目前并行计算等技术充分发展的今天,算法已经不是人工智能的瓶颈,应用人工智能需要有两个突破:
(1)找到人工智能应用的切入点
(2)团队具备人工智能应用的思维
所以我们在应用人工智能的时候,不是成立一个专门的小组做研究,而是百花齐放的方式。了解普元的朋友会知道,普元的研发分为云计算&SOA、大数据、移动、工程效率与技术平台、产品支持中心几个团队,我们让每个团队从数据+连接方向上入手,各自探索人工智能在领域上的应用场景,通过找到切入点和初步实践,逐步建立团队的人工智能思维。其中云计算&SOA团队的方向是通过服务画像方式解决微服务的智能运维与智能匹配,大数据团队的方向是通过知识图谱实现数据自服务,移动团队的方向是UI的智能化开发,工程效率与技术平台团队的方向是深度学习在流程与智能制造的应用。由于篇幅有限,这里我只把普元大数据团队和移动团队所做的工作做一个介绍。
案例一:基于知识图谱,实现数据的自服务能力
先简单介绍一下背景:大家经常会听到有人问我们有哪些数据,这些数据在哪里,如何获取数据的问题,能否建立一个平台,让我们象百度搜索一样,根据我们的知识(业务术语)找到相关的数据,提交申请,得到数据,这就是一个获取数据的自助服务。
以往数据在哪里往往通过人工梳理完成,我们希望能够自动化一些,为专家提供一个智能的助手,这里的工作分为三部分:
(1)建立知识图谱
人进行数据搜索是通过业务术语(知识)来搜索的,而知识之间是有相互联系的,例如水果和西红柿是上下位关系(后者是前者的具体体现),搜索是除了要列出直接结果,还需要显示一些关联的知识,这就要建立知识图谱。简单说知识图谱就是概念、属性以及概念之间的关联关系, 这个关系可以手工建立,我们通过对政策、法规、需求、数据库comments、界面等多种来源,采用自然语言处理等方法,可以建立起部分的知识图谱,辅助专家的工作;
(2)梳理技术元数据
整理各个系统内部数据,以及数据之间的关系,形成数据地图。这里的难度是数据之间的关系,例如数据的血缘关系、影响度关系、关联关系、主数据关系等,这里我们采用字段特征的相关性、数据处理逻辑的词法/语法分析等手段,配合强化学习来完成,前面列举的查找外键示例,就是一部分;
(3)建立知识图谱与技术元数据之间的关系
这里就要通过分析界面/服务与代码之间的关联,建立起映射关系。最终效果就是,使用数据搜索,录入希望查找的业务术语,得到相关结果,查看样例数据,如果是需要的数据,提交使用申请,如果不是,继续根据相关知识进行数据探索。提供数据自服务能力,就是在应用的设计师、数据科学家或者业务分析师与数据之间建立起连接,我们的团队就是从连接的思路出发,找到了人工智能的切入点。
实际上,数据自服务包含有找、获、用等众多环节,我这里说的是找的环节如何实现,这种找的方法,也不可能100%准确,还需要专家进行调整,以及通过强化学习等手段不断修正,可以看出,应用人工智能也是一个渐进完善的过程。
案例二:通过深度学习,实现移动UI的智能化开发
移动UI的智能化开发,是我们移动团队应用人工智能的第一个尝试,现在看来,就是在UI设计师与开发工程师之间建立连接。大家会发现,设计师的设计在变成代码实现时总会有偏差,即使一个像素的差异,也会影响界面的效果,以往我们采取不同业务模板的方式,建立一些规范对设计和开发做约束,后来移动团队觉得,可以用深度学习的方式做一些尝试,寻找不同的界面设计效果,首先通过数据标签方式确定页面的风格,再通过图像片段的方式学习和识别设计稿中的组件,最终经过多次的处理,变成一个树状的结构,把这个树状结构与代码进行映射,就产生了和设计图一致的代码。
这个案例中,基于图片的神经网络学习是一个关键技术,但是如果单纯使用这个技术,计算量会无法承受,所以我们将处理过程分成了几个阶段,每个阶段进行分类,每个阶段都可以配合强化学习的方式,由人工指定策略,指导计算机的学习,提高了工程化的能力(类似做法在深蓝对阵卡斯帕罗夫的时候就有应用,有一位特级大师会指导深蓝当前的策略,例如进攻还是防守,具体招数由深蓝决定)。
上述两个案例中,我们首先在各个领域中找到可能的切入点,针对不同场景使用了不同的方案,并不是都采用了深度学习/神经网络的方法。我们没有首先从Tensorflow等框架学起,而是在结构化、半结构化优先使用统计方法,非结构化数据再使用深度学习,而是用业务驱动的方式逐步推进,有效的避免了&深度泛滥&。
未来的软件必将是人工智能的软件,但人工智能是通过技术手段实现智能增强,帮助普通人迅速具备部分专家的技能,帮助专家减少重复性的劳动,探索新的知识,而不是取代人。应用人工智能,应该在数据+连接的模式下,从智能集成入手,探索人工智能在软件中的应用。而这种探索,既包括传统利用规则实现的机械智能,也包括利用统计学和深度学习方法支撑的实现意图智能,还有创造意图/寻找新知识的探索,而统计学方法往往用在结构化数据和半结构化的数据中,深度学习往往要利用非结构化数据。
总之,人工智能是计算机科学、统计学、知识工程、领域知识的一个交叉学科,不能仅仅站在某个角度去理解和尝试,正所谓&君子不器&。
Author Contacted
语言 & 开发
311 他的粉丝
架构 & 设计
760 他的粉丝
3 他的粉丝
46 他的粉丝
2 他的粉丝
0 他的粉丝
22 他的粉丝
告诉我们您的想法
允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p
当有人回复此评论时请E-mail通知我
允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p
当有人回复此评论时请E-mail通知我
允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p
当有人回复此评论时请E-mail通知我
赞助商链接
InfoQ每周精要
订阅InfoQ每周精要,加入拥有25万多名资深开发者的庞大技术社区。
架构 & 设计
文化 & 方法
InfoQ.com及所有内容,版权所有 ©
C4Media Inc. InfoQ.com 服务器由 提供, 我们最信赖的ISP伙伴。
极客邦控股(北京)有限公司
找回密码....
InfoQ账号使用的E-mail
关注你最喜爱的话题和作者
快速浏览网站内你所感兴趣话题的精选内容。
内容自由定制
选择想要阅读的主题和喜爱的作者定制自己的新闻源。
设置通知机制以获取内容更新对您而言是否重要
注意:如果要修改您的邮箱,我们将会发送确认邮件到您原来的邮箱。
使用现有的公司名称
修改公司名称为:
公司性质:
使用现有的公司性质
修改公司性质为:
使用现有的公司规模
修改公司规模为:
使用现在的国家
使用现在的省份
Subscribe to our newsletter?
Subscribe to our industry email notices?
我们发现您在使用ad blocker。
我们理解您使用ad blocker的初衷,但为了保证InfoQ能够继续以免费方式为您服务,我们需要您的支持。InfoQ绝不会在未经您许可的情况下将您的数据提供给第三方。我们仅将其用于向读者发送相关广告内容。请您将InfoQ添加至白名单,感谢您的理解与支持。

我要回帖

更多关于 人工智能不能做什么 的文章

 

随机推荐