Keras的文本矢量化不考虑符号
我试着对句子中的字符进行一次热编码。假设我的字母表是:Keras的文本矢量化不考虑符号,keras,text,Keras,Text,我试着对句子中的字符进行一次热编码。假设我的字母表是: alphabet = ['a','b','!', '#', '&'] 我使用: from tensorflow.keras.layers.experimental.preprocessing import TextVectorization vectorizer = TextVectorization(output_mode = 'binary') vectorizer.adapt([alphabet]) int_data = v
alphabet = ['a','b','!', '#', '&']
我使用:
from tensorflow.keras.layers.experimental.preprocessing import TextVectorization
vectorizer = TextVectorization(output_mode = 'binary')
vectorizer.adapt([alphabet])
int_data = vectorizer(['a', '#', 'c'])
print(int_data)
输出为:
tf.Tensor(
[[0. 0. 1.]
[0. 0. 0.]
[1. 0. 0.]], shape=(3, 3), dtype=float32)
vectorizer
正确地选择了字母表中的热代码a
,以及字母表中没有的热代码c
。但是,它不能正确地显示一个热代码。从返回的一个热编码向量的长度可以进一步看出这一点,热编码向量的长度应该等于字母向量的长度,但在这种情况下更短。它完全忽略了字母表中的符号
出了什么问题?如何修复呢?我可以手动编写一个热代码,但我更喜欢使用keras预处理功能