Альтернативный модуль проверки на терроризм

Автор:bazhan_aa
Дата:15.06.2006
Просмотров:4200
Скачиваний:957
Оценка:, Оценок - 5
Скачать (rar-файл; Размер - 271293)

Обсудить в форуме

Описание

Добрый день!
Предлагаю Вам ознакомиться с разработанным мной модулем проверки текстовых данных на предмет примерного вхождения записей из справочника террористов.
В состав модуля входят непосредственно алгоритмы анализа похожести вхождения, реализованные в виде dlm, возможная методология использования проверки при работе в RS-BANK, и вспомогательные макросы для реализации этой методологии. Включенные макросы реализуют задачи проверки всех документов произвольного дня, текущих документов конкретного операциониста, проверки на этапе ввода документа. Используя dlm, не составляет труда встроить проверку в любую задачу.
Модуль так же содержит exe-приложение для проверки текстовых файлов или данных, вводимых с клавиатуры.
Отличительной особенностью алгоритма является то, что он работает значительно качественнее и быстрее стандартной рстайловской ф-ции CheckTerror.
Подробное описание и примеры смотрите в readme.doc внутри архива.

Дам немного критики стандартной ф-ции CheckTerror :)
Изложенный в базе знаний [url]http://portal.softlab.ru/reggy/faq/suppapro/probcontent.asp?Sys=&Und=&The=&Page=&Prob=2297(базе знаний)[/url]
пример на самом деле показывает практическую непригодность критерия совпадения. Слова PALRIANA и SAHARA, являясь "основными", совпадают слишком слабо, а слово BANK не имеет практической значимости. Если бы в справочнике террористов была запись типа "SAHARA INTERNATIONAL BANK", то попадался бы вообще любой INTERNATIONAL BANK. В результате, при понижении % порога алгоритма пользователь будет видеть очень много "не настоящих" совпадений, а при повышении -- пропустит настоящие. Алгоритм не способен ловить совпадения фамилии с инициалами, фамилии с именем, а так же почти (и даже полностью) точные полные совпадения при достаточном количестве посторонних слов.. При этом он обладает слишком медленной скоростью работы. (Не экспериментируйте с SAHARA BANK, поскольку сейчас его нет в справочнике).

Алгоритм учитывает особенности словообразования и фонетики, имеет отличный от стандартного критерий совпадения строки как совокупности слов, подвергает данные из справочника анализу и структурной предобработке. Говоря об эффективности алгоритма, на процессоре Intel Pentium 4 3000 MHz (15 x 200, без HT, объем оперативной памяти значения не имеет) скорость обработки текстового файла с реальными данными по платежам составляет ~3000 строк в секунду, где строки – это наименование плательщика, получателя, и основание платежа. Проверка документа на этапе ввода, естесственно, происходит мгновенно. Так же алгоритм позволяет гибко регулировать детальность проверки (что определяет кол-во выдаваемых совпадений).

Здесь я выкладываю версию модуля, основанную на справочнике выпускников Московского Физико-Технического Института (ФУПМ, за последние ~10 лет), что примерно соответствует по количеству записей справочнику лиц, причастных к терроризму. Можно посмотреть работу этой программы отдельно или в связке с рсбанком. Справочник выпускников находится внутри архива. Процесс генерации модуля под конкретный справочник автоматизирован, и не составляет труда. С учетом того, что справочник обновляется примерно 1 раз в квартал, такой подход вполне оправдан.

Если захотите попробовать проверку на настоящем справочнике, или у Вас есть какие-либо вопросы и предложения, пишите. Я вышлю Вам соответствующую версию программы, с рекомендациями настройки на настоящий справочник, и Вы сами сможете сравнить модуль со стандартным, попробовать реальную проверку в связке с RS-BANK.

Андрей Бажан
bazhan@stroycredit.ru

Текст примера

 В описании внутри архива