Probabilistic approaches development for optimizing learning parameters procedure for testing models via the expectation-maximization method

Abstract

The development and improvement of training algorithms is of special scientific and practical interest in the field of application testing. In the context of expanding the field of application of probabilistic models of Bayesian networks for solving testing problems, there is a need for stochastic assessment of hidden parameters, as well as the formation of a complete joint distribution across all variables. The growth of the dimension of probabilistic models for solving various scientific and applied problems requires the development of optimal procedures for training parameters in accordance with existing algorithms, as well as the development of new solutions. The subject of the study is testing models used to represent probabilistic relationships between individual test modules, which allow timely configuration and use of test generation to detect certain groups of program errors. The aim of the study is to develop effective stochastic algorithms for training parameters of test models, which allow you to obtain more accurate values ​ ​ of a priori distribution of parameters. The study proposes methods and algorithms for training parameters of testing models based on a stochastic gradient in combination with the Monte Carlo method using Markov chains to form a preliminary distribution over all hidden variables in accordance with the available set of training data. The results of the study showed the viability of theoretical assumptions and made it possible to implement the optimal algorithm for solving the problem of training probabilistic models of testing web applications. The proposed methods and algorithms are constructive and make it possible to increase the accuracy of training parameters of test models in the presence of hidden variables.

Full Text

Введение

Применение вероятностных моделей фаззинга для решения задач тестирования веб-приложений позволяет в наибольшей степени решить задачу нахождения ошибок, возникающих в процессе функционирования программ. В основе данных моделей лежит возможность определения модулей фаззинга в виде узлов модели и задание им стохастических параметров. Наибольший интерес для моделирования процессов тестирования представляют динамические модели, позволяющие оценивать состояние процессов фаззинга на протяжении фиксированного временного интервала (t;t+k) и дающие возможность накопления статистической и вероятностной информации относительно возникновения событий ошибок (свидетельств). В рамках данного исследования будем использовать байесовские сети (БС) как наиболее адаптированную модель представления процессов тестирования. Решение задачи разработки оптимальных алгоритмов обучения параметров БС связано с необходимостью повышения точности существующих алгоритмов, а также оптимизацией расчетов вероятностей с использованием логарифма правдоподобия, а также критериев Шварца и Акаике. Применение стохастического градиента, а также динамик Гамильтона и Ланжевена в сочетании с методом Монте-Карло с применением цепей Маркова позволяет оптимизировать процедуру расчета распределений по всем возможным переменным БС. Основной задачей исследования является разработка математических методов и инструментальных средств, направленных на оптимизацию алгоритмов обучения моделей фаззинга на основе метода ожидания-максимизации.

Результаты и обсуждение

Процедура обучения параметров байесовских сетей предназначена для определения вероятностных распределений для каждой из вершин в соответствии с обучающей выборкой D=Xk,Ykk=1n. X=X1,X2,,Xn – множество вершин байесовских сетей, Y=ParentsXi – родительские вершины, соответствующие переменным X. В таком случае вероятность соответствия переменной X конкретному значению θ будет иметь следующий вид [1]:

Pθ|X=PX|θPθ. (1)

С учетом того, что байесовская сеть представляет собой пару значений X,G и X=X1,X2,,Xn, выражение (1) запишем в терминах байесовской сети:

Pθ|X=i=1NPXi|θPθ. (2)

Для получения полного совместного распределения параметров байесовской сети воспользуемся правилом апостериорного принятия решений. Тогда оценка параметра θ может быть получена за счет определения логарифма правдоподобия для каждой из переменных Xi в соответствии с выражением (1) и (2). Получим [2, 3]:

θMAPG=Pθ|X=argmaxθlogP(X|θ)+logPθ. (3)

