Word2Vec
Neste exercício, você vai criar um modelo Word2Vec usando o Keras.
O corpus usado para pré-treinar o modelo é o roteiro de todos os episódios da série de TV The Big Bang Theory, dividido frase por frase. Está disponível na variável bigbang.
O texto do corpus foi transformado em minúsculas e todas as palavras foram tokenizadas. O resultado fica guardado na variável “ tokenized_corpus ”.
Um modelo de rede neural de sequência de palavras ( Word2Vec ) foi pré-treinado usando um tamanho de janela de 10 palavras para contexto (5 antes e 5 depois da palavra central), palavras com menos de 3 ocorrências foram removidas e o método do modelo skip gram foi usado com 50 dimensões. O modelo é salvo no arquivo “ bigbang_word2vec.model ”.
A classe Word2Vec já está carregada no ambiente a partir de gensim.models.word2vec.
Este exercício faz parte do curso
Redes Neurais Recorrentes (RNNs) para Modelagem de Linguagem com Keras
Instruções do exercício
- Carregue o modelo Word2Vec pré-treinado.
- Guarde um
listcom as palavras"bazinga", "penny", "universe", "spock", "brain"na variávelwords_of_interest, mantendo-as nessa ordem. - Repita cada palavra de interesse usando o método “
.most_similar()” presente no atributo “wv” e acrescente as 5 palavras mais parecidas a “top5_similar_words” como um dicionário. - Imprima as 5 palavras mais encontradas para cada uma das palavras de interesse.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Word2Vec model
w2v_model = Word2Vec.load(____)
# Selected words to check similarities
words_of_interest = ____
# Compute top 5 similar words for each of the words of interest
top5_similar_words = []
for word in words_of_interest:
top5_similar_words.append(
{word: [item[0] for item in w2v_model.wv.____([word], topn=5)]}
)
# Print the similar words
____