2017-10-22 79 views
1

我正在使用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

回答

1

那些是溫度超參數的只是不同的值。

This answer對本文中溫度的含義有很好的解釋。

+0

完美,謝謝! –