Введение 2
2 Постановка задачи. 3
3 Теоретические основы байесовских сетей 4
4 Программное обеспечение численного исследования 6
4.1 Статистический пакет R 6
4.2 Библиотека bnlearn 6
5 Методика численного исследования 8
5.1 Исходные выборочные данные 8
5.2 Кросс-валидация 8
5.3 Алгоритмы построения байесовской сети 9
5.4 Обучение байесовской сети 9
5.5 Построение прогноза по построенной байесовской сети 9
6 Результаты численного исследования 11
6.1 Базовые модели 11
6.2 Модель с памятью 12
6.3 Модель с приращением 13
6.4 Модель с индикатором корректности пористости 14
7 Заключение 16
Список литературы 17
Приложение 1. Листинг программы
При проведении геологоразведочных работ и нефтеразведки возникает задача определения типа породы глубинных слоёв скважины. «Прямой» путь для определения типа породы — проведение лабораторных исследований над образцами породы (кернами), извлечёнными из скважин, — обычно является чрезмерно дорогим. Другой способ определения связан со статистическим анализом каротажных данных — информации с набора зондов, спускаемых в скважину.
Классические методы построения прогноза основываются на экспертном анализе графиков каротажных данных, а также на регрессионных моделях прогноза. В последние десятилетия, однако, появились и развились множество новых методик машинного обучения и анализа, доказавших высокую эффективность во множестве отраслей: распознавании изображений, искусственном интеллекте, экспертных системах.
В данной работе рассматривается один из методов машинного обучения — байесовские сети, представляющие собой класс графовых моделей, определённым образом описывающих совместное распределение, построение структуры данным методом, определение зависимостей и связей между элементами сети. На основе этих моделей строятся классификаторы для типа породы, с последующим численным анализом их эффективности на основе сравнения получаемых оценок с контрольной выборкой.
В работе рассматриваются несколько подходов и методов к построению байесовских моделей, к формированию входных данных и т.д., с последующим анализом изменения ошибки прогноза по контрольным данным.
В работе решалась актуальная задача в области геологоразведки — определение типа породы по каротажным данным. Для решения задачи был применен один из методов структурного обучения — метод байесовской сети. Была применена специальная библиотека bnlearn пакета R — Statistics, располагающая необходимыми для решения задачи функциями.
Путем применения различных алгоритмов построения структуры, были построены соответствующие им байесовские сети, что позволило определить зависимость между всеми переменными сети.
Для контроля эффективности построенных моделей был применен метод кросс-валидации — разделение исходных данных на две подвыборки. Это позволило на практике оценить сам метод байесовских сетей. Для этого на контрольной выборке был построен прогноз типа породы, а затем произведено сравнение прогноза с уже имеющимися данными о типе породы. Таким образом, была получена оценка качества каждой из исследуемых моделей (базовой, модели с памятью, с приращением и модели с индикатором пористости).
Из исследования различных моделей задачи и алгоритмов построения байесовских сетей можно сделать вывод о том, что модель с индикатором пористости и приращения значений каротажных данных позволяет строить наиболее точные прогнозы типа породы, в сравнении с остальными из рассмотренных моделей.
Стоит отметить, что, как показали результаты исследования, усложнение модели путём добавления новых факторов на этапе обучение может приводить к улучшению качества прогноза даже без дополнительных данных. Сравните, например, модель с приращением и модель с индикатором корректности пористости.
[1] Neapolitan R. E. et al. Learning bayesian networks. - Upper Saddle River, NJ : Pearson Prentice Hall, 2004. - Т. 38.
[2] Bouchaala L. et al. Improving algorithms for structure learning in Bayesian Networks using a new implicit score //Expert Systems with Applications. - 2010. - Т 37. - №. 7. - С. 5470-5475.
[3] Barber D. Bayesian reasoning and machine learning. - Cambridge University Press, 2012.
[4] Nagarajan R., Scutari M., Lebre S. Bayesian networks in R //Springer. - 2013. - Т. 122. - С. 125-127.
[5] Scutari M., Denis J. B. Bayesian networks: with examples in R. - CRC press, 2014.