王嘉平博士原为微软总部雷德蒙研究院主管研究员,专注分布式系统,计算机图形学和视觉以及用于机器学习的 GPU 集群等领域的研究,有数十项研究成果发表于 ACM SIGGRAPH/ToG 顶级国际期刊,已授权的美国专利十项余项。师从沈向洋博士 (现微软全球执行副总裁),在中科院计算所获得博士学位。博士论文获得 2009 年度全国百篇优秀博士论文奖,是该年唯一一名计算机科学专业的获奖者。王嘉平博士现任创新工场执行董事,投资方向为区块链和人工智能。曾主导对比特大陆的首轮机构投资,成为其首轮三大主要投资方之一。

本文为火花访谈对王嘉平博士的采访记录,王嘉平博士围绕区块链的根本属性、scaling 和行业的增长拓展秩序,向大家分享了他的学术观点和研究动向。

原文标题:《火花访谈:区块链的根本属性、scaling 和行业的增长拓展秩序?》

本次火花访谈,我们有幸邀请到中科院计算所博士,现任创新工场执行董事王嘉平博士。在本次访谈中,王嘉平围绕区块链的根本属性、scaling 和行业的增长拓展秩序,向大家分享了他的学术观点和研究动向。

问:您觉得目前公链本身的一些设计是否合理?比如说如果做不到让所有的人都参与,那我们就找一些代表去参与。

答:其实公链想取得一定进展并不容易,所以从整个技术演进过程中,大家也是一步步往前走,有些人找到了这个解法,可以先做出来,尽管它不完美。当然有些人直接把代码抄过来就行了,所以还是比较鱼龙混杂的。

问:您在研究开发公链的过程中,有没有遇到什么难点?

答:有两件事情:一是如果分开了,跨链怎么办?它的边界是什么?什么交易可以做什么不可以做?把整个事情推广到智能合约这个层面。因为以前大家做分片的时候,只是考虑到了支付这件事情,支付这件事情很简单,但问题是你怎么把它形式化的给定义出来。

二是算力分散的问题怎么解决。我以前也和一些技术团队聊过,发现这个问题是没有任何解决办法的,大家也都回避这个问题,说应该也不会有人攻击。但事实上,这件事情不去解决是不可能的。因为如果你分个一两片还好,算力分散程度没有那么厉害。但是如果你真的分个几百片,几千片,那你的算力就几百倍几千倍的下降了,这个安全性肯定难以保障了,这其实是个难点。

问:可以大概解释一下您之前两篇论文里提到的 Monoxide 协议吗?

答:POW 的算力攻防比拼的是出块速度,并不是物理上计算哈希的算力。在单链系统里它两是完全等效的,但在分片系统里它们可以不一样。每一个矿工的哈希外面是不知道的,但是可以观察到出区块的速度。一旦算力分散,它所暴露出来的一个攻击模型,就是有人聚合算力到一个特定分片上面去。而我们的算法就是解决这个问题的,阻止有人把所有的算力集中到一个分片上。

分片系统里的攻击模型是这样子的:所有矿工把算力分散的贡献到不同的分片里,它的挖矿收益可以最大化,也使得每个分片的算力比较平均,分片数量分之一的算力。攻击者它会集中所有算力去攻击某一特定分片,假设该分片被攻击者控制,则里面的非法交易可以通过跨片交易污染其它分片,因此一个分片系统必须要保证每个分片的安全性。

连挖矿的概念就让那些正常的矿工可以把算力贡献到不同的共识组里出块。同时它的算力不分散。因为,当它计算出一次满足难度的哈希后,它不像以前那样只出一个块,它可以为多个共识组都出块,把出块速度放大 N 倍,N 就是分片数量,这个放大后的出块速度没有办法聚集起来作用在一个分片上,必须分散到不同的分块里,它没有办法聚集算力。

问:在这种情况下 miner 必须要做到平均分配?

答:对,这是通过协议来构造的,但做到这件事情并不容易。因为正常情况下矿工想要去哪个地方挖矿,你根本没有办法控制,所以说协议层面需要有些巧思,使得这件事情可以受到约束。

问:协议的解决除了在算法层面达成共识,是否可以让 AI 或者机器学习参与进来做这件事情?

