Когда использовать какую базу журнала для tf-idf? - PullRequest
1 голос
/ 06 мая 2019

Я работаю над простой поисковой системой, где использую формулу TF-IDF, чтобы оценить, насколько важно поисковое слово.Я вижу людей, использующих разные основания для формулы, но я не вижу объяснения, когда использовать какой.Имеет ли это значение вообще, и есть ли у вас какие-либо рекомендации?

Моя текущая реализация использует обычную функцию log () библиотеки math.h

1 Ответ

0 голосов
/ 06 мая 2019

Это не имеет значения, потому что выполняется следующее равенство:

log_a(x)/log_a(y) = log_b(x)/log_b(y)

Вы всегда можете конвертировать из одной базы в другую. Это на самом деле очень просто. Просто используйте эту формулу:

log_b(x) = log_a(x)/log_a(b)

Часто базы, такие как 2 и 10, предпочитаются инженерами, в то время как математики предпочитают натуральный логарифм.

Допустим, вы хотите отправить 2-логарифм 5,63, используя log(). Просто используйте log(5.63)/log(2).

Если вам это нужно, просто используйте эту функцию для произвольной базы:

double logb(double x, double b) {
    return log(x)/log(b);
}
...