автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Метод и средства верификации баз данных на основе нейросетевых технологий

кандидата технических наук
Галушка, Василий Викторович
город
Ростов-на-Дону
год
2013
специальность ВАК РФ
05.13.11
Диссертация по информатике, вычислительной технике и управлению на тему «Метод и средства верификации баз данных на основе нейросетевых технологий»

Автореферат диссертации по теме "Метод и средства верификации баз данных на основе нейросетевых технологий"

На правах рукописи

Галушка Василий Викторович

МЕТОД И СРЕДСТВА ВЕРИФИКАЦИИ БАЗ ДАННЫХ НА ОСНОВЕ НЕЙРОСЕТЕВЫХ ТЕХНОЛОГИЙ

Специальность 05.13.11 — «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных

сетей»

Автореферат

диссертации на соискание ученой степени кандидата технических наук

~8 АВГ 2013

005532019

Ростов-на-Дону —

2013

005532019

Работа выполнена на кафедре «Вычислительные системы и информационная безопасность» ФГБОУ ВПО «Донской государственный технический университет» (ДГТУ).

НАУЧНЫЙ РУКОВОДИТЕЛЬ:

ОФИЦИАЛЬНЫЕ ОППОНЕНТЫ:

ВЕДУЩАЯ ОРГАНИЗАЦИЯ:

Фатхи Владимир Ахатович доктор технических наук, профессор, Донской государственный технический университет, заведующий кафедрой «Вычислительные системы и информационная безопасность»

Долгов Александр Иванович доктор технических наук, профессор, ОАО «Конструкторское бюро по радиоконтролю систем управления, навигации и связи», старший научный сотрудник

Таран Владимир Николаевич доктор физико-математических наук, профессор, Ростовский государственный университет путей сообщения, профессор кафедры «Связь на железнодорожном транспорте»

ФГБОУ ВПО «Южно-Российский государственный технический университет» (Новочеркасский политехнический институт)

Защита состоится «_/3» 03 2013 года в на заседании

диссертационного совета Д 212.208.24 при Южном федеральном университет по адресу: г. Таганрог, ул. Чехова, 2, корп. "И", комн. 347.

С диссертацией можно ознакомиться в зональной научной библиотеке ЮФУ по адресу г. Ростов-на-Дону, ул. Пушкинская, 148.

Автореферат разослан «23» 07 2013 г.

Просим Вас прислать отзыв, заверенный печатью учреждения, по адресу: 347928, г. Таганрог, Ростовская область, ГСП-17А, пер. Некрасовский, 44, Технологический институт Южного федерального университета в г, Таганроге, Учёному секретарю диссертационного совета Д 212.208.24 Кухаренко Анатолию Павловичу.

Учйный секретарь диссертационного совета

А.П. Кухаренко

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Актуальность исследования. Важным компонентом многих современных информационных систем являются реляционные базы данных (БД). Как правило, БД, находясь на нижнем уровне в общей структуре ИС, являются источником данных для всех средств обработки информации и принятия решений, входящих в конкретную систему. Информация, хранимая в БД, служит для составления отчетов о текущей ситуации, прогнозов, основанных на данных за длительные I прошедшие периоды и принятия решений на основе полученных данных, а ошибки в ней приводят к негативным последствиям. Соответственно, среди требований к данным, хранимым в БД, на первый план выходят такие как полнота, актуальность и достоверность, а задача обеспечения достоверности в процессе верификации приобретает актуальность.

Архитектура части И С, в первую очередь территориально распределённых, предполагает наличие БД различных уровней, различающихся по функциональному назначению. БД нижнего уровня служат для хранения оперативной информации о деятельности подразделения и являются источником данных для БД верхнего уровня, которые предназначены для накопления данных о деятельности всей организации за как можно большее время. Процедура импорта/экспорта данных между БД разных уровней автоматизируется средствами системы управления базой данных (СУБД) или самой ИС и имеет жестко заданные временные рамки.

В результате, актуальным становится не просто обеспечение достоверности данных в результате верификации, но и оперативность её проведения.

Вопросам верификации БД посвящены работы ряда отечественных и зарубежных специалистов: М.Л. Глухарева, А. Аграновского, Г. Майерса, В. Зайцева, Б. Телеснина, Р. Хади, Ю. Карпова, В. Липазва, В.М. Соловьева, A.A. Вербицкого, В.Н. Гридина, В.И. Солодовникова, В.В. Кульба, В.Н. Лихачёва, J.-M. Nicolas, P. Meseguer, А. Ргеесе. Верификация БД, также проводится с использованием специализированного программного обеспечения, разрабатываемого компаниями Computer Associates, Rational Software, Logic Wokrs, Quest Software, Oracle, IBM н др.

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

Целью диссертационного исследования является повышение оперативности верификации БД.

Объектом исследований являются методы и средства верификации баз данных на этапе их эксплуатации,

Научная задача исследования — разработка метода повышения оперативности верификации БД при заданных исходных данных о количестве строк и столбцов в таблицах БД и требуемом уровне достоверности.

Для решения общей научной задачи необходимо решить следующие частные задачи:

— разработка метода определения достоверности строки таблицы БД на основе интеллектуального анализа данных с применением искусственной нейронной сети;

_ разработка метода формирования обучающей выборки, содержащей

достоверный фрагмент верифицируемой БД, применяемой при обучении искусственных нейронных сетей;

— разработка метода определения принадлежности строки к какому-либо классу достоверных данных, по ограниченному числу столбцов таблицы, значимых с точки зрения верификации;

_ определение количества классов, являющегося оптимальным для

заданной обучающей выборки;

— оценка степени достижения цели.

Методы исследования. Для решения поставленных в диссертации задач использованы методы системного анализа, теории информационных систем, математической статистики, формальной логики, теории отношений, а так же теории вероятностей и математической статистики.

С целью проведения экспериментов была спроектирована и реализована библиотека классов, описывающих ИНС различных типов, с использованием объектно-ориентированной парадигмы программирования.

