tensorflow其实没多难,感觉在理解了维度问题以后,慢慢的就懂了。
经过embedding层,embedding_output = tf.nn.embedding_lookup(embedding_mat,self.xdata)
embedding层的目的是要将data表示为lstm可以输入的onehot数据。
如果data的shape为(100,50),在lstm中,100是batchsize大小,50是你将来要表示成time的,这50中的每一个都要用向量表示,所以,embedding_output的shape应该是
100*50*每个词的维度,这样embedding_mat就要表示为词汇表大小*每个词的维度,比如5000*128.
embedding_output shape为100*50*128 50就是你的timestep,128是每个数据的词汇量大小,100就是batchsize。
tensorflow学习的时候,关键是数据的维度,其它都很简单。