Zacznij terazZacznij za darmo

Tworzenie wektorów zdań i kolejnych znaków

To ćwiczenie kładzie szczególny nacisk na wartość przygotowania danych. Jako dane wejściowe wykorzystasz teksty zawierające frazy wypowiadane przez Sheldona z serialu Teoria wielkiego podrywu, a następnie stworzysz wektory indeksów zdań i kolejnych znaków – niezbędne przed zbudowaniem modelu generowania tekstu.

Tekst jest dostępny w zmiennej sheldon, słownik (zbiór znaków) – w zmiennej vocabulary, a hiperparametry chars_window i step mają wartości odpowiednio 20 i 3. Oznacza to, że do przewidzenia kolejnego znaku używana jest sekwencja 20 znaków, a okno przesuwa się o 3 znaki w każdej iteracji.

W środowisku załadowana jest również biblioteka pandas jako pd.

To ćwiczenie jest częścią kursu

Rekurencyjne sieci neuronowe (RNN) do modelowania języka w Keras

Zobacz kurs

Instrukcje do ćwiczenia

  • Podziel tekst według znaku nowej linii, aby iterować po zdaniach.
  • Przechodź pętlą do końca zdania pomniejszonego o chars_window.
  • Dodaj do zmiennej sentences fragment zdania o długości chars_window znaków, a do zmiennej next_chars – kolejny znak.
  • Użyj uzyskanych wektorów, aby utworzyć pd.DataFrame() i wydrukuj jego pierwsze wiersze.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Instantiate the vectors
sentences = []
next_chars = []
# Loop for every sentence
for sentence in sheldon.____:
    # Get 20 previous chars and next char; then shift by step
    for i in range(0, len(sentence) - ____, step):
        sentences.append(sentence[i:i + ____])
        next_chars.append(sentence[____ + chars_window])

# Define a Data Frame with the vectors
df = pd.DataFrame({'sentence': ____, 'next_char': ____})

# Print the initial rows
print(df.head())
Edytuj i uruchom kod