Реализация подсистемы распознавания в арм эксперта

advertisement
Реализация подсистемы распознавания в АРМ…
С.Д. КУЛИК, Д.А. НИКОНЕЦ
Национальный исследовательский ядерный университет «МИФИ»
РЕАЛИЗАЦИЯ ПОДСИСТЕМЫ РАСПОЗНАВАНИЯ В АРМ
ЭКСПЕРТА-КРИМИНАЛИСТА ПРИ ПОМОЩИ СУБД
Описана разработка подсистемы распознавания “RSFHWE v. 1.0” в АРМ эксперта-криминалиста (почерковеда)
“FHWE v. 1.0”. Для разработки подсистемы распознавания используется средства СУБД. Описано применение
подсистемы распознавания в АРМ эксперта-криминалиста для моделирования нейронных сетей. Приведен пример
нейронной сети для решения задачи определения возраста исполнителя рукописного текста, разработанной при помощи
подсистемы распознавания “RSFHWE v. 1.0”.
Хотя в данный момент из-за повсеместного внедрения электронного документооборота, все
реже используются рукописные документы, количество проводимых судебно-почерковедческих
экспертиз увеличивается.
Из данных по ежегодно составляемым отчетам о работе лаборатории судебно-почерковедческой экспертизы (ЛСПЭ) Российского федерального центра судебной экспертизы (РФЦСЭ)
при Министерстве юстиции РФ (Минюсте России) следует, что было выполнено
почерковедческих экспертиз: в 2002 г. – 1107, в 2003 г. – 1341, а в 2004 г. – 1203.
По данным ЭКЦ МВД РФ за 2004 год следует, что всего по России было проведено
осмотров мест происшествий с изъятием документов 8369, выполнено почерковедческих
экспертиз 63659 (в том числе 47354 идентификационных), количество экспертиз, результаты
которых установили причастность лиц к совершению преступления, 47354.
Анализ доступных источников показал, что существующее программное обеспечение для
автоматизации работы эксперта-почерковеда не решает все задачи, стоящие перед экспертами, в
частности, нет комплексного программного обеспечения для поддержки принятия решения
эксперта по кратким рукописным текстам. Состояние дел в области почерковедческих экспертиз
убедительно показывает на необходимость разработки новых почерковедческих методик и
создания комплексных автоматизированных средств поддержки почерковедческих экспертиз.
Ввиду этого принято решение о разработке АРМ эксперта-криминалиста (почерковеда)
“FHWE v. 1.0” [1–5].
Постановка задачи и описание подсистемы распознавания. Для разработки подсистемы
принятия решений АРМ эксперта-криминалиста (почерковеда) “FHWE v. 1.0” необходимо было
выбрать способ решения задач распознавания образов. Одна из особенностей используемых
методик выполнения почерковедческих экспертиз – это достаточно большое количество
признаков почерка (около 2000). Также заказчиком был высказан ряд требований к
разрабатываемому
АРМу:
• использование только бесплатного программного обеспечения;
• необходимость многопользовательского режима работы АРМ “FHWE v. 1.0” в локальной
сети;
• необходимость многопользовательского режима работы АРМа для удаленных
пользователей;
• необходимость однопользовательского режима работы АРМа со сменных носителей.
С учетом этих особенностей и требований был выбран способ реализации подсистемы
распознавания при помощи СУБД. Использование СУБД (например Oracle) для обучения и
реализации работы нейронных сетей имеет следующие преимущества:
• доступен достаточно мощный встроенный язык программирования (PL/SQL), который
используется для обучения нейронных сетей и для автоматической генерации хранимых
процедур, реализующих функционирование нейронных сетей;
• используются таблицы базы данных для хранения обучающей выборки, входных и
выходных данных, тем самым, способствуя более эффективному доступу к большому массиву
данных;
• возможность, используя один SQL запрос, произвести вычисления сразу для нескольких
наборов входных данных;
Реализация подсистемы распознавания в АРМ…
• реализовать АРМ в схеме с «тонким клиентом», что позволяет быстро переносить
клиентское приложение на другую платформу, не меняя программный код, реализующий
моделирование нейронных сетей.
Для анализа и обработки данных, необходимых для реализации режимов работы АРМ
“FHWE v. 1.0”, разработана подсистема распознавания “RSFHWE v. 1.0”[1–7] (рис. 1).
Подсистема предназначена для обеспечения возможности использовать нейронные сети для
принятия решений при криминалистическом исследовании письма во время проведения судебнопочерковедческих экспертиз.
Подсистема
распознавания
“RSFHWE v. 1.0”
Задание
структуры
Задание
сети
Реализация
функционирования сети
Задание
весов
Экспорт в
СУБД
Firebird
Обучение
сети
Рис. 1. Структурная схема подсистемы распознавания “RSFHWE v. 1.0”
С помощью подсистемы распознавания “RSFHWE v. 1.0” разработаны модули АРМ “FHWE
v. 1.0” реализующие следующие режимы работы:
• режим определения пола исполнителя рукописного текста;
• режим определения возраста исполнителя рукописного текста;
• режим определения роста исполнителя рукописного текста;
• режим идентификации исполнителя рукописного текста.
Подсистема обеспечивает выполнение следующих функций:
• создание и модификация справочников функций активации и структуры нейронных сетей;
• проверка корректности задания структуры нейронной сети;
• автоматическое формирование на основании структуры нейронных сетей хранимых
процедур СУБД, необходимых для реализации работы нейронной сети (рис. 2, 3);
• обучение нейронной сети;
• экспорт в СУБД Firebird;
• реализация сети и ее применение на практике.
Подсистема использует базу данных подсистемы распознавания АРМ экспертакриминалиста (почерковеда) “FHWE v. 1.0” “DBRSFHWE v. 1.0” [7].
Подсистема “RSFHWE v. 1.0” и ее база данных “DBRSFHWE v. 1.0” реализованы при
помощи бесплатной редакции СУБД Oracle Database 10g Express Edition (Oracle Database XE).
Задание структуры, обучение нейронной сети и автоматическое формирование на
основании структуры сети хранимых процедур выполняется в СУБД Oracle. А уже готовую
обученную сеть можно автоматически экспортировать в используемую в АРМ экспертакриминалиста (почерковеда) “FHWE v. 1.0” СУБД Firebird.
Ограничения в реализованном варианте подсистемы:
• поддерживаются нейронные сети без обратных связей;
• количество слоев нейронной сети не должно превышать 100;
• количество входов и нейронов нейронной сети ограничено только возможностями СУБД;
• не должно быть нейронов, входом которых одновременно являются выход другого
нейрона и вход нейронной сети.
Реализация подсистемы распознавания в АРМ…
declare
svNameNet varchar2(200):='TEST';--Название создаваемой сети
nvQtyNodes integer; --Количество нейронов в слое
svNameFunc varchar2(200);--Название функции активации в слое
begin
NeuroNetAPI.RegisterNet(svNameNet);--Создаем нейронную сеть
-- Задаем структуру нейронной сети
-- Первый слой
nvQtyNodes:= 3;--Количество нейронов в слое
svNameFunc:='Sigmoid';--Сигмоидальная функции активации
NeuroNetAPI.AddLayer(svNameNet,nvQtyNodes,svNameFunc);
-- Второй слой
nvQtyNodes:= 1;--Количество нейронов в слое
svNameFunc:= 'Linear';--Линейная функция активации в слое
NeuroNetAPI.AddLayer(svNameNet,nvQtyNodes,svNameFunc);
-- Обучение нейронной сети
-- Предварительно обучающая выборка помещается в
-- специальную таблицу БД
-- По обучающей выборке определяется количество входов сети
--обучение нейронной сети с настройками по умолчанию
NeuroNetAPI.DoTeaching(svNameNet);
--В результате обучения полученные веса сохраняются в
--структуре нейронной сети
--Автоматическая генерация исходного кода хранимых процедур
--БД, реализующих работу сети, и их компиляция
NeuroNetAPI.CreateNet(svNameNet);
--В результате создана хранимая процедура, моделирующая
--работу нейронной сети
-- Экспорт нейронной сети в СУБД FireBird
NeuroNetAPI.ExportNetToFirebird(svNameNet);
end;
Рис. 2. Пример PL/SQL скрипта для создания и обучения при помощи
подсистемы распознавания “RSFHWE v. 1.0” нейронной сети
create or replace procedure NetModeling69(idpSession UserSession.id%type)is
begin
insert into OutputValue
(id, fValue, nSeriesOrd, idOutput, idSession)
select NeuroNetAPI.GetNewId('OutputValue'),
t.fValue, t.nSeriesOrd,o.id,idpSession
from Output o,
(select n.id idNeuron, t.nSeriesOrd,
CalcFncInstance48(n.idFunctionInstance,
n.fValue+sum(t.fValue*nl.fWeigth)) fValue
from Neuron n,
NeuronToNeuronLink nl,
(select n.id idNeuron, t.nSeriesOrd,
CalcFncInstance48(n.idFunctionInstance,
n.fValue+sum(t.fValue*nl.fWeigth))fValue
from Neuron n,
NeuronToNeuronLink nl,
(select n.id idNeuron,
iv.fValue,
iv.nSeriesOrd
from InputValue iv,
Input
i,
Neuron
n
where n.idInput = i.id
and i.id = iv.idInput
and i.idNet = 48
and iv.idSession = idpSession) t
where t.idNeuron = nl.idParentNeuron
and nl.idChildNeuron = n.id
group by n.id,n.fValue,n.idFunctionInstance,t.nSeriesOrd)t
where t.idNeuron = nl.idParentNeuron
and nl.idChildNeuron = n.id
group by n.id,n.fValue,n.idFunctionInstance,t.nSeriesOrd)t
where o.idNeuron = t.idNeuron;
end NetModeling48;
Рис. 3. Пример автоматически сгенерированной при помощи подсистемы распознавания “RSFHWE v. 1.0”
хранимой процедуры, реализующей работу нейронной сети для принятия решения о возрасте исполнителя
рукописного текста
Реализация подсистемы распознавания в АРМ…
В качестве примера использования подсистемы распознавания “RSFHWE v. 1.0” можно
привести подсистему определения возраста исполнителя рукописного текста АРМ экспертакриминалиста (почерковеда) “FHWE v. 1.0”.
Справочник частных признаков букв русского языка, используемых в качестве
характеристик почерковых объектов, содержит 1986 признаков почерка (входов нейронной сети).
Каждого исполнителя рукописного текста было решено отнести к одному из 3
поддиапазонов возраста (‘<=27’, ’28–40’, ‘>=41’). Из выборки из 690 образцов рукописного
текста, выполненных людьми разного возраста, была выбрана контрольная выборка из 90
образцов, по 30 исполнителей из каждого возрастного поддиапазона, остальные образцы
составили обучающую выборку.
При помощи подсистемы “RSFHWE v. 1.0” была разработана и обучена двухслойная
нейронная сеть.
При помощи контрольной выборки была выполнена оценка качества решений,
принимаемых нейронной сетью. Правильное решение было принято для 67% образцов, ошибка
была допущена в 33% случаев.
Выводы. Состояние дел в области почерковедческих экспертиз убедительно показывает
необходимость создания автоматизированных средств поддержки почерковедческих экспертиз.
Использование СУБД для моделирования нейронных сетей имеет ряд преимуществ при
разработке комплексных автоматизированных средств поддержки принятия решения, например,
при создании АРМ эксперта-криминалиста (почерковеда) “FHWE v. 1.0”.
Разработана подсистема распознавания “RSFHWE v. 1.0”, предназначенная для обеспечения
возможности использовать нейронные сети для принятия решений при криминалистическом
исследовании письма во время проведения судебно-почерковедческих экспертиз.
Дальнейшее развитие подсистемы “RSFHWE v. 1.0” предполагает разработку программного
модуля для автоматизированного выбора нейросетевой парадигмы и топологии сети.
Предполагается, что пользователю достаточно будет только задать обучающую выборку, а
программа в автоматическом режиме создаст различные варианты нейронных сетей, обучит их
различными способами и предложит пользователю к выбору наилучшие варианты.
СПИСОК ЛИТЕРАТУРЫ
1. Никонец Д.А. Нейросетевые технологии для решения задач криминалистики // Нейрокомпьютеры
разработка применение. 2009. № 4. М.: Радиотехника, 2009.
2. Никонец Д.А. Автоматизация криминалистического исследования рукописных текстов при помощи
нейронных сетей // Труды РНТОРЭС им. А.С. Попова, 10-я Международная конференция и выставка
Цифровая обработка сигналов и ее применение. Выпуск Х-2. М.: РНТОРЭС, 2008.
3. Никонец Д.А. Автоматизация криминалистической идентификации исполнителя рукописных
текстов //Труды РНТОРЭС им. А.С. Попова, 11-я Международная конференция и выставка Цифровая
обработка сигналов и ее применение. Выпуск ХI-2. М.: РНТОРЭС, 2009.
4. Кулик С.Д., Никонец Д.А. АРМ эксперта-почерковеда // Материалы IV Всероссийской научнопрактической конференции по криминалистике и судебной экспертизе 4–5 марта 2009 г. М.: ЭКЦ МВД
России, 2009.
5. Кулик С.Д., Никонец Д.А. Разработка подсистемы распознавания “RSFHWE V. 1.0” в АРМ
эксперта-криминалиста “FHWE V. 1.0”//Научная сессия МИФИ-2008. Сборник научных трудов. Т.13:
Автоматизированные системы обработки информации и управления. Электронные измерительные системы.
М.: МИФИ, 2008. С.31.
6. Кулик С.Д., Никонец Д.А. Свидетельство на программу Российской Федерации №2007614121
"Подсистема распознавания для автоматизированного рабочего места эксперта-криминалиста v.1.0"
(RSFHWE) / С.Д. Кулик, Д.А. Никонец. – Заявка № 2007613121; Заяв. 31.07.2007; Зарегистр. 26.10.2007.
РОСПАТЕНТ.
7. Кулик С.Д., Никонец Д.А. Свидетельство на базу данных Российской Федерации № 2007620333
"База данных подсистемы распознавания для автоматизированного рабочего места эксперта-криминалиста
v.1.0" (DBRSFHWE) / С.Д. Кулик, Д.А. Никонец (Россия). – Заявка № 2007620232; Заяв. 31.07.2007;
Зарегистр. 26.10.2007. РОСПАТЕНТ.
Download