Дерево решений для прогнозирования количества кластеров производительности на этап

В наши дни нетрадиционная добыча сланца вносит свой вклад в большую часть мировой нефтегазовой экономики, за счет чего получают такие крупные производители, как США, Канада и Россия. На этапе добычи одним из наиболее важных мероприятий является перфорирование коллектора из ствола скважины. Коллектор, с которым мы сталкиваемся как твердая фаза породы, необходимо перфорировать, чтобы создать искусственные каналы (или проницаемость) для прохождения нефти или газа в ствол скважины. Позже будет закачиваться проппант для дальнейшего открытия этих каналов - процесс, известный как гидроразрыв пласта.

Перфорировать пласт из ствола скважины непросто. Например, нам нужно спроектировать, сколько кластеров требуется на этап. Что такое кластеры и этапы? Кластер представляет собой набор перфорационных отверстий, выполненных в обсадной колонне и повторяющихся через определенное количество интервалов или интервалов. Группа кластеров затем формирует стадию, которая будет стимулироваться проппантом. Одна стадия может состоять от 1 до более 15 кластеров.

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

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

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

Обзор набора данных

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

Спасибо, Себастьян Матриндж, за предоставленное разрешение на использование данных для этой статьи! Себастьян - один из членов комитета BERG / SPE, которому принадлежал этот репозиторий.

Этот набор данных состоит из 53 строк, представляющих отдельные арендные платы (или скважины), и 27 столбцов. 2 столбца (название аренды Lease и название формации Formation/Reservoir) являются категориальными, а еще 25 - числовыми переменными, которые представляют информацию о свойствах коллектора, свойствах флюида и геометрии перфорации. Наша цель - количество кластеров на стадии # Clusters per Stage.

В среднем в аренде по 6 кластеров на этап. Наименьшее и наибольшее количество кластеров на этап - 3 и 15. Мы можем отсортировать аренду от наибольшего к наименьшему количеству кластеров на этап. Вот топ-10, состоящий из 4 договоров аренды (Cardinal, Hawk, Falcon и Crow), по 15 кластеров на этап и 6 договоров аренды (Lark, Jay, Osprey, Sparrow, Swift и Kite) с 9 кластерами на этап.

Выбор функции

В нашей прогнозной модели слишком много функций. Выбор функции необходим, чтобы уменьшить количество наших функций. Мы используем график коэффициента корреляции на тепловой карте, чтобы проанализировать, какие функции имеют достаточно сильную корреляцию с нашей целевой # Clusters per Stage.

Есть 2 повторяющиеся функции, которые мы здесь не будем использовать; # Clusters и # Stages. Наша цель рассчитывается на основе этих двух характеристик. А затем мы замечаем еще две повторяющиеся функции, которые имеют очень сильную корреляцию; Reservoir Temperature (deg F) и Sandface Temp (deg F). С точки зрения нефтяного месторождения, песчаная поверхность определяется как граница раздела между пластом и стволом скважины. Мы не будем использовать функцию песчаного забоя.

Какие из них мы будем использовать в качестве функций? И насколько сильна сильная корреляция? У нас очень мало наблюдений, их всего 53. Чтобы ответить на них, мы можем разработать статистический тест, называемый t-тест.

Найдите хорошее вступительное видео о t-тесте здесь.

Здесь t-тест применяется для определения критического значения коэффициента корреляции с учетом количества N наблюдений. Мы обнаружили, что для 53 наблюдений и уровня достоверности 5% критическое значение коэффициента корреляции составляет 0,27. Следовательно, сильная корреляция между двумя независимыми характеристиками должна быть выше 0,27.

Rcrit = +/- 0,27

Возвращаясь к тепловой карте корреляции, функции, которые имеют корреляцию с # Clusters per Stage ниже 0,27, отбрасываются. Наконец, мы сократили количество функций с 25 до 12.

Одна новая функция добавлена ​​из категориальной переменной Formation/Reservoir, которая кодируется как 0 для Bossier Shale, 1 для Eagle Ford, 2 для Haynesville Shale, 3 для Marcellus и 4 для Upper Marcellus.

Таким образом, всего 13 функций.

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

Стратегия машинного обучения для небольших наборов данных

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

