powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Задача: поиск записей одинаковых по смыслу, но разных по форме записи.
12 сообщений из 12, страница 1 из 1
Задача: поиск записей одинаковых по смыслу, но разных по форме записи.
    #37301143
Mental_Force
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день.
Мне нужно найти область науки о базах данных занимающююся этой проблематикой (описание проблемы ниже). Как данная проблема правильно называется в академических кругах, под каким названием она упоминается в литературе. О конкретных публикациях\книгах\алгоритмах я даже не мечтаю ибо область оч спецефическая.

Проблема формулируется так:
Есть несколько БД информация в которых (в следствии разных её источников) записана по-разному т.е. в другом формате или просто с ошибкой, а может быть даже и на транслите или с частичной заменой букв цифрами.
Нужно эти базы данных свести воедино т.е. уствновить соответсвие между инфой записанной по-разному.

Например: есть три БД
- в одной БД предприятие числится как "ОАО Укртелеком", приобрело "5" едениц продукции.
- во второй числится как "Отркрытое Акционерное Общество Укрт3лек0м", приобрело "3" ед. продукции
- в третей числится как "OAO Ukrtelekom", приобрело "2" ед. прод.

А после анализа в новой БД должно быть "ОАО Укртелеком", приобрело "10" (5+2+3) ед. прод.

Пожалуйста, дорогие друзья, помогите понять где искать инфу. Пишу диплом, это одна из проблемных областей, сроки горят, а я даже не представляю куда копать...
...
Рейтинг: 0 / 0
Задача: поиск записей одинаковых по смыслу, но разных по форме записи.
    #37301170
Фотография Александр Гoлдун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Data mining, может быть. Но это слишком обобщенно.
...
Рейтинг: 0 / 0
Задача: поиск записей одинаковых по смыслу, но разных по форме записи.
    #37301342
наутилус
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mental_ForceНапример: есть три БД
- в одной БД предприятие числится как "ОАО Укртелеком", приобрело "5" едениц продукции.
- во второй числится как "Отркрытое Акционерное Общество Укрт3лек0м", приобрело "3" ед. продукции
- в третей числится как "OAO Ukrtelekom", приобрело "2" ед. прод.

А после анализа в новой БД должно быть "ОАО Укртелеком", приобрело "10" (5+2+3) ед. прод.

Пожалуйста, дорогие друзья, помогите понять где искать инфу. Пишу диплом, это одна из проблемных областей, сроки горят, а я даже не представляю куда копать...

мы такое решали в рамках "понабирали-по-обьявлению-операторов-те-позаводили-дублирующих-контрагентов"
схема такая, что берёте название из БД1 и сравниваете со всеми названиями в других БД, по любому, доступному вам алгоритму (понятное дело, это не тупое сравнение букв).
получаете % похожести строк, эмпирическим путём подбираем порог "достоверности", после этого, возможно, часть информации у вас и соберётся.
понятное дело, надо перед этим "подготовить" БД. например, все английские буквы заменить на русские, или наоборот
...
Рейтинг: 0 / 0
Задача: поиск записей одинаковых по смыслу, но разных по форме записи.
    #37301359
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ETL ещё близко сабжу, так как в процессе загрузки верифицирует информацию из разных источников и приводит её к нужному виду.
...
Рейтинг: 0 / 0
Задача: поиск записей одинаковых по смыслу, но разных по форме записи.
    #37301402
Mental_Force
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо большое за ответы ребята, столько информации мне подкинули сейчас разбираю.
...
Рейтинг: 0 / 0
Задача: поиск записей одинаковых по смыслу, но разных по форме записи.
    #37301431
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гугли по следующим ключевым словам
soudex || Similarity function|| Fuzzy Search || N-gramm .

В MS SQL Server Fuzzy Lookup на базе n-gramm дает весьма достойные результаты.
...
Рейтинг: 0 / 0
Задача: поиск записей одинаковых по смыслу, но разных по форме записи.
    #37301446
Фотография Александр Гoлдун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Задача: поиск записей одинаковых по смыслу, но разных по форме записи.
    #37301630
s_ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mental_Force,
погугли AI и Mechanical Translation (обработка ошибок) - там очень много всего. Но насколько я знаю до конца эта проблема пока не решена, максимум что может автоматика - выдать "подозрительные" совпадения.
...
Рейтинг: 0 / 0
Задача: поиск записей одинаковых по смыслу, но разных по форме записи.
    #37301867
Cane Cat Fisher
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Задача: поиск записей одинаковых по смыслу, но разных по форме записи.
    #37301886
Mental_Force,

Ищите материалы по задаче Нормализация НСИ.
Это как раз то, что описано в Вашем примере. У Вас перечислены 2 справочника: справочник контрагентов (наименование) и справочник материалов (продукция).
Есть специальный софт (как правило, созданный для себя, компанией которая специализируется в этой области), который помогает при нормализации, но основную часть делает человек. Не менее важна методология формирования новых наименований (особенно относится ТМЦ).
Теперь вернемся к Вашему примеру.
Кроме названия у контрагента есть еще много всяких параметров: адреса, банковские реквизиты, регистрационные данные и т.д. Как показывает практика, уникальным ключом может служить сочетание ИНН и КПП. Сливаем все базы в одну, находим совпадения и объединяем их. Но не у всех записей заполнены все обязательные поля (которые согласовываются перед началом нормализации, цель которой - получение выверенного справочника и дальнейшая работа с ним), поэтому без ручного труда не обойтись.
Со справочником материалов посложнее - там очень сложно найти уникальные элементы, по которым можно провести сравнение. Поэтому есть два основных варианта:
1. Все записи по очереди анализируются и им присваиваются новые наименования.
2. В ходе работы предприятия, на основании текущей потребности в материалах, формируется новый эталонный справочник, а в старом "замусоренном" справочнике находятся аналоги и связываются с эталоном. Как правило, эти занимаются специалисты службы снабжения. Так постепенно нормализуются большая часть материалов, которые актуальны и используются. В старом справочнике останется много не нормализованных записей, но это не очень страшно - эти исторические и не используемые сейчас материалы и скорее всего на складских остатках их немного.
Очень важно правильно формировать новое название ТМЦ. Желательно, чтобы был механизм при котором минимизировались фантазия человека и возможность ошибок. Один из вариантов - это "сбор" наименования ТМЦ по шаблону из нескольких элементов. Пример: Болт М48х160 ГОСТ 7798-82 получается из сложения {Болт} {М}{48}х(160) [ГОСТ 7798-82]. Набор элементов для каждой группы ТМЦ можно сделать своим. Тогда занося занесение нового ТМЦ будет следующим: выберется группа "метизы", для этой группы определен набор обязательных полей, часть или все из которых заполняются из справочников значений.
Надо еще добавить, что у ТМЦ можно вести несколько наименований: одно для бухгалтерии, другое для покупателей/поставщиков, для производства и т.д.

Следующей задачей после нормализации идет сопровождение справочников - это относится к MDM (Master data management), основные задачи которого: ведение централизованного справочника и интеграция его с локальными справочниками, механизм заявок на добавление новых записей, создание новых записей, распространение обновлений на локальные справочники.

Я описал все очень поверхностно и обобщенно, но основную идею постарался передать...
...
Рейтинг: 0 / 0
Задача: поиск записей одинаковых по смыслу, но разных по форме записи.
    #37303452
Фотография Asm64D
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mental_ForceНапример: есть три БД
- в одной БД предприятие числится как "ОАО Укртелеком", приобрело "5" едениц продукции.
- во второй числится как "Отркрытое Акционерное Общество Укрт3лек0м", приобрело "3" ед. продукции
- в третей числится как "OAO Ukrtelekom", приобрело "2" ед. прод.
Я такое делал сравнивая ИНН и КПП, судя по обсуждению это сэкономило мне много времени :)
...
Рейтинг: 0 / 0
Задача: поиск записей одинаковых по смыслу, но разных по форме записи.
    #37310885
Mental_Force
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Фух, сдал.

Хочу от души поблагодарить всех неравнодушных людей, кто не прошел мимо и указал мне верный путь. Знаю, это выглядит не очень серьезно что я не знал даже с чего начать, просто как типичный идиот откладывал до последнего, и фактически за 7 дней сделал то что надо было делать несколько месяцев...
Итого, что мы имеем? Оценку - отлично и начальные расстройства личности по причине полного отсутствия сна. Плохо это или хорошо решу когда проснусь...

Большое спасибо за консультацию, вы чудесные, отзывчивые люди!
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Задача: поиск записей одинаковых по смыслу, но разных по форме записи.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]