Подскажите как сравнить два текста?

Может какой то хитрый алгоритм есть или сервис с бесплатным API для сравнения.

 

Критерии сравнения?

 

Я даже не знаю какие критерии могут быть. Сейчас я сравниваю по ключевым словам мол если есть совпадения двух ключей то я говорю что текст схож. В таком подходе просто гиганское количество ошибочных результатов
— Добавлено —
Тестил и similar_text и левенштейна не то

 

Так вы сами для себя тот определили критерии сравнения. Если нет — то кто ж вам поможет?

 

Есть два текста text_1 = «В Москве началась настоящая зима, идёт снег и на улице мороз», text_2 = «В Россию пришла зима с настоящими морозами, в Москве идёт снег». Вот это два одинаковых текста по смыслу но только слова переставлены.
— Добавлено —
При анализе по ключевым словам я определю но если добавить например третий текст. text_3 = «Этой зимой в из-за обилия снега в Москве не смотря на мороз будут строить различные горки».. Ключи использованы теже самые но текст совершенно другой.

Москва, снег, мороз, зима

 

ну ты загнул….
подключай какой-нибудь AI

 

Проблема что я в этом ни чего не понимаю. Пытался когда то прикрутить PHP ML но так и не понял что к чему. Такой вариант самый логичный был бы для меня. Я в базе ищу совпадения по ключам, если нахожу совпадение отправляю например по API эти два текста что бы проверить совпадают они или нет. Но не могу найти ни чего подходящего

 

а кому сейчас легко?

 

А FullText-индексы не получится использовать?

 

для сравнения не подскажу, на морфологический разбор (если то поможет) поищи на пхпклабе, там чел что-то могучее выкладывал и поддерживал долгое время когда-то.

 

Целый день гуглил по машинному обучению. Чуток подразобрался в итоге родилась такая идея.
Есть вот такая мысль сравнивать сначала первый текст со вторым по словам если есть вхождение слова то присваивать +1 если нету то -1 потом местами поменять и проделать тоже самое, после чего тупо всё сложить. Если в итоге сумма больше 0 это похожий текст если сумма меньше 0 то это новый текст. Есть у кого нить мысли по этому поводу.

 

На примере опять же 2 теста.
1. Я иду домой = — 8
2. Я иду в магазин — 9
Итоговая сумма минус 17 что меньше 0 следовательно текст разный
— Добавлено —
или вычитать из большего текста меньший и смотреть ни тяговую разность

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *