注意:这个问题有一个关联的colab,并且基于^{
Tensorflow的文档并不完整,也不一定是最好的。文档页面简单地链接到.proto
文件(可能有一些注释,也可能有一个示例)并不少见。例如^{.proto
文件,供用户解密。你知道吗
这会使伪代码的转换成为一个冗长而复杂的过程,有时会让在api的“更高”级别工作的用户陷入困境。你知道吗
这就是^{
^{WALSModel
,运行i
迭代,并得到结果row_factors
/col_factors
)。相反,这段伪代码旨在演示如何运行WALSModel
,可能是在具有分片矩阵(对于大型输入矩阵可能需要)的分布式设置中。你知道吗
但是,这个伪代码不能为实现分布式的、分片的WALSModel
提供足够的指导。你知道吗
为什么?你知道吗
对于初学者来说,在定义更新操作之前,首先要提到应该共享输入矩阵:
_, row_update_op, unreg_row_loss, row_reg, _ = model.update_row_factors(
sp_input = matrix_slices_from_queue_for_worker_shard
)
伪代码变量matrix_slices_from_queue_for_worker_shard
没有说明用户应该如何尝试。你知道吗
伪代码中大间隙的进一步示例将在几行之后出现:
# model_init_op is passed to Supervisor. Chief trainer runs it. Other
# trainers wait.
sv = tf.train.Supervisor(is_chief=is_chief,
...,
init_op=tf.group(..., model_init_op, ...), ...)
在这个大的伪代码块中,提到了应该在哪里/如何设置首席培训师,或者如何让其他培训师等待。你知道吗
可以理解,这个伪代码是专门针对WALSModel
的,而不是针对队列训练器的。然而,考虑到^{.proto
文件),我们应该去哪里学习如何正确地实现它?你知道吗
因此,我开始尽我所能尝试填充这个伪代码(参见colab),很快就遇到了死胡同。你知道吗
如果您能提供任何帮助/指导来完成这个伪代码(分布式、分片的WALSModel
),或者在哪里阅读更多关于如何做到这一点的内容,我将不胜感激。你知道吗
可能会用到半相关的issue 26928,其中@walidk链接到tf.Estimator
版本的WALSModel
(WALSMatrixFactorization
)的一些test code,似乎有更多的代码用于分片,但由于它是Estimator
,与^{WALSModel
需要什么并不一定清楚。你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