带Keras的LSTM文本生成:什么是多样性?

问题描述:

我正在使用Keras和LSTM进行小型文本生成项目。 Chollet的代码工作得很好。有人可以向我解释多样性步骤0.2,0.05,1.0,1.2吗?这里究竟发生了什么?提前致谢!带Keras的LSTM文本生成:什么是多样性?

for diversity in [0.2, 0.5, 1.0, 1.2]: 
    print() 
    print('----- diversity:', diversity) 

    generated = '' 
    sentence = text[start_index: start_index + maxlen] 
    generated += sentence 
    print('----- Generating with seed: "' + sentence + '"') 
    sys.stdout.write(generated) 

    for i in range(400): 
     x = np.zeros((1, maxlen, len(chars))) 
     for t, char in enumerate(sentence): 
      x[0, t, char_indices[char]] = 1. 

     preds = model.predict(x, verbose=0)[0] 
     next_index = sample(preds, diversity) 
     next_char = indices_char[next_index] 

     generated += next_char 
     sentence = sentence[1:] + next_char 

     sys.stdout.write(next_char) 
     sys.stdout.flush() 
    print() 

https://github.com/fchollet/keras/blob/master/examples/lstm_text_generation.py

那些是温度超参数的只是不同的值。

This answer对本文中温度的含义有很好的解释。

+0

完美,谢谢! –