Javascript 在浏览器中完全运行经过培训的PyTorch LSTM/GRU模型的最佳方法

Javascript 在浏览器中完全运行经过培训的PyTorch LSTM/GRU模型的最佳方法,javascript,pytorch,tensorflow.js,onnx,Javascript,Pytorch,Tensorflow.js,Onnx,我正在考虑在浏览器中完全运行经过训练的PyTorch模型(包含LSTM/GRU层)(没有后端),作为交互式博客文章的一部分。我已经研究了ONNX.js,这非常有效,但不适用于包含GRU层的模型。我看到有人在ONNX.js github上评论说,目前还不支持门控RNN,但那是半年前的事了,我找不到关于这方面的任何其他信息 除此之外,最好的选择似乎是在Tensorflow中重写模型并导出到Tensorflow.js 有更简单、更直接的解决方案吗 有一个描述了选项,但没有受到太多关注 总之,截至202

我正在考虑在浏览器中完全运行经过训练的PyTorch模型(包含LSTM/GRU层)(没有后端),作为交互式博客文章的一部分。我已经研究了ONNX.js,这非常有效,但不适用于包含GRU层的模型。我看到有人在ONNX.js github上评论说,目前还不支持门控RNN,但那是半年前的事了,我找不到关于这方面的任何其他信息

除此之外,最好的选择似乎是在Tensorflow中重写模型并导出到Tensorflow.js

有更简单、更直接的解决方案吗

有一个描述了选项,但没有受到太多关注

总之,截至2020年5月,只有两种选择:

1) ONNX.js,但其开发目前正在进行中

2) 将模型转换为Tensorflow


从技术上讲,还有第三个,不包括服务器。也就是说,在a中运行模型。

我只想尝试一下。使用单个LSTM层创建序列,然后将其导出。你不必训练它。如果您可以在Onnx上运行它并获得正确形状的随机输出,那么它应该可以工作。是的,我已经尝试过了,导出成功,但在Onnx.js中加载它时会出现错误。谷歌搜索这个错误,我发现有人说ONNX.js还不支持它。所以我想它在ONNX中是受支持的,但是javascript库不支持。ONNX是我见过的唯一一个成功的PyTorch javascript库,如果这不起作用,那么我会转向TensorFlow。当您以JavaScript为目标时,您的选择仅限于什么是有效的,而不是什么是最好的。如果我们可以在JS中运行所有东西,那就太好了,但老实说,这些模型可以快速增长,超过合理的下载大小。小模型在大问题上不是很有用。所以我不认为人们对人工智能非常重视JS。