Научная статья на тему 'ГЕНЕРАЦИЯ ПОРИСТЫХ СРЕД С ИСПОЛЬЗОВАНИЕМ ГЕНЕРАТИВНО-СОСТЯЗАТЕЛЬНОЙ НЕЙРОННОЙ СЕТИ'

ГЕНЕРАЦИЯ ПОРИСТЫХ СРЕД С ИСПОЛЬЗОВАНИЕМ ГЕНЕРАТИВНО-СОСТЯЗАТЕЛЬНОЙ НЕЙРОННОЙ СЕТИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
160
23
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
цифровой керн / коллектор углеводородов / нейронная сеть / генеративно-состязательная сеть / пористые среды / пористость / The article presents the convolutional generative adversarial network that generates volumetric images of the porous media (rocks). The possibilities of modifications of the neural network for generation with specified characteristics such as the coefficient of porosity / composition and size of grains / channels and caverns / are considered.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Э. М. Камилов, А. А. Егоров

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Э. М. Камилов, А. А. Егоров

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ГЕНЕРАЦИЯ ПОРИСТЫХ СРЕД С ИСПОЛЬЗОВАНИЕМ ГЕНЕРАТИВНО-СОСТЯЗАТЕЛЬНОЙ НЕЙРОННОЙ СЕТИ

The article presents the convolutional generative adversarial network that generates volumetric images of the porous media (rocks). The possibilities of modifications of the neural network for generation with specified characteristics such as the coefficient of porosity, composition and size of grains, channels and caverns, are considered.

Текст научной работы на тему «ГЕНЕРАЦИЯ ПОРИСТЫХ СРЕД С ИСПОЛЬЗОВАНИЕМ ГЕНЕРАТИВНО-СОСТЯЗАТЕЛЬНОЙ НЕЙРОННОЙ СЕТИ»

УДК 004.032.26:550.822.3

DOI 10.34822/1999-7604-2020-3-79-86

ГЕНЕРАЦИЯ ПОРИСТЫХ СРЕД С ИСПОЛЬЗОВАНИЕМ ГЕНЕРАТИВНО-СОСТЯЗАТЕЛЬНОЙ НЕЙРОННОЙ СЕТИ

Э. М. Камилов 1 2, А. А. Егоров 1 2

1 Сургутский государственный университет, Сургут, Россия 2 Федеральный научный центр Научно-исследовательский институт системных исследований РАН, Москва, Россия м E-mail: eaafit@gmail.com

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

Ключевые слова: цифровой керн, коллектор углеводородов, нейронная сеть, генеративно-состязательная сеть, пористые среды, пористость.

GENERATION OF POROUS MEDIA USING GENERATIVE ADVERSARIAL NETWORK

E. M. Kamilov 1 2, A. A. Egorov 1 2

1 Surgut State University, Surgut, Russia 2 Scientific Research Institute for System Analysis of the Russian Academy of Sciences, Moscow, Russia B E-mail: eaafit@gmail.com

The article presents the convolutional generative adversarial network that generates volumetric images of the porous media (rocks). The possibilities of modifications of the neural network for generation with specified characteristics such as the coefficient of porosity, composition and size of grains, channels and caverns, are considered.

Keywords: digital core sample, hydrocarbon reservoir, neural network, generative adversarial network (GAN), porous media, porosity.

Математическое моделирование широко используется для анализа разработки и эксплуатации нефтяных и газовых месторождений. Как отмечают В. А. Балашов и Е. Б. Савенков [1], к задачам, которые возникают в этой области, относятся расчет и обоснование плана разработки месторождения, определение оптимального способа воздействия на пласт с целью увеличения нефтеотдачи и прогнозирования. Стандартные методы оценки параметров пласта - геофизические и гидродинамические методы исследования скважин, а также лабораторные исследования керна.

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

Современной технологией, позволяющей повысить точность описания свойств взаимодействия флюидов и горной породы, является подход, называемый «цифровым

