Testando a precisão sempre mais do que 99%

votos
2

Eu estou tentando implementar um modelo de linguagem usando LSTMs em Teano / keras. Minha rede funciona muito bem e eu também ver que a perda de treinamento diminui, mas a exatidão do teste é sempre acima de 99%, mesmo que eu não não treinar minha rede por muito tempo. I utilizaram vectores word2vec e incorporado os pesos da camada de incorporação. Minha rede se parece com:

model = Graph()  
model.add_input(name='input', input_shape=(n_train,), dtype=int)  
model.add_node(Embedding(output_dim=rnn_dim, input_dim=n_symbols, weights=[embedding_weights]),name = 'embedding',input='input')  
model.add_node(LSTM(output_dim=dense_dim,input_dim=rnn_dim), name='forward', input='embedding')  
model.add_node(Dropout(0.5), name='dropout', input='forward')  
model.add_node(Dense(output_size, activation='softmax'), name='softmax', input='dropout')  
model.add_output(name='output', input='softmax')  

sgd = SGD(lr=0.01, decay=1e-6, momentum=0.99, nesterov=True)  
model.compile(sgd, loss={'output': 'categorical_crossentropy'})  
print(Train...)  
model.fit({'input': X_train,'output': y_train},
      batch_size=128,
      nb_epoch=1,verbose=1)  

Os meus de formação de matriz e testes são formas: forma X_train: (100,000, 18) forma X_test: (10000, 18) forma y_train: (100,000, 998) forma y_test: (10,000, 998)

onde há 100000 treinamento e 10.000 sentenças de teste e cada frase contém 18 palavras. O número de classes para a saída é 998.

Alguém pode sugerir por que eu não poderia estar recebendo um erro de teste genuíno?

Publicado 03/03/2016 em 00:02
fonte usuário
Em outras línguas...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more