Наиболее существенные положения, выдвигаемые для защиты:

1. Существующие методы не обеспечивают проверку достоверности при эксплуатации БД, поэтому верификация выполняется неавтоматизированными методами, приводящими к существенным временным затратам, в связи с чем, задача повышения оперативности верификации БД является актуальной.

2. Повышение оперативности достижимо за счёт проверки строк, упорядоченных в порядке возрастания достоверности, начиная с минимальной.

3. Определение достоверности строки БД возможно с применением искусственных нейронных сетей (ИНС) на основе оценки степени уверенности ИНС в принадлежности строки к одному из классов заведомо

достоверных данных.

4. Определение оптимального числа классов осуществимо на основе кластеризации обучающей выборки с помощью сети Кохонена.

5. С использованием разработанных методов достижимо значительное, повышение оперативности верификации БД (на примере БД, содержащей таблицу из 483 строк и 3 столбцов — до 60%).

Наиболее существенные но:>ые научные результаты, выдвигаемые для защиты:

1. Модель БД, описывающая использование хранимой информации в качестве входных данных ИНС, основанная на реляционной модели и отличающаяся учётом свойства достоверности строки таблицы БД.

2. Метод определения оптимального числа классов, использующий сеть Кохонена и отличающийся применением в качестве критерия оптимальности средней разности между максимальным значением выхода нейронной сети и остальными выходными значениями.

3. Метод определения степени принадлежности элемента к классу достоверных данных, отличающийся от известных применением многослойных ИНС прямого распространения, и использующий значения максимального выхода нейрона выходного слоя в качестве оценки достоверности, используемой для сортировки таблицы в порядке возрастания достоверности, начиная с минимальной.

Теоретическая значимость диссертации:

1. Полученный метод верификации БД является дальнейшим развитием методов интеллектуального анализа данных.

2. Разработанный алгоритм определения оптимального числа нейронов выходного слоя сети Кохонена при решении задачи кластеризации является развитием методов кластеризации и может быть использован при задании конфигурации ИНС других типов.

3. Предложенный метод определения степени принадлежности элемента к классу на основе значения максимального выхода нейрона выходного слоя многослойной ИНС может быть применен для решения задач классификации не связанных с оценкой достоверности БД.

4. Работа является приложением к учебному процессу, так как предложенные решения могут быть использованы при составлении теоретической части курса «Интеллектуальные информационные системы».

Практическая значимость диссертационного исследования заключается в следующем:

1. Метод определения достоверности строки таблицы на основе степени принадлежности элемента к классу достоверных данных, в отличие от принятых способов определения достоверности БД не требует участия человека и не зависит от предметной области.

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

3. Алгоритм, реализующий разработанный метод определения оптимального числа классов, может быть использован в качестве программного компонента в средствах интеллектуального анализа данных для проведения кластеризации при неизвестном числе кластеров.

4. Применение предложенного метода оценки достоверности строки таблицы с использованием искусственных нейронных сетей на основе степени принадлежности элемента к классу достоверных данных позволило до 60% сократить время верификации БД, содержащей таблицу из 483 строк и 3 столбцов.

Реализация работы. Основные результаты диссертации реализованы в следующих документах:

— в отчёте о выполнении ОКР «Разработка комплекса программных средств фильтрации мультимедийных данных, поступающих из сети интернет, на основе анализа аудио и видео составляющих» (г.к. № 07.524.11,4023), выполненном ФГАНУ НИИ «Спецвузавтоматика»;

— в отчёте о НИР на тему «Метод сбалансированной дискретизации для задач имитационного моделирования динамических процессов в распределенных объектах и методика тестирования интеллектуальной информационной технологии экспертных систем» (№ гос. per. 7.54614.1011), выполненном на кафедре «Вычислительные системы и информационная безопасность» ДГТУ;

— в рабочей программе дисциплины «Интеллектуальные информационные системы» кафедры «Вычислительные системы и информационная безопасность» ДГТУ (per. № 243 от 5.11.2010 г.).

Апробация работы. Основные результаты работы докладывались и обсуждались на ХХШ международной научно-практической конференции «Математические методы в технике и технологиях» (Саратов, 2010 г.), VIII-ой Международной научно-технической конференции «Современные инструментальные системы, информационные технологии, и инновации» (Курск, 2010 г.), международной научно-практической конференции «Состояние и перспективы развития сельскохозяйственного машиностроения: материалы» (Ростов-на-Дону, 2011 г.), международном семинаре «Системный ар!ализ, управление и обработка информации» (Ростов-на-Дону, 2011 г.), международной научно-практической конференции «Автоматизация технологических объектов и процессов. Поиск молодых» (Донецк, 2012 г.), международном семинаре «Системный анализ, управление и обработка информации» (Ростов-на-Дону, 2012 г.).

Публикации по теме диссертации. Основные материалы диссертации опубликованы в 13 научных изданиях, в составе которых: 4 статьи в ведущих рецензируемых научных журналах, входящих в список ВАК РФ; 7 статей в материалах всероссийских и международных конференций. Во всех работах, опубликованных в соавторстве, доля материалов, принадлежащих автору диссертации, составляет не менее 50%. 2 свидетельства об официальной регистрации программы для ЭВМ выданы Федеральным государственным бюджетным учреждением «Федеральный институт промышленной собственности».

КРАТКОЕ СОДЕРЖАНИЕ РАБОТЫ

Работа состоит из введения, четырёх глав, заключения, списка литературы из 113 позиций, а также четырёх приложений. Объём основной части — 117 страниц, 7 таблиц и 20 рисунков.

Во введении обоснована актуальность темы диссертации, поставлена цель, определены общая и частные задачи исследования, сформулированы положение выдвигаемые на защиту и основные научные результаты, изложены теоретическая и практическая ценность исследования.

В перкой главе рассмотрены БД как часть информационных систем, в частности корпоративных информационных систем (КИС). БД, находясь на нижнем уровне в общей структуре КИС являются источником данных для всех средств обработки информации и принятия решений, входящих в конкретную систему. Соответственно среди требований к данным, хранимым в БД, на первый план выходят такие как полнота, актуальность и достоверность. С позиций решаемой в работе задачи, глазным из требований является достоверность, а основным способом обеспечения достоверности является верификация.

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

Проведена классификация ошибок реляционных баз данных. При этом ошибки разделены на 2 группы: этапа проектирования и этапа эксплуатации.

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

К сшибкам этапа эксплуатации, относятся нарушение ссылочной целостности, взаимные блокировки, повреждения индексов и фактические ошибки. Наиболее сложными с точки зрения выявления являются ошибки ввода данных. К данному классу относятся ошибки оператора или ошибочные и искажённые данные, полученные от датчиков или внешних систем. Хотя такие ошибки в общем случае не нарушают целостности БД и могут полностью соответствовать формату хранения данных, используемому текущей СУБД, их наличие оказывает значительное влияние на надёжность работы БД и её достоверность.

Проведён анализ методов проверки БД, в результате установлено, что наибольшее внимание уделяется поиску ошибок на этапе проектирования БД, однако существует большое количество видов ошибок, возникновение которых возможно на этапе эксплуатации. Частично, предотвращение таких ошибок обеспечивается ограничениями целостности и триггерами.

Целостность базы данных — соответствие имеющейся в базе данных информации её внутренней логике, структуре и всем явно заданным ограничивающим правилам. В реляционной модели данных определены два базовых требования обеспечения целостности: целостность сущностей и целостность ссылок. Целостность сущностей обеспечивается путём использования уникальных первичных ключей для каждой записи в таблице. Для обеспечения ссылочной целостности каждое значения внешнего ключа в дочернем отношении имеет в родительском отношении первичный ключ с таким же значением.

Целостность данных можно также контролировать с помощью триггеров — хранимых процедур особого типа, которые пользователь не вызывает непосредственно, а исполнение которых обусловлено действием по модификации данных: добавлением, удалением строки в заданной таблице, или изменением данных в определенном столбце заданной таблицы реляционной базы данных.

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

В главе даётся понятие достоверности БД как отношения объема данных, соответствующих действительности к общему объему данных. Недостоверной будем считать строку, содержащую неверную информацию хотя бы в одной ячейке. Как правило, бывает невозможно точно установить достоверность конкретной строки таблицы БД, но можно говорить о степени уверенности в её достоверности. Обозначим достоверность ¡-ой строки р, е [0, 1], где р, = О означает недостоверность данных,/?, = 1 — достоверность.

Такая оценка достоверности необходима для обеспечения возможности сравнения двух строк таблицы и означает степень расхождения хранимых в БД значений с реальными. С учётом выше изложенного достоверность таблицы:

Еа , где п — общее количество стоок в таблице, (1)

п

р,— оценка достоверности конкретной строки данных из таблицы БД.

При проверке очередной к- ой строки 0<к<п-\, изменение общей

достоверности таблицы:

Ск-\ 1 ^

Е р. + Р1+ Ел

Ел п,

. '-о , где п

р* — значение достоверности к-ой строки после проверки.

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

Рассмотрены основные принципы применения ИНС в задачах тестирования. В результате установлено, что методы применения ИНС в задачах, связанных с тестированием в основном сводятся к задачам классификации, ' в частности классификации состояний, например, на работоспособное и неработоспособное, или классификацию состояний системы при выявлении в ней конкретных ошибок, на большее число классов.

На основании проведённого анализа определены основные этапы и представлена концептуальная схема решения поставленной научной задачи.

Во второй главе описываются модели и методы анализа содержания баз данных искусственными нейронными сетями при решении задачи верификации. БД представляется совокупностью отношений R, которое является подмножеством полного декартова произведения Di х D2 х ... * Dn, множеств доменов Db D2, ..., Dn (n > 1), не обязательно различных. Каждый элемент отношения R={r,, г2, ..., rJ( ..., rm} (m > 0) является кортежем, включающим в себя элементы множеств D¡, D2, ..., D„; j-ый элемент отношения R равен (aJb a¡2, •••, aj_„), aj í e D1: aj>2 6 D2, ..., aJ>n e Dn. Отношение может быть представлено в виде таблицы, в которой столбцы (поля, атрибуты) соответствуют вхождениям доменов в отношение, а строки (записи) — наборам из п значений, взятых из исходных доменов. Каждому элементу ij можно поставить в соответствие параметр d(rj) — достоверность данного элемента такое, что 0 < d(rj) < 1.

Таблица БД хранит в себе информацию о совокупности объектов предметной области принадлежащих одному классу (являющихся экземплярами одной сущности). Однако в этой совокупности могут быть выделены непересекающиеся группы объектов похожих между собой в пределах группы, и максимально отличающихся от объектов, принадлежащих другой группе, т.е. кластеров. Первым этапом верификации является выявление этих кластеров с помощью нейронной сети Кохонена, основой ИНС служит искусственный нейрон, являющийся упрощённой моделью естественного нейрона (рисунок 1).

Входы Веса

Выход

Сумматор Функция активации

х

n

Рисунок 1 — Искусственный нейрон.

Главным достоинством сетей Кохонена является обучение без учителя, также называемое самоорганизацией, основным преимуществом которого является отсутствие необходимости задания желаемых значений выходов для каждого входного вектора из обучающей выборки.

Слой Кохонена состоит из некоторого количества параллельно действующих линейных элементов. Все они имеют одинаковое число входов п и получают на

свои входы один и тот же вектор входных сигналов х=(х,.....х„). На выходе у'-го

линейного элемента получаем сигнал:

п

УJ=wj^, + llwj,xi (3)

(=1

>

где м/у — весовой коэффициент ¡'-го входа У-го нейрона, м^д — пороговый коэффициент.

После прохождения слоя линейных элементов сигналы посылаются на обработку по правилу «победитель забирает всё»: среди выходных сигналов у, ищется максимальный; его номер j =а^тах{>>,}■ Окончательно, на выходе

1

сигнал с номером ]тах равен единице, остальные — нулю. Если максимум одновременно достигается для нескольких ]тах, то он принимается равным единице либо для всех}тах> либо только для первого в списке.

