白硕:背靠背知识协同——区块链与人工智能结合的新途径

9月11日,在由万向区块链实验室举办的“新经济技术探索”第四届区块链全球峰会上,前上海证券交易所总工程师白硕先生作为演讲嘉宾受邀出席本次会议,带来了题为《背靠背知识协同:区块链与人工智能结合的新途径》的演讲。以下为白硕先生演讲全文,有部分不影响原意的删减。

我今天跟大家分享的话题是背靠背知识协同,这是人工智能和区块链结合的一个新的研究。

我们经常提到一个词叫Data Fence,意思数据被分割在不同的主权主体范围内不能流通。不能流通的原因:不愿意分享、不敢分享、不能分享

怎样能够在保护数据不离开原有的边界,同时在宏观上又要引导数据流通,形成一种合成、协同的效果?我们基本上以区块链为基础,在上面加上了安全的多方计算。处理这样的问题离不开区块链上大家都知道的一些探索。比如说Zcash,它就是要解决UTXO模型下,我们都需要见证支付的有效性和支付以后账目的平衡。现在利用零知识方法,可以在秘密状态下见证这样一种关系。这样有了一种以隐私方式记录交易的货币。

在溯源上也有同样的情况,一个商品它的源头做了签字,中间环节做了签字。如果都做了签字,最后到了零售,我们看到的是一个完整的签名链。这个签名链有一个大问题,中间商的上下游关系、它们的商业合作伙伴都暴露在零售端。这就有了一个问题,能不能把中间关系给隐去,同时还能够保证确实经过了中间的签字环节。

再看供应链金融,在融资过程中也会有这样的需求。物流是从右往左,现金流是从左往右。还有类似的(企业)白条,是由区块链记账的单位,它也是从左往右。白条从下游往上游走的时候,它跟谁是合作伙伴的关系,第二,它需要拆分,给谁拆分了多少,这件事情也比较敏感。这两个敏感的信息能不能隐藏起来,同时又能够见证白条流通的合法性,这是我们在供应链金融场景当中碰到的问题,这都需要背靠背。现在普遍采用API调用的方式来把数据交易变成基于数据服务的交易。基于数据服务的交易,可以利用区块链进行精准的记账。

刚才说的对隐私和数据主权的保护方案,如果用一个二维坐标来画,横轴是隐私的强弱,纵横是中心化程度的强弱。其实做到一定程度,需要对去中心化有所牺牲,或者对隐私保护强度有所牺牲。稍微切实一点的,把这两个方面能够兼顾的,就是零知识证明的方法、同态加密的方法、环签名等等这些方面。这些方法的问题在于不可能三角,在隐私和去中心化都保证的情况下,会牺牲效率。

总结一下,目的就是想做到在不泄露实体信息的情况下,去见证一个关系。恒等式的见证,能不能不依赖我看见A+B等于C。还有数据要汇聚才能产生某种协同效应或者聚合效应,但是在数据不离开原位的情况下,能不能产生类似聚合效应那样一种行为。还有,能不能做到不泄露参数,就能够以这些参数来做输入的计算。还有,你有对手方,能不能不碰对手方的内容,还能实现和对手方的互相联通。这些问题,都是背靠背协同机制想要达到的目的。

下面分享两个案例。一个是背靠背求交集;一个是背靠背训练模型,或者叫协同学习。

背靠背求交集,就是两个机构合作,一个机构是广告商,一个机构是手机商。广告商希望跟手机商合作,手机商希望和广告商合作,如何把双方共有客户的手机号码求出来,同时每一方不知道对方手机号码的全集。我们提出的方法,进行某种加扰。A先加扰,给对方,对方加扰,给智能合约。B也是,先加扰,再给A加扰,再给智能合约,由智能合约来求加扰之后的数据交集。只要加扰的算子在数学上叫做可交换的,其实它就是成立的。用这种方法的时候,只要算子足够安全、足够可靠的时候,就可以利用它做背靠背求交集的工作。这种方法,可以支持一些不希望透露全集的双边和多边合作,各自只要部署各自的智能合约节点,部署各自的加扰软件模块就可以把这个事做下来。

再看背靠背模型训练。机器学习是人工智能领域里面比较核心的功能。学习过程的最后会得到模型,但是这个模型是数据持续喂出来的。比如有几个医院,医院各自有某个病的影像数据,这些影像数据合在一起,会训练出一个更好影像识别模型。但是影像数据各医院当宝贝不拿出来。可以想到的一个方法,利用同态加密。同态加密单个运算还不行,我们要做一个神经网络,神经网络至少它有线性组合,所以要有加同态、乘同态,还有一些非线性的过虑函数。加和乘组成多相式,多相式可以逼近非线性函数。逼近当然就有误差,所以这两个有问号。一个是产生了误差,误差在传播过程当中,就会出现一些问题。一个是回不来,我们只能做试飞或者标签透明的训练,就是同态加密输出是回不来的。

看另外一种方法,利用假数据。每个人手里有真数据,利用真数据训练一个模型。针对模型,生成假数据,跟真数据具有高度一致的分布。两边都有假数据,把假数据给对方,把对方的数据跟自己的真数据和对方的假数据进行混合,混合之后再进行学习。

比较后,这三种方法,采用了生成假数据的方法,把假数据和对方真数据混合的方式。我做了一个实验,数据集比较简单,是数码0到9的识别。把0到9分成两组样本,一组只有0到4的训练数据,另一组只有5到9的训练数据。当我们进行传播之后,假样本传播之后,把对方擅长、自己不擅长的部分全学出来了。自己0到4是90%的样本,5到9是10%的样本。在这个学习过程当中看数据传输的量。用一个样本池固定了,样本池后面只做它的标签变化部分的传输,用非常少的数据量,就可以学到相当高的精度,比其他两种方法好。

这是一个双边的、简单的实验,但这个实验其实给我们提示了很多东西。只要我们有一个可以信任的东西,就可以把数据通过信任的服务,把它给组织成一个假装数据聚合的场景。虽然不聚合,但是假装聚合,这个假装聚合的场景和真聚合的场景是非常接近。这里面还提到了不愿意分享的问题,其中就是在大家分享过程当中的权益没有考虑到。在精准计量了之后,像刚才的例子,你贡献的每个假样本,它对学习效果的贡献度都可以测量出来。所以在区块链做了精准的记录之后,可以做一个非常好的利益方面的安排。

总结一下,背靠背数据协同是一个真实需求,它有非常广泛的应用场景,在技术上很有挑战性。第一个案例是使用了密码学,第二个案例我们没有用密码学,用的是生成对抗网络。生成对抗网络的方式,把它跟区块链进行叠加,就可以看到它同样可以起到背靠背数据协同的作用,特别是在人工智能、神经网络训练领域可以起到很好的作用,这也为我们今后区块链的实践增添了一种新的选。

原创文章 29 获赞 2 访问量 8032

猜你喜欢

转载自blog.csdn.net/WXblockchain1/article/details/83901935