Форум программистов, компьютерный форум, киберфорум
Наши страницы
Алгоритмы
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
necheyhin_a_v
3 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 60
1

Алгоритм степени схожести текстов по смыслу

14.02.2014, 09:59. Просмотров 1455. Ответов 10
Метки нет (Все метки)

Доброго времени суток уважаемые форумчане!
Имеется текст1, который является "шаблоном". Нужно проверить является ли текст2 схожим с текстом один! Например:
"Я вышел из дома и меня сбила машина. В темноте я ее не разглядел"
идентично по смыслу:
"Выходя из подъезда своего дома я был сбит автомобилем, который рассмотреть не удалось из-за темноты"
Смысл одинаков, но алгоритм какой-нибудь придумать не удается! Может кто что посоветует???
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.02.2014, 09:59
Ответы с готовыми решениями:

Алгоритм сравнения текстов
Нужно реализовать алгоритм для сравнения 2 текстов. Найти, и подсветить отличия второго текста от...

Алгоритм сравнения текстов с поиском одинаковых участков
Нужна идея (хотя бы) алгоритма сравнения 2х текстов, типа как утилита Windows Comander - >...

Подбор алгоритмов для вычисления схожести 2 текстов
Доброго времени суток! У меня стоит задача написания программы для поиска статей-дубликатов...

Определение степени схожести многоугольников
Есть два многоугольника в 3D, все грани, даже если они квадратные, бьются на треугольники,...

Написать программу, которая делит числа в 5 степени на число в 14 степени и выводит ответ в 5 степени. Найти ошибку
Ребят, такая проблема, задание: Написать программу, которая делит числа в 5 степени на число в 14...

10
gazlan
3162 / 1921 / 312
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
14.02.2014, 10:44 2
Поиск нечетких дубликатов. Алгоритм шинглов для веб-документов

В комментариях к статье найдете ссылки на оригинальный алгоритм, который Сегалович, похоже, сильно переврал.

Я, к слову, реализовывал упрощенную модель - с единственной хэш-функцией. Не сказать, что впечатлило.
0
necheyhin_a_v
3 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 60
14.02.2014, 10:59  [ТС] 3
Я смотрел в сторону этого алгоритма, но это не совсем то, что нужно! Этот алгоритм позволяет в процентном соотношении показать насколько один текст дублирует второй! Я специально привел примеры и как видно из них процент схожести этих двух текстов будет минимален! Было предположение, используя Самоорганизующие карты Кохонена кластеризовать оба текста и посмотреть расстояние между центрами векторов, но проблема возникла в кластеризации!
0
gazlan
3162 / 1921 / 312
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
14.02.2014, 11:27 4
Чем хэширование не кластеризация? Если вы знаете, как маскировать несущественные признаки, то совпадающий хэш и будет признаком принадлежности одному кластеру.
0
necheyhin_a_v
3 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 60
14.02.2014, 11:43  [ТС] 5
Хорошо! Объясню на таком примере:
Пример 1: "Автомобиль передвигается"
Пример 2: "Машина едет"

Как бы не сравнивал эти два примера, они даже близко не будут дублирующими, хотя и в одном и в другом примере говорится об одном и том же! Мне нужно подобие, а не дубликаты!
0
gazlan
3162 / 1921 / 312
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
14.02.2014, 15:37 6
Угу. Для этого нужен AI, понимающий семантику и способный к морфологическому анализу.

Уверен, Google хорошо заплатит за такой алгоритм.
0
necheyhin_a_v
3 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 60
14.02.2014, 15:44  [ТС] 7
Цитата Сообщение от gazlan Посмотреть сообщение
Угу. Для этого нужен AI, понимающий семантику и способный к морфологическому анализу.

Уверен, Google хорошо заплатит за такой алгоритм.
Кстати есть очень интересная тема, наших еще СССР-овских ученых. Модель называется "смысл-текст" Там разбирается довольно интересно 5 уровней:
Семантический
Синтаксический
Морфологический
Фонологический
Фонетический
Но разбирается в некоторых местах неточно и только в направлении от смысла к тексту!
А по поводу AI - нужен настоящий AI, а не те, которые сегодня существуют! Существующие нейронные системы в основном предназначаются для распознавания, ну еще анализа схожих данных не более
0
Igor3D
1227 / 594 / 74
Регистрация: 01.10.2012
Сообщений: 2,844
14.02.2014, 22:42 8
Цитата Сообщение от necheyhin_a_v Посмотреть сообщение
Хорошо! Объясню на таком примере:
Пример 1: "Автомобиль передвигается"
Пример 2: "Машина едет"

