Перейти к содержанию

Система баллов

Баллы --- числовая мера сходства между двумя объектами (документами или документом и строкой реестра). Система баллов используется в двух подсистемах: группировке документов и сопоставлении с реестром. В каждой подсистеме шкала и правила подсчёта свои, но принцип общий: чем больше совпавших признаков, тем выше балл.

Баллы при группировке документов

Подробное описание модуля группировки --- в разделе Группировка документов.

Шкала

Для каждой пары документов, извлечённых из одного задания обработки, вычисляется балл связи. Баллы начисляются по фиксированным критериям:

Критерий Баллы Условие
Совпадение номера +35 Цифры номеров совпадают после удаления нецифровых символов
Совпадение даты (точное) +30 Даты совпадают с учётом всех толкований неоднозначных дат
Совпадение даты (приблизительное) +20 Разница не более одного дня
Совпадение контрагента +25 Нечёткое сравнение после удаления организационно-правовых форм (ООО, АО и других) даёт сходство выше 0.85
Один исходный файл +5 Оба документа извлечены из одного загруженного файла
Близость страниц +5 Документы расположены через 0--2 страницы в исходном файле
Запасной критерий +25 У одного из документов нет номера, но документы рядом и совпадают по дате

Порог

Пары с баллом 65 и выше объединяются в группу. Этот порог выбран так, чтобы:

  • пара «номер + дата + один файл» (35 + 30 + 5 = 70) уверенно попадала в группу;
  • пара «номер + контрагент» (35 + 25 = 60) не попадала, потому что одного номера с контрагентом без даты недостаточно для уверенной связи;
  • пара без номера, но с датой, рядом в одном файле (30 + 5 + 5 + 25 = 65) попадала на нижней границе.

Примеры подсчёта

Счёт-фактура и акт с одинаковым номером, датой и контрагентом из одного файла:

35 + 30 + 25 + 5 + 5 = 100 → группа

Два документа без номера, рядом в одном файле, одна дата:

0 + 30 + 5 + 5 + 25 = 65 → группа (нижняя граница)

Одинаковый номер, но разные даты и контрагенты, из разных файлов:

35 + 0 + 0 + 0 = 35 → не группируются

Баллы при сопоставлении с реестром

Подробное описание сопоставления --- в разделе Сопоставление с реестром и Импорт и поиск по реестру.

Шкала

При сопоставлении используется взвешенная сумма баллов по полям. Каждому полю пользователь назначает вес при настройке правила. Веса нормализуются так, чтобы их сумма равнялась 1:

нормализованный вес = вес поля ÷ сумма всех весов

Балл по каждому полю --- число от 0 до 1, которое зависит от типа поля и способа сравнения.

Баллы по типам полей

Номера:

Ситуация Балл
Цифры совпадают полностью 1.0
Десятизначный системный номер: совпали первые две и последние четыре цифры 1.0
Расстояние Левенштейна между цифрами < 40 % Пропорционально сходству
Нет совпадения 0.0

Даты:

Ситуация Балл
Обе даты однозначны, совпадение 1.0
Одна неоднозначна, пересечение найдено 0.95
Обе неоднозначны, пересечение найдено 0.85
Диапазонное совпадение (в пределах допуска) 0.8--1.0 (зависит от расстояния)
Нет совпадения 0.0

Суммы:

Расхождение Балл
Менее 0,01 (абсолютное) 1.0
Менее 1 % (относительное) 0.95
Менее 5 % (относительное) 0.8
При диапазонном сравнении в пределах допуска 0.8--1.0
Более 5 % 0.0

Текст:

Способ Ситуация Балл
Точный Строки совпадают после нормализации 1.0
Вхождение Одна строка содержит другую 0.9--1.0
Приблизительный Нечёткое сходство (лучшее из трёх алгоритмов) 0.0--1.0

Три алгоритма нечёткого сравнения текста:

  • Полное сходство --- посимвольное сравнение целых строк;
  • Частичное сходство --- поиск лучшего совпадения подстроки (с коэффициентом 0.95);
  • Сортировка по словам --- слова сортируются по алфавиту и сравниваются (с коэффициентом 0.9).

Итоговый балл документа

итоговый балл = сумма(балл по полю × нормализованный вес)

Пример. Правило с двумя полями: номер договора (вес 40) и дата (вес 20).

Нормализованные веса: 40/60 ≈ 0.667, 20/60 ≈ 0.333
Номер совпал (балл 1.0), дата не совпала (балл 0.0)
Итоговый балл: 1.0 × 0.667 + 0.0 × 0.333 = 0.667

Минимальный порог

Каждое правило сопоставления имеет параметр «минимальный балл совпадения». Документы с итоговым баллом ниже этого порога отбрасываются. Рекомендуемые значения:

Порог Когда полезен
0.9--1.0 Поиск по номерам и суммам, где важна точность
0.7--0.9 Поиск по текстовым полям с возможными опечатками
0.5--0.7 Поиск по неполным или сокращённым названиям

Разница между двумя системами баллов

Признак Группировка Сопоставление с реестром
Шкала Фиксированные баллы (0--100) Взвешенная сумма (0--1)
Веса Заданы в коде Настраиваются пользователем
Порог 65 (фиксированный) Настраивается пользователем
Назначение Связать листы одного пакета документов Найти документ, соответствующий строке реестра
Критерии Номер, дата, контрагент, расположение в файле Любые поля, указанные в правиле