问题描述
一些背景:
我将数据构造为形状为(15637,31635)
的TFIDF向量,这是该向量到LSTM
层的输入。我的词汇表中最长的单词是305
个单词,每个TFIDF
向量的长度为31635
,因为语料库中的总词汇量有很多单词。
每个15637 sentences
是TFIDF
形式的(31635,)
向量。
我使用的是TFIDF,而不是预先训练的embedding
层。
No_of_sentences = 15637
BATCH_SIZE = 64
steps_per_epoch = 15637/64 = 244 (with remainder dropped)
vocab_inp_size = 31635. #These were tokens created by Keras tokenizer. and are the distinct words in the input corpus
vocab_tar_size = 4. #This is One-Hot encoding of target value
。
下面的代码首先创建tensor slices
,然后分批tensor slices
,最后enumerates
每个batch
批处理,以给出tuple
的形式:{{1} }。
(batch,(input_tensor,target_tensor))
问题:
我没有使用预训练的嵌入层-而是每个句子的TFIDF向量。我没有从输入中删除停用词-因此TFIDF会降低整个语料库中过于频繁的所有词的大小。
比方说,我只使用keras标记程序创建的标记(而不对上面解释的句子使用TFIDF向量)。从理论上讲,这是一个不错的选择。.您怎么看?
注意:31635是语料库的大小(所有句子中单词的总数)。因此,每个句子的长度为31635,但是由于我输入的最长句子约为300个单词,因此大部分都是稀疏的(填充)。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)