Как бы не сравнивал эти два примера, они даже близко не будут дублирующими, хотя и в одном и в другом примере говорится об одном и том же! Мне нужно подобие, а не дубликаты!
Пример правда отличный. Ну тогда надо как-то научиться выделять как минимум подлежащее и сказуемое, в желательно еще и дополнения. И это не выглядит реальным. Не, ну если Вы посвятите этому многие годы своей жизни - то может что-то и получите, но может и нет.

Если же речь идет о конкретной/профессиональной работе/заказе, то вопрос должен звучать так; "ищу либу/тул который делает <это>. Если кто знает - посоветуйте и вкратце опишите возможности". Потому что это не то что можно придумать с нуля, ресурсы любого человека ограничены.

Понимаю что мой ответ не несет для Вас никакой пользы - но иногда необходимо называть вещи своими именами
0
necheyhin_a_v
3 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 60
15.02.2014, 05:51  [ТС] 9
Есть для UNIX интересный словарь "ispell" он находится в открытом доступе! И определить большинство частей речи большого труда не составит! Определить зависимости между словами на мой взгляд сложнее! Ну и еще синонимичность слов играет огромную роль например слово "только" оно может быть в нескольких смыслах:
1. Как только наладится погода...
2. Я купил только чашки

В этих двух примерах одно и то же слово имеет различный смысл! Тем, кому интересна эта тема посмотрите модель смысл-текст наших советских ученых! Не пожалеете
0
VTsaregorodtsev
578 / 531 / 77
Регистрация: 19.02.2010
Сообщений: 1,934
17.02.2014, 21:45 10
necheyhin_a_v, можно посмотреть ещё и на близость частотных словарей - между эталонным и похожим текстами расстояние д.б. меньше, чем между эталонным и любым левым.
Вот переход к представлению текста через вектора одинаковой длины (вектора частот встречаемости слов словаря в тексте) и позволит взять любой алгоритм кластеризации.

Проблема "Автомобиль передвигается - Машина едет" - решится учётом синонимов (синонимы не должны стать разными словами в финальном словаре).
Подлежащее-сказуемое в предложении выделять не надо - надо просто решить задачу нормализации времён и единственных/множественных чисел (т.е. откинуть у слов окончания).
Ну и все стоп-слова (предлоги и союзы) выкинуть.
0
necheyhin_a_v
3 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 60
18.02.2014, 05:46  [ТС] 11
Цитата Сообщение от VTsaregorodtsev Посмотреть сообщение
necheyhin_a_v, можно посмотреть ещё и на близость частотных словарей - между эталонным и похожим текстами расстояние д.б. меньше, чем между эталонным и любым левым.
Вот переход к представлению текста через вектора одинаковой длины (вектора частот встречаемости слов словаря в тексте) и позволит взять любой алгоритм кластеризации.

Проблема "Автомобиль передвигается - Машина едет" - решится учётом синонимов (синонимы не должны стать разными словами в финальном словаре).
Подлежащее-сказуемое в предложении выделять не надо - надо просто решить задачу нормализации времён и единственных/множественных чисел (т.е. откинуть у слов окончания).
Ну и все стоп-слова (предлоги и союзы) выкинуть.
1. Не совсем понял про частотные словари!
2. Есть очень много слов в языке, которые в одном контексте будут являться синонимами, а в другом совершенно нельзя будет употребить.
3. С точки зрения примерного алгоритма - стоп-слова нужно выкинуть, однако они образуют смысловую связь между словами предложения см. модель смысл-текст
0
18.02.2014, 05:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.02.2014, 05:46

Алгоритм функции степени
Здравствуйте! Нужно реализовать функцию степени для любых чисел. То есть не только для целых...

Вывести на экран таблицу значений функции f(x)=x в 4 степени+3х в 3 степени +5х во второй степени+7 х=1,2..10
18. Вывести на экран таблицу значений функции f(x)=x в 4 степени+3х в 3 степени +5х во второй...

Дано целое число N (> 0). Найти сумму 1в N степени + 2 в степени N−1 + … + Nв 1 степени.
Дано целое число N (&gt; 0). Найти сумму 1в N степени + 2 в степени N−1 + … + Nв 1 степени. в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru