Дослідження текстових векторів, частина 2
Використовуючи функцію return_weights(), яку ви написали у попередній вправі, тепер ви дістанете найважливіші слова з кожного документа у текстовому векторі, повернете список індексів слів і використаєте цей список, щоб відфільтрувати текстовий вектор до цих топслів.
Ця вправа є частиною курсу
Передобробка для машинного навчання в Python
Інструкції до вправи
- Викличте
return_weights(), щоб повернути слова з найбільшими вагами для цього документа. - Викличте
set()для повернутогоfilter_list, щоб прибрати дублікати чисел. - Викличте
words_to_filter, передавши такі параметри:vocabдля параметраvocab,tfidf_vec.vocabulary_для параметраoriginal_vocab,text_tfidfдля параметраvectorі3, щоб узятиtop_n3 зважені слова з кожного документа. - Нарешті, передайте множину
filtered_wordsуlist, щоб використати її як фільтр для текстового вектора.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
def words_to_filter(vocab, original_vocab, vector, top_n):
filter_list = []
for i in range(0, vector.shape[0]):
# Call the return_weights function and extend filter_list
filtered = ____(vocab, original_vocab, vector, i, top_n)
filter_list.extend(filtered)
# Return the list in a set, so we don't get duplicate word indices
return ____(filter_list)
# Call the function to get the list of word indices
filtered_words = ____(____, ____, ____, ____)
# Filter the columns in text_tfidf to only those in filtered_words
filtered_text = text_tfidf[:, list(____)]