0 / 0 / 0
Регистрация: 29.04.2017
Сообщений: 9
|
|
1 | |
Нечеткий поиск в базах персональных данных17.04.2018, 16:34. Показов 1412. Ответов 7
Метки нет (Все метки)
Не могу разобраться.
Как организуется нечеткий поиск в базах данных? когда предполагаем, что возможно компонент ФИО записан не в том поле ИМЯ в Отчестве и т.д. + допущены опечатки. Допустим в БД 10000 записей. Есть запись "Петров-ИваноФ СерКеевич Иван", в которой допущены 2 ошибки(замены букв) и 2 преобразования: 1) "Отчество" записано в поле "Имя", а имя в отчестве; 2) Двойная фамилия записана неправильно. правильно Иванов-Петров. Оператор вводит в поисковую строку правильный вариант ФИО "Иванов-Петров Иван Сергеевич". Как организуется поиск записей и устанавливается связь между этими данными? Какие методы нечеткого поиска лучше применять в такой ситуации.
0
|
17.04.2018, 16:34 | |
Ответы с готовыми решениями:
7
Исключения в базах данных Даты в Базах Данных Зачем нужны связи в базах данных? Для тех кто хорошо разбирается в базах данных |
17.04.2018, 17:35 | 2 |
поиск это когда ты ищешь нужные записи по критериям
нечеткий поиск это когда ты точно не знаешь что ищешь и используешь неточный поиск с помощью символов подстановки - %, * и прочих а у тебя это ошибки ввода, их стараются не допустить на этапе проектирования\программирования, или устраняют когда заметят никакого специального поиска для этого нет
1
|
0 / 0 / 0
Регистрация: 29.04.2017
Сообщений: 9
|
|
17.04.2018, 17:44 [ТС] | 3 |
Большое спасибо!
Будьте добры, помогите еще разобраться. А все-таки, если изначально не удалось устранить эти ошибки. То как нам найти "Иванов-Петров Иван Сергеевич", если в БД оно записано неправильно , как "Петров-ИваноФ СерКеевич Иван" МОжно еще одно уточнение. Правильно ли я поняла, что при поиске ФИО в базе персональных данных (с учетом того, что мы допускаем, что компоненты ФИО были поставлены неправильно фамилия вместо имени и т.д.), мы отдельно будем искать фамилию в поле ФАМИЛИЯ, пробегая все записи и устанавливая соответствие со строкой из поисковой строки. Затем аналогично будем искать фамилию в поле ИМЯ , ОТЧЕСТВО. Добавлено через 1 минуту Большое спасибо! Будьте добры, помогите еще разобраться. А все-таки, если изначально не удалось устранить эти ошибки. То как нам найти "Иванов-Петров Иван Сергеевич", если в БД оно записано неправильно , как "Петров-ИваноФ СерКеевич Иван" МОжно еще одно уточнение. Правильно ли я поняла, что при поиске ФИО в базе персональных данных (с учетом того, что мы допускаем, что компоненты ФИО были поставлены неправильно фамилия вместо имени и т.д.), мы отдельно будем искать фамилию в поле ФАМИЛИЯ, пробегая все записи и устанавливая соответствие со строкой из поисковой строки. Затем аналогично будем искать фамилию в поле ИМЯ , ОТЧЕСТВО.
0
|
17.04.2018, 17:54 | 4 |
создать запросы для тестирования содержания
раз в неделю\в месяц прогонять тесты и просматривать данные так работают запросы есть условие(или несколько) по которому отбираются данные, сначала отбираем по одному, потом по другому и тд
1
|
0 / 0 / 0
Регистрация: 29.04.2017
Сообщений: 9
|
|
17.04.2018, 17:59 [ТС] | 5 |
Большое спасибо!
Получается, методы нечеткого поиска мы не применяем к БД? Видела статью, где говорится о подобных базах данных, в которых допущены ошибки. Чтобы идентифицировать субъекта персональных данных использовались последовательно два метода нечеткого поиска. Сначала метод n-грамм, затем алгоритм Вагнера-Фишера.
0
|
17.04.2018, 18:12 | 6 |
почему?
мне кажется вам нужно отделить хранение и обработку данных в БД храниться данные могут как угодно, а дальнейшая обработка может показать пользователю ошибки
0
|
Модератор
|
|
17.04.2018, 19:20 | 7 |
несколько лет назад приводила в божеский вид списки избирателей(46тысяч строк,ексель)
--ручная набивка, но набивали разные люди на разных компах одно из имен Александр было набито в 46 вариантах --переврали все, что можно и нельзя некоторые имена невозможно было даже угадать, что хотели набить Александр или Алексей как правила --создала списки всех фамилий/имен/отчеств(2 одинаковых столбика) и еще один служебный(первая буква и 4 согласные) --отсортировала по служебному полю --где ошибки были явные --во второй столбик поместила исправленное --через ВПР получила исправленное версию основной таблицы --сложные случаи правили уже вручную(сами заказчики)
0
|
476 / 239 / 114
Регистрация: 12.05.2016
Сообщений: 647
|
|
18.04.2018, 00:45 | 8 |
В некоторых СУБД есть такие методы.
Напрмер в Oracle есть функция UTL_MATCH.Jaro_Winkler_Similarity которая меня не раз выручала для таких задач
0
|
18.04.2018, 00:45 | |
18.04.2018, 00:45 | |
Помогаю со студенческими работами здесь
8
О программамах или базах данных в которые можно вбивать ссылки Как посчитать количество повторений записи в базах данных? Поиск в нескольких базах со вставкой в следующий запрос результатов из предыдущего Нечеткий поиск Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |