@@ -86,7 +86,7 @@ def __init__(self, fpath, batch_size=32, seq_length=100, train_ratio=0.8):
86
86
data = [self .char_to_idx [c ] for c in self .raw_data ]
87
87
# seq_length + 1 for the data + label
88
88
nsamples = len (data ) // (1 + seq_length )
89
- data = data [0 :300 * (1 + seq_length )]
89
+ data = data [0 : nsamples * (1 + seq_length )]
90
90
data = np .asarray (data , dtype = np .int32 )
91
91
data = np .reshape (data , (- 1 , seq_length + 1 ))
92
92
# shuffle all sequences
@@ -172,13 +172,13 @@ def sample(model, data, dev, nsamples=100, use_max=False):
172
172
y = tensor .softmax (outputs [- 1 ])
173
173
174
174
175
- def evaluate (model , data , batch_size , seq_length , dev ):
175
+ def evaluate (model , data , batch_size , seq_length , dev , inputs , labels ):
176
176
model .eval ()
177
177
val_loss = 0.0
178
178
for b in range (data .num_test_batch ):
179
179
batch = data .val_dat [b * batch_size :(b + 1 ) * batch_size ]
180
180
inputs , labels = convert (batch , batch_size , seq_length , data .vocab_size ,
181
- dev )
181
+ dev , inputs , labels )
182
182
model .reset_states (dev )
183
183
y = model (inputs )
184
184
loss = model .loss (y , labels )[0 ]
@@ -217,8 +217,8 @@ def train(data,
217
217
print ('\n Epoch %d, train loss is %f' %
218
218
(epoch , train_loss / data .num_train_batch / seq_length ))
219
219
220
- # evaluate(model, data, batch_size, seq_length, cuda, inputs, labels)
221
- # sample(model, data, cuda)
220
+ evaluate (model , data , batch_size , seq_length , cuda , inputs , labels )
221
+ sample (model , data , cuda )
222
222
223
223
224
224
if __name__ == '__main__' :
0 commit comments