ConsenSys的 定量开发人员 Paul Lintilhac
目前,数据科学分析的温床研究领域是机器学习,一种使用算法研究大量数据的AI形式。 它用于从测序DNA到研究金融市场和脑机接口的所有事情。 有许多不同类型的机器学习,具有不同的数据要求和目标。 在过去的一年中,ConsenSys通过Alethio这样的项目推动了其分析和数据科学能力的发展 ,分析平台帮助用户实时地对区块链数据进行可视化,解释和反应。
区块链网络的不可改变的公共记录和分散性为数据科学家提供了一个令人兴奋的沙盒,提供了全新的数据分析和模式识别。 为了开始理解我们如何从这个看似混乱的数据环境中解脱出来,我们将首先描述由Consensys的数据科学家正在开发的两大类机器学习,并举几个例子来说明如何应用每种机器学习在实践中。
有监督学习与无监督学习
无监督学习涉及在大型数据集中查找模式并使用它们提取含义。 无监督学习模型本质上不具有预测性 - 尽管它们可以在更大的预测建模系统中发挥作用。 相反,无监督学习试图将庞大而复杂的数据集简化为更简单的高层次模式或主题。 然后可以将这些主题用作表征个别数据点的参考,并将它们放入有用的上下文中。
异常和新颖性检测系统是无监督学习模型的例子。 通过将大型数据集缩减为少量常见主题,可以了解特定交易或帐户点对于“正常”意味着什么。通过比较任何给定的交易或帐户与此正常的学习定义,我们可以确定与全球平均值相比异常程度(异常检测),或与最近的历史平均值(新颖性检测)相比。然后,可以使用这些异常检测系统来提醒用户,整个区块链或者特定子集的有趣账户或交易中是否发生了异常情况。 Alethio目前为交易,区块和账户提供异常检测系统。
由Alethio提供的其他类型的分析可以被认为是无监督学习,包括排名算法或影响分析,如页面排名。 虽然这些通常不被称为机器学习算法(而只是算法),但它们的确具有在数据集中查找整体模式并使用它们添加上下文的相同目的。
监督式学习试图采用一组具有已知特征的观测值,并利用它们估计每个观测值的其他一些变量(响应或标签)的相应值。 这可以分为两类:预测和分类。 试图使用历史数据来估计变量的未来价值(一种反应)被称为预测。 尝试使用关于实体的现有数据来确定该实体是否属于某个类别(分配“标签”)称为分类。
一般而言,区块链上的“知识”由可在链上获得的原始协议级数据组成,例如交易数据。 这些原始数据可以用于提取账户的特征,例如它们的总余额,平均交易频率,持有货币的平均年龄等。Alethio最近通过语义提升来增加协议级数据的努力扩大了“知道“超越协议层以包含应用程序级别的数据,例如合同是否为令牌,以及遵从哪种标准。 所有这些已知量都可以用作监督学习模型中特征的基础。
另一方面,未知数量(标签或响应)根据定义不是一条当前可用的链上数据;否则它已经被我们的数据管道知道并被捕获。 未知数量可能是某些上链数据的未来价值,例如某个未来某个账户的余额。 更常见的是,未知数量是根本不可用的某个价值。 如果您试图预测账户是否属于某个类别,例如分散交易,DOS账户或庞氏骗局,您需要关注这些数据。
![](https://cdn-images-1.medium.com/max/2000/1*kI9jx9RHxHyaTK01LtVz_A.png)
数据集的重要性
这是区块链上无监督学习的数据需求成为重要问题的地方(阅读:机会!)。 为了训练和校准监督学习模型,必须有一些大的初始数据集,其标签或响应值已知。 这校准了模型,以便预测的和实际的响应尽可能接近。 这意味着当新的观测值出现在响应未知的地方时,假设新观测值是由生成原始数据集的相似过程产生的,则预测值将接近真值。 一旦训练阶段完成并且模型被校准,则可以将其应用于响应未知的新观察值。
在价格预测的情况下,这意味着拥有大量的历史价格数据库。 在对账户进行分类的情况下,这意味着拥有已被标记为分散交易所,DOS账户或庞氏骗局的初始账户。
在这些分类示例中,用于培训的数据集中的标签通常只能通过大量工作才能获得。 一种可能性是从像coinmarketcap或etherscan这样的网站提取数据,构建ETL以从其他区块链业务导入有趣的数据,或者通过经过训练的研究助理的艰苦工作,他们通过浏览网页和分析源代码收集关于链上帐户的数据。
为了机器学习的目的,收集关于账户(元数据)的外部数据的重要性的实现是在ConsenSys创建一个名为Rakr的新发言的动机。 通过与网格中的Alethio和其他辐条和服务进行合作,Rakr希望为收集和分享这些有价值的元数据提供一个平台。 尽管将区块链元数据与原始链上数据集成的含义远远超出机器学习的范围,但这种用于监督机器学习的元数据的适用性将继续成为Rakr平台的主要用例。 通过将Alethio强大的分析平台与Rakr提供的有价值的元数据相结合,ConsenSys数据科学的应用将仅受限于想象力。
在实践中
ConsenSys制作的监督学习模型的第一个例子是由Alethio开发的Ponzi模型,在本文续篇中将对其进行更详细的描述。 该模型的开发奠定了Alethio未来许多分析可能性的基础。 Alethio希望在近期内将这种模式扩展到一个更普遍的欺诈模式。
更一般地说,在这个模型开发工作中建立的特征提取流水线可以被重新用于根据Rakr数据库中的一个标签对任何账户进行分类,包括账户/合同是交易所,艺术DAO,赌场,DOS相关账户等等。 随着Rakr提供的一组有趣的元数据不断增加,更多的新模型将成为可能。 随着Alethio的分析功能不断发展并创造出更多实用功能,这些模型将变得更加强大和多样化。
能够知道给定帐户是否为欺诈或与DOS攻击相关,对于管理以太坊网络的财务和网络风险至关重要。 如果我们想要生产能够提供有关新账户和最新行为数据的可操作见解的模型,它们必须满足特殊要求。 例如,我们必须确保它们实时更新,并且在模型运行时用于分类和预测的特征是可靠和完整的。 这意味着可以用于“旧”账户分类的某些功能,例如“合同是否最终自毁”,不能实时应用于账户。 由于该功能的价值可能会在未来发生变化,因此真正的价值在模型运行时并不真正知晓。
实时机器学习模型呈现出超越历史建模技术的独特挑战和机会。 有了这些说法,将账户分类为欺诈行为的能力超出了实时风险管理的范围; 分类模型即使在“过去”应用时仍然有价值。 能够准确分类历史欺诈对研究目的很有用,即使这些帐户不再活跃。 更一般地说,将标签附加到区块链上的账户允许用户定义区块链上的语义上感兴趣的账户子集(例如“ICO”或“交易所”),使区块链可基于人们关心的标准进行搜索。
创建一个有关链上实体的经验人类知识数据库已经是一项有价值且具有挑战性的任务,也是许多其他产品和服务的必要基础。 但是,迄今为止拥有超过3000万个以太坊账户和合约以及每天创建的约100,000个新账户,人类根本无法标记以太坊账户的全部历史记录,其中大多数账户没有有用的信息(如合同来源,网站,或任何其他识别信息),人类可以使用它们对它们进行分类或标记。 这就是为什么机器学习模型是至关重要的:因为它们具有无限可扩展性,并且可以用于仅使用表征链上行为的原始数据对帐户进行分类。
通过强大的分析和机器学习增强人们对区块链的了解,我们设想了一个区块链,其中每个账户和实体都丰富了有用的分类和属性,无论是由人类创建的经验模型还是由人类创建,或者由统计模型预测和创建。 这对于区块链知识的透明度和可访问性而言将是一个重大的进步,这是区块链技术蓬勃发展所必需的基本方面。
请留意Paul Lintilhac撰写的下一篇文章,其中将介绍Alethio最近的一项数据科学计划:庞氏模型。
https://media.consensys.net/using-machine-learning-to-understand-the-ethereum-blockchain-1778485d603a