Modele de generare a textului

Rețele Neuronale Recurente (RNN) pentru Modelare a Limbajului cu Keras

David Cecchini

Data Scientist

Similar cu un model de clasificare

Modelul de generare a textului:

  • Folosește vocabularul ca clase
  • Ultimul strat aplică un softmax cu unități de dimensiunea vocabularului
  • Folosește categorical_crossentropy ca funcție de pierdere
Rețele Neuronale Recurente (RNN) pentru Modelare a Limbajului cu Keras

Model exemplu cu Keras

model = Sequential()

model.add(LSTM(units, input_shape=(chars_window, n_vocab), dropout=0.15, recurrent_dropout=0.15, return_sequences=True))
model.add(LSTM(units, dropout=dropout, recurrent_dropout=0.15, return_sequences=False))
model.add(Dense(n_vocab, activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer='adam')
Rețele Neuronale Recurente (RNN) pentru Modelare a Limbajului cu Keras

Dar nu chiar un model de clasificare

Diferențe față de clasificare:

  • Calculează pierderea, nu și metrici de performanță (acuratețe)
    • Oamenii evaluează rezultatele.
    • Dacă nu sunt satisfăcătoare, se antrenează mai multe epoci sau se adaugă complexitate modelului (mai multe celule de memorie, straturi suplimentare etc.).
  • Folosit cu reguli de generare specifice sarcinii
    • Generare caracter următor
    • Generare un cuvânt
    • Generare o propoziție
    • Generare un paragraf
Rețele Neuronale Recurente (RNN) pentru Modelare a Limbajului cu Keras

Alte aplicații

  • Creare de nume
    • Nume pentru bebeluși
    • Nume noi pentru stele etc.
  • Generare text marcat
    • LaTeX
    • Markdown
    • XML etc.
    • Cod de programare
  • Articole de știri
  • Chatboturi
Rețele Neuronale Recurente (RNN) pentru Modelare a Limbajului cu Keras

Pregătirea datelor

Ilustrează procesul de pregătire a datelor pentru generarea textului. Transformă textul în secvențe de numere și împarte setul de antrenament în X și Y, păstrând secvențe de lungime fixă în X și caracterul următor în Y.

Rețele Neuronale Recurente (RNN) pentru Modelare a Limbajului cu Keras

Să exersăm!

Rețele Neuronale Recurente (RNN) pentru Modelare a Limbajului cu Keras

Preparing Video For Download...