本文主要是介绍区块链赋能联邦学习,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、区块链是什么
1、区块链技术简介
区块链凭借其匿名、不可篡改、分布式等特征,在多个不可信的参与方之间, 提供了一种安全可靠的解决方案。区块链的本质是一种分布式账本,其最大的特征,是由传统的中心化方案变为分布式网络结构,通过非对称加密等密码学技术确保链上数据的安全;同时,通过共识机制、智能合约等,在多个不可信的分布式参与方之间,保证链数据的可靠性。
区块链技术特性:
(1)身份管理:区块链通过哈希地址以及权限认证等,实现对参与节点的安全管理;
(2)分布式账本:通过点对点传输、哈希算法、数字签名技术(密码算法)、共识机制从结构上保证各节点数据一致性。
(3)数据记录:借助非对称加密(如椭圆曲线)、哈希算法等技术,区块链上的数据具有透明、可追溯、防篡改等特性;
(4)激励机制:区块链通过激励机制,如数字货币,确保参与方共同维持区块链的运转;
(5)共识机制:共识机制是区块链在分布式节点间保证数据安全可靠的关键。通过共识机制,各个参与方对数据进行认证,可以有效降低数据被篡改的风险,确保链上数据的一致性。
区块链适用场景:
(1)存在去中心化、多方参与和写入数据的需求;
(2)对数据真实性要求高的场景;
(3)初始情况下相互不信任的多个参与者建立分布式信任的需求;
2、区块链技术面临的挑战
(1)计算和认证的效率问题
为了保障区块链这个分布式网络中各个参与方的数据一致性、数据安全性,通常采用数据签名、共识机制等技术实现,这些技术实现的计算开销影响了区块生成的效率,进而影响交易数据上链认证的效率。
(2) 智能合约的不完美性
智能合约的优点在于交易事务的自动化执行,不需要人为参与,只要满足智能合约代码所列出的要求即可,去除任何第三方干扰,进一步增强了网络的去中心化,会节省时间,降低成本,交易更准确,且无法更改。其缺点在于合约制定时有缺陷、完全实施有困难、是否符合法律法规。智能合约的“智能”需要进一步加强。
二、机器学习现状
1、传统机器学习
传统的机器学习算法依赖于一个中心化服务器上的数据集来训练模型,通常数据集越大,所训练的模型越准确。可能有如下问题:
(1)服务器需要从多个组织或机构收集数据,增加了用户数据隐私泄露的风险;
(2)如何获取更多的用户数据来训练更为精确的模型。
2、联邦学习
联邦学习(federatedlearning)是一种新兴的人工智能基础技术,其设计目标是在保障大数据交换时的信息安全、保护终端数据和个人数据隐私、保证合法合规的前提下,在多参与方或多计算结点之间开展高效率的机器学习。在大多数行业中,数据是以孤岛的形式存在的,由于行业竞争、隐私安全、行政手续复杂等问题,即使是在同一个公司的不同部门之间实现数据整合也面临着重重阻力,通过联邦学习,在模型训练和推理的过程中对交互数据进行加密运算,一定程度上实现了高效、准确的共同使用各自的数据。联邦学习通过迭代训练运算方式实现“数据可用不可见”、“数据不出门”,解决传统机器学习中心化依赖、数据隐私保护的问题,同时可引入更多组织或机构的数据加入,整体上提升模型质量。
3、联邦学习面临的挑战
(1)多个参与方互信问题
由于联邦学习的数据来自不同的组织或机构,彼此间缺乏信任,需要在多方不信任的基础上协作运算。
(2)安全风险
参与方提供的数据质量问题,数据背书问题,都可能影响整个机器学习任务模型的质量,进而影响联邦学习的结果保证。
(3)通信链路的可靠性
多方学习的数据在传输过程中被攻击或篡改都会影响最终联邦学习的结果。
三、区块链赋能联邦学习
联邦学习和区块链都是需要多方参与实现的,通过技术上的共识实现多方合作的可信网络,具有较好的互补性。从应用目标来看,联邦学习旨在创造价值,而区块链旨在表示和转移价值。区块链可从以下四个方面赋能联邦学习:
(1)区块链提供可信身份认证机制
通过区块链的授权机制、身份管理等,可以将互不可信的用户作为参与方整合到一起,建立一个安全可信的合作机制。
(2)区块链提供可信存储机制
联邦学习的模型参数可以存储在区块链中,保证了模型参数的安全性与可靠性。
(3)区块链提供数据安全共享机制
通过区块链的分布式账本特性,天然保证了联邦学习中多个参与方之间的模型参数数据一致性、模型参数数据同步与共享是安全的、可信的,保证交互的模型参数数据透明、可追溯、防篡改防伪造。
(4)区块链提供可信的贡献激励评估机制
联邦学习过程中,越多的参与方加入,越能体现数据结果的准确性。在模型训练完成后,根据本次训练过程中各参与者提供的训练数据的数量和质量发放奖励资源,并将奖励资源写入区块链中,利用区块链的公开透明特性,引入更多的参与方加入、同时提升参与方的配合程度。
四、处理流程
五、需要解决的问题
(1)区块链的性能问题
区块链“贵”在信任,“慢”得其所的思维限制了很多业务场景的使用,而提升性能的关键就是共识算法,而通用的共识算法,如PoW,BFT等都不一定能满足业务应用的需求,而结合业务的特点,通过研发优化或更换新的共识机制解决满足联邦学习的性能需求有一定的必要性,比如:通过各节点的模型参数准确率来作为共识算法的依据,多数参与方都在一个范围内就达成共识(需详细研究)。
(2)落地的难度
联邦学习和区块链都是需要多方参与才能完成的事情,需要在落地实施前考虑到多个参与方的协作意愿和共识,不然一切都是纸上谈兵。
这篇关于区块链赋能联邦学习的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!