Tensorflow.js 是否有所有标识符的列表

Tensorflow.js is there a list of all the identifiers

我对 Tensorflow 有点陌生,我开始为一个项目使用 Tensorflow.js,但我 运行 遇到了几个问题:在许多领域 (s.a。激活、优化器、损失、指标等)我们可以使用字符串来引用满足我们需要的对象,对于某些我们可以使用直接对象引用(s.a。tf.losses.sigmoidCrossEntropy),我发现这个版本更容易,因为我找不到我需要的标识符,它必须存储在某个地方但它在哪里?是否有所有可能的标识符的列表? (我搜索了堆栈、google 和量化但我找不到任何东西...)

提前谢谢!

在官方文档的losses下你可以找到所有可能的损失函数。其他的也一样。

我不是 100% 确定,但它们中的每一个都应该能够用作字符串参考。

Tensorflow.js Layers 遵循 Keras API,因此您可以在 https://keras.io. For instance, https://keras.io/activations/ 列表 'softmax'、'elu' 的文档中找到所有字符串标识符等等

sebastian-speitel 的回答也是正确的,TF.js API docs 中显示的 class/function 名称与字符串表示之间通常存在 1:1 对应关系。

一个问题:Keras 使用 snake_case 字符串标识符,例如 hard_sigmoid,但在 TF.js 中我们需要小驼峰命名,例如hardSigmoid。 (大多数标识符都是一个单词,在这种情况下没有区别)。

我们当然应该在 TF.js API 文档中更好地记录这一点。在 https://github.com/tensorflow/tfjs/issues/1315.

跟踪

这不完全是“文档”,显然不是很容易找到,但至少它现在可以解决您的具体问题:https://github.com/tensorflow/tfjs/blob/f111dc03a87ab7664688011812beba4691bae455/tfjs-layers/src/keras_format/loss_config.ts#L16

类似地,对于其他字符串标识符(激活、度量、约束、初始化器和正则化器),请参阅 https://github.com/tensorflow/tfjs/tree/master/tfjs-layers/src/keras_format 下的相邻文件。

一般来说,这些应该与用于 Python Keras 的字符串标识符相匹配。例如,https://www.tensorflow.org/api_docs/python/tf/keras/losses/CategoricalCrossentropy 显示 name='categorical_crossentropy'。但是,TFJS 的实现可能与 Python Keras 的实现不同步(特别是,在过去一两年内在 Python 方面添加的任何新损失等可能未在 TFJS 中实现还没有)。