LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资产 > 将 AI+ 区块链概念落地的 Cortex,将如何赋能 DeFi

将 AI+ 区块链概念落地的 Cortex,将如何赋能 DeFi

2020-01-17 链闻 来源:火星财经
区块链与人工智能的结合会产生什么样的化学反应?AI 智能合约、AI DApp 将给去中心化世界带来前所未有的能力。智能合约将可以处理更多样、更模糊的输入,并给出更智能的输出。公链项目 Cortex 正在尝试链上 AI 推断、在智能合约里引入人工智能,以此来改变人工智能模型被大公司垄断的格局。

作者:木子

人工智能和区块链是近几年的两大风口,一些顶尖技术团队试图为两者的结合找到可行方案,并在未来的技术生态中占据战略要地。作为第一个真正实现链上 AI 推断、在智能合约里引入人工智能的公链,Cortex 不仅想要扩展智能合约的功能,也在努力改变人工智能模型被大公司垄断的局面。

尽管区块链项目需要各种概念和算法上的探索,但更难的其实是生态建设、代码落地和应用部署。目前 Cortex 主网已经上线,挖矿、钱包 app、区块浏览器等都已有产品开发上线,社区建设也日新月异。有人指出,Cortex 很多基础设施来自以太坊,另一些人却通过代码对比发现,Cortex 在以太坊的基础上添加了近四十万行代码,占代码总量的近 40% 。

随着越来越多的 DeFi (去中心化金融)产品出现,区块链在金融领域的应用成为近期的热点。而 Cortex 也将 DeFi 视为当前发力的主要方向。无论是根据用户的行为进行征信计算、还是通过实时数据给出投资策略,都是大数据和人工智能最有前途的应用场景,Cortex 定位于 AI 与区块链的嫁接,显然更有可能在这些 DeFi 的想象空间中大显身手。Cortex 内嵌的激励机制,也可能促使 AI 模型开发者上传更多更好的模型,通过使用者的自由选择而实现「AI 的民主化」。

何谓智能合约+人工智能?

目前智能合约的应用范围很有限,仅限于发币融资、转账这些简单操作。从理论上说,图灵完备的智能合约能够进行各种形式的运算,也就可以实现一切计算机的功能。但理论与实际之间存在一道鸿沟,今天我们能看到的智能合约的最复杂应用,也就是博彩游戏、资金盘之类的算法游戏,还有一些简单的金融应用。

Cortex 试图为区块链的智能合约赋予更高级的应用。在这个去中心化的人工智能平台上,开发者可以将 AI 模型存储至区块链并写入智能合约中,以达到链上的模型推断共识。在 Cortex 链上,开发者可以开发 AI 智能合约,在机器学习的推断过程引入合约,从而得到区块链之外的值——比如用户上传的图片到底是猫还是狗。

在需要判断一张图片里的动物是猫还是狗的时候,智能合约无需借助预言机等链下网络的帮助,可以直接调用机器学习模型进行推断,这就提高了执行的效率。有了人工智能的帮助,基于区块链的电商平台也能针对顾客的浏览历史,进行个性化的商品推荐,而物联网网络,则有可能在智能家居产品中集成类似 siri 的语音响应系统。智能合约,可说是真正拥有了智能。

尽管人工智能已是媒体热词,但其内涵一直在演变。一般来说,人工智能是指通过技术手段,使机器能够表现出类似人类的智能。在半个多世纪的发展历程中,研究者提出过各种各样的实现方案,目前最主流的方案是机器学习。机器学习是指使用大量数据训练一个数学模型,使其不断改进,最终得到一个较为成熟的模型。使用数据集改进模型的过程称为「训练」,而使用实验数据集根据模型得到可用的输出的过程称为「推断」。

