Word2Vec
У цій вправі ви створите модель Word2Vec за допомогою Keras.
Корпус, на якому попередньо тренували модель, — це сценарії всіх епізодів телешоу The Big Bang Theory, розбиті на окремі речення. Він доступний у змінній bigbang.
Текст корпусу перетворено на нижній регістр, а всі слова токенізовано. Результат збережено у змінній tokenized_corpus.
Модель Word2Vec попередньо натреновано з вікном контексту 10 слів (5 до й 5 після центрального слова). Слова з менш ніж 3 входженнями видалено, використано метод skip-gram із розмірністю 50. Модель збережено у файлі bigbang_word2vec.model.
Клас Word2Vec уже завантажено в середовище з gensim.models.word2vec.
Ця вправа є частиною курсу
Recurrent Neural Networks (RNNs) для моделювання мови з Keras
Інструкції до вправи
- Завантажте попередньо натреновану модель Word2Vec.
- Збережіть
listзі словами"bazinga", "penny", "universe", "spock", "brain"у зміннійwords_of_interest, залишивши їх у такому самому порядку. - Ітеруйтеся кожним словом зі списку та, використовуючи метод
.most_similar()атрибутаwv, додайте перші 5 подібних слів доtop5_similar_wordsяк словник. - Надрукуйте знайдені топ-5 слів для кожного слова зі списку.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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
____