Для каждого ¡-го нейрона веса его синаптических связей образуют вектор ш _ [и, .....После нормализации входных векторов при активации сети

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

Победителем считается нейрон с номером к для которого difix, wt) = min

(5)

Веса связей нейрона-победителя уточняются по формуле

. + р (х - Ч!к ). где р — коэффициент скорости обучения. (6)

Веса остальных нейронов изменению не подлежат.

Однако, обязательным требованием для использования нейронных сетей, в том числе сети Кохонена, является точное задание количества нейронов во входном и выходном слоях. Так как каждый нейрон выходного слоя отвечает за принадлежность образца к определенному кластеру, то число кластеров всегда равно числу выходных нейронов. Это свойство вступает в противоречие с тем, что сеть Кохонена обучается без учителя. Принадлежность объекта к определенному классу определяется по максимальному значению выхода нейронов последнего слоя сети. Чем больше значение выхода, тем более сеть «уверена» в принадлежности объекта, поданного на вход к соответствующему классу. Оптимальным количеством нейронов при этом будет такое количество, при котором для каждого кластера среднее значенйе максимального выхода нейрона

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

к, 2>//„, к, К X (rnaxu - ^--) + £ (тахг, - --) +... + £ (max« - --)

тЫ = Й_л.-l Д_пс-\ S и,-1 (7)

»

где

¿1 — количество образцов, принадлежащих к 1-му кластеру;

£„ — количество образцов, принадлежащих к и-му кластеру;

пс — число нейронов выходного слоя (число кластеров);

таху— максимальное значение выхода нейронов последнего слоя для j-ro

образца, принадлежащего к f-му кластеру;

outmj— значение выхода т-го нейрона (m Ф Г).

В результате кластеризации сетью Кохонена каждому элементу rs отношения R будет поставлен в соответствие кластер с,, такой что rj е с„ образуя множество пар ^rJtc,y 0<i<m, 1<г<ис где m — количество строк в таблице, пс — количество

кластеров. Данное множество пар образует обучающую выборку пригодную для использования при обучении с учителем, которое применяется для обучения многослойных ИНС прямого распространения.

Применительно к поставленной задаче множество R — кортежей отношения (или строк таблицы), представляет собой признаковое описание объектов, хранимых в БД. Множество С = {сь с2, ..., с„} — множество классов.

Для нейронов скрытого и выходного слоя используется сигмоидальная функция активации:

J_ (8)

1 + е~<с .

Одно из ценных свойств сигмоидалыюй функции — простое выражение для ее производной: f(s) = af(s)( 1- /(я))-

Производная функции активация используется при обучении сети. Для решения поставленной задачи используется алгоритм обратного распространения ошибки.

На каждой итерации во время обратного прохода производится корректировка весов нейронной сети в соответствии с дельта-правилом:

А™, = \'ёх,, (9)

где <5 — ошибка на выходе скрытого нейрона, V — коэффициент скорости обучения,

х, — значения, поступающие по входным связям, для которых вычисляется коррекция.

Зная ее величину для г'-й связи, можно вычислить новый вес

\»,{к + 1) = н-.-(Л) + (Ю)

где Л — номер итерации обучения.

Веса связей настраиваются с целью максимального приближения выходного сигнала сети к желаемому. На каждом /г-ом этапе обучения если г, е Ск~

= \п * 01)

О, если г, £ С,..

В третьей главе описываются этапы применения ИНС для верификации БД:

1. формирование обучающей выборки;

2. «разведочный» анализ данных;

3. «глубокий» анализ данных;

4. оценка достоверности строк таблицы;

5. принятие решения об исправлении или исключении недостоверных данных из таблицы.

Выделены 2 подхода к верификации БД:

— входной контроль — проверка вводимых данных на соответствие хранимым в БД, исходя из предположения, что в БД хранятся достоверные данные;

— текущий контроль — проверка данных, хранящихся в БД и поиск недостоверных среди них.

Сформулированы требования к обучающей БД. Основными среди них лвляются:

— достаточность;

— разнообразие;

— равномерность представления классов.

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

Км = 2хл2 +2хих/я = 2хих(и + /и)) (12)

где п — число входных нейронов,

т — число выходных нейронов.

Для сети Кохонена:

Кк=пхт (13)

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

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

В результате обучения многослойной сети методом обратного распространения ошибки с использованием полученного в результате кластеризации множества пар (>j, С*) будет получена сеть, способная классифицировать объекты, информация о которых хранится в анализируемой таблице. Благодаря способности нейронных сетей к обобщению, т.е. распространению выделенных знаний на неизвестные ранее образцы, обученную сеть можно применять для классификации объектов, не входивших в достоверную БД. При этом степень уверенности в принадлежности образца, поданного на вход, к определённому классу определяется максимальным значением выхода нейронов выходного слоя, т.е. d(rm^,) = max{out2u out22, out2T), где out1i — значение выхода i-ro нейрона выходного слоя сети; max — функция вычисляющая максимальное значение; d— оценка достоверности.

Для отнесения объекта, поданного на вход ИНС к одному из известных классов, используются значения выходов нейронов последнего слоя. Образец считается относящимся к тому классу, для которого выход соответствующего нейрона был максимальным. При этом, чем выше значение выхода тем с большей уверенностью образец принадлежит именно к этому классу. Еще одни необходимым условием для правильной классификации объекта является наличие достаточно малых значений выходов на всех остальных нейронах выходного слоя, т.е.

е Cj, если для г, = {at I, аи, ..., а,„), где — элементы кортежа (значения в строке таблицы БД),

outj = argmax(ou/,) и outj <<outr Д™ всех О < I < т , таких что / Ф }.

i

Так как в качестве функции активации используется сигмоидальная функция, то О < outt s 1

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

В качестве оценки достоверности предлагается использовать максимальное значение выхода нейронной сети, т.е.

d(rm+1)=outj. (14)

Если исходить из предположения, что в обучающей БД содержались только достоверные данные и были представлены все классы, характерные для предметной области, описываемой данной БД и в частности данной таблицей, то можно справедливо предположить, что чем ниже значение максимально го выхода ИНС, тем меньше уверенность (вероятность), что поданный на вход объект

относится к данному классу. Однако еще более низкие значения остальных выходов означают, что анализируемый объект не относится и к какому-либо другому классу.

Результаты данного этапа используются для принятия решения о дальнейших действиях. Здесь возможны 2 варианта, приводящих к повышению достоверности отдельных таблиц БД, и как следствие, БД в целом. Это:

— исключение из таблиц строк с достоверностью ниже определённого значения;

— проверка строк в порядке увеличения оценки их достоверности, начиная с самой низкой.

В четвёртой главе проводится оценка разработанной методики верификации. Для этого определены следующие критерии.

Расположение недостоверных строк в отсортированной по критерию достоверности таблице:

* , где к— номер последней достоверной строки, (15)

"-«'— количество недостоверных строк.

Для оценки точности методики верификации БД предлагается использовать критерий, основанный не на обобщенной оценке результатов верификации таблицы, а на правильности определения оценки достоверности для каждой строки (с).

т

