0

我想用 ml5.js 或 Tensorflow.js 构建一个图像分类器。我希望用户能够添加自己的标签,即。训练模型。Daniel Shiffman 的迁移学习教程非常适合:https ://www.youtube.com/watch?v=kRpZ5OqUY6Y

但是,我希望多个用户能够训练相同的模型。人们会用自己的分类为同一个模型做出贡献。

理想情况下,一个参与者可以在 X 国使用他们自己的浏览器进行贡献,而另一个在 Y 国则可以。或者,至少,同一空间中的两个用户可以使用自己的浏览器进行标记。显示的图像可能来自 JSON 文件。

我已经使用 p5.js 测试了 Socket.io 的协作鼠标绘图,但这基本上是我在这种协作应用程序中的所有相关经验。那么:多个用户是否可以使用 Socket.io 或类似的东西来训练相同的 ml5.js/Tensorflow.js 模型?

热烈感谢您的任何建议!

4

2 回答 2

1

我曾经以一种简单的方式使用Mozilla 的TogetherJS,在任意数量的浏览器中协作添加到训练数据集。但是每个实例都需要在扩展数据集上运行 tf.fit。联邦学习将是避免所有这些冗余计算的下一步。

于 2020-06-21T10:17:35.197 回答
0

也许您不需要为此进行实时协作?用户可以从他们的浏览器中提供图像和标签并按下upload按钮。

客户端中可以有一个train按钮,告诉服务器重新开始训练。该模型仅在服务器上,因此每个人都可以为它做出贡献。

当服务器正在训练并接收到新train命令时,它只会发回一条消息already in training process

这样你就不需要socket.io ...

于 2020-07-10T15:01:43.927 回答