Youtube 网红老师带你看懂区块链的作用丨附中字视频

时间:2018-01-22

翻译/校对: Mika

本文为 CDA 数据分析师原创作品,转载需授权


观看更多国外公开课,点击"阅读原文"

Youtube 的科技网红Siraj以风趣幽默的方式讲解科技热点而备受追捧,在这期内容中他讲到了近年来大热的区块链。


附有中文字幕的视频如下:


区块链的作用



针对不方便打开视频的小伙伴,CDA字幕组也贴心的整理了文字版本,如下:



大家好,我是Siraj。这期我们讲讲不太一样的内容,那就是区块链,以及如何利用它来提升AI。



Internet Protocol Suite


万维网只诞生了几十年,而且发展了好几个数量级。我们共同定义了当中沟通的标准,称为互联网协议族(Internet Protocol Suite)


最低层的链路层把数据放到线上,然后互联网层发送数据,接着传输层保持数据,之后应用层进行抽象,以我们所熟知并喜爱的APP的形式。对机器这运行得很好,但是当中缺失了一层。



那么有哪种协议能让这一过程不仅仅是交换数据,而且还交换价值呢?


当下的主流方法在前因特网时代就已经发明了,需要使用到集中式的清算所。有时机器需要等很多天,才能实现款项的转移。但是在其他方面,它们相互间以难以置信的速度进行交流。如果它们能够相互发送微支付,就像电力、存储空间和计算,这些都无需中间人的介入。



比特币和其他加密货币能够解决这个问题。它们将作为用于值转移的第五个协议层。其背后使用的区块链技术使这一切都成为可能。区块链首次让机器同意进行值转移,而无需中央机构介入。


在现实世界中,如果我创作了一幅画,只有我自己拥有这幅画。但在互联网上,如果我创建了一幅数字绘画,你可以复制它,然后我们俩都拥有这幅画。如果不通过记录这幅画拥有权的中央服务器,我们没有办法证明谁拥有它。我们必须信任服务器,即中间人



但区块链让我们以分散的方式达成共识,从而避免坏人错误地宣称所有权。不仅仅用于绘画,还可以适用于任何资产,比如比特币。


如何用来改善AI


但怎么用它来改善AI呢?


一个用例是给数据集和机器学习模型赋予名声,如何知道你使用的数据和预先训练的模型是好的,并且没有被篡改呢?你要相信唯一的来源,除非使用区块链。


DeepMind使用区块链为医疗数据创建了一个公开可验证的审计**。当中记录了他们对患者数据的处理,因此患者能够知道他们的数据是否被使用以及当中的原因。一旦添加了数据被使用的记录就无法删除,这意味着患者可以验证是否有人篡改过任何条目。



另一个用于训练模型的P2P网络,除开使用AWS和谷歌云等服务训练AI,想象下一个**,人们可以出租多余的计算能力帮助他人训练模型,以获得TensorCoin作为报酬。或者是完全由AI运行的公司。


区块链让数据库分散化,如果AI存在区块链中没有人能够控制它。那么它能在网络上作为**实体存在。支付它所需要的服务,寻求最初的一系列规则。



一个例子就是自动驾驶汽车网络,完全由AI运行和维护。


让我们用Python构建简单的区块链,以便了解这个出色的数据结构的原理。


区块是什么


首先让我们定义下区块是什么。


为了简单易懂,可以说每个区块代表一个简单的交易,两台机器之间值的转换。根据一些重要的属性,对区块在其类别中进行定义。


序列号代表了其在一系列区块中的位置,时间戳表明其创建的时间。还储存了发送者定义的数据,以及两个哈希值。一个是前一个区块的哈希值,另一个是自己的哈希值。区块的哈希值具有双重目的。这是其唯一的ID,并验证数据的完整性。



这里我们使用了流行的加密哈希算法SHA256,为每个区块生成一个256位的签名。


如何生成区块


那么区块是如何生成的呢?


用户在交易中提供一些数据,所以我们将其作为生成函数中的唯一参数。由于每个区块都是有顺序的,我们必须提取上一个区块,找到这个区块的序列号和哈希值。也给它一个时间戳,因此我们知道它是何时产生的。


因此每个生成的区块通过储存其哈希值指向前一个区块。这是一连串的区块,区块链。


第一生成的块称为创世区块,我们通过编写硬代码在其函数中定义属性。我们就用它来对区块链初始化,并将其存储为内存列表。


还记得我曾说过,区块的哈希值既作为身份有能够验证其完整性。我们可以用哈希值来确定新产生的区块是否有效。



给出一个新区块,以及上一个区块。首先我们可以通过其序列号检查顺序,然后可以检查其上一个哈希值,是否与已经验证的前一个区块相符。最后计算新区块的哈希值,确保符合它存储的哈希值。如果通过检测,那就被验证了。


