LSTM的输入方式是否正确

时间:2019-10-11 06:00:20

标签: python neural-network deep-learning lstm one-hot-encoding

  

整个代码运行正常,没有任何错误,我尝试应用   LSTM模型(甚至修改了层数和优化器,但   准确性保持不变)即使操纵数据(减少了   尺寸和输入,但没有变化)输入和   输出都是一个热编码的,例如:他是个好男孩。   total_vocab_size = 5输入= [1 0 0 0 0]输出= [0 1 0 0 0]现在   在下一次迭代中,输出成为输入。   谁能帮助我我要去哪里错了?我的输入方式正确与否还是   我应该尝试使用词嵌入吗?

text_data=open('thousand.txt','r')
text_data=text_data.read()
text_data=str(text_data)
text_data=text_data.lower()
text_data=text_data.split()
final_words=pd.DataFrame(text_data)
final_words=final_words.drop_duplicates(subset=0)
final_words=list(final_words[0])

text_data=[] # this was mandatory to avoid memory conflicts #
''' now we have the set of words'''
''' we will work towards seggregrating the sentences''' 
text_data=open('results.txt','r',encoding='utf16')
text_data=text_data.read()
text_data=str(text_data)
text_data=text_data.lower()
text_data=text_data.splitlines()

total_lines=text_data
text_data=[]


i=0
j=0
final_list_converted_to_matrix=[]
while i<10000:
    str1=str(total_lines[i])
    str1=str1.lower()
    str1=str1.split()
    ''' now out matrix is ready with the split words '''


    j=0
    while j<len(str1):
         lister=[]
         m=0
         while m<200:
             lister.append(0)
             m=m+1

         res=str1[j]
         k=0
         while k<200:
             if res==final_words[k]:
                 lister[k]=1
                 break
             k=k+1
         final_list_converted_to_matrix.append(lister)
         j=j+1

    i=i+3
    print(i)

0 个答案:

没有答案