【阅读笔记】联邦学习实战第5章——用FATE从零实现横向逻辑回归v1.8.0

发布时间:2023-10-17 09:00

目录

前言

1.Dock镜像部署FATE

1.1 安装Centos和虚拟机

1.2 安装Docker 和 Docker-compose

1.3 FATE安装

2.FATE编程范式

3.用FATE实现横向逻辑回归

3.1数据集获取

3.2 数据输入

数据转化配置文件

3.3 模型训练与评估

总结

参考链接


前言

FATE不过多介绍,本文主要是对《联邦学习实战》第五章的一个复现,由于书里面的FATE应该是v1.5.0之前的版本,现在FATE最新版已经是v1.8.0,一些路径,以及组件化配置的方式发生了改变,而且文中的方法是利用train_data去训练模型,同时也用train_data去评估模型,我们也在这里加了用test_data去评估模型的模块。

下面给出了跟FATE有关的三个网站,十分重要:

FATE官方网站

github

FATE文档

1.Dock镜像部署FATE

FATE支持Linux和Mac系统,支持单机部署、集群部署和KubeFATE部署三种方式,具体的部署安装请查看FATE的官方文档,对于Windows10系统,需要用虚拟机部署FATE,这里提供利用Docker镜像配置FATE单机部署的方法。

1.1 安装Centos和虚拟机

首先要安装Centos 7 的虚拟机,需要虚拟机的软件VMware,和Centos7的镜像文件。其中VM和Centos7都可以从网上下载。这里面推荐大家看这篇文章VMware16 的安装。

1.2 安装Docker 和 Docker-compose

这里直接提供两篇文章参考,没什么难度,按照提示操作即可,注意别开科学上网。

CentOS7 搭建Docker环境

centos7 部署docker-compose

1.3 FATE安装

官方文档:FATE单机部署指南

# 部署环境变量
export version=1.8.0

# 拉取镜像
wget https://webank-ai-1251170195.cos.ap-guangzhou.myqcloud.com/fate/${version}/release/standalone_fate_docker_image_${version}_release.tar.gz
docker load -i standalone_fate_docker_image_${version}_release.tar.gz
docker images | grep federatedai/standalone_fate

# 启动镜像
docker run -d --name standalone_fate -p 8080:8080 federatedai/standalone_fate:${version};
docker ps -a | grep standalone_fate

# 进入容器
docker exec -it $(docker ps -aqf "name=standalone_fate") bash

官方文档里有教如何测试是否安装成功的:

Toy测试:

flow test toy -gid 10000 -hid 10000

如果成功,会出现如下语句:

success to calculate secure_sum, it is 2000.0

单元测试

fate_test unittest federatedml --yes

如果成功,屏幕显示类似下方的语句:

there are 0 failed test

注意:可能由于版本变化,或者其他原因,我的v1.8.0的单元测试是会报错的,但不影响后续FATE的使用。

2.FATE编程范式

这个算是使用FATE的重点,我们主要介绍下组件化配置。

FATE构建联邦学习模型有两种不同编程范式

  • 组件化配置:模型训练拆分为不同的任务,每个任务以组建的形式通过有向无环图相连,联邦学习所需的配置参数在配置文件中定义。该模式中,用户只需自定义和提交配置文件,就可以直接执行联邦训练。

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号