注重版权,若要转载烦请附上作者和链接
作者:Joshua_yi
链接:https://blog.csdn.net/weixin_44984664/article/details/106205139
区块链和机器学习可以说是当下最火的几个词了
这两尊大佛怎么放在一块儿呢?
以下仅为菜鸡小编的一次区块链作业
简单谈了一下区块链和机器学习融合的应用
若有不正确之处,还请大神们指正🙏🙏🙏
摘要
自区块链诞生以来受到越来越多的人的关注。随着时间的推移区块链中的相关技术也愈加完善,同时区块链中所存储的数据也与日俱增,这表示其中蕴含的信息量也越来越多。要想将这些信息加以利用,一个突破口就是和机器学习和深度学习相结合。本论文就着重于将ML和区块链技术相融合,利用其对区块链中的数据进行分析和应用。
关键字: 区块链、比特币、 机器学习
abstract
Since the birth of the blockchain, a large number of people pay attention to it. With the passage of time, the related technologies in the blockchain is becoming perfect. At the same time, the data stored in the blockchain has also been increasing over time. To use these information, a breakthrough is to combine with machine learning and deep learning. This paper focuses on the integration of ML and blockchain technology, and uses it to analyse the data in the blockchain to produce some practical utility.
Keywords: blockchain,Bitcoin , machine learning
一、引言
1、选题背景
本学期学习了区块链技术与应用一课程,对区块链的相关技术以及相应的应用有了一定的了解。结合自己所学的知识,发现区块链在未来的一个发展方向是和人工智能领域相结。通过对区块链种海量的信息进行分析,可以帮助我们进行决策等操作。前人已经在区块链和人工智能结合的领域做出了一定的成果,下面是对他们的综述以及自己的一些理解。
2、回顾区块链
要说起区块链,对"区块链"一词的解释是必要的。在此之前需要对其起源------比特币进行说明,在早期的密码学圈子里,人们对于比特币的底层技术的称呼就是"比特币",用英文则是用"Bitcoin"指比特币的网络系统或者网络协议。
在之后的发展中人们将所有的底层技术比如,时间戳,工作量证明机制等合并起来,为了跟比特币区分,重新取了个名字叫Blockchain,翻译过来就成了"区块链",这就是"区块链"一词的来源。在这里需要进行说明强调的是区块链并不是一个单一的技术,而是一系列技术的集合。
我们从该词的命名方式上就大概可以知道,区块链是怎么工作的。通过一串的数字块, 每个块包含一定量的数据,通过"链"将这些数据块连接起来,形成一个分布式数据库。实际上这条"链"并不存在,而是由一个个哈希值链接成的。 一个新创建的块包含着从节点收集的很多信息,广播到网络上的每个节点,此时具有相同共识协议的节点就可以接受这个含有信息数据的块并将其添加到区块链中。每个添加的块均包含链中先前块的信息。也就说明,如果更改了某一个块,则该块之后的所有块也将无效。同时加上区块链总是承认最长的一条链,这一规则使区块链具有了不可篡改的特性。当然在不同类型的区块链中,达成新区的共识协议的策略可能有所不同。
当比特币用户向收款人发起转账过程时,简单来说会经历两个过程。第一个过程,在付款人生成交易信息之后,他需要使用通过椭圆曲线签名算法求得的私钥,对该场交易进行签名。有付款人进行签名的作用是确认交易信息来源的是否是交易发起方并且确定交易数据是否完整,防止该场交易的信息被其他别有用心的人伪造。需要注意的是当交易信息发生修改之后,原先的数字签名就会随之失效,需要重新生成新的数字签名。第二个过程,将该场交易的信息和生成的数字签名一起发送到整个比特币网络当中。此时,在此网络中并接收到信息的矿工就可以通过公钥解密该数字签名,来对该场交易进行验证。如果成功,可以证明这笔交易确实由付款人发起且交易信息未在某个过程种被其他人修改;否则该场交易无效,交易回滚到之前的状态。通过验证的有效交易将由该名矿工打包,上传至区块链。
二、机器学习和和区块链
本节总结了区块链和机器学习结合在比特币价格预测和交易实体分类两个方向上的应用的实验。
1、比特币价格预测
我们可以通过UTXO记录交易中的比特币数量来预测比特币价格。 Jourdan等人在2018年通过创建概率图形模型来预测UTXO的价格。 其中一个模型是块交易地址模型(BT-A),它是具有条件依赖结构的比特币块的固定图形模型。 块事务实体地址模型(BT-EA)作为BT-A的扩展,向每个地址添加了分类实体。 从图1中的仿真结果可以看出,就MSE,RMSE,MAE,RMAE四个指标而言,在除Exchange之外的所有类别中BT-EA模型表现均明显优于BT-A模型。
预测比特币价格的另一方法是使用贝叶斯回归作为"Latent source model" ,这是Shah等人在2014年首先所做的。“Latent source model” 旨在对价格变化的基本模式进行建模。 比特币价格 y y y是根据特征 x x x进行预测的,“Latent source model” 参考了下面所列的公式 P ( y ∣ x ) = ∑ k = 1 T P k ( y ) exp ( − 1 2 ∥ x − s k ∥ 2 2 ) μ k P ( y | x ) = \sum _ { k = 1 } ^ { T } P _ { k } ( y ) \exp ( - \frac { 1 } { 2 } \| x - s _ { k } \| _ { 2 } ^ { 2 } ) \mu _ { k } P(y∣x)=k=1∑TPk(y)exp(−21∥x−sk∥22)μk 需要对其中的参数进行说明的是,其中 s 1 , … … , s k s_1 ,……,s_k s1,……,sk是K个与不清楚的未估计的未知潜在源。