article,

AI、Bot、Wechaty相关思考

lirobin1998 lirobin1998 Follow Aug 30, 2018 · 3 mins read
AI、Bot、Wechaty相关思考

人工智能(AI:Artificial Intelligence)经历了六十年几起几落,终于在2016年因为阿尔法狗(AlphaGo)战胜围棋世界冠军而轰动全球,迎来了发展新机遇。2017年中国发布《新一代人工智能发展规划》,准备到2025年把中国建设成为全球最重要的AI创新中心之一。中国新一代AI的创新机会主要在弱AI的广泛应用和强AI的原始创新,而Bot(聊天机器人)是使用AI科技成果的一种最简洁形式。目前市场上具有“公众号+Bot+内容”这样的AI使用解决方案,支持大众以Bot形式使用AI科技成果。同时市场上也有像Wechaty这样的软件开源Bot项目,支持研发人员开发和集成各种各样的Bot引擎,支持Bot引擎的原始创新。显然,把AI、新一代AI、Bot、Wechaty这些概念和关系梳理清楚,有助于我们更好地推动中国AI的发展。

hiai

一、对AI的思考

对AI的思考我们谈三点:AI的基本概念、AI研究的分类、AI研究的关键。

(一)AI的基本概念

AI的基本概念包括AI的含义、AI研究的目的、AI研究的途径。

1.AI的含义

AI是由人类开发的模仿人类智能的机器智能。 模仿的形式可以多种多样。一般而言只要模仿出来的机器智能在功能上达到设计要求就行,而不需要完整模仿人类智能活动的中间环节。

2.AI研究的目的

AI研究的目的是用机器智能减轻人类的智能工作负担。 因为人类的智能工作种类很多,所以机器能够替代人类智能工作的地方也很多。同时因为人类的有些智能工作是做好事,有些智能工作是做坏事,所以机器智能也既有可能被用来做好事,也有可能被用来做坏事。

3.AI研究的途径

AI研究的最基本途径是仿生学途径,即用机器智能模仿人类智能。

研究AI必须首先研究人类智能,然后才能谈模仿。目前机器模仿人类智能主要是模仿外部功能,而机器实现外部功能的原理和机制可以与人类完全不同。

(二)AI研究的分类

一般认为AI可以分为三类:弱人工智能(弱AI或Weak AI)、强人工智能(强AI或Strong AI或Artificial General Intelligence)、超人工智能(超AI或Super AI或Artificial Superintelligence)。

1.弱AI

弱AI主要解决单个或多个特定的局部AI功能问题,如视觉相关的图像识别、听觉相关的语音识别、自然语言理解、机器翻译、专家系统等。

当前不少弱AI技术已经趋于成熟,而且研究主要由大企业承担。新创公司在弱AI领域的机会是弱AI技术的各种推广应用。

2.强AI

强AI主要解决机器完整模仿人类智能的问题,使得AI系统在处理各种问题的时候能够像一般人类那样表现出类似于人类的完整智能功能。

强AI研究比弱AI研究有更多挑战和机会。什么是人类完整智能,AI系统如何模仿人类完整智能等等问题都还缺乏研究。比如,目前有不少人研究模仿人类大脑的AI系统或芯片,因为人类对大脑的了解才20%左右,所以这些研究不可能完整。

3.超AI

超AI主要解决AI系统智能超越人类最强智能的问题。这方面的研究隐藏着许多问题如技术奇点(Singularity)危机问题。所谓奇点就是机器智能超越人类最强智能的时候,因为机器系统可以自动复制和自我进化,还可能存在软件臭虫(BUG),所以机器系统就有可能出现故障而导致失控,给人机世界带来预想不到的灾难。

机器智能已经在某些领域超越了人类智能,如视觉识别和语音识别等。机器智能要超越人类最强智能的目标不一定能够实现,但是技术奇点潜在危机却着实令人担忧。人类现在研究AI就要充分考虑如何防止技术奇点危机问题。

(三)AI研究的关键

我们认为AI研究的关键有三方面:开发人类智能、开发机器智能、维护人机伦理。

1.开发人类智能

人类必须首先了解自己的智能,才能有效地开发机器智能。AI越深入发展,就越需要人类对自己的智能有深刻了解。这样,AI发展客观上起到了倒逼人类智能挖潜的作用。因为目前人类对自己的智能了解还比较有限,而且人类的智能潜力又是可以无限挖掘的,所以人类智能开发充满挑战和机会。人类智能开发的任何突破,都可能带来机器智能开发的相关突破。

人类智能可以从多角度认识。如智商、情商、德商智能;意识智能,包括视听味嗅触五大意识、潜意识、智慧意识等智能;大脑、心灵、身体智能;生命系统智能等等。

2.开发机器智能

针对上面提到的人类智能,可以模仿开发对应的机器智能。如开发机器智商、情商、德商智能;开发机器意识智能,包括视听味嗅触五大意识、潜意识、智慧意识等意识智能;开发机器大脑、心灵、身体智能;开发机器生命系统智能等。

因为人类对自己的智能认识还很有限,而且机器模仿人类智能的思路又可以五花八门,所以在机器智能开发上可能产生不同的学派,形成百家争鸣局面。目前开发等比较多的机器智能有机器学习、自然语言处理、语音识别、专家系统、规划、日程、优化、机器人、图像识别、计算机视觉等。

3.维护人机伦理

机器计算力快速提升、机器智能水平不断提高、机器智能系统能够快速自我复制自我进化等,必然导致机器智能系统数量大量增加甚至超过人类总人口数量,从而引发所谓机器智能大爆炸问题,甚至可能出现技术奇点问题,导致人机世界失控。

为了防止人机世界失控,必须建立和维护正确的人机伦理。比如,可以按照“机法人”的原则建立最基本的人类和机器的伦理关系,机器永远为人类服务,从而让人机双方各安本分、和平相处、和谐共事,更有效地防止人机世界失控。

二、对新一代AI的思考

从2016年开始AI进入了新的发展时期,形成了新一代AI的概念。

(一)对新一代AI的基本认知

新一代AI激发了普通大众对AI的兴趣,其驱动技术是计算力、大数据、深度学习算法等几方面的突破,使AI研究可以更加深入,存在很多挑战和机会。

1.新一代AI激发大众兴趣

2016年3月阿尔法狗(AlphaGo)强势来袭战胜了围棋世界冠军,激发了全球普通大众对AI的兴趣,也标志着人类进入了新一代AI的发展阶段。

2.新一代AI源于技术驱动

人们普遍认为新一代AI兴起,技术上主要得益于计算能力、大数据、深度学习算法三方面的技术突破。这些技术突破使得研发人员可以快速度、低成本、高效率地试错各种新思路解决AI问题并获得突破。

3.新一代AI有挑战和机会

我们认为当前新一代AI的发展态势是:传统的弱AI技术趋于成熟,可以开展广泛的推广应用;强AI技术是未来技术创新重点领域,存在很多挑战和机会;超AI技术存在不确定性,需尽早防范潜在的技术奇点危机。

(二)发展新一代AI的价值主张

发展新一代AI有很多挑战和机会,我们提出的价值主张是:1.同步实施国家AI发展规划、打造智慧智能开放开源平台、从科普切入突破科教人瓶颈。

1.同步实施国家AI发展规划

中国《新一代人工智能发展规划》中明确提出了三步走发展战略:到2020年要完成AI应用发展目标,到2025年要完成AI理论创新目标,到2030年要完成AI总体全面发展目标,使我国成为世界级的人工智能创新中心之一。我们规划和实施自己的新一代AI研究计划,需要参考国家的发展规划,助力实现国家的发展规划。

2.打造有特色优势的AI开放开源平台

开放开源平台是推动全球AI创新发展的一种有效模式,全球很多企业都在实践这种模式。中国《新一代人工智能发展规划》中也明确提倡这种模式。我们规划和实施自己的新一代AI研究计划,需要打造具有特色优势的AI开放开源平台。

3.从AI科普教育切入突破科教人瓶颈

中国新一代AI发展,可能最大的瓶颈还是在科技、教育、人才三个方面。其中人才又是最关键的环节。为此我们提出从AI科普教育切入,开展全民AI教育培育人才,并希望通过人才的创新创业开拓来突破这三大瓶颈。

(三)发展新一代AI的全民AI教育方案

我们的全民AI教育有三方面:AI科普教育、人类智能开发、机器智能开发。

1.AI科普教育

AI科普教育是我们的切入点,任务是提供AI科普解决方案,使普通大众都有机会不需掌握要软件开发技能就可以使用AI科技成果。 我们的AI科普解决方案是:公众号+Bot+内容。人人都可以使用该解决方案。

其中,“公众号”是微信公众号,腾讯公司允许每个人免费创建和运营。“Bot”是聊天机器人,北京雷风科技有限公司推出的图灵机器人允许每个人免费创建和运营,而且可以把每个人的Bot与微信公众号绑定在一起使用,用Bot与公众号用户聊天。“内容”是每个人的个性化内容,可以导入Bot的资料库中,以便Bot按照所导入的用户个性化内容与公众号用户聊天。通过导入不同的用户个性化内容,就可以控制Bot按照不同的内容回复公众号用户的信息,完成不同公众号的不同使命。

2.人类智能开发教育

因为AI的智能是模仿人类智能的结果,所以,人类对自己智能的了解将极大地影响人类对AI智能的理解、定义、设计、开发等。为此,我们把人类智能开发教育摆在人工智能教育的最重要位置。

我们希望通过正规学校教育等形式开发人类智能,全面、系统、深入地提升学习者的智能水平。使得学习者在参与机器智能开发的时候,对人类自己的智能有足够充分的了解,从而更好地开发机器智能。

比较完整的人类智能可以从多角度来探讨,如“智商+情商+德商等智能”、“视觉听觉嗅觉味觉触觉五大意识+潜意识+智慧意识等生命意识智能”、“大脑+心灵+身体等生命子系统智能”、“生命思维+分析+决策等智能”、“生命整体智能”,等等。

3.机器智能开发教育

过去六十年AI智能开发主要集中在弱AI的智能开发,模仿了人类的一些局部智能如视觉、听觉、嗅觉、味觉、触觉五大意识智能,还有一些人类思维、分析、决策等智能,还有就是大脑的某些局部智能等。

新一代AI的主要创新机会在强AI的智能开发上。因为强AI研究的目标是模仿比较完整的人类智能,使得机器智能系统能够完成需要比较完整的人类智能才能完整的人类智能工作。

通过人类智能开发教育之后,学习者能够比较全面、系统、深入地了解人类比较完整的智能,从而更好地参加“机器智能开发教育”,更好地学习如何规划、设计、开发比较完整的机器智能。

同时,这里的机器智能开发将针对科普教育解决方案“公众号+Bot+内容”进行开发,希望能够创造性地改进这个解决方案,特别是 Bot的智能引擎改进与原创。

当然,这里的机器智能开发需要学习者掌握一定的软件编程、AI算法、AI引擎、机器学习、深度学习、AI数据、AI大数据等相关开发技能。

三、对Bot的思考

Bot是使用AI科技成果的一种最简洁产品形式,这是我们在“公众号+Bot+内容”解决方案之中选择Bot的主要原因。下面我们从教学内容、教学手段、教学成果三方面比较深入第探讨一下对Bot的思考。

(一)Bot是教学内容

在我们的“公众号+Bot+内容”解决方案中,Bot首先是教学内容。

1.Bot的最简使用

作为教学内容,Bot可以给我们带来最简的AI使用体验。比如,每个用户只需要到图灵机器人的官方网站http://www.tuling123.com上注册登录,然后创建自己的Bot机器人,并把所创建的Bot机器人与用户自己的微信公众号绑定起来,这样,被绑定的公众号就可以使用Bot与用户聊天。整个过程只需要几分钟就可以完成。通过这样的学习和使用Bot的过程,用户就可以获得学习和使用AI的信心。

2.Bot的AI多种功能使用

可以通过Bot学习使用多种AI功能。比如,图灵机器人的官方网站除了给用户提供免费的Bot机器人创建和运营服务之外,同时还提供每月几十元到一百多元多档次的收费服务,支持用户为自己的Bot机器人配置使用多种收费的AI功能,如图像识别、语音识别与合成、自然语言智能等。

3.Bot的个性化内容开发和运营

解决方案“公众号+Bot+内容”是普通大众用户创建和运营自己的微信公众号、Bot聊天机器人、个性化内容的完整解决方案。使用该解决方案,用户可以为自己的公众号客户提供资讯媒体、产品营销、客户服务、教育培训等多种服务,开发和运营用户的个人或企业品牌。其中,在Bot中导入不同的用户个性化内容,就可以改变Bot聊天的资料库内容,从而改变Bot的服务的内容,适应不同的个性化服务需求。

(二)Bot是教学手段

在我们的AI教育中,Bot还可以作为一种教学工具来使用,即通过为Bot导入不同的课程内容改变Bot的聊天内容,为不同的课程提供教学问答服务。

1.用Bot获得最简的智能教学体验

使用Bot作为教学手段(软件工具),可以可以通过简洁的Bot问答模式实现教学服务,获得最简的智能教学体验。这应该是一种比较容易被接受的教学手段。

2.用Bot提供不同的课程教学内容

不同的教学课程有不同的教学内容。使用Bot作为教学手段,只需要把课程内容按照Bot要求的数据格式导入Bot,就可以让Bot按照所导入的课程内容聊天。

从课程教学内容讲,数据格式可以分为简单的问答格式、复杂的语义网络格式和知识树格式等。简单的Bot或Bot引擎只能处理简单的数据格式,复杂的Bot引擎才能处理复杂的数据格式。

3.用Bot提供不同的教学创新探索

Bot或Bot引擎或Bot智能引擎是机器模仿人类智能的系统,因此,人类的教学创新智能可以通过Bot引擎来模仿,使Bot成为教学创新的工具。

(三)Bot是教学成果

在我们的AI教育解决方案中,Bot不仅是教学内容和手段,而且还是教学成果。至少有三类潜在的Bot教学成果:最简教学示范类Bot、各种创新探索类Bot、各种重点原创类Bot。

1.开发教学示范类Bot

选择一种功能最简洁的开源Bot项目,组织学习者对Bot项目从产品管理、编程开发、敏捷开发等角度出发进行开发,展示更加完善的Bot示范功能。

2.开发创新探索类Bot

选择各种感兴趣的开源Bot项目,组织学习者对不同的Bot项目从产品管理、编程开发、敏捷开发等角度出发进行开发,展示各种Bot创新探索成果。

3.开发原始创新类Bot

根据国家《新一代人工智能发展规划》的指导,首先开展Bot应用开发,然后提出新一代AI原创理论,并开发相应的Bot原创技术和产品,展示我们在AI理论原创和Bot技术原创方面的成果。

四、对Wechaty的思考

Wechaty是一个使用Nodejs的开源Bot项目https://github.com/wechaty/wechaty,我们用Wechaty实现了微信群自动邀请入群的功能,获得了一点使用体验,而且感觉可以在AI教育之中用Wechaty开源项目做不少事情。

(一)理解Wechaty的价值

Wechaty的价值至少有三个方面:Bot聊天机器人、微信Web接口中间件、开放开源的Bot开发平台。

1.Wechaty是一种Bot

Wechaty是一种在微信环境下使用的Bot。一个微信用户登录Wechaty后,就可以把Wechaty与微信用户账号绑定在一起,使Wechaty代替该微信用户完成微信社交功能,包括聊天、邀请好友入群、从微信群移出用户等。

2.Wechaty是一种微信Web接口中间件

Wechaty把微信Web的公开接口汇聚在一起,包装成为微信Web接口中间件,具有微信Web接口提供的各种功能。开发者可以使用Wechaty开发与微信接口相关的各种Bot功能或产品。

3.Wechaty是一种开放开源的Bot开发平台

Wechaty作为一个软件开源项目,支持开发者开发自己的Bot技术和产品、开发基于Wechaty的各种开源项目等,可以说Wechaty是一种开放开源的Bot开发平台。

(二)使用Wechaty的体验

2018年3月我们开始启动一个科技类的百场公益系列演讲,并把参加演讲的听众都汇聚在一个群里面进行后续的互动交流。为了实现Bot自动邀请入群的目的,我们在网上研究对比了一些微信Bot工具,发现Wechaty是当时最好的一个选择。

1.使用Wechaty实现自动邀请入群

大家知道微信群人数少于100的时候,可以通过扫描群二维码入群。当人数达到100人之后,就必须通过好友邀请才能入群。为此,一个群主如果要把一些陌生人(如某个讲座的部分听众)加入微信群中,那么就必须首先加好友,然后再从微信群里面去邀请好友入群,被邀请的人接受邀请之后才可以完成入群的全部过程。

选择Wechaty之后,参照Wechaty提供的代码例子,我们很快编写完成了满足我们需求的一段JavaScript代码,并且按照Wechaty提供的操作说明,顺利通过了NPM和Docker两种运行模式的测试。从此之后我们每次演讲活动都可以使用群二维码和Wechaty自动地把新来的听众加入微信群,减轻了我们的相关智能工作。

2.使用Wechaty实现自动邀请入群的代码

我们参照Wechaty代码例子改写的源代码如下:

import { Wechaty, Room } from 'wechaty'
const bot = Wechaty.instance()
bot
  .on('scan', (url, code) => {
    if (!/201|200/.test(String(code))) {
      console.log(/201|200/.test)
      const loginUrl = url.replace(/\/qrcode\//, '/l/')
      require('qrcode-terminal').generate(loginUrl)
    }
    console.log(url)
  })
  .on('login', user => {
    console.log(`${user} login`)
  })
  .on('friend', async function (contact, request) {
    if (request) {
      await request.accept()
      console.log(`Contact: ${contact.name()} send request ${request.hello}`)
      let keyroom = await Room.find({ topic: "BIT百场讲座群" })
      console.log("邀请加入群:" + keyroom)
      if (keyroom) {
        await keyroom.add(contact)
      }
    }
  })
  .on('message', async function (m) {
    const contact = m.from()
    const content = m.content()
    const room = m.room()
    console.log("当前Room: " + room)
    if (room) {
      return //在群里都不说话
    } else {
      console.log(`Contact: ${contact.name()} Content: ${content}`)
    }
    if (m.self()) {
      return
    }
    let keyroom = await Room.find({ topic: "BIT百场讲座群" })
    if (keyroom) {
      m.say("您好!我是Bot,邀请您加入【BIT百场讲座群】")
      await keyroom.add(contact)
    }
  })
  .start()

3.使用Wechaty实现自动邀请入群的效果

减轻了群主邀请入群的智能工作负担,被邀请入群的朋友感觉Wechaty这个自动邀请入群的功能很有趣,激发了对Bot的一定兴趣和热情。

Wechaty没有运行的时候,微信用户也可以扫描群二维码要求入群,虽然自动邀请入群的功能无法实现,但是还是可以通过手工操作的方式把要求入群的微信用户加入目标微信群中。因此,使用Wechaty没有带来什么副作用。

(三)挖掘Wechaty的潜力

我们感觉Wechaty具有很多潜力可以挖掘。比如我们可以从AI教学内容、AI教学手段、AI教学成果三个方面挖掘Wechaty在AI教育领域的潜力。

1.Wechaty作为AI教学内容

Wechaty本身包含很多内容,这些内容都可以作为AI教学内容来对待。

首先,作为AI教学内容,Wechaty可以引出这样一种解决方案:微信号+Wechaty+Bot引擎。其中,微信号是用户的微信号,Wechaty作为一种中间件或开发运营平台可以绑定用户的微信号和用户的Bot引擎,Bot引擎是由用户选择的可供Wechaty调用的具有各种各样功能的Bot引擎(如自动邀请好友加入微信群)。

其次,作为AI教学内容,Wechaty可以在上述解决方案中提供一些可以实际使用的Bot引擎供用户选用和定制开发。如用Wechaty自动邀请好友入群、根据他人的聊天内容而发布给定的聊天信息、调用任意给定的外部Bot引擎等。这样,Wechaty就可以成为一种实际可用的工具投入实际运营,快速解决各种实际问题。

最后,作为AI教学内容,Wechaty可以用于软件开源项目教学。学习者可以学习到的内容包括开源项目实践、Nodejs编程、微信接口使用、Bot引擎编程等,这些可以支持学习者在Wechaty开源项目基础上开发各种AI功能。

2.Wechaty作为AI教学手段

Wechaty作为开源项目,在其基础上可以开发各种AI功能,因此Wechaty可以作为AI教学手段或软件工具来对待。

首先,Wechaty作为AI编程的教学手段(软件工具),使用体验很简洁,而且可以很快解决微信社交中所遇到的问题(如自动邀请好友加入微信群)。

其次,Wechaty作为AI编程的教学手段,可以支持不同的课程教学实训,如Nodejs编程开发、微信接口使用、Bot引擎开发等。

最后,Wechaty作为AI编程的教学手段,可以支持不同的教学创新探索,特别是Bot引擎的创新探索。

3.Wechaty作为AI教学成果

我们不仅可以使用Wechaty作为教学内容和教学手段,而且还可以通过Wechaty相关的AI教育,完善Wechaty这个开源项目本身,使其也成为AI教学成果。

首先,可以完善“微信号+Wechaty+Bot引擎”这个解决方案,提供SaaS服务模式为更多的用户服务。这样普通大众不需要做任何代码开发就可以使用Wechaty。

其次,在“微信号+Wechaty+Bot引擎”这个解决方案的SaaS服务平台上不断添加新的功能供用户选择使用,如更多的微信社交功能、更多的Bot引擎等,使Wechaty的这套解决方案具有更强的功能、更多的用户、更高的价值。

最后,通过“微信号+Wechaty+Bot引擎”这个解决方案的SaaS服务平台开发,使Wechaty这个软件开源项目更有价值,成为开放开源的AI创新创业平台。用户不仅可以在这个平台上开展AI教学、学习这个平台相关的AI教学内容,而且可以开发各种创新创业开源项目,特别是新一代人工智能的Bot引擎项目。

五、小结

新一代AI热潮袭来,带来很多挑战和机会。我们希望通过全民AI教育来探讨这些挑战和机会。我们的全民AI教育从AI科普教育切入,开发人类智能和机器智能。Bot作为AI成果使用的形式,是我们全民AI教育的教学内容、教学工具、教学成果,贯穿于AI科普教育、AI开发教育、AI创新教育之中。Wechaty作为我们试用过的Bot开源项目在全民AI教育中可以发挥的地方很多。

Author: @李彬 ,清华大学博士。硅谷智慧科技公司创始人,贵州博士科技有限公司CEO。聚焦智慧AI创新创业,从AI科普教育切入,开展人机智慧智能开发教育,打造全民AI教育开放平台。30年前在清华大学电子工程系开始研究机器翻译,20年前到硅谷开始学习探索智慧智能科技,10年硅谷与国内高科技创业经历。

ai
Join Newsletter
Get the latest news right in your inbox. We never spam!
Written by lirobin1998