This commit is contained in:
yinkanglong
2021-05-18 17:22:20 +08:00
parent 767b3f49df
commit 620f20c64f
9 changed files with 53 additions and 19 deletions

View File

@@ -79,5 +79,5 @@
"xtr1common": "cpp",
"xutility": "cpp"
},
"python.pythonPath": "C:\\Python\\python.exe",
"python.pythonPath": "/usr/bin/python3",
}

View File

@@ -9,7 +9,7 @@ import sys
# Downloads MNIST dataset
mnist_trainset = datasets.MNIST(
root="../../官方教程/data",
root="./data",
train=True,
download=True,
transform=transforms.Compose(

View File

@@ -55,3 +55,8 @@ PySyft是用于安全和隐私深度学习的Python库它在主流深度学
3. 每个节点在训练自己的模型时都会更新其参数。训练过程完成后,每个节点会将其参数发送到主模型。
主模型采用这些参数的平均值并将其设置为新的权重参数,并将其传递回节点以进行下一次迭代。
## 说明
1. 联邦平均实现了一种同步平均的方法
2. 多段训练 没有实现联邦平均算法,没有聚合。
3. Mnist实例 没有实现联邦平均算法,只是依次训练

View File

@@ -47,7 +47,7 @@
"source": [
"epochs = 10\n",
"# We don't use the whole dataset for efficiency purpose, but feel free to increase these numbers\n",
"n_train_items = 640\n",
"n_train_items = 640 \n",
"n_test_items = 640"
]
},

View File

@@ -0,0 +1,9 @@
## 感悟
为啥非得把开始学习与这种无用的东西挂钩。烦死了。我现在需要把膏药运回宿舍。然后去买点东西吃个饭。
感觉好烦啊。周末玩的欲望,胜过一切。五月份又是无语的半个月。
总之还是从今天开始认真学习把。时间。。。确实不够了。六月末之前完成中期答辩。这是学长说的。完成这一阶段的任务,就要开始写
1. 毕设论文
2. 小论文
3. 最后的展示工程(或者说一个近似仿真的系统,怎么也得一两个月)

View File

@@ -0,0 +1,12 @@
## 计划
1. 完成virtual learning
2. 完善pysyft_websocket
3. 看完pytorch basic的一份视频教程
4. 数据处理部分开始。
## 收获

View File

@@ -1,26 +1,31 @@
## 任务
- [x] 四月份计划——tensorflow federated
- [ ] 四月份计划——pytorch——pysyft
- [x] 官方教程
- [ ] 相关博客实践
- [ ] 学弟的代码
- [ ] 自己实现
- [ ] 四月份计划——pytorch——basic教程整理完教程API文档layer、loss、optimizer整理完成
- [x] ~~四月份计划——pytorch——分布式教程(包括教程和API文章整理)~~
- [x] ~~四月份计划——pytorch——android教程包括教程和API文章整理~~
- [x] 四月份计划——pytorch——APIdoc
* [X] 四月份计划——tensorflow federated
* [X] 四月份计划——pytorch——pysyft
* [x] 官方教程
* [x] 相关博客实践
* [x] 学弟的代码
* [x] 自己实现
* [ ] 四月份计划——pytorch——basic教程整理完教程API文档layer、loss、optimizer整理完成看视频吧
* [x] ~~四月份计划——pytorch——分布式教程(包括教程和API文章整理)~~
* [x] ~~四月份计划——pytorch——android教程包括教程和API文章整理~~
* [x] 四月份计划——pytorch——APIdoc
## 收获
1. 我发现python机器学习这一套在linux下更好运行windows配置环境果然要麻烦一百倍。从今天开始将主要的工作环境转移到linux上边。算法的运行和学习都在linux上执行。去Windows上做一下收尾工作。
2. 当前的主要任务包括两个,一个是四月份未完成的计划。一个是五月份新开始的计划。
3. tensorflow federated已经学习完成了能够完成基本的联邦学习过程。因为与学弟合作的部分还是pytorch。今后最好使用pytorch进行开发吧。除非由绝对的优势不会回到tensorflow上了。
4. 学习了很多新的Python知识、掌握了pysyft框架的基本使用方法和一系列原理。主要目标有两个**使用、修改**。
1. Python的模块loggin、asynicio、argparse等、第三方模块websocket
2. pysyft的原理。worker通信原理和websocket实现send、receive、client、server、远程计算的实现planprotocol、加密算法的实现MFC同态加密、联邦平均算法的实现util.fed_avg(models))
3. pytorch的模块的使用。torch.nn,torch.function,torch.jit(实现了代码的序列化)
5. 从周一拖到现在本来应该是上周的计划到现在刚做完。问题就是为什么random.shuffle效率会提升太离谱了。总算是完成第一阶段集中式的问题了。今天怎么也得完成5月6号的任务。

View File

@@ -1,6 +1,9 @@
## 计划
- [ ] 四月份计划——pytorch 两个数据集训练
- [ ] 四月份计划——pysyft 两个数据集训练
- [X] 四月份计划——pytorch 数据集训练
- [X] 四月份计划——pysyft fake_federated_learning 数据集训练(直接使用学弟的代码,或者尝试写一点也行)感觉没什么必要,但是也可以根据
- [x] 尝试自己使用pysyft框架前几个章节给出的方法复现以下内容。
- [X] 四月份计划——pysyft websocket数据集的训练
- [x] 实现websocket的可扩展性。能够动态增加客户端的数量。
## 收获
## 收获

View File

@@ -24,7 +24,7 @@
"cells": [
{
"source": [
"## 1 np.ranoom.choice"
"## 1 np.random.choice"
],
"cell_type": "markdown",
"metadata": {}