FATE联邦学习框架简易使用实践

本文档详细介绍了Federated Learning and Privacy Protection Framework (FATE) 的使用流程,包括环境准备、数据上传、模型训练、模型部署和在线推理。首先,确保FATE框架正常运行并通过官方示例验证。接着,利用`flow`命令上传数据、配置并提交任务。训练完成后,部署和加载模型,并进行在线推理操作。整个过程清晰地展示了FATE在隐私保护计算中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、开始

开始之前,先确保部署的FATE框架运行正常 (部署指南),可以使用官方的几个示例进行测试,若检查无误后,则可以开始正式使用。

二、框架基本流程

对于集群部署情况,先根据不同的部署方式,进入对应的框架环境内,如使用docker-compose部署,则先进入对应容器内:

docker exec -it confs-<party-id>_client_1 bash

在FATE框架中,在终端中使用 flow 命令执行FATE提交任务等相关操作。执行的任务会在FATEBoard中显示出来。训练模型的参数需要写在json文件中,下面进行介绍。

1.上传数据集

要训练任务,自然是要数据的,通过以下命令上传数据集:

flow data upload -c uploadconf.json

uploadconf.json的格式如下:

{
  "file": "housing_1_train.csv",
  "table_name": "homo_housing_1_train",
  "namespace": "homo_host_housing_train1",
  "head": 1,
  "partition": 16
}

注意其中的table_name以及namespace,在之后的两个json文件中,需要注意与之对应。

2.上传conf配置以及dsl配置

conf配置用于设置参与训练的节点方、具体算法的参数调整等。dsl文件则用于定义任务流水线形式。可以先查看官方的线性回归以及逻辑回归案例,在其基础上修改成自己想要的运行形式。

配置完成后,使用以下命令上传配置至框架系统中:

flow job submit -c xxxconf.json -d xxxdsl.json

此时,若以上配置均正确,则系统将会开始训练模型,等到FATEBoard内任务均显示success后则训练完成。

3.部署模型与加载

在提交conf和dsl文件后,终端内会输出模型的版本和id,通过以下命令部署模型:

flow model deploy --model-id <模型id> --model-version <模型版本>

修改加载模型的配置后,使用以下命令加载:

flow model load -c fateflow/examples/model/publish_load_model.json

修改绑定模型的配置后,使用以下命令绑定:

flow model bind -c fateflow/examples/model/bind_model_service.json

此时模型应该已经可以实际使用了,此时向{SERVING_SERVICE_IP}:8059/federation/v1/inference发送对应的参数,其将返回一个在线推理的结果:

$ curl -X POST -H 'Content-Type: application/json' -i 'http://192.168.7.2:8059/federation/v1/inference' --data '{
  "head": {
    "serviceId": "test"
  },
  "body": {
    "featureData": {
        "x0": 1.88669,
        "x1": -1.359293,
        "x2": 2.303601,
        "x3": 2.00137,
        "x4": 1.307686
    },
    "sendToRemoteFeatureData": {
        "phone_num": "122222222"
    }
  }
}'

output:

{"retcode":0,"retmsg":"","data":{"score":0.018025086161221948,"modelId":"guest#9999#arbiter-10000#guest-9999#host-10000#model","modelVersion":"202111240318516571130","timestamp":1637743473990},"flag":0}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值