Cortex 的目标是提供 AI 模型的训练与推断全套解决方案。由于 PoW 算法计算过程和验证过程是非对称性,而 AI 训练的过程和验证工作量的过程是对称性,这种本质上的差别导致了 AI 训练环节注定无法上链,和 PoW 相结合。Cortex 则选择了将 AI 推断的过程上链,包括模型的上传、存储、调用并进行推断。训练过程将在链下进行。

基于以太坊的多项创新:CVM 虚拟机、专用模型表示工具、确定性的推断引擎……

Cortex 的智能合约使用了以太坊的 Solidity 语言,并在 EVM 的基础上改造出了 CVM ,加入了「推断」指令,便于调用 AI 模型进行推断。其智能合约系统向后兼容以太坊的智能合约,所以以太坊的 DApp 开发者可以将其开发的应用无缝切换到 Cortex 链上。

不过,Cortex 绝不仅仅是以太坊的简单升级。想一想,将计算资源消耗极大的 AI 搬上区块链,要解决的难题相当多且棘手。除了 CVM,基于 MXNet 做的模型量化以实现链上推断的确定性,这部分研发成果,应该说是 Cortex 的开创性贡献。

由于 Cortex 链上不承担训练模型的任务,所以用户需要将模型通过 CVM 解析成字符串,与参数一起打包上传到存储层。Cortex 的存储层并不在区块链上,而是使用了一种 P2P 的存储协议 Libtorrent,以实现高效存储更多的模型与数据。上传到存储层后,将生产一个模型的哈希值放到链上,供使用者调用。

有了模型之后,智能合约就可以通过「推断」指令调用 AI 模型。Cortex 的 AI 智能合约执行过程与普通智能合约类似,也需要全网的全节点对智能合约运行一遍,并对运行结果进行共识。但由于这个过程中涉及到 AI 模型推断,因此步骤有所增加。节点进行推断时,需要从存储层中索引到对应的 AI 模型,下载模型字符串及参数,将字符串通过 Cortex 模型表示工具转换为 CVM 执行码,再在 CVM 中进行推断。Cortex 的模型表示工具是一套开放而灵活的标准。使用不同深度学习框架的用户可以在框架之间迁移自己的模型,大大提高了使用的便捷。

对于区块链来说,现有的机器学习模型与数据集在存储与计算资源消耗方面都显得过于庞大,将现有数据模型直接搬到链上将大大降低区块链的效率。并且,在中心化场景下,由于 GPU 并行计算的大量应用,对模型推断过程并没有太高的确定性要求。对于区块链来说,缺乏确定性往往意味着不同节点的执行结果无法完全一致,会不能通过共识过程。针对这些问题,Cortex 提出了系统的解决方案。

首先,将 AI 模型存入链上之前 Cortex 会对其进行量化与压缩。量化,是指合理地降低变量的精度,使其占用尽量少的存储空间,比如将浮点数变量简化为占用 2 比特的整形变量。这对模型的读取和执行的效率与成本都有极大改进。压缩,是指在保持模型精度的前提下尽可能减少模型对内存的需求。这些处理将大大减小模型对存储的需求,相应地能缓解传输、执行过程中对带宽和内存的压力。

为了实现模型的转换,Cortex 开发了专用的模型表示工具(MRT)。使用 MRT,目前可以将 MXnet 框架训练得到的浮点数模型转化为整形模型,后续会支持更多种模型框架训练的模型进行转换。转换过程中去除了浮点数,在节省计算与存储资源的同时也为执行的确定性提供了先决条件。原本在 nnvm 上执行的模型在经过 MRT 转换后将可以在 CVM 上执行。Cortex 团队对 9 个转换后的模型进行了测试,与未转换的模型相比,平均准确度损失不足 2% 。