Данные считаются небольшим набором данных, потому что в нем всего 53 наблюдения. Для небольших наборов данных существует риск переобучения. Здесь используется особая стратегия перекрестной проверки, которая называется Перекрестная проверка с исключением по одному (LOOCV). LOOCV выполняется путем отделения одного экземпляра от всего экземпляра в качестве экземпляра проверки, а затем перекрестной проверки его с остальными экземплярами. LOOCV также рассматривается как перекрестная проверка типа K-Fold, где число крат равно количеству экземпляров (наблюдений).

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

Ниже приведены проверочные кривые max_depth и min_samples_leaf со среднеквадратичной ошибкой (MSE) в качестве функции потерь. MSE рассчитывается путем усреднения результатов выполнения LOOCV. На левом графике ошибка проверки (или теста) стабилизируется на уровне max_depth, равном 5. Ошибка обучения также мала. На правом графике модель имеет меньшее количество min_samples_leaf из-за низкой ошибки обучения, но высокой ошибки проверки. Он минимизируется на уровне min_samples_leaf, равном 4. Затем он достигает как высокой ошибки обучения, так и ошибки проверки, таким образом, модель начинает не соответствовать требованиям.

Следовательно, наилучшая комбинация, которая может дать нам наиболее оптимальную модель дерева решений, - это max_depth из 5 и min_samples_leaf из 4. Мы используем эту модель для сопоставления 53 наблюдений.

Прогноз

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

Компания спрашивает, сколько перф-кластеров им нужно на этап. Мы уже создали программу, которая использует указанную выше модель дерева решений для прогнозирования количества кластеров на этап. Ознакомьтесь с записной книжкой (ссылка выше), чтобы использовать и запустить эту программу. Использование этой программы дает нам ответ 7 кластеров на этап.

Интерпретируемость модели

До этого этапа мы все еще слепы, чтобы понять, как модель делает свой прогноз. Чтобы объяснить нашу модель, мы можем визуализировать двоичные деревья. Ниже представлена ​​визуализация нашего дерева. Мы видим пять описательных функций, которые выделяются в узлах принятия решений; Удельный вес газа, газонасыщенность, длина в поперечном направлении, полезная продуктивность и нижняя часть перфорации.

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

Наша модель дерева решений состоит из 4 пространств, каждое из которых представлено разными цветами на цветовой шкале;

  • 3.867 (или 4) кластера на стадию - темно-синий
  • 5,83 (или 6) кластеров на стадию - оранжевый
  • 9 кластеров на этап - фиолетовый
  • 15 кластеров на этап - голубой

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

  • Удельный вес газа ≤ 0,631 → Удельный вес газа ≤ 0,575 → Чистая полезность ≤ 142,5 футов → 3,867 кластеров на ступень
  • Удельный вес газа ≤ 0,631 → Удельный вес газа ≤ 0,575 → Насыщение газа ≤ 0,8 → 5,83 кластеров на стадию
  • Удельный вес газа ≤ 0,631 → перфорация снизу ≤ 16 212,5 футов → 9 кластеров на ступень
  • Удельный вес газа ≤ 0,631 → Нижняя перфорация ›16 212,5 футов → 15 кластеров на ступень

Quod erat manifestrandum.

Вывод

Мы успешно внедрили машинное обучение для прогнозирования количества перфорационных кластеров на стадию операции гидроразрыва пласта. Мы используем небольшое количество наблюдений из 53 договоров аренды сланцевой нефти и газа с изначально 25 характеристиками. Благодаря выбору функций мы сократили количество функций с 25 до 12 с 1 категориальной характеристикой, закодированной из столбца «Имя формации». Мы строим модель дерева решений и используем перекрестную проверку с исключениями по одному (LOOCV) и кривые проверки, чтобы найти лучшую комбинацию двух гиперпараметров, которая позволяет избежать переобучения. Используя эту модель, мы подбираем 53 наблюдения и делаем прогноз на основе новых данных, введенных пользователем. Мы показали типовой случай компании, которой необходимо знать, сколько кластеров в каждой стадии для их аренды. Чтобы объяснить, как модель работает «за занавеской», мы визуализируем бинарные деревья решений и пространство решений. Было обнаружено, что по крайней мере 5 функций выделяются, чтобы повлиять на принимаемые решения.

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

Справка по данным

Хранилище данных SPE: набор данных: 1, номер скважины: все скважины. С URL: https://www.spe.org/datasets/dataset_1/csv_files/datasetLeaseall_wells/well_data

Следите за мной, чтобы увидеть новые статьи о моих экспериментах с ИИ машинного обучения в нашей удивительной энергетической отрасли! 💡