Существует множество алгоритмов, основанных на сравнительной частоте слов, используемых в кластеризации , анализе ключевых слов , tf-idf и т. д.
Обычно вам нужно вычислить частоту собственных слов из вашего собственного корпуса. Очень большие корпуса лучше, но, конечно, это требует много работы, места, времени и т. д. и отвлекает от текущей задачи.
Мне интересно, есть ли какие-либо поставщики веб-API, которые сделали все это за вас и предоставили программный доступ к частотным данным через Интернет.
Требования:
Чтобы получить относительную частоту слова «smartass» в 1 миллионе слов, выполните запрос:
https://api.datamuse.com/words?sp=smartass&md=f&max=1
Он выводит:
[{"word":"smartass","score":129630,"tags":["f:0.067229"]}]
Извлеките результат из возвращенного json, например, с помощью python (оценка НЕ считается):
import requests
_wait = 0.5
def get_freq(term):
response = None
while True:
try:
response = requests.get('https://api.datamuse.com/words?sp='+term+'&md=f&max=1').json()
except:
print 'Could not get response. Sleep and retry...'
time.sleep(_wait)
continue
break;
freq = 0.0 if len(response)==0 else float(response[0]['tags'][0][2:])
return freq
Вы можете звонить сюда 100 000 раз в день . Кажется, что это автоматически поддерживается, если вы запускаете один процесс, поскольку ответ имеет задержку, так что он составляет примерно 100 тысяч ответов в день.
Подсчеты взяты из корпуса Google n-gram.
Иззи
пользователь416
пользователь416
хиппитрейл
хиппитрейл
Иззи
хиппитрейл
Калеб
хиппитрейл
Контролируется радио