一,本周工作
聚合端部分:
修改get_ip()方法,之前的建立socket的方式无法获取服务器的ip,可能发生了转发?或者代理?
新方法直接让服务器调用命令行获取自己的ip
def get_ip():
r = os.popen("hostname -i").read()
r_list = r.split(" ")
return r_list[2]
def get_ip2():
#注意外围使用双引号而非单引号,并且假设默认是第一个网卡,特殊环境请适当修改代码
out = os.popen("ifconfig | grep 'inet addr:' | grep -v '127.0.0.1' | cut -d: -f2 | awk '{print $1}' | head -1").read()
return out
后端部分:
本周是最后一周,因此作为后端聚合端测试人员,做最终测试工作。帮助后端修改了传输数据错误的bug,也修改了保存文件时若未指定文件名的时候,给定default作为名字.
二,总结
经过整整三天的调试奋斗,终于卡着八号的尾巴拍好了视频,并且九号一直工作到凌晨三点该bug,终于按时把项目完成了。不过在今天的答辩中却吃了不少苦头,主要总结成以下问题:
1,异步分布式联邦学习可视化平台,我们将模型预测的准确度可视化了,但单一这个指标貌似并无意义,对于优化模型调参基本没有贡献,这是设计问题,一开始没就这个问题与老师商量清楚。
2,在最初设计时,可能为了好实现,降低了标准,一开始的开发是很容易,但感觉这种畏首畏尾限制了使用新技术来打成某种目的,相比其他小组,我们组确实未采用难度更高的技术,局限于对已有技术的重新使用。导致部分老师任务代码难度不够。
3,下一次系统面对这个项目,一定要抛开技术不足,好好的把握用户需求,后续难以完成再跟用户沟通,不能自降门槛。