- 博客(25)
- 收藏
- 关注
原创 Linucb学习例子
在这个简化的例子中,由于所有顾客的特征相同,LinUCB很快学会了菜品B是最适合的选择,因为它对于这类顾客来说具有较高的预期奖励。让我们设想一个餐厅推荐系统的场景,其中我们有三个菜品(臂),每个菜品都有其独特的吸引力,而顾客有不同的偏好(上下文)。为简化说明,我们将使用固定的数值代替随机生成的数据,并且假设所有顾客的特征都是一样的,即[1, 0]表示一位年轻的男性顾客。观察奖励:实际奖励是从臂B的真实收益函数得出的,即 y = [1, 0] · [0.8, -0.2] = 0.8。
2024-12-31 11:33:31
736
原创 UCB&Bandit 实现学习整理12.30p1
Contextual Bandits: LinUCB - 知乎meat_dish, # 荤菜veggie_dish, # 素菜gender_male, # 男gender_female, # 女breakfast, # 早饭lunch, # 午饭dinner # 晚饭])return xitems = [for t in range(T): # T个客人依次进入餐馆具体来说Linucb中的特征设计以及实现是否有什么要求呢?
2024-12-30 16:23:06
370
原创 多臂老虎机Multi-armed Bandit及其扩展学习
client 申请ec判断是否允许聚合目标从传统MAB寻找更好的变成避免部分最差的?分层FL能否降低复杂度?对于MDFL(Malicious Detecting Federated Learning)中上下文信息/向量的设计?(参与次数,拒绝次数,本地迭代次数,本地准确率?
2024-12-17 10:55:00
361
原创 Pysyft学习笔记,12Part X - 对MNIST进行安全的训练和评估
在构建机器学习即服务解决方案(MLaaS)时,公司可能需要请求其他合作伙伴访问数据以训练其模型。在卫生或金融领域,模型和数据都非常关键:模型参数是业务资产,而数据是严格监管的个人数据。在这种情况下,一种可能的解决方案是对模型和数据都进行加密,并在加密后的值上训练机器学习模型。例如,这保证了公司不会访问患者的病历,并且医疗机构将无法观察他们贡献的模型。存在几种允许对加密数据进行计算的加密方案,其中包括安全多方计算(SMPC),同态加密(FHE / SHE)和功能加密(FE)。
2024-04-08 23:03:18
493
原创 Pysyft学习笔记,11安全深度学习分类
在这种情况下,一种潜在的解决方案是以一种方式对模型和数据进行加密,以允许一个组织使用另一组织拥有的模型,而无需将其IP彼此公开。存在几种允许对加密数据进行计算的加密方案,其中最为人熟知的类型是安全多方计算(SMPC),同态加密(FHE / SHE)和功能加密(FE)。您对模型(神经网络)进行加密。然后,您与拥有自己的一些数据的客户联系,该客户希望访问您的模型以做出一些预测。中是标准的半诚实(译者注:honest-but-curious,指的是遵循协议但会试图窃取隐私信息的敌手)敌手模型中是安全的。
2024-04-08 22:35:40
1162
原创 Pysyft学习笔记,10安全聚合的联邦学习
20Learning%20via%20Trusted%20Aggregator.ipynb),我们在那里有一个“受信任的聚合器”,负责平均多个工作机的模型更新。现在,我们将使用新的工具进行加密计算,以删除此受信任的聚合器,因为它不理想,因为它假定我们可以找到足够值得信任的人来访问此敏感信息。在最后几节中,我们通过构建几个简单的程序来学习加密计算。在本节中,我们将返回到[第4部分的联合学习演示](因此,在这个笔记本中,我们将展示如何使用SMPC来执行安全聚合,这样我们就不需要“受信任的聚合器”。
2024-04-08 17:55:06
418
原创 Pysyft学习笔记,09加密程序简介
信不信由你,有可能使用加密数据进行计算。换句话说,可以在程序中对所有变量进行加密的情况下运行该程序!在本教程中,我们将逐步介绍加密计算的基本工具。特别地,我们将集中于一种流行的方法,称为安全多方计算。在本课程中,我们将学习如何构建一个可以对加密数字执行计算的加密计算器。
2024-04-08 17:43:01
485
原创 Pysyft学习笔记,08bis - 协议介绍
它是一个高级对象,其中包含分布在多个工作程序中的复杂计算的逻辑。协议的主要特征是能够在工作人员之间发送/搜索/取回,并最终部署到确定的工作人员中。因此,用户可以设计协议,然后将其上载到Cloud Worker,其他任何Worker都可以搜索,下载并在其所连接的Worker上应用其包含的计算程序。协议协调一系列计划,并将其部署在远方的工作人员上并一次性运行它们。现在我们已经完成了计划,我们将引入一个称为。
2024-04-08 16:59:56
226
原创 Pysyft学习笔记,07使用FederatedDataset进行联邦学习
看看拥有部分数据的工作机。类,该类旨在像PyTorch Dataset类一样使用,并提供给联合数据加载器。在这里,我们介绍了一种使用联合数据集的新工具。,它将以联合方式对其进行迭代。在这里,我们将获取的数据转换为。
2024-04-08 16:38:10
393
原创 Pysyft学习笔记,06Minst+CNN
因此,联合学习的兴起与数据隐私意识的传播紧密相关,并且自2018年5月起实施数据保护的欧盟GDPR成为催化剂。想法是,数据保留在其生产者(也称为_worker_)的手中,这有助于改善隐私和所有权,并且该模型在工作机之间共享。例如,一种直接的应用程序是在编写文本时预测手机上的下一个单词:您不希望将用于训练的数据(即,短信)发送到中央服务器。,现在我们发布了利用新的PyTorch 1.0版本提供了直观的界面来构建安全且可扩展的模型。我们将遍历示例的每个部分,并在不同的代码后着重标注。修改dataloader。
2024-04-01 18:40:27
476
原创 Pysyft学习笔记,04FedAVG
在这个玩具示例中,平均模型相对于本地训练的纯文本模型表现不佳,但是我们能够在不暴露每个工人的训练数据的情况下对其进行训练。我们还能够在可信任的聚合器上聚合每个工作人员的更新模型,以防止数据泄露给模型所有者。在未来的教程中,我们的目标是直接使用梯度进行可信聚合,以便我们可以使用更好的梯度估计来更新模型并获得更强大的模型。
2024-04-01 11:15:04
254
原创 Pysyft学习笔记03,高级远程执行工具
在上一节中,我们使用联合学习训练了一个玩具模型。为此,我们在模型上调用了.send()和.get(),将其发送到训练数据的位置,对其进行了更新,最后将其恢复。但是,在示例的最后,我们意识到我们需要进一步保护人们的隐私。也就是说,我们要在调用.get()之前对梯度进行平均。这样,我们将永远不会看到任何人的确切坡度(因此更好地保护了他们的隐私!!!FedAVG?
2024-03-31 23:58:49
255
1
原创 Pysyft学习笔记02,开始FL
它是训练深度学习模型的一种简单而强大的方法。考虑一下训练数据,一般它总是某种收集过程的结果:人们(通过设备)通过记录现实世界中的事件来生成数据。通常,此数据被聚合到单个中央位置,以便您可以训练机器学习模型。而联邦学习扭转了这一局面!你无需将训练数据带到模型(一个中央服务器),而是将模型带到训练数据(无论其位于何处)。这个想法允许创建数据的任何人拥有数据唯一的永久副本,从而保持对有权访问该数据的人的控制。很酷吧?#训练示例#2.1 一个玩具联合学习的例子'''让我们从一个集中式训练的玩具模型开始。
2024-03-31 23:09:37
303
1
原创 Pysyft学习笔记01,开始
相反,它们仅包含有关存储在另一台机器上的张量(带有数据)的元数据。这些张量的目的是为我们提供一个直观的API,以告诉其他机器使用该张量来计算函数。最后,就像我们可以在张量上调用 .send()一样,我们可以在指向张量的指针上调用.get()来恢复它!如您所见,Bob不再具有张量!他们已经搬回我们的机器了!这是我们第一个指向张量的。此时的bob._objects。张量的指针本身实际上并。时,它返回了一个称为。
2024-03-31 21:42:45
410
1
原创 Pysyft实验05(MINST识别)
这可能是由于在发送模型之前,模型对象的指针已经被取回到本地,导致远程对象被删除。通过这种方式,在每次迭代时,模型会被发送到数据所在的远程节点进行计算,计算完成后会自动返回本地。目前你的代码在每次训练迭代时都会发送模型到远程节点,这可能导致远程对象被覆盖或删除。通过这种方式,我们可以正确地在远程执行模型的前向和backward传播,同时避免了尝试在模型实例上调用。最后,你可以查看 PySyft 的官方文档和示例,了解更多联邦学习和远程模型训练的最佳实践。方法可确保在执行完远程计算后,模型会自动返回本地。
2024-03-28 19:46:35
967
1
原创 Pysyft实验2
本次实验没报错,但长时间没有输出,尝试i降低学习质量后也没有解决,如果有看到的大佬懂是为什么望不吝赐教,谢谢。代码参考:pysyft实战笔记 - 知乎 (zhihu.com)
2024-03-28 10:37:22
303
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