(¡' \ для достоверных строк

т , где ' \l-cl,,для недостоверных строк ^^

В качестве примера проведена верификации таблицы БД, в которой для анализа выбраны 3 столбца, таким образом, таблица представлена множеством 3-хкомпонентных векторов, для которых возможно графическое представление.

Отмечается также, что зачастую процедура верификации проводится пользователем вручную, при этом он последовательно проверяет каждую строку из таблицы БД с целью установить достоверность содержащихся в ней данных. При таком способе проверка достоверной строю! не оказывает влияния на общую достоверность как таблицы, так и БД в целом. Таким образом, большая часть времени затрачивается впустую. Однако, зная оценку достоверности для каждой строки в таблицах верифицируемой БД, можно начинать проверку со строк с наименьшей вычисленной достоверностью, т.е. проверять вначале именно те строки, в которых наиболее вероятно наличие ошибки. Такой подход позволяет при минимальных временных затратах добиться значительного повышения достоверности БД (рисунок 2).

На практике при верификации БД возможны 2 случая:

— Имеется определённое значение достоверности, которое необходимо достичь за как можно более короткое время.

— Имеется ограничение по времени, за которое необходимо достичь как можно большей достоверности.

Из графика (рисунок достоверности с1* при проверке упорядоченных строк требуется время /ь а при проверке неупорядоченных — время ¿2 > При последовательной проверке неупорядоченных строк за время будет достигнута достоверность с!ъ а при проверке упорядоченных строк > сЗи что означает достижение большей достоверности БД за одинаковое время.

[ - ■ Неупорздоменные строку

Упорядоченные строки

1,00 --

0,92 --

ТЙ

200 300

Количество проверенных строк

Рисунок 2 — График зависимости достоверности таблицы от числа проверок.

В главе приводятся результаты эксперимента по верификации БД с использованием намеренно введённых ошибочных строк, номера которых известны. Результаты их распределения в таблице приведены на рисунке 3. Из него видно, что даже в худшем случае все ошибочные строки будут находиться в первой половине таблицы. Это означает, что проверка половины отсортированных строк приведёт к достоверности данных.

Рисунок 3 — Распределение ошибочных строк.

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

Рассматривается описанный выше пример при условии наличия в каждой из обучающих выборок Я1 и Я2 одной ошибки, то есть: 3 ге Д1 фО < 1 и В ге Я2 -> й?(г) < 1 Результаты экспериментов при этом показали, что наличие одной ошибочной строки в обучающей выборке не оказало значительного влияния на результат, который, в целом, соответствует результатам, полученным при использовании достоверной выборки.

ОСНОВНЫЕ РЕЗУЛЬТАТЫ И ВЫВОДЫ

Основной научный результат диссертации заключается в решении актуальной научной задачи: разработки методов повышения оперативности верификации БД при заданных исходных данных о количестве строк и столбцов в таблицах БД и требуемом уровне достоверности.

При проведении исследований и разработок по теме работы получены следующие теоретические и прикладные результаты, обладающие научной новизной:

1. Модель БД, описывающая использование хранимой информации в качестве входных данных ИНС, основанная на реляционной модели и отличающаяся учётом свойства достоверности строки таблицы БД.

2. Метод определения оптимального числа классов, использующий сеть Кохонена и отличающийся применением в качестве критерия оптимальности средней разности между максимальным значением выхода нейронной сети и остальными выходными значениями.

3. Метод определения степени принадлежности элемента к классу достоверных данных, отличающийся от известных применением многослойных ИНС прямого распространения, и использующий значения максимального выхода нейрона выходного слоя в качестве оценки достоверности, используемой для сортировки таблицы в порядке возрастания достоверности, начиная с минимальной.

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

ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ

Публикации в рецензируемых научных журналах к изданиях

1. Галушка В.В. Применение многослойных радиально-базисных нейронных сетей для верификации реляционных баз данных [Текст] / В.В. Галушка, A.A. Молчанов, В .А. Фатхи // Инженерный Вестник Дона [Электронный ресурс]: электрон, науч.-инновац. журн. — 2012. — №1. — Режим доступа: http://ivdon.ru/magazine/archive/nly2012/686. — Загл. с экрана. — № гос. регистрации 0421100096.

2. Галушка В.В. Методика определения оптимального числа нейронов выходного слоя сети Кохонена при решении задачи кластеризации [Текст] / В.В. Галушка, Д.В. Фатхи // Информационная безопасность регионов. — 2011. — .№2 (9). — с. 41-44.

3. Галушка В.В. Исследование моделей дефектов искусственных нейронных сетей [Текст] / В.В. Галушка, Д.В. Маршаков, В.А. Фатхи // Вестник Дон. гос. техн. ун-та. — 2012. — №3 (64). — стр. 65-71.

4. Галушка В.В. Формирование обучающей выборки при использовании искусственных нейронных сетей в задачах поиска ошибок баз данных [Текст] / В.В. Галушка, В.А. Фатхи // Инженерный Вестник Дона [Электронный ресурс]: электрон, науч.-инновац. журн. — 2013. — №2. — Режим доступа: http://ivdon.ru/magazine/archive/n2y2013/1597. — Загл. с экрана. — № гос. регистрации 0421100096.

Публикации в других изданиях

5. Галушка В.В. Возможности применения нейронных сетей в задачах тестирования [Текст] / В.В. Галушка, В.А. Фатхи // Математические методы в технике и технологиях -ММТТ23: сб. тр. XXIII Между нар. науч. конф.: в 12 т. /СГТУ. - Саратов, 2010. - Т. 5, секц. 5

6. Галушка В.В. Классификация ошибок реляционных баз данных [Текст] / В.В, Галушка, В.В. Долгушин // Современные инструментальные системы, информационные технологии, и инновации: сб. тр. VIII-ой Междунар. (заоч.) науч.-техн. конф. / ЮЗГУ. - Курск, 2010. — с. 95-98.

7. Галушка В.В. Программная модель для исследования возможностей применения нейронных сетей в агропромышленном комплексе [Текст] / В.В. Галушка, В.А. Фатхи // Состояние и перспективы развития сельскохозяйственного машиностроения: материалы междунар. науч.-практ. конф. г. Ростов н/Д, ДГТУ, 2011.-е 229-231.

8. Галушка В.В. Применение интеллектуальных информационных систем для верификации баз данных [Текст] / В.В. Галушка, В.А. Фатхи // Системный анализ, управление и обработка информации: сборник трудов международного семинара. ДГТУ, 2011. — с 266-269.

9. Галушка B.B. Прогнозирование в агропромышленном комплексе с использованием искусственных нейронных сетей [Текст] / В.В. Галушка // Состояние и перспективы развития сельско-хозяйственного машиностроения: материалы 5-й междунар. науч.-практ. конф. в рамках 15-й междунар. агропром. выставки «Интераргомаш-2012», 29 февр. — 1 марта.— Ростов н/Д, 2012. — с. 121-124.

10. Галушка В.В. Интеллектуальный метод верификации баз данных [Текст] / В.В. Галушка, A.A. Молчанов // Автоматизация технологичесхих объектов и процессов. Поиск молодых: материалы междунар. науч.-практ. конф. /Дон. нац. техн. ун-т. — Донецк, 2012. — с. 162-165.

U. Методика верификации баз данных на основе нейросетевых технологий [Текст] / Галушка В.В. // Системный анализ, управление и обработка информации: сб. тр. III Междунар. науч. семинара, п. Дивноморское, 27 сент. — 2 окт. [Электронный ресурс] / ДГГУ. — Ростов н/Д, 2012. — 1 электрон, опт. диск (CD-ROM). — № гос. регистации 0321103695.

12. Программа синтеза многослойных искусственных нейронных сетей прямого распространения с изменяемыми параметрами обучения / В.В. Галушка, Д.В. Фатхи, Дм.В. Фатхи // Свидетельство о государственной регистрации программы для ЭВМ №2011617298. - Заявка № 2011615489; заявл. 21.07.11; зарег. 19.09.11.

13. Программное средство кластеризации на базе нейронных сетей Кохонена с автоматическим выбором конфигурации сети / В.В. Галушка, Д.В. Фатхи, Дм.В. Фатхи // Свидетельство о государственной регистрации программы для ЭВМ №2012614915. - Заявка № 2012612361; заявл. 2.04.12; зарег. 31.05.12.

В работе [1] автору принадлежит описание интеллектуального метода оценки достоверности данных, содержащихся в БД, основанного на теории искусственных нейронных сетей. В работе [2] автору принадлежит разработка алгоритма определения оптимального количества кластеров и критерий оптимальности. В работе [3] автору принадлежит определение конфигурации нейронной сети, а также организация и планирование эксперимента. В работе [4] автору принадлежит определение .методики расчёта объёма обучающей выборки и практическая реализация данного метода. В работе [5] автору принадлежит анализ известных способов применения искусственных нейронных сетей в задачах тестирования. В работе [6] автору принадлежит описание ошибок, возникающих на этапе эксплуатации баз данных. В работах [7,9] автору принадлежит методика определения конфигурации сети для решения задач интеллектуального анализа данных. В работе [8,10] автору принадлежит методика использован:«; таблиц баз данных в качестве входных векторов при обучении искусственных нейронных сетей для решения задачи классификации. В [12] автору принадлежит разработка иерархии классов для построения многослойной нейронной сети прямого распространения, реализация алгоритма обучения. В [13] автору принадлежит разработка и реализация алгоритма определения количества кластеров.

В печать 9.07.2013 Формат 60x84/16.

Объём 1,4 усл. печ. л. Заказ № 7е". Тираж 100 экз.

Отпечатано в издательском центре ДГТУ

Адрес университета и полиграфического предприятия:

344000, г. Ростов-на-Дону, пл. Гагарина, 1

Текст работы Галушка, Василий Викторович, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ

ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ "ДОНСКОЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ'

(ДГТУ)

Галушка Василий Викторович

МЕТОД И СРЕДСТВА ВЕРИФИКАЦИИ БАЗ ДАННЫХ НА ОСНОВЕ НЕЙРОСЕТЕВЫХ ТЕХНОЛОГИЙ

Специальность 05.13.11 — «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей»

На правах рукописи

04201361309

Диссертация

на соискание ученой степени кандидата технических наук

Научный руководитель:

доктор технических наук, профессор Владимир Ахатович Фатхи

Ростов-на-Дону — 2013

ОГЛАВЛЕНИЕ

Введение.......................................................................................................................4

1 Предмет и научная задача исследования.............................................................16

1.1 Особенности использования баз данных в корпоративных информационных системах...................................................................................16

1.1.1 Базы данных как объект исследования......................................................19

1.2 Объект и цель исследований...........................................................................22

1.3 Анализ известного научно-методического аппарата тестирования БД и необходимость его совершенствования...............................................................25

1.3.1 Целостность и достоверность.....................................................................26

1.3.2 Применение интеллектуальных информационных систем в задачах тестирования..........................................................................................................31

1.4 Классификация ошибок реляционных баз данных.......................................32

1.4.1 Ошибки этапа проектирования БД.............................................................32

1.4.2 Ошибки этапа эксплуатации БД.................................................................33

1.5 Постановка общей научной задачи и частные задачи исследования........38

Выводы по разделу.................................................................................................44

2 Модели и методы обработки содержания баз данных искусственными нейронными сетями для верификации БД..............................................................45

2.1 Математическая модель БД.............................................................................45

2.2 Общая модель ИНС..........................................................................................49

2.3 Сеть Кохонена для решения задачи кластеризации.....................................51

2.4 Алгоритм определения оптимального количества кластеров.....................55

2.5 Многослойная нейронная сеть прямого распространения..........................62

Выводы по разделу.................................................................................................66

3 Применение ИНС для определения достоверности строк таблицы БД...........68

3.1 Виды контроля достоверности строк при верификации таблиц.................69

3.2 Требования к обучающей базе........................................................................72

3.3 Использование сети Кохонена на этапе разведочного анализа...................78

3.4 Применение многослойной сети прямого распространения для оценки достоверности данных...........................................................................................80

3.5 Средства доступа к данным при верификации БД.......................................83

Выводы по разделу.................................................................................................85

4 Оценка эффективности применения ИНС для верификации БД......................87

4.1 Критерий оценки качества верификации.......................................................87

4.2 Верификация БД перевозок.............................................................................91

4.3 Верификация БД при неустранённой ошибке в обучающей выборке......100

Выводы по разделу...............................................................................................103

Заключение...............................................................................................................104

Список использованных источников....................................................................106

Приложение А..........................................................................................................118

Приложение Б..........................................................................................................121

Приложение В..........................................................................................................123

Приложение Г. Программная реализация сети кохонена...................................125

Приложение Д. Программная реализация многослойной инс прямого распространения......................................................................................................130

Приложение Е. Исходные данные и результаты верификации бд перевозок... 135

ВВЕДЕНИЕ

Актуальность темы. Важным компонентом многих современных информационных систем являются реляционные базы данных (БД). Качество БД оказывает большое влияние на качество информационной системы в целом.

Как правило, БД, находясь на нижнем уровне в общей структуре корпоративной информационной системы (КИС), являются источником данных для всех средств обработки информации и принятия решений, входящих в конкретную систему. Соответственно среди требований к данным, хранимым в БД, на первый план выходят такие как полнота, актуальность и достоверность.

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

Архитектура части ИС, в первую очередь территориально распределённых, предполагает наличие БД различных уровней, различающихся по функциональному назначению. БД нижнего уровня служат для хранения оперативной информации о деятельности подразделения и являются источником данных для БД верхнего уровня, которые предназначены для накопления данных о деятельности всей организации за как можно большее время. Процедура импорта/экспорта данных между БД разных уровней автоматизируется средствами системы управления базами данных (СУБД) или самой ИС и имеет жестко заданные временные рамки.

В результате, актуальным становится не просто обеспечение достоверности данных в результате верификации, но и оперативность её проведения. Верификация обычно проводится вручную путём сравнения значений в каждой строке БД с реальными значениями. Для ускорения этой процедуры необходима разработка методов, позволяющих оценить достоверность данных и, исходя из полученных оценок, проверять в первую очередь строки, в которых наиболее вероятно наличие ошибок.

Вопросам верификации БД посвящены работы ряда отечественных и зарубежных специалистов: M.JI. Глухарева, А. Аграновского, Г. Майерс, В. Зайцева, Б. Телеснина, Р. Хади, Ю. Карпова, В.В. Смирнова, В. Липаева, В.М. Соловьева, A.A. Вербицкого, В.Н. Гридина, В.И. Солодовникова, В.В. Кульба, В.Н. Лихачёва, J.-M. Nicolas, P. Meseguer, А. Ргеесе.

Верификация БД, также проводится с использованием специализированного программного обеспечения, разрабатываемого компаниями Computer Associates, Rational Software, Logic Wokrs, Quest Software, Oracle, IBM и др.

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

Объектом диссертационного исследования являются базы данных на этапе эксплуатации.

Предметом диссертационного исследования являются методы верификации БД.

Цель исследования — повышение оперативности верификации БД.

Повышение оперативности достижимо за счёт проверки строк, упорядоченных по возрастанию степени их достоверности, начиная с наименее достоверной. Такой подход позволит проверить строки с ошибками как можно раньше, и, при необходимости, исключить из проверки некоторые строки, имеющие достаточно высокую для данной области оценку достоверности.

Научная задача: разработка метода повышения оперативности верификации БД при заданных исходных данных о количестве строк и столбцов в таблицах БД и требуемом уровне достоверности.

Сформулированная научная задача предполагает решение следующих частных задач:

— разработка метода определения достоверности строки таблицы БД на основе интеллектуального анализа данных с применением искусственной нейронной сети;

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

— разработка метода определения принадлежности строки к какому-либо классу достоверных данных, по ограниченному числу столбцов таблицы, значимых с точки зрения верификации;

— определение количества классов, являющегося оптимальным для заданной обучающей выборки;

— оценка степени достижения цели.

Наиболее существенные научные положения, выдвигаемые для защиты:

1. Существующие методы не обеспечивают проверку достоверности при эксплуатации БД, поэтому верификация выполняется неавтоматизированными методами, приводящими к существенным временным затратам, в связи с чем, задача повышения оперативности верификации БД является актуальной.

2. Повышение оперативности достижимо за счёт проверки строк, упорядоченных в порядке возрастания достоверности, начиная с минимальной.

3. Определение достоверности строки БД возможно с применением искусственных нейронных сетей (ИНС) на основе оценки степени уверенности ИНС в принадлежности строки к одному из классов заведомо достоверных данных.

4. Определение оптимального числа классов осуществимо на основе кластеризации обучающей выборки с помощью сети Кохонена.

5. С использованием разработанных методов достижимо значительное, повышение оперативности верификации БД (на примере БД, содержащей таблицу из 483 строк и 3 столбцов — до 60%).

Наиболее существенные научные результаты:

1. Модель БД, описывающая использование хранимой информации в качестве входных данных ИНС, основанная на реляционной модели и отличающаяся учётом свойства достоверности строки таблицы БД.

2. Метод определения оптимального числа классов, использующий сеть Кохонена и отличающийся применением в качестве критерия оптимальности средней разности между максимальным значением выхода нейронной сети и остальными выходными значениями.

3. Метод определения степени принадлежности элемента к классу достоверных данных, отличающийся от известных применением

многослойных ИНС прямого распространения, и использующий значения максимального выхода нейрона выходного слоя в качестве оценки достоверности, используемой для сортировки таблицы в порядке возрастания достоверности, начиная с минимальной.

Практическая ценность работы.

— метод определения достоверности строки таблицы на основе степени принадлежности элемента к классу достоверных данных, в отличие от принятых способов определения достоверности БД не требует участия человека и не зависит от предметной области;

— программная реализация методики верификации реляционных БД с применением искусственных нейронных сетей, в отличие от известных программных средств позволяет проводить автоматизированную оценку достоверности строк в таблицах БД и ускорить процесс поиска ошибок;

— алгоритм, реализующий разработанный метод определения оптимального числа классов, может быть использован в качестве программного компонента в средствах интеллектуального анализа данных для проведения кластеризации при неизвестном числе кластеров;

— применение предложенного метода оценки достоверности строки таблицы с использованием искусственных нейронных сетей на основе степени принадлежности элемента к классу достоверных данных позволило до 60% сократить время верификации БД, содержащей таблицу из 483 строк и 3 столбцов.

В первой главе рассмотрены БД как часть корпоративных информационных систем (КИС). БД, находясь на нижнем уровне в общей структуре КИС являются источником данных для всех средств обработки информации и принятия решений, входящих в конкретную систему. Соответственно среди требований к данным, хранимым в БД, на первый план

выходят такие как полнота, актуальность и достоверность. Основным способом обеспечения достоверности является верификация.

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

Проведён анализ методов проверки БД, в результате чего установлено, что наибольшее внимание уделяется поиску ошибок на этапе проектирования БД, однако, существует большое количество видов ошибок, возникновение которых возможно на этапе эксплуатации.

Рассмотрены основные принципы применения ИНС в задачах тестирования. В результате установлено, что методы применения ИНС в задачах, связанных с тестированием, диагностикой и т.д. в основном сводятся к задачам классификации состояний системы, в частности, классификации по работоспособности — на работоспособное и неработоспособное, или классификацию состояний системы по наличию в ней ошибок.

Проведена классификация ошибок реляционных баз данных. При этом ошибки разделены на 2 группы: ошибки этапа проектирования и этапа эксплуатации.

Выявление ошибок в ходе эксплуатации БД позволяет снизить вероятность получения в результате выполнения запроса искажённых данных и способствует повышению надёжности работы базы данных.

Проведён анализ методов проверки БД, в результате установлено, что наибольшее внимание уделяется поиску ошибок на этапе проектирования БД, однако существует большое количество видов ошибок, возникновение которых возможно на этапе эксплуатации. Частично, предотвращение таких ошибок обеспечивается ограничениями целостности и триггерами. Однако данные

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

Рассмотрены основные принципы применения ИНС в задачах тестирования. В результате установлено, что методы применения ИНС в задачах, связанных с тестированием в основном сводятся к задачам классификации, в частности классификации состояний, например, на работоспособное и неработоспособное, или классификацию состояний системы при выявлении в ней конкретных ошибок, на большее число классов.

На основании проведённого анализа определены основные этапы и представлена концептуальная схема решения поставленной научной задачи.

Во второй главе описываются модели и методы анализа содержания баз данных искусственными нейронными сетями при решении задачи верификации. БД представляется совокупностью отношений Я. Каждый элемент отношения ..., г-}, ..., гт} (т > 0) является кортежем,

включающим в себя элементы множеств £>ь /)2, • • А?; ,)-ый элемент отношения Я равен ..., а^еВь аИ2, ..., е £)„. Отношение может быть

представлено в виде таблицы, в которой столбцы (поля, атрибуты) соответствуют вхождениям доменов в отношение, а строки (записи) — наборам из п значений, взятых из исходных доменов. Каждому элементу ^ ставится в соответствие параметр — достоверность данного элемента такое, что 0 < 4п)< 1.

Таблица БД хранит в себе информацию о совокупности объектов предметной области принадлежащих одному классу (являющихся экземплярами одной сущности). Однако в этой совокупности могут быть выделены непересекающиеся группы объектов похожих между собой в

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

Главным достоинством сетей Кохонена является обучение без учителя, также называемое самоорганизацией, основным преимуществом которого является отсутствие необходимости задания желаемых значений выходов для каждого входного вектора из обучающей выборки. Однако, обязательным т