Metin vektörlerini keşfetme, bölüm 2
Önceki egzersizde yazdığın return_weights() fonksiyonunu kullanarak, şimdi metin vektöründeki her belgeden en iyi kelimeleri çıkaracak, kelime indekslerinin bir listesini döndürecek ve bu listeyi kullanarak metin vektörünü bu en iyi kelimelerle sınırlayacaksın.
Bu egzersiz
Python'da Machine Learning için Ön İşleme
kursunun bir parçasıdırEgzersiz talimatları
- O belge için en yüksek ağırlıklı kelimeleri döndürmek üzere
return_weights()çağır. - Döndürülen
filter_listüzerinde yinelenen numaraları kaldırmak içinset()çağır. - Şu parametrelerle
words_to_filterçağır:vocabparametresi içinvocab,original_vocabparametresi içintfidf_vec.vocabulary_,vectorparametresi içintext_tfidfve her belgedentop_nolarak 3 en yüksek ağırlıklı kelimeyi almak için3. - Son olarak, metin vektörü için filtre olarak kullanmak üzere bu
filtered_wordskümesini bir listeye aktar.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
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(____)]