引言:一个不会同态加密、模型融合、区块链技术的机器学习竞赛网站不是一个好的对冲基金。

在计算机科学尤其是人工智能领域,开源是普遍的共识。Github上活跃着世界各地成千上万的程序员,每天都有如Google、Facebook或者个人开源出新的项目和新的数据。开源让信息彻底开放流通,带来的是人人为我我为人人的共享精神和人类技术飞速的发展。

诸如Kaggle的机器学习竞赛平台,是开源精神的最好体现。大量结构化的优质数据由企业、医院、政府、研究机构赞助给Kaggle,经过精心处理,提供给全世界的数据科学家进行机器学习的建模和预测,前提是最好的模型要开源。分数前几名的团队,更将分享数目可观的奖金。Kaggle同时为每个人维护了一个参赛表现的综合排名。

Kaggle的比赛,除了可以帮助互联网企业推荐广告、提高点击率等,还能帮助提高工业产线提高效率、帮助中介预估房价、帮助医院预防癌症、辨别白内障等等。于是那些整日蹲坐在键盘前的搬砖码农数据科学家们,忽然有了拯救世界的重任和顺便赚点外快的激励,纷纷献身参与,发布代码,切磋技艺,赚分升级。事实上Kaggle的排名已经成了很多数据科学家找工作的重要加分项。

然而另一边的金融领域,情况却截然相反。数据是封闭的,有价值的数据流都论斤按两贴上昂贵的价签。能赚钱的机会更是被各个基金死死藏在手里,不会向外界分享半点。这是一个囚徒困境,是靠信息不对称来对赌赚钱的世界。

2015年10月,一个叫Richard Craib的1987年出生的南非小伙子想改变金融领域的黑暗森林法则。当Richard顶着一头乱发,带着黑框眼镜,穿着闪亮亮的时尚金属外套,向他供职的对冲基金老板提出想建立一个金融市场的Kaggle竞赛平台时,老板认为他疯了。

于是Richard辞职自己创立了Numerai。

Numerai每周公布新数据,全世界的数据科学家参加竞赛,建立模型,上传结果;Numerai将所有结果在隐藏的测试集上评分,得分最高的一批用户获得奖赏,然后Numerai利用表现最好的一批模型在自己的基金中建立投资组合,赚取回报。

第一个问题:数据。

有价值的金融数据很昂贵。Richard买来,然后就这么免费公开出去,估计没人愿意卖给他第二批了。再说这么繁杂的金融数据,能看懂的人,又有几个会是玩转Kaggle的数据科学家?

Richard想到的办法是,同态加密。

所谓同态加密,是指在对数据加密的同时,保留对数据运算处理的能力。A对数据加密后,B可以对加密数据进行运算处理,但看不到数据原始的样子;处理后的结果经过A解密后,得到的正是运算处理之后的结果。这就好比为了防止加工金子的工人偷窃金子,为工人配备一个锁着的盒子与手套。

*图来自知乎贴《同态加密的实现原理是什么?在实际中有何应用?》

https://www.zhihu.com/question/27645858

这样一来,Richard就可以大大方方把经过同态加密之后的金融数据免费挂到网站上让人下载了。数据科学家们看到的是一堆不知道含义的数值型或分类型数据,随你怎样建立模型,跟金融知识也就没有什么关系了。

第二个问题:结果怎么用?

解密之后,Richard得到的是众多数据科学家运用各种模型之后得到的结果。这些结果怎么用?

关于这个问题,numerai并没有公开自己的方法。但我们能猜到Richard一定是用了机器学习的模型融合大法,将每个人的预测结合起来,建立一个最强大的meta-model。

模型融合的目标就是建立这样一个meta-model,每个人的预测都被考虑进来,如果一个人的预测对整个大模型提高较多,就给这个人的预测较高的权重。

模型融合的一个关键是,这些不同的模型要尽可能地异构化,这样融合起来的大模型有比较好的泛化能力,在实战中才有较好的表现。所以numerai对每个人模型的评价不仅仅是AUC, log-loss这样的参数,还有一个“原创性”的评价标准。如果你提交的模型不但要表现好,同时也要和别人提交的预测相关性比较低。

第三个问题:如何吸引数据科学家来参加Numerai?

Richard最初的做法,是按照提交模型的表现,给数据科学家们发放比特币。Numerai比Kaggle更加吸引人的部分,一个是数据的神秘性和挑战性,另一个是,一但你找到了很厉害的模型,很有可能接下来的很多周你都可以躺着分钱了。

但很快,Richard就发现,这样的比赛,参加者与传统金融界一样,是以零和游戏的模式参与。很少有数据科学家会去向同行介绍和推荐numerai,因为没有人想要更多的竞争者和自己竞争分钱,更不要说相互之间的协作。如此一来,Numerai的诉求是众筹和融合尽可能多的数据科学家开发的优质模型,而数据科学家的诉求是为了赚钱而不合作与隐藏技术,这之间产生了矛盾。

于是基于区块链技术,Numerai自己发行了一套货币:Numeraire.

Numeraire会以数据科学家在榜单上的排名为比例发放。一个人模型表现得好,除去得到美金之外,还会得到更多Numeraire;如果模型表现的差,已有的一部分Numeraire将被销毁。最关键的是,整体的Numeraire的价值会随着基金的价值升高而增加;基金赚的钱越多,拥有Numeraire的人们分红也将越多。这事实上是在奖励合作,让数据科学家们号召更多的同行参与进来,一起建立优秀模型,提高整体基金的价值,也提高自己手头Numeraire的价值。通过Numeraire,Richard是把自己的基金变成了所有参与者的基金,让所有数据科学家们有了同一个目标,共享协作,一起把饼做大。

所有这些技术拼图拼接在一起,我们看到的,是一个天才般的充满气质的平台产品。一个不会同态加密、模型融合、区块链技术的机器学习竞赛网站不是一个好的对冲基金。Numerai 2016年底又融了600万美金。这是现在的Richard。