除了对模型进行量化和压缩,Cortex 还开发了确定性的 AI 推断引擎—— Synapse 。这也是为了适应区块链这个特定的运行场景而进行的一项创新。Cortex 智能合约内的推断需要借助网络内的全节点执行,并对结果进行共识。不同节点的硬件、软件环境都可能不同,而且现代 AI 推断引擎需要借助大量 GPU 并行计算提高运行效率。异构运行环境和对执行顺序要求不高的执行方式都会增加结果的不确定性,但区块链无法容忍不确定性,即使执行结果有细微的不同也无法通过区块链的共识。Synapse 的 AI 推断执行过程同样借助 GPU 并行计算进行加速,但子例程的执行是确定的、可验证的。

从以上的介绍可以发现,虽然很多组件继承自以太坊,但为了兼容 AI 模型,Cortex 做了大量改进。 比如 CVM 除了加入推断指令外,还集成了确定性推断引擎 Synapse。根据对 CortexTheseus 与 go-ethereum 代码的对比可以发现,Cortex 在以太坊的基础上添加了近四十万行代码,占代码总量的近 40% 。Cortex 整体代码注释率约 22% ,注释率较高。而以太坊 geth 客户端注释率约为 14% ,用于深度学习的 MXNet 框架的注释率约为 29% 。完善的注释会提高代码的可读性,为代码的审核、修改与维护提供方便。

为了保证算力的分散,Cortex 使用 Cuckoo Cycle PoW 共识机制。这是目前最能抵抗 ASIC 的 PoW 共识机制之一。由于对内存要求很高,所以 ASIC 芯片对哈希算法的加速并不会产生太大的优势,这样确保了算力不会过于集中,普通人也可以参与挖矿。目前 Cortex 网络的出块时间约为 15 秒,区块奖励为 7 CTXC。

助力和激励 AI 模型开发者

除了对模型存储和使用过程的优化,Cortex 的另一个亮点在于对 AI 模型开发者的激励。Cortex 会自带一个 AI 模型平台,所有上传的模型将会在平台上进行排名。排名高的模型单次调用得到的收益也会更多。这能更好地激励开发者向平台上贡献更多更好的模型。

这里需要提到 Cortex 的费用系统,这一系统也是以以太坊的 GAS 为基础。用户使用智能合约需要依据智能合约消耗的系统资源给矿工付费。不同之处在于,Cortex 中产生的转账费用除了支付给矿工之外,还有一部分会分给合约所使用 AI 模型的拥有者。排名高的模型会得到更多的奖励,这种设计意在激励更多开发者上传更多高质量的模型,丰富 Cortex 的模型生态。Cortex 生态内的费用单位为胺多酚(Endorphin),每一单位的胺多酚与 CTXC (Cortex 代币)的价格比率将由市场动态决定。

目前 Cortex 主网已经上线,由于继承了以太坊 geth 的基础架构,所以很多以太坊的开发工具稍加改动也可以供 Cortex 开发者使用,如 Remix IDE 。目前,钱包客户端、区块浏览器等组件已经可以使用,项目的主要代码也已完全开源。从浏览器中可以发现,Cortex 网络运行良好,目前有 27 个 AI 模型可以使用。

Cortex 在应用领域的首选发力点,将是当下火热的 DeFi 方向。金融领域本来就是大数据、AI 模型重要的应用场合。无论是根据用户的行为进行征信计算、还是通过实时数据给出投资策略,都将是 Defi 领域 AI DApp 大显身手的机会。区块链天生的数据透明属性将为模型提供真实可信的数据集,模型的优劣将通过推断结果的准确性被公之于众。而金融应用的吸金效应也将为优秀模型的训练者提供足量的经济激励。

AI 智能合约、AI DApp 将给去中心化世界带来前所未有的能力。智能合约将可以处理更多样、更模糊的输入,并给出更智能的输出。推荐系统、搜索引擎、模式识别都有了去中心化的可能。虽然 AI 区块链还面临着数据隐私、执行效率等各种各样的问题,但 Cortex 的尝试已经迈出了最难的第一步,区块链的未来从此有了更大的想象空间。

—-

编译者/作者:链闻

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...