Правило апостериорного принятия решений лежит в основе алгоритма ожидания максимизации (ОМ), предназначенного для обучения байесовских сетей со скрытыми параметрами. На этапе ожидания происходит замена скрытых переменных на значение их оценок, после чего вычисляется значение правдоподобия для параметров θ. На этапе максимизации производится вычисление таблиц условных вероятностей для каждой из вершин байесовской сети в условиях полных данных. Заполнение скрытых данных производится за счет решения уравнения Гамильтона и дифференциального уравнения, формируемого на основе информационной матрицы Фишера. Рассмотрим алгоритм стохастического градиента в сочетании с динамикой Гамильтона.

Вектор градиента, соответствующий функции правдоподобия logP(X|θ), будет иметь следующий вид:

gθ,Xi=logPθ|Xi,Gθ,X=i=1Ngθ,Xi. (4)

Запишем уравнение Ланжевена на основе стохастического дифференциального уравнения Ито. С учетом градиента функции правдоподобия получим

dθt=logPθtdt+2dBt, (5)

где Bt=N0,I – гауссовский процесс.

Применяя метод Стермера – Верле, получим решение уравнения (5), определяющее каждый следующий шаг для параметра θt+1

θt+1=θt+ϵt2 logPθt+N0,ϵt,θt~Pθ. (6)

Введем обозначение градиента для θMAPG в соответствии с (4)

gθ=logPθ+i=1NlogXi|θ. (7)

Тогда перепишем выражение (6) с учетом введенных обозначений [5]

θt+1=θt+ϵt2logPθt+nNGθ,X+φ. (8)

Из выражения (8) следует, что при ϵt0 наблюдаем снижение ошибки в решении уравнения Ланжевена. В таком случае общая сложность алгоритма стохастического градиента может быть снижена до On, n<<N в отличие от алгоритма Метрополиса – Гастингса (МГ). Как показывает практика, выполнение ϵt0 не всегда достижимо, как следствие, применение уравнения Гамильтона становится проблематичным. Для решения данной проблемы зададим ковариацию gθ,X и выразим информацию Фишера для наблюдаемых переменных байесовской сети X=X1,X2,,Xn через градиент функции gθ,X [4]:

I θ,X =MddθlogPθ,X2=Mgθ,X2. (9)

Из выражения (9) следует, что чем выше значение математического ожидания в точке θ0, тем становится проще выделить значение θ на фоне θ0 и точнее можно выполнить оценку параметра θ при выполнении условия θ=θ0. В таком случае информация Фишера Iθ, будет содержать полный набор сведений относительно параметра θ, содержащихся в наблюдаемых переменных байесовской сети X1,X2,,Xn.

Отметим, что в большинстве случаев информация I θ,X  имеет непосредственную зависимость от параметризации. В таком случае можно получить альтернативную запись выражения (9). Для этого введем следующие предположения: Ω – некоторый бесконечный (конечный) интервал; множество A={X:Pθ,X>0}, формируемое из распределения Pθ,X; для всех переменных XA и θΩ существует производная P'θ,X=dPθ,X/dθ.

Если условие A={X:Pθ,X>0} выполняется и производная по θ относительно меры μ стоящая под знаком интеграла

Pθ,XdμX=1. (10)

дифференцируема, получим равенство нулю математического ожидания от P'θ/X

MddθPθ,X=0. (11)

Следовательно,

I θ,X =DddθP θ,X. (12)

Если существует вторая производная от логарифма правдоподобия logPθ|X относительно параметра θ и вторая производная по θ вычисляется путем повторного дифференцирования выражения, стоящего под знаком интеграла (10), выражение для I θ, может быть записано в следующем обобщенном виде

I θ,X =Md2d2θlogPθ,X=MHθ,X, (13)

где Hθ,X – матрица Гессе, соответствующая функции правдоподобия logPθ,X.

Так как наблюдения X1,X2,,Xn являются независимыми, тогда для I θ,X  справедливо следующее выражение:

In θ,X =nI1 θ,X . (14)

Для выражения (14) получим аппроксимацию информации Фишера в следующем виде:

I' θ,X =ngθ,Xgθ,XT. (15)

Выражение (15) носит название эмпирической информации Фишера, соответствующей распределению Pθ,X. В таком случае для больших значений n в соответствии с центральной предельной теоремой получим

G¯θt,Xn=NMGθt,X,1ncovGθt,X,G¯θt,Xn=Gθt,XnN. (16)

С учетом того, что ковариация covGθt,X определяется в соответствии с информацией Фишера, получим следующие приближенные значения с учетом определенного ранее выражения (14)

ncovGθt,XIn,n MGθt,XGnθt,Xn. (17)

В таком случае второе слагаемое выражения (16) приведем к следующему виду

logPθt+nNG¯θt,Xn=π+φ',π=logPθt+Gnθt,Xnφ'=N0,nNIN1. (18)

В соответствии с правилом апостериорного вывода первые два слагаемых, стоящих в правой части уравнения (18), соответствуют градиенту логарифма апостериорного распределения

logPθt|XN=logPθt+Gnθt,Xn. (19)

Воспользовавшись теоремой Бернштейна фон Мизеса, получим важные следствия асимптотической теории байесовского вывода, заключающиеся в близости апостериорного распределения к нормальному. Пусть Pn(θ|X1,X2,,XN) – апостериорное распределение параметра θ при наличии наблюдений X1,X2,,XN, формируемых в соответствии с Pθ и начальным распределением Pθ0 на множестве параметров Θ. Если X1,X2,,XN– случайные выборки, полученные согласно распределению Pθ0, то для апостериорного распределения вероятностей Pn(θ|X1,X2,,XN) будет справедлива теорема Бернштейна фон Мизеса:

Pθ0nsupθPn(θ|X1,X2,,XNNθ,IN10,Pn(θ|X1,X2,,XNNθ,IN1. (20)

Если теорема Бернштейна фон Мизеса выполнима для распределения Pn(θ|X1,X2,,XN), то для градиента функции правдоподобия будет справедливо следующее выражение [5]:

logPθt=logPθt|XN+Gθ,X,logPθt|XN=INθtθ0. (21)

Перепишем выражение (8) с учетом выражений (18) и (21)

θt+1=θt+ϵt2INθtθ0+φ+ξ,ξN0, ϵt24nNIN1. (22)

Обобщая формулы (18) и (22), получим значения дисперсии Q для нормального распределения N0, Q для больших и малых значений шага ϵt

Q=ϵt,ϵt0                    ϵt ϵt24nNIN1,ϵt . (23)

Наряду с определением параметров нормального распределения необходимо произвести расчет информационной матрицы Фишера INθtθ0. Для этого воспользуемся определенной ранее эмпирической информацией Фишера и запишем оценку I^1,t

I^1,t θ,X =1tI^1,t θ,X +1tI' θt,Xtn . (24)

В таком случае можно провести замену IN на соответствующую ей оценку I^1,tθ,.

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

На этапе максимизации производится вычисление максимальной оценки нижней границы логарифма правдоподобия, но уже с учетом того, что распределение по всем скрытым переменным уже известно и определено в соответствии с алгоритмами стохастического градиента, описанного выше. Тогда оценка максимального правдоподобия параметра θ на этапе максимизации будет иметь следующий вид [6, 7]:

θ'=argmaxθ'Hqθ;HlogPE,X|θqθ;X,qθ;H=P(E,X|θ)HP(E,X|θ)=P(E,X|θ)P(E|θ)=PX|E,θ, (25)

где E и X – множество наблюдаемых и скрытых переменных байесовской сети соответственно.

Для оценки точности формирования распределения вероятностей по всем вершинам байесовской сети на основе алгоритма ОМ рассмотрим его сходимость. На этапе максимизации видно, что полученные распределения должны удовлетворять условию регулярности (гладкости и монотонности). Для этого определим для данного распределения дистанцию Кульбака – Лейблера (КЛ). С помощью дистанции КЛ [8] установим факт близости двух распределений fθ(E|X) и fθ'(E|X), полученных в результате использования классического алгоритма ОМ и алгоритма ОМ с применением стохастического градиента в сочетании с информационной матрицей Фишера (ОМ и СГФ)

DKLf,f'=fθ(H|X) logfθ(H|X)fθ'(H|X)dH. (26)

Выражение (33) можно переписать в виде разности двух математических ожиданий для функций f и f' соответственно, при этом полагаем, что X и E являются случайными переменными по отношению к рассматриваемому истинному распределению f [9]:

DKLf,f'=F(H,X)=Eflogfθ(H|X)Ef'logfθ'H|X,F(H,X)=fθH|XlogfθH|XdHfθH|Xlogfθ'H|XdH. (27)

С практической точки зрения в данной работе дистанция Кульбака –Лейблера используется для верификации представленного подхода к обучению параметров байесовской сети на основе алгоритма ОМ и стохастического градиента по сравнению с классическим алгоритмом ОМ и ОМ с применением алгоритма Метрополиса – Гастингса. Это дает возможность оценить степень точности получения распределения по всем скрытым переменным f' и при необходимости произвести настройку разработанного алгоритма.

В рамках проведения экспериментальной части исследования рассмотрим байесовскую сеть тестирования «инъекций» веб-приложений. Структурно «инъекции» делятся на следующие основные категории: SQL, команд и кода. Данные типы «инъекций» возникают в веб-приложениях, взаимодействующих с реляционными базами данных, а также имеющих функциональные возможности по динамическому выполнению системных команд.

Для оценки эффективности приложенных математических алгоритмов обучения произведем сравнения существующих подходов к обучению параметров ДБС «Инъекции». Для этого воспользуемся распределенной системой Spark, функционирующей в облачной среде Yandex Cloud, состоящей из 6 узлов со следующей аппаратной конфигурацией: 2 процессора Intel Xeon-Platinum 2.5 GHz 16 ядер, 128 GB ОЗУ, жесткий диск 10 TB. Максимальное число обучающих выборок D=1000000 размерностью в 500 ГБ. Для проведения сравнения рассмотрим алгоритмы ожидания максимизации (ОМ), ожидания максимизации на основе алгоритма Метрополиса – Гастингса (ОМ и МГ) и с применением стохастического градиента в сочетании с информационной матрицей Фишера (ОМ и СГФ).

 

Таблица – Сравнение производительности алгоритмов обучения ДБС «Инъекции»

п/п

Объем начальной выборки

ОМ

ОМ и МГ

ОМ и СГФ

1

1000

5, 1069 сек.

8, 21239 сек.

6, 5438 сек.

2

100000

32, 8368 сек.

48, 9033 сек.

31, 7703 сек.

3

1000000

102, 6145 сек.

190, 3718 сек.

92, 1973 сек.

4

100000000

1562, 1930 сек.

2320, 6359 сек.

845, 9896 сек.

 

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

 

Рисунок – Значение дистанции Кульбака – Лейблера для алгоритмов ОМ, ОМ и МГ, ОМ и СГФ в зависимости от размера выборки D

 

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

Заключение и выводы

Моделирование интеллектуальных средств тестирования приложений на основе моделей БС и ДБС непрерывно связано с созданием и совершенствованием алгоритмов обучения и вероятностного вывода, предназначенных для оптимизации механизмов тестирования и создания адаптивных механизмов для анализа возникающих ошибок. В исследовании затронуты основные проблемы, связанные с моделированием процессов тестирования в виде моделей ДБС, а также решения задач обучения, направленных на получение априорных значений для начального распределения, а также определение переходных вероятностей для смежных временных срезов сети. Результатом проведенного исследования является разработка алгоритма обучения, расширяющего функциональные возможности ОМ и позволяющего в значительной степени повысить интенсивность и качество обучения параметров БС и ДБС со скрытыми переменными. Проведена оценка эффективности каждого из алгоритмов в зависимости от объема обучающей выборки, используемой в процессе получения распределения PX|E,θ.

Практические расчеты экспериментальной части доказывают правильность предложенных подходов к решению задачи обучения параметров БС и ДБС. Повышение точности формирования распределения по всем скрытым переменным в первую очередь связано с применением матрицы Фишера, позволяющей аккумулировать все сведения относительно параметров θ=θ1,θ2,,θn, содержащихся в выборке D относительно наблюдаемых переменных E=E1,E2,,En. В таком случае апостериорное распределение PX|E,θ будет согласованным относительно E с учетом θ для выборки D. Предложенный алгоритм обладает хорошей сходимостью к истинному распределению при небольшом объеме обучающей выборки и позволяет оптимизировать существующие подходы обучения байесовских сетей в условиях частичной наблюдаемости.

×

About the authors

Pavel V. Polukhin

Voronezh State University

Author for correspondence.
Email: alfa_force@bk.ru

Candidate of Technical Sciences, Lecturer of the Faculty of Applied Mathematics, Informatics and Mechanics

Russian Federation, Voronezh

References

  1. ЛитератураKorb, K. B. Bayesian Artificial Intelligence / K. B. Korb, A. E. Nicholson. – Boca Raton : CRC Press, 2004. – 491 p.
  2. Азарнова, Т. В. Динамические байесовские сети как инструмент тестирования веб-приложений методом фаззинга / П. В. Полухин, Т. В. Азарнова. – Текст : непосредственный // Математические методы распознавания образов : тезисы докладов XIX Всероссийской конференции с международным участием, г. Москва, 2019. – Москва : Российская академия наук, 2019. – С. 379–384.
  3. Рассел, С. Искусственный интеллект: современный подход : перевод с английского / С. Рассел, П. Норвиг. – 2 издание. – Москва : Вильямс, 2006. – 1408 с. – Текст : непосредственный.
  4. Robbins, H. A stochastic approximation method / H. Robbins, S. Monro // Annals of Mathematical Statistics, 1951. – Vol. 22(3). – P. 400–407.
  5. Welling, M. Bayesian Learning via Stochastic Gradient Langevin Dynamics / M. Welling, Y. W. Tech // Proceedings of the 28th International Conference on Ma-chine Learning (ICML). – 2020. – P. 681–688.
  6. Le Cam, L. Asymptotic methods in statistical decision theory / L. Le Cam. – New York : Springer, 1986. – 742 p.
  7. Var der Vaart, A. M. Asymptotic Statistics / A. M. Van der Vaart. – New York : Cambridge University Press, 2000. – 443 p.
  8. Neal, R. A view of the EM algorithm that justifies incremental, sparse and other variants / R. Neal, G. Hinton // Learning in Graphical Models, 2000. – P. 355–368.
  9. Ghahramani, Z. Learning dynamic Bayesian network / Z. Ghahramani // Adaptive Processing of Sequences and Data Structures, 1997. – P. 168–197.
  10. Powell, W. B. Reinforcement Learning and Stochastic Optimization / W. B. Powell. – New York : Wiley, 2022. – 1099 p.
  11. Полухин, П. В. Инструменты оптимизации многочастичного фильтра для вероятностных моделей динамических систем / П. В. Полухин. – Текст : непосредственный // Системы управления и информационные технологии. – 2021. – № 4 (86). – С. 4–10.

Supplementary files

Supplementary Files
Action
1. JATS XML
2. Figure – The value of the Kullback – Leibler distance for the OHMS, ohms and MG, OHMS and GFS algorithms, depending on the sample size D

Download (74KB)

Copyright (c) 2022 Yugra State University

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

This website uses cookies

You consent to our cookies if you continue to use our website.

About Cookies