2016-03-30 1 views
0

Учитывая ряд фильмов с их соответствующими тегами (теги ключевые слова), как я могу вычислить TF или TF-IDF вектор для каждого фильма? Являются ли их способы сделать это автоматически, используя библиотеку в Graphlab или Python? Вот мой вклад:Вычислить TF для тегов на базы данных фильм питона/graphab

print HH_tag_5K 

    +---------+-----------------+ 
    | movieId |  tag  | 
    +---------+-----------------+ 
    | 2324 | bittersweet | 
    | 2324 | holocaust | 
    | 2324 | World War II | 
    | 357 |  Garath  | 
    | 260 | Science Fiction | 
    | 55267 | large family | 
    | 55267 | realistic | 
    | 55267 |  romantic | 
    | 55267 | Steve Carell | 
    | 55267 | the music | 
    +---------+-----------------+ 
    [194527 rows x 2 columns] 
    Note: Only the head of the SFrame is printed. 
    You can use print_rows(num_rows=m, num_columns=n) to print more rows and columns. 

Как на самом деле я думаю, что sklearn.feature_extraction.text.TfidfVectorizer является ответом на этот вопрос, но я до сих пор не понял, как использовать это для моей проблемы? Благодаря

Ref: Link to sklearn.feature_extraction.text.TfidfVectorizer

+0

Если вы сейчас просите о помощи с 'sklearn', отредактируйте заголовок, чтобы узнать об этом конкретно и удалить материал о' graphlab'. Это только правильная вещь. –

+0

Конечно, но для меня нет никакой разницы в том, что вы делаете это на 'graphlab' или' python'. – Yas

ответ

0

Вот способ сделать это с graphlab:

import graphlab 
sf = graphlab.SFrame({'movie_id': [1, 2, 3], 
         'title': ['the dog is brown', 
           'the cat is brown', 
           'the mouse is yellow']}) 
sf['tf_idf'] = graphlab.text_analytics.tf_idf(sf['title']) 

SFrame теперь есть еще один столбец, который содержит tf_idf словари. Ключи словарей - это слова в соответствующем заголовке, а значения - это оценки tf-idf.

+----------+---------------------+-------------------------------+ 
| movie_id |  title  |    tf_idf   | 
+----------+---------------------+-------------------------------+ 
| 1  | the dog is brown | {'brown': 0.40546510810816... | 
| 2  | the cat is brown | {'brown': 0.40546510810816... | 
| 3  | the mouse is yellow | {'is': 0.0, 'mouse': 1.098... | 
+----------+---------------------+-------------------------------+ 
[3 rows x 3 columns] 
Смежные вопросы