Word2Vec
Dans cet exercice, vous allez créer un modèle Word2Vec à l'aide de Keras.
Le corpus utilisé pour pré-entraîner le modèle est le script de tous les épisodes de la série télévisée The Big Bang Theory, divisé phrase par phrase. Il est disponible dans l'bigbang
.
Le texte du corpus a été converti en minuscules et tous les mots ont été tokenisés. Le résultat est stocké dans la variable tokenized_corpus
.
Un modèle d'Word2Vec
s a été pré-entraîné en utilisant une fenêtre contextuelle de 10 mots (5 avant et 5 après le mot central), les mots apparaissant moins de 3 fois ont été supprimés et la méthode skip gram a été utilisée avec 50 dimensions. Le modèle est enregistré dans le fichier bigbang_word2vec.model
.
La classe Word2Vec
est déjà chargée dans l'environnement à partir de gensim.models.word2vec
.
Cet exercice fait partie du cours
Réseaux neuronaux récurrents (RNN) pour la modélisation du langage avec Keras
Instructions
- Chargez le modèle Word2Vec pré-entraîné.
list
Stockez une chaîne de caractères «"bazinga", "penny", "universe", "spock", "brain"
» dans la variable «words_of_interest
», en conservant cet ordre.- Parcourez chaque mot d'intérêt en utilisant la méthode «
.most_similar()
» présente dans l'attribut «wv
» et ajoutez les 5 mots les plus similaires à «top5_similar_words
» sous forme de dictionnaire. - Imprimez les 5 mots les plus fréquents pour chacun des mots recherchés.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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
____