IndexedDB 将tensorFlow.js模型(权重和偏差)加载到Web工作环境中的有效方法是什么

dhxwm5r4  于 2022-12-09  发布在  IndexedDB
关注(0)|答案(1)|浏览(209)

我正在用vanilla JS将tensorFlow模型加载到多个web-worker中
我曾尝试使用tf.loadLayersModel("indexeddb://model_name"),但它给出了“ReferenceError:window is not defined”错误。我知道web-worker没有访问window对象的权限,所以这并不奇怪。我尝试用self覆盖window对象,但它仍然抛出错误。
我的理解是web-worker可以访问 IndexedDB ,git hub https://github.com/tensorflow/tfjs/issues/2643https://github.com/tensorflow/tfjs/issues/3402上的一些帖子让我相信tensorflow确实支持web-worker内部的 IndexedDB (至少在保存时)。有办法做到这一点吗?
如果没有,是否有一种好的方法将模型编码到ArrayBuffer或SharedArrayBuffer中,以便有效地将数据上传到webworker上下文中?

mwg9r5ms

mwg9r5ms1#

我可以确认它适用于图模型-从indexdb加载到web worker是好的。我建议在tfjs git repo中打开一个问题,如果它适用于层模型失败的话。

相关问题