Intro tot LSTM’s

Introductie tot Deep Learning met Keras

Miguel Esteban

Data Scientist & Founder

Wat zijn RNN’s?

Introductie tot Deep Learning met Keras

Introductie tot Deep Learning met Keras

Introductie tot Deep Learning met Keras

Wanneer LSTM’s gebruiken?

  • Beeldbijschriften
  • Spraak naar tekst
  • Tekstvertaling
  • Samenvatten van documenten
  • Tekstgeneratie
  • Muziekcompositie
  • ...

1 Karpathy, A., & Fei-Fei, L. (2015). Deep visual-semantic alignments for generating image descriptions.
Introductie tot Deep Learning met Keras

Introductie tot Deep Learning met Keras

Introductie tot Deep Learning met Keras

Introductie tot Deep Learning met Keras
text = 'Hi this is a small sentence'

# We choose a sequence length
seq_len = 3

# Split text into a list of words
words = text.split()
['Hi', 'this', 'is', 'a', 'small', 'sentence']
# Make lines
lines = []
for i in range(seq_len, len(words) + 1):
  line = ' '.join(words[i-seq_len:i])
  lines.append(line)
['Hi this is', 'this is a', 'is a small', 'a small sentence']
Introductie tot Deep Learning met Keras
# Import Tokenizer from keras preprocessing text
from tensorflow.keras.preprocessing.text import Tokenizer

# Instantiate Tokenizer tokenizer = Tokenizer()
# Fit it on the previous lines tokenizer.fit_on_texts(lines)
# Turn the lines into numeric sequences sequences = tokenizer.texts_to_sequences(lines)
array([[5, 3, 1], [3, 1, 2], [1, 2, 4], [2, 4, 6]])
print(tokenizer.index_word)
{1: 'is', 2: 'a', 3: 'this', 4: 'small', 5: 'hi', 6: 'sentence'}
Introductie tot Deep Learning met Keras
# Import Dense, LSTM and Embedding layers
from tensorflow.keras.layers import Dense, LSTM, Embedding
model = Sequential()

# Vocabulary size vocab_size = len(tokenizer.index_word) + 1
# Starting with an embedding layer model.add(Embedding(input_dim=vocab_size, output_dim=8, input_length=2))
# Adding an LSTM layer model.add(LSTM(8)) # Adding a Dense hidden layer model.add(Dense(8, activation='relu'))
# Adding an output layer with softmax model.add(Dense(vocab_size, activation='softmax'))
Introductie tot Deep Learning met Keras

Laten we oefenen!

Introductie tot Deep Learning met Keras

Preparing Video For Download...