我想在tft.vocabulary创建的词汇表中添加一些单词,这些词汇不是训练样本的一部分(即<mask>和<pad>标记)。
我在文档中看到,tft.vocabulary函数可以接受一个参数,key_fn是这样说的:
如果您希望生成包含特定键的词汇表,则
提供key_fn。
但是,对于下面的key_fn,它仍然没有将<mask>和<pad>标记附加到词汇表中。
def _key_fn(x):
return tf.constant(['<mask>', '<pad>'])
vocab = tft.vocabulary(
words,
key_fn = lambda x : _key_fn(x),
top_k = config.VOCAB_SIZE
)发布于 2022-11-29 11:47:53
你想达到什么目的?
我不认为key_fn是相关的,因为它只会影响词汇表的排序(提供时还会影响顶部k)。
你能在附加信息后计算词汇表吗?
tft.vocabulary(tf.strings.join([words, <mask>, <pad>]), ...)
这将导致词汇表,包括添加的后缀。
https://stackoverflow.com/questions/71771353
复制相似问题