假设所有节点都存储了区块链的副本,我们需要有办法选择应使用哪个区块,以防它们间存在矛盾。假设两个节点生成了同一个区块数字,我们的解决方法是选择区块最多的区块链。因为它存在的时间更长,则更有可能是真实的区块链。



对于新的区块,我们会检查它在编码的方式上是否有效。如果它有更多的区块,则用新的代替我们的区块链。否则我们将认为其无效并拒绝。


因为每个节点均存储区块链的副本,而且当发生交易时会不断生成区块。我们需要某种方法保持每个节点的同步,为此当生成新的区块时每个节点会将该信息传播给其他节点。


当一个节点连接到新的节点,它会查询其最新的区块。当遇到比现有区块指数更大的区块时,它会将区块添加到现有的区块链上,或者查询其整个区块链。


我们可以对节点进行封装,从而用户和其他节点能够进行查询。这时要通过创建HTTP服务器。我们能够对一些**作创建端点。一种是在现有的区块链中列出所有的区块,另一种是将用户提供的数据作为参数,创建新的区块。还有一种是通过列出网络中所有其他节点,或者添加新的。


因此用户可以通过HTTP请求控制节点,然后它将通过P2P WebSockets与其它节点进行交流。



这就是我们简单的区块链。它很小,并不包括比特币区块链的所有功能。但它是一个例子。


Sybil 攻击


然而有一个我没讲到的关键特征,即工作量证明算法。面对Sybil攻击我们的区块链很脆弱,这是当不怀好意的人创建许多节点,在网络上获得不成比例的巨大影响。一旦他控制了51%的网络,他可以验证自己的交易,他可以对同一笔钱进行多次使用。



为了防止这种情况,比特币的挖矿节点进行大量的计算,审批每一笔交易,并获得比特币作为计算工作的报酬。


为了让新生成的区块被网络所接受,矿工必须完成工作量证明,当中包括区块中的所有数据,至少51%的节点必须达成共识,从而说明这个新的区块是有效的,能够被加入到区块链中。



那么坏人必须有比网络中半数更多的计算能力,对于比特币来说,这相当于更多的计算能力,要超过世界上500台最快的超级计算机的总和。没有人有那么多的计算能力,连马克·扎克伯格也没有。


这就是为什么比特币的网络仍然是安全的,即使达到50十亿美元市值。每周都会产生新的区块链用于不同的情况。



结语


当谈到区块链,要说的实在太多了。我们才刚刚开始探索,当我们用区块链作为改善AI的方式时会发生什么?


它可以帮助我们检测数据和模型的质量,当对其相互进行训练时能够创建P2P交换,创建之前不可能时间的业务,或者将AI发展的不同方面套现。甚至开发完全由AI运行的**组织机构。


更多精彩公开课内容

谷歌教你学 AI -第一讲机器学习是什么?

谷歌教你学 AI -第二讲机器学习的7个步骤

谷歌教你学 AI-第三讲简单易懂的估算器

初学者必读丨五分钟内教你如何学习Python

李开复-中国人工智能行业的发展现状

李飞飞-谷歌在AI领域的强势举措

五分钟带你看懂什么是区块链丨附中字视频

深度丨解读比特币背后的奥秘丨附中字视频



文章推荐

图片新闻

未受假波案影响 坚sir撑黄威有决心
未受假波案影响 坚sir撑黄威有决心
国安发战恒大海报 海报内容大曝光
国安发战恒大海报 海报内容大曝光
汇控派息回购政策不变
汇控派息回购政策不变
李晨晒童年照:简直真的是超帅了
李晨晒童年照:简直真的是超帅了
《World of Tanks》实境 AR 体验应用程序
《World of Tanks》实境 AR 体验应用程序
陈凯琳恨挑战演恶女

陈凯琳为服装品牌拍花生漫画系列造型照,可爱又有型格,配合她活泼开朗性格!曾被批评演技的她,自觉跟其中一位漫画角色很像,对自己有很多不肯定,有很多疑问。拍戏时常怀疑自己做得好不好?亦会找身边好友开解。相对男友郑嘉颖很有智慧,做戏时很有想像力,令他投入角色。陈凯琳喜欢挑战,有机会她想演霸道的角色,觉得有趣又富层次,有时又很神化,变成神婆,性格多元化。

警花逆车流狂奔数百米擒逃犯 才狂追过酒驾者(图)
警花逆车流狂奔数百米擒逃犯 才狂追过酒驾者(图)
容祖儿刘浩龙苦恋5年分手
容祖儿刘浩龙苦恋5年分手
GungHo 指定两名《龙族拼图》职业选手!公开奖品为职业执照的大赛资讯
GungHo 指定两名《龙族拼图》职业选手!公开奖品为职业执照的大赛资讯
冒名盗图骗感情 假高慧君诈财1.6亿
冒名盗图骗感情 假高慧君诈财1.6亿