У меня есть ...Как совместить ключевые слова/фразы в тексте?
- фиксированной большого набор (около 1000000) ключевых слов и фраз, как
birthday
,happy new year
,vacation
и т.д. - некоторых переменной текста от 10 до 500 слов.
Я хотел бы ...
- определить те ключевые слова/фразы, которые присутствуют в тексте (например,
Hi John, happy birthday to you.
матчиbirthday
), предпочтительно с некоторой информацией о количестве одинаковых матчей - допускать различия в грамматике (
vacations
должно соответствоватьvacation
,countries
должно соответствоватьcountry
) или «орфографическим ошибкам» (nodejs
==node.js
).
В сущности то похож, что Google делает для поиска (но они, вероятно, использовать способ более сложные методы) или Stackoverflow делает для сравнения тегов/поиск ответов.
В основном пользователь вводит какой-либо текст, и моя программа должна делать все возможное, чтобы предлагать релевантные ключевые слова.
В моем случае, алгоритм должен работать в основном на английском тексте, но также должны быть применимы и к другим языкам, как немецкий, итальянский, французский, испанский, ...
ли какой-либо библиотеки Linux/NodeJS существует что можно сделать? Или, по крайней мере, известный алгоритм?