ядром» [2]. Характерной особенностью этого подхода, вне зависимости от физики исследуемого процесса, является детальное разрешение геометрической структуры порового пространства. В основе подхода лежит прямое математическое моделирование процессов, происходящих в пласте на «микроуровне», которое определяет как результаты макроскопических лабораторных экспериментов, так и динамику фильтрационных процессов в масштабах месторождения, а также позволяет устранить ряд сформулированных выше недостатков лабораторных исследований [1].

Тем не менее даже в процессе оцифровки керна происходят необратимые изменения его структуры вследствие механического воздействия при его разрезе и саморазрушении [3]. На рисунке 1 представлено сравнение плотности образца керна на различных срезах.

Рис. 1. Срез томографии керна:

слева - № 105, справа - № 200 [3]

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

1. Генеративно-состязательная сеть

Генеративно-состязательная сеть (Generative Adversarial Networks, GAN) - алгоритм машинного обучения без учителя (Unsupervised learning), построенный на комбинации из двух нейронных сетей, одна из которых (сеть G, генератор) генерирует образцы на основе вектора параметров и нормализованного вектора шума, а другая (сеть D, дискриминатор) старается отличить правильные («подлинные») образцы от неправильных [ 4-5]. Так как сети G и D имеют противоположные цели - создать образцы и отбраковать образцы - между ними возникает игра с нулевой суммой.

Каждая нейронная сеть стремится минимизировать собственную ошибку. Генератор узнает свою ошибку из классификации дискриминатора. В оригинальной статье, описывающей GAN в качестве функции ошибки дискриминатора, используется формула перекрестной энтропии. При рассмотрении нейронной сети в целом получается функция, которую генератор стремится минимизировать, а дискриминатор - максимизировать:

Ех [log (D(*))] + Ex [log (1 - D (G(z)))], (1)

где z - нормализованный вектор шума;

x - реальные данные;

G(z) - данные, сгенерированные генератором;

D(x) - классификация дискриминатором для реальных данных;

D(G(z)) - классификация дискриминатором для сгенерированных данных;

Ex - ожидаемое значение для всех реальных экземпляров данных;

Ez - ожидаемое значение для всех сгенерированных экземпляров данных.