答:这两者是没有关系的。有不少人把 AI 和区块链放到一起,但实际上这两者八竿子打不着,除非在上层应用上可能会有点联系。比如说区块链的某些应用可以为 AI 提供一些数据,它们在业务层面肯定会互相有点关系,但在技术层面两边完全没有任何关系。

问:您刚才说的其实是个决策问题,也就是需要分配多少的算力,或者说一个矿工进来的话,怎么样去分配的一个问题。那这个分配的算是整个网络的决策问题吗?是否可以用 AI 解决?

答:AI 解决的问题其实是当你不知道怎么决策的时候,它帮你决策,给你更好的决策方案。但挖矿安全保障这个事情,大家并不是不知道怎么样做比较好,但是有人就喜欢干坏事,我考虑的是怎么样阻止坏人干坏事,它和 AI 是两个逻辑。

我们实际是用算力放大的方法,解决这个问题。你算力一旦放大,挖矿出区块的速度明显就快就多了,而每个区块都能收到一些奖励,矿工利润是会直线上升的。在这种情况下,所有好人肯定都会去选择把算力放大。

但是,因为算力是我们帮你放大的,所以我们会对放大之后的算力进行约束,要求必须是平均分配。这个时候矿工就没有办法去阻止这件事情了,放大之后的算力应该怎么分配,它是无法控制的,这就是我们解决问题的办法。

所以这就导致一个攻击者,如果想得到算力放大,那么他的算力必须分散;如果想聚焦进行攻击也可以,但他的算力不会被放大。这个时候是不放大的算力和别人放大之后算力比拼,聚焦就没有任何意义了,没有任何优势。

问:为什么您说机器学习更偏向于分布式系统?

答:我一开始机器学习研究的是理论和各种新的算法,但是现在机器学习所面临的问题很大,所以大公司要把机器学习运用在一些非常大规模的数据级上面。在这个时候就是系统层面的事情了,需要用分布式系统把 AI 的算法部署开来,让几万台机器一起计算一个大的计算任务。比如说我让 1 万台机器跟电脑一起工作,然后来平摊里面的一些计算任务,包括模型的存储表达等,一起共同完成这件事情,这个是分布式系统。

问:这个系统里面是否可以引入通证去激励呢?

答:当然可以。但问题是,一个系统如果想要激励,一定要有人为此付出成本。人家本来是一个 volunteer 跑的好好的东西,现在你还非要人家去付出成本。其实前面有人设计了各种激励,各种 XX 即挖矿,包括 Fcoin 矿机之前做的事情,但其实你从本质上去看,所有的激励都是成本。不过在短时间里面,你会发现激励好像是一个无源之水,平白无故就能来。但事实上你会发现,如果没有源头的话,这个激励很快就会变成一个庞氏,很快就会废掉。

本来一个自组织的项目,虽然说很难做大,至少逻辑上是可以长期进行的。但是你现在把它变成通证,然后就会吸引来什么人呢?肯定是一群想要赚钱的人,他根本不关心你后面做的是什么。结果他能赚到钱吗?我拿了项目方的币然后就去交易所卖了,所有人都在交易所做空,谁去做多?

问:但是比特币开始的时候也是这样子的,如果开源大家都是免费做的话,我们还需要激励通证干什么?

答:其实比特币也好,以太坊也好,这些成本都是谁来付?都是由那些付手续费的人来付的。整个体系必须要有人愿意付出成本,那么这个激励才会变得有效。像比特币一开始其实是大量增发的,用的人也不多,在 16 年手续费大概占到挖矿 1/10 左右,手续费只占很小的一部分。

从这个角度来看,你会发现付出的成本和所谓的激励是不平衡的,激励相当于是成本的 9 倍。但大家认为这是个 sustain model,减半到最后付出成本的人和受到激励人会达到一个平衡点,正是因为有这样一个逻辑兜底,这件事情才是可以 sustain 的。

问:那是否会出现一个新的、用来做机器学习的、分布式系统的激励平台,它和平台的使用是有关联的?

答:之前有一些 BP 过来跟我说:我是一个机器学习平台,希望用 Token 来激励,让大家把算力存储贡献出来,然后我可以让大家完成机器学习的计算。这里我先不说那些 privacy 的问题,因为大部分公司的数据根本是不能出来的,我就仅仅讲计算这个事情。区块链它跟现有的这种中心化的云计算系统,拼的不是计算,如果拼计算它绝对拼不过的。

