问题标签 [tensorflow-federated]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
tensorflow - tensorflow-federated 是否支持动态批量大小?
tensorflow-federated 是否支持为不同的模拟设备分配不同的批大小,并为不同的时期改变批大小?
tensorflow - 如何直接从 GitHub 或本地下载安装联合的 Tensorflow?
我想访问来自 TensorFlow federated (tff.python.research) 的功能,这些功能在 pip3 安装方法中不存在。
我正在使用没有 bazel 的远程服务器,因此我无法从源代码构建。是否有其他方法可以从其 GitHub REPO 获取和安装 TFF 的最新工作版本?
tensorflow-federated - tensorflow-federated 是否支持将训练数据放在客户端?
很高兴看到 tensorflow-federated 现在可以支持分布式训练。我在这里提到了这个例子。但是,似乎训练数据在每个时期都是从服务器发送到客户端的,并且客户端(remote_executor_service)不包含任何数据集。它不同于典型的联邦学习场景。所以我想知道我可以将训练数据分别放在每个客户端上吗?
tensorflow-federated - 建立研究并将其用作研究项目的外部包
我想对量化/稀疏化进行一些研究,我想使用 run_experiment.py 脚本作为模板,因为研究不是 pip 包的一部分我想知道是否可以构建它我自己,然后将其作为依赖项重用(如在 run_experiment.py 中使用了一些来自研究的函数)。但是我不确定该怎么做。我不熟悉巴泽尔。我能够安装它并运行脚本,仅此而已。任何指导将不胜感激!或者,如果不可能,最好也知道!感谢您对此事的任何建议。
编辑:我使用 bazel 构建了一些东西,我把它放在了 bazel-bin 我现在不知道如何在我的脚本中重用它,好像我只是想以 python 方式
from research.compression import compression_process_adapter
或在我的脚本中类似的东西
tensorflow-federated - TFF:如何创建非 IID 数据集
我有 2 个班级,每个班级有 140 个示例,我有 4 个客户,我想创建一个像 McMahan 的论文一样的非 iid 数据集,如何将示例分成片段?
tensorflow-federated - TFF:模拟用户的随机样本时准确性没有增加
通过在每一轮中随机选择客户端来模拟 tff 代码,我发现准确率增加到 0.9,然后重复到 0.5,然后从 0.8 到 0.6,依此类推,并没有增加。你有什么想法吗?谢谢!
python - (已解决)Tensorflow 联合 | tff.learning.from_keras_model() 具有具有 DenseFeature 层和多个输入的模型
我正在尝试联合一个具有多个输入的 keras 模型。这些输入中的一些是分类的,其中一些是数字的,所以我有一些 DenseFeature 层来嵌入这些值。
问题是使用 tff.learning.from_keras_model()期望作为 input_spec 的字典只有 2 个元素 (x,y) 但我有多个输入,然后我必须在模型中区分它们才能使用 feature_columns 函数正确执行嵌入和 DenseFeature 层。
如果模型只接受“x”作为输入而没有正确的列名,我该如何处理单个特征列?
谢谢
这是代码和错误:
调用时出错:
preprocessed_example_dataset.element_spec:
tensorflow-federated - NameError:保存模型时未定义名称“FileCheckpointManager”
在模拟了图像分类的联邦学习代码之后,我想保存我的模型,所以我添加了这两行
所以这是我的所有代码:
但是确实出现了这个错误:
如果您告诉我如何解决此问题,我将不胜感激
python - 联邦学习训练期间模型性能没有提高
我按照这个 emnist 教程创建了一个图像分类实验(7 个类),目的是使用 TFF 框架在 3 个数据孤岛上训练分类器。
在训练开始之前,我将模型转换为 tf keras 模型,tff.learning.assign_weights_to_keras_model(model,state.model)
用于评估我的验证集。无论标签如何,该模型都只预测一个类别。这是可以预料的,因为尚未对模型进行训练。但是,我在每轮联合平均后重复此步骤,但问题仍然存在。所有验证图像都被预测为一类。我还在每一轮之后保存 tf keras 模型的权重,并对测试集进行预测——没有变化。
我已采取一些步骤来检查问题的根源:
- 检查 tf keras 模型权重是否在每轮后转换 FL 模型时更新 - 它们正在更新。
- 确保缓冲区大小大于每个客户端的训练数据集大小。
- 将预测与训练数据集中的类分布进行比较。存在类别不平衡,但模型预测的类别不一定是多数类别。此外,它并不总是同一个类。在大多数情况下,它只预测 0 类。
- 将轮数增加到 5 轮,将每轮 epochs 增加到 10。这是计算量非常大的,因为它是一个相当大的模型,每个客户端大约有 1500 张图像进行训练。
- 调查每次训练尝试的 TensorBoard 日志。随着回合的进行,训练损失正在减少。
- 尝试了一个更简单的模型 - 具有 2 个卷积层的基本 CNN。这使我能够大大增加 epochs 和 rounds 的数量。在测试集上评估这个模型时,它预测了 4 个不同的类别,但性能仍然很差。这表明我只需要增加原始模型的轮数和时期数即可增加预测的变化。这很困难,因为这会导致大量的训练时间。
型号详情:
该模型使用 XceptionNet 作为未冻结权重的基础模型。当所有训练图像都汇集到一个全局数据集中时,这在分类任务上表现良好。我们的目标是希望获得与 FL 相当的性能。
这是我的训练代码:
tensorflow-federated - TFF 加载预训练的 Keras 模型
我的目标是从 .hdf5 文件(它是一个 Keras 模型)加载一个基本模型,并继续使用联邦学习对其进行训练。以下是我为 FL 初始化基本模型的方法:
但是,似乎生成的 state.model 权重是随机初始化的,并且与我保存的模型不同。当我在任何联合训练之前评估模型的性能时,它作为一个随机初始化的模型执行:50% 的准确度。以下是我评估性能的方式:
如何使用保存的模型权重初始化 tff 模型?