Генератор не может напрямую влиять на член Ex ^log (D (х))J, поэтому для генератора минимизация ошибки эквивалентна минимизации члена E [log(l_ D(G(z(рис. 2).

Рис. 2. Архитектура и обратное распространение ошибки в GAN [6]

2. Недостатки оригинальной архитектуры GAN

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

2.1. Исчезновение градиентов обучения

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

Сигмоида необходима для формирования выходного сигнала в диапазоне (0; 1), чтобы обеспечить бинарную классификацию для перекрестной энтропии. При стремлении значения выхода сигмоиды к одной из асимптот (0 или 1) ее производная стремится к 0, вследствие чего нейронная сеть не получает градиенты для обучения. Это заставляет разработчика нейронной сети конфигурировать архитектуру так, чтобы значение сигмоиды на как можно большем протяжении обучения находилось равноудаленно от асимптот, где производная сигмоиды максимальна (рис. 3).

Рис. 3. График сигмоиды и ее производной

Примечание: составлено авторами.

2.2. Низкое качество для большой разрешающей способности

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

2.3. Коллапс генератора

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

3. Модификации GAN

3.1. Deep convolutional GAN

Модификация Deep convolutional GAN (DCGAN) [7] использует архитектуру сверточ-ной нейронной сети для обработки изображений в скрытых слоях. Использование сверточ-ной нейронной сети значительно повышает качество и скорость обучения для сети, обрабатывающей изображения.

3.2. Wasserstein GAN

Модификация Wasserstein GAN (WGAN) [8] использует расстояние Вассерштейна в качестве функции дискриминатора. Это позволяет использовать линейную активацию на выходе дискриминатора, что решает проблему исчезающих градиентов ценой увеличения времени на одну итерацию, связанную со сложностью вычисления ошибки и дополнительными итерациями дискриминатора. В работе используется модификация с градиентным штрафом WGAN-GP [9].

3.3. Progressive growing of GANs

Модификация Progressive growing of GANs (PGGAN - постепенный рост GAN) [10] постепенно увеличивает слои нейронной сети, размерность выхода генератора и входа дискриминатора. Это ускоряет обучение нейронной сети и значительно улучшает качество сгенерированных изображений в высоком разрешении.

3.4. Minibatch standard deviation layer

Слой Minibatch standard deviation layer, описанный в статье о PGGAN [10], рассчитывает стандартное отклонение в партии выборки дискриминатора. Эта модификация заставляет генератор выдавать изображения со стандартным отклонением, как в реальной выборке, и решает проблему коллапса генератора.

3.5. Conditional GAN

Модификация Conditional GAN (CGAN) [11] заключается в добавлении дополнительных нейронов в генераторе и дискриминаторе для контроля генерируемых изображений. В текущей работе дополнительный нейрон определяет пористость изображения. В генераторе выход дополнительного нейрона умножается на вектор шума, а в дискриминаторе - подается на дополнительный канал свертки.

4. Обучающая выборка

Для обучения использовалась компьютерная микротомография песчаника Берия объемом 4003 вокселей [12], а для наглядной визуализации дефектов при генерации изображений - массив искусственного идеального грунта с одинаковым размером зерен объемом 5003 (рис. 4). Из-за ограничений в размере оперативной памяти, необходимой для хранения графа нейронной сети и выборки изображений, из каждой выборки были получены трехмерные массивы пористых сред с меньшей размерностью - 128 вокселей.

Рис. 4. Срез массива песчаника Берия (слева) и идеального грунта (справа) с примерами среза выборки (красный контур)

Примечание: фото авторов.

5. Обучение и результаты 5.1. Бесконтрольная генерация

Нейронная сеть без использования модификации CGAN обучалась около 48 часов на платформе Google Colaboratory с графическим ускорителем Nvidia Testa P100. На рисунке 5 представлен постепенный рост дискретизации генерируемых изображений.

Рис. 5. Постепенный рост дискретизации генерируемых изображений в процессе обучения нейронной сети на примере песчаника Берия

Примечание: фото авторов.

Для сравнения результатов возьмем сгенерированные изображения пористых сред с использованием архитектуры DCGAN из исследования Lukas Mosser и др. [13] (рис. 6).

256 х 256

256 х 256

128 х 128

Рис. 6. Сравнение результатов по выборке из идеального грунта (сверху) и песчаника Берия (снизу):

слева - оригинал, по центру - DCGAN, справа - текущая работа Примечание: фото авторов.

Использование модификаций РООАК и WGAN-GP усложняет граф нейронной сети. Из-за ограничений в оперативной памяти видеоускорителя мы вынуждены снизить размерность генерируемых изображений, тем не менее использование этих модификаций значительно повышает их качество, что особенно видно при сравнении с идеальным грунтом, где при использовании DCGAN наблюдается большое количество шума и артефактов.

На рисунке 7 представлено сравнение трехмерной модели реальной и сгенерированной пористой среды. Трехмерные модели получены с использованием алгоритма марширующих кубов.

Рис. 7. Сравнение реальной (слева) и сгенерированной (справа) пористой среды в трехмерном виде

Примечание: фото авторов.

5.2. Контролируемая генерация

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

Диапазон пористости в выборке из песчаника Берия - 5 %; 36 %. На рисунке 8 видно, что нейронная сеть обучена генерировать изображения с необходимой пористостью с небольшой погрешностью в диапазоне пористости обучающей выборки.

I одья

сО = 10%; с0 = 20%; сО = 30%; сО = 40%; сО = 50,0%;

с =11,2% с =22,7% с =36,7% с =50,5% с =54,4%

Рис. 8. Интерполяция по значению пористости при постоянном векторе шума в виде срезов массивов пористых сред:

с0 - пористость, подаваемая на вход нейронной сети; с - фактическая пористость сгенерированного изображения Примечание: фото авторов.

Рис. 9. Интерполяция по параметру пористости

Примечание: составлено авторами.

Из графика (рис. 9) видно, что нейронная сеть способна значительно экстраполировать пористость на изображениях, выходя за диапазон пористости из обучающей выборки.

На рисунке 10 представлен пример с минимальной и максимальной пористостью с постоянным вектором шума.

с0 = 0%, сО = 50%,

с = 13% с = 52%

Рис. 10. Трехмерная модель пористой среды с минимальной (слева) и максимальной (справа) пористостью

Примечание: фото авторов.

Изображения деталей рисунках 8 и 10 демонстрируют, что генератор не просто изменяет размер элементов при изменении параметра пористости, но и меняет их взаимное расположение.

Заключение

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

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

Литература

1. Балашов В. А., Свенков Е. Б. Цифровой керн. Моделирование микротечений в поро-вом пространстве пород-коллекторов // Neftegaz.ru. 2019. № 7. URL: https://magazine.neftegaz.ru/ articles/tsifrovizatsiya/475125-tsifrovoy-kern-modelirovanie-mikrotecheniy-v-porovom-prostranstve-porod-kollektorov/ (дата обращения: 03.09.2019).

2. Воробьев К. А, Воробьев А. Е, Тчаро Хоноре. Цифровизация нефтяной промышленности: технология «цифровой» керн // Вестник Евразийской науки. 2018. Т. 10, № 3. URL: https://esj.today/78nzvn318.html (дата обращения: 03.09.19).

3. Стулов П. А., Егоров А. А., Гавриленко Т. В. Современные технологии создания модели порового пространства горных пород // Вестник кибернетики. 2019. № 1. С. 47-54.

4. Goodfellow I. J., Pouget-Abadie J., Mirza M., Xu B., Warde-Farley D., Ozair S., Cour-ville A., Bengio Y. Generative Adversarial Networks. 2014. URL: https://arxiv.org/abs/1406.2661 (дата обращения: 03.09.2019).

5. Сакулин С. А., Алфимцев А. Н., Локтев Д. А., Коваленко А. О., Девятков В. В. Защита изображения человека от распознавания нейросетевой системой на основе состязательных примеров // Вестник компьютерных и информационных технологий. 2020. Т. 17, № 2 (188). С. 32-38.

6. GAN - What is Generative Adversarial Networks GAN? URL: https://medium.com/ @jonathan_hui/gan-whats-generative-adversarial-networks-and-its-application-f39ed278ef09 (дата обращения: 15.10.2019).

7. Radford A., Metz L., Chintala S. Unsupervised Representation Learning with Deep Con-volutional Generative Adversarial Networks. URL: https://arxiv.org/abs/1511.06434 (дата обращения: 20.10.2019).

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

8. Arjovsky M., Chintala S., Bottou L. Wasserstein GAN. URL: https://arxiv.org/abs/ 1701.07875 (дата обращения: 17.11.2019).

9. Gulrajani I., Ahmed F., Arjovsky M., Dumoulin V., Courville A. Improved Training of Wasserstein GANs. URL: https://arxiv.org/abs/1704.00028 (дата обращения: 22.12.2019).

10. Karras T., Aila T., Laine S., Lehtinen J. Progressive Growing of GANs for Improved Quality, Stability, and Variation. URL: https://arxiv.org/abs/1710.10196 (дата обращения: 24.01.2020).

11. Mirza M., Osindero S. Conditional Generative Adversarial Nets. URL: https://arxiv.org/ abs/1411.1784 (дата обращения: 28.01.2020).

12. Berea sandstone extraction. Imperial College London. URL: https://www.imperial.ac.uk/ earth-science/research/research-groups/perm/research/pore-scale-modelling/micro-ct-images-and-net works/berea-sandstone/ (дата обращения: 14.02.2020).

13. Mosser L., Dubrule O., Blunt M. J. Reconstruction of Three-Dimensional Porous Media Using Generative Adversarial Neural Networks. URL: https://arxiv.org/pdf/1704.03225.pdf (дата обращения: 17.02.2020).

i Надоели баннеры? Вы всегда можете отключить рекламу.