Всем привет. Есть проблема разбора текста.
Допустим имеем описание объявления о продаже авто.
"На мой взгляд самое лучшее соотношение цена качество у автомобилей 2006- настоящее время.
Хороший кожаный салон. Восемь подушек безопасности!
Шестицилиндровый надёжный двигатель.
Отличный стильный интерьер.
Причём хороший именно в том плане, что нет никаких современных заморочек и ты сосредоточен именно на вождение. На мой взгляд лучше что можно себе позволить За 500.000– 600.000 руб.
Люди не понимают сколько стоит этот автомобиль. Особенно это касается девушек.
Из характеристик который мне понравились больше всего: это полностью подогреваемое лобовое стекло! Фактически это триплекс усиленный металлической решеткой. Сколько камней прилетало в лобовое стекло. И не малейшего скола.
На нём вообще все стёкла толстые.
Задний свес сантиметров 30! Т.е. к любому бордюру можно подъехать!
Отличная шумоизоляция. Если сравнить с Mercedes то на уровне Е-класса.
Вообще все те кто мне встречался по дороге на японских автомобилях. Говорили: вот эта машина вот это видно металл! Те кто садился за руль говорили: едет!"
Из текста мы можем понять что:
1) Салон - кожаный
2) Двигатель - 6 цилиндров
3) Подушек безопасности - 8
ну и тому подобные логические умозаключения.
На входе у меня есть миллионы описаний, на выходе я хотел бы получить набор разобранных "тегов" типа кожаный салон и подобные.
Подскажите, какие технологии, инструменты для этого можно использовать, что почитать на эту тему? Как правильно подступиться к проблеме? Как вообще называется то что я хочу сделать?
Нужно понимать не на основании каких-либо заданных параметров, я хочу чтобы все теги самы были распознаны, скажем на основании похожих данных в других объявлениях.
Если в 100 объявлениях встретилась фраза - "кожаный салон", он помечается как отдельный тег и его дальше можно будет выделить из других объявлений, далее в полуавтоматическом режиме указать, что фраза "салон выполнен полностью из кожи" тоже соответствует тегу "кожаный салон" и тп.
Из того что мне подсказывали коллеги - попробовать бить текст на биграммы, триграммы (2 слова, 3 слова) писать в БД. Далее все следующие объявления прогонять по тому же принципу и выделять похожие биграммы в них.
Может быть есть у кого-то опыт в подобных системах. Подскажите.
Спасибо!
Спасибо за определение. Томитапарсер смотрел. Он работает на основании каких-то данных изначальных, по ним выцепляет факты, у меня обратная ситуация, на основе данных выбрать наиболее часто упоминающиеся детали и потом предположить что они являются фактами только потому что их часто употребляют(скорее всего это будет делаться в ручную). Но для начала я хочу увидеть что фраза "кожаный салон" употребляется в 1000 объявлений из 1кк, и скажу что это факт. Как-то так.