这里面讲几个逻辑:一是如果你把它变成一个去中心化的方式去做 AI 计算,比如说做 modeltraining,这个时候你相当于要把任务分配给好几个人,或者说卖给一个人,只要找对方。那你怎么知道它算出来的结果是对的 ? 这和挖矿是不一样的,挖矿结果是非常容易被验证的,而机器学习的结果是不好验证的。比如说我给了他数据,让他给我算一个模型,然后模型算出来以后,它的错误率是 0.8。那么这是因为你那边没有好好给我做 training,随便跑了迭代就丢给我了,还是说其实已经跑了很久才丢给我了?我没法验证。因为我不知道 0.8 是因为我数据不好,算法不好,还是因为你压根就没有好好给我训练。

他们当时说,我可以把模型发给好几个人做,最终比较一下,谁好我就取谁。听起来好像很有道理,但大家都是经济理性人,一旦发现你根本没有办法去验证我模型的质量,没有人会真的给你做训练了。在这种情况下,每个人都坏人。虽然我只有一张显卡,但接十个人的单子也是接,接一百个人也是接,我干嘛不多接一点?这是第一个逻辑。

所以你会发现,至少你要引入冗余,才有可能去评判这个模型的好坏。需要机器学习的肯定是有需求的人,他们这个时候面临的选择是说我去 IOS、去云计算系统好了,毕竟人家那么成熟,已经摆在那里了,这才是我的第一选择,

第二个问题就是,对于机器学习这个任务来讲,我要求你能把我这个计算任务完成就 ok,我又不关心你是不是共识。共不共识跟我有什么关系?我只要你把结果算出来就好。而区块链系统的优势在于它能够有共识,它能够做出让大家信服的,可以向第三方证明的东西出来,而不是为了把计算给算出来。

即使你以后能保证这个东西是对的,也能保证它不用太多的冗余,它的算力也比不过云计算数据中心。因为你要想想,普通用户手上的电费是多少钱?人家数据中心部署在那些电便宜的地方,它的电费是多少钱?你一个人去买一张显卡要多少钱?人家大批量采购显卡,这个代价是多少钱?

如果讲效率,中心化一定是效率第一名。所以区块链跟别人拼的根本就不是解决问题的效率,它跟别人拼的是解决问题的方式,它的方式更公允,更容易让第三方相信。所以在一个业务逻辑里面,如果不涉及第三方相信这件事情,根本不应该跟区块链有任何的关系。比如说我做机器学习,那是我单方的事情,我手上有数据,有算法,我只是让你帮我跑一跑,跑完结果拿来给我。这根本不涉及到第三方,跟区块链没有任何关系。

区块链解决的是信任问题,是向第三方去证明 something happen 的。比如说支付,我需要向第三方证明曾经有那么多人打钱给我,这个是区块链能做的事情,而云计算做不了。因为它本身就是个中心化,万一它干坏事了,谁都挡不住。你要想把计算任务完成,除了云计算现在这种集中化的计算系统,区块链根本是没有办法给它拼的,它解决的就不是这个问题。

问:那您觉得区块链或者分布式信任系统,下一步的发展会是什么样子?如果要往前走的话,还需要什么样的基础设施项目?

答:首先,公链本身安全去中心化,这是一开始就具备的。但它现在还有个新的问题,就是在公链上虽然每笔交易都很简单,但数量一多就会出现拥堵,这个应该是首要解决的,属于技术范畴。

但如果问区块链的发展还缺少什么基础设施,这并不属于一个技术范畴。它应该取决于大家在上层发现了什么应用,然后再倒过来去看下面缺什么东西,整个互联网的进程就是这样的。互联网都是应用在驱动技术,而不是反过来。所以区块链这边其实是有一些应用在驱动技术的。比如说现在有交易所的应用,有支付的应用,但这两个应用现在技术都还没做好。再比如说现在又希望公链上面有各种各样的 dapp,不管是游戏还是博彩,但只要有人用,就是需求。这对公链的性能是有要求的,必须要解决,而且它是被应用驱动的。

这个逻辑如果反过来,就是说我现在有一个技术了,然后去想它有什么应用可做,基本是没法成功的。拿着技术去找应用,从来没有成功过,所以说它不是一个技术问题。对于区块链真正问题的核心是,现在交易所有了支付有了,而且两个都很好,接下来就要看看怎么样把它做大做强,让更多人用起来。然后想还有什么应用,它需要去中心化,需要有 cryptocurrency 支持。

而且我觉得,这些应用并不会是现在传统互联网已经出现的,而一定是新的东西。我们回过头去看整个互联网的发展,人的需求就这么多,这肯定不会变的,但是互联网上的应用形态都是新生出来的。任何一个公司都不是被一个跟他一模一样的东西给杀掉了,很大部分的公司不是被别人杀掉的,而是被别人遗忘掉的,因为大家都到新的东西上面去了,并不是去革老的命。

区块链也一样,需要去想有什么应用是需要去中心化的。互联网里面有蛮多东西是需要改造成去中心化的形态的,一旦改造完了,它的应用形态看起来就不同了,但是它背后的需求是一样的。比如你有获得知识的需求,现在的互联网是怎么解决的?搜索。可在互联网之前这个问题怎么解决的?那就是去图书馆。道理是一样的,需求是不变的,只是形态会发生相应的变化。

但是每一次变化都是有极大好处的,就像现在搜索能得到的东西,比图书馆丰富得多,也方便的多。互联网当时解决的是方便的问题,而当现在方便已经达到一定的程度后,大家担心的就是准确性了。有些人用搜索引擎会被欺骗,明明不是这个东西,它骗我说就是这个东西让我相信。本来去搜索就意味着对我对知识的缺失,所以那个时候就很容易被骗。虽然我有一定的判断能力,但毕竟搜的是一个我不知道的东西。

而且它就是通过骗你来赚钱的,这是它的 based model。它会骗你说这个东西评分比较高,因为有人给它付钱了,它能从中间赚钱。这也许是区块链的机会,但只不过现在区块链的基础远远做不了这件事情,因为规模还不够大。如果现在把搜索这种大规模的应用放到区块链上面,没有一个区块链可以支撑得了这种规模的业务。

但是,这是方向。就像当年我们刚有手机的时候,是无法想象现在有视频直播和抖音这种东西的。你会发现当时的基础设施完全实现不了,但问题是整个设施是会迭代的,会往前走的,后面某一天你会发现,之前想都不敢想的东西,现在可以了。

问:Monoxide 在如何激励一个原生社群这方面有什么思考吗?像比特币这些社群,一开始是通过挖矿慢慢激励起来的,它本身并没有做太多刻意的宣传。

答:首先挖矿激励并不是为了宣传,公链系统里面的挖矿激励,是为了打造电脑安全性,这是个 solidity 的技术需求。而其它的激励,比如空投,这就是一个营销行为了,和技术没有任何关系。

问:那您怎么吸引开发者选择你的平台呢?

答:首先,平台的第一要义是吸引用户,而不是开发者。你去看以前的平台,没有一个是靠吸引开发者来的。每个平台不是单纯的平台,它上面一定有一个非常爆款的应用,靠这个应用把平台拉起来。比如微软系统之所以这么厉害,就是因为 office 的存在。现在 IOS 有很多开发者,那是因为苹果本身是个非常成功的手机。

开发者其实是非常功利的,他们看哪个平台有用户,就去哪里。他们就是为了赚钱的,这是他写 APP 的原因。如果你弄个比赛,他可能会为了一些名次过来,这件事情现在已经很明显体现出来了。比如现在 EOS 比较活跃,ETH 开发者就马上冲到 EOS 去了,开发者是没有信仰的。其实对于开发者,关心的就两件事情:第一这个平台好不好用,这直接涉及到它的开发成本;第二就是平台上面的用户有多少,这涉及到它开发的收益。

问:但现在有个问题,因为很多链上很多东西都是开源的,也就说如果我做一个爆款,别人很容易就会抄过来。这个问题怎么解决呢?

答:其实这个世界本来规则是可以很简单,友好的那种,但是因为里面坏人慢慢开始多了,规则就不得不搞得复杂了。以前开源的意思就是说,你可以随便用,那时候大家是不怎么抄的,用了你的代码还会很好地 cite 你;如果我商用了,那我是会给你钱的,以前的逻辑是这样。但现在坏人多起来了,开源社区慢慢被这些坏人搞坏了。

理想主义其实是特别好的,很高效,而且也可以很好地激发大家的 innovation,好人会被激励,然后把东西做大,大家都可以贡献一些东西。但问题是,现在坏人多了以后,这个规则就被破坏掉了。

问:也就是说坏人到一定程度的话规则就要改变了,这有点像博弈?

答:对,是这样的。比如在美国社会运作中,一些规则其实是很 simple 的,而且对于坏人的防范能力是很弱的,你可以找到各种各样钻空子的地方。但后来美国发现有人开始钻空子了,它也开始改规则,好人虽然是好人,但也不是傻子。只不过你避免不了这件事情,最终的结果就是,很多规则被破坏掉了。这个也挺可悲的,但确实没办法。

问:那 Monoxide 社群的建设是希望做出一个具有头部效应的 APP 出来吗?

答:我们对于社群建设的逻辑并不是吸引开发者,而是通过提供用户服务和产品来吸引用户。我们可能会做一做跟开发者相关的活动,但是吸引开发的不是我们的第一要务,第一要务是吸引用户。

问:Monoxide 为什么选择这个时候来做交易所?

答:首先说句实话,Monoxide 当初之所以要把性能提上去,其实天生就是为交易所服务的。但问题是你要做什么交易所?现在已经有很多中心化的交易所存在了,比如说数字货币相关的东西。那接下来有没有其他东西,也是可以拿来交易,并且大家还会很踊跃?另一方面是现在有这个方向的趋势,前段时间我去币安看了看,它们也是出了交易所。

我觉得现在做去中心化交易所,还是可能有很大转机的。我和一些传统金融公司的人聊,发现数字货币作为一个投资产品,其实他们也挺想做,而且他们资金更大。但是他们不敢用现在这些交易所,因为币价的浮动更有可能带来损失。其实在他们原来的投资逻辑里面,投股票、外汇黄金也可能会有损失,但这个是风控模型里面本来就存在的,是他们能够承受的风险。

什么风险是他们不能承受的?比如说交易所跑路了,交易所被偷币了。这不是因为我交易策略不够好,是因为你这个交易所本来就不正规,没有办法被监管。这种层面带来的风险,是他们没法承受的,而且不在他们原来的整个风险模型之内,这就是为什么他们没法来参与这些东西。但是一个去中心化交易所,是有可能从根本上避免这种事情的。比如创始人跑路,交易场内部私自增发币等,这些问题都可以回避。

现在中心化交易所的结构实际上是银行+交易所,但是现实世界的交易所完全不是这样。银行的资金托管和交易是完全分开的,而且很严格,只有去中心化交易所可能做到这些。因为它可以对外证明说我没有干坏事,所有信息都在链上,让大家进行监管和验证。所以这是去中心化交易所的机会。

而且,区块链要想进一步发展,一定不是在币圈里面互相抢用户,而是要把外部的资源吸引进来。那这个时候你就要想,为什么外部的人不愿意进来?不敢进来?这是区块链行业现在最需要解决的痛点,所以我还是蛮看好去中心化交易所。但作为交易所,不管是不是去中心化,它本身的运营是非常重要的,尤其是开始的流量,这不仅仅是技术的问题。

但一个事业的成败,最首要的是方向,而不是那些战术上的事情。不是你运营有多强,PR 做得多厉害就可以了,看准方向才是非常厉害的。火币交易所也好,OK 交易所也好,它们的营销能力比币安差吗?不见得。但只不过 914 的时候,它们选错了方向,而币安选对了方向,当时很快就变成第一了。

但说句实话,这里面也存在很多所谓的幸存者偏差。我们现在看到币安壮大了,倒回去推它当时这个逻辑,是非常正确的。但当你面临一个新事情进行抉择的时候,并没有这么简单。

问:您觉得链圈最终还是会留下好的,淘汰坏的。对吧 ?

答:对,如果你只想着捞一笔就走,那你肯定不会去想着真正的用户和业务。你只是看着当前这波就冲进来,至于后面怎么样,跟我没什么关系,其实这些人往往声音是最大的。当年互联网也是一样,你可以看到现在真正沉淀下来的是哪些人?而早期声音最大的又是什么人?

当时互联网声音最大的就是买卖域名的人,币圈发生过的事情,当年在互联网一样发生过。互联网里面能买卖的东西不多,域名就是一个能买卖的东西。域名就像现在的 token,你赶快把它抢了,囤着然后把它卖了。这些人就是看准了那个势,所以把这个事情干了。只不过区别在于,干完这个事情以后,有些人直接走了,但是有些人继续耕耘下去了,这个是不一样的。