/2022-gold-recovery-prediction

Предсказание коэффициента восстановления золота из золотодобывающей руды

Primary LanguageJupyter Notebook

2022-gold-recovery-prediction

Предсказание коэффициента восстановления золота из золотодобывающей руды

ПРОЕКТ «Разработка модели, предсказывающей коэффициент восстановления золота из золотодобывающей руды для группы компаний „Цифра‟»


Примененные библиотеки и технологии

  • Pandas, Numpy, Matplotlib, Seaborn, Torchmetrics, Joypy, Sklearn

  • SymmetricMeanAbsolutePercentageError, make_scorer, RandomizedSearchCV


Цель и задачи проекта

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

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

Для достижения цели были поставлены и решены следующие задачи:

  • проверена правильность расчета эффективности обогащения

  • проанализированы признаки, недоступные в тестовой выборке

  • данные предобработаны; столбцы (признаки) датасетов train и test синхронизированы

  • измерена концентрация металлов (Au, Ag, Pb) на различных этапах очистки

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

  • исследована суммарная концентрация всех веществ на разных стадиях

  • раскрыты сущность и содержание метрик MAPE и sMAPE

  • подготовлены функции для вычисления sMAPE и итоговой метрики sMAPE

  • с помощью make_skorer создана собственная метрика для использования при кросс-ваидации

  • обучены модели DecisionTreeRegressor, RandomForestRegressor, Linear Regression

  • рассчитана метрика итогового sMAPE

  • проведена проверка эффективности модели с лучшим значением итоговой sMAPE с помощью DummyRegressor


Основные результаты

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

(2) Выявлено изменение концентрации металлов (Au, Ag, Pb) на различных этапах очистки. Концентрация золота после прохождения нескольких этапов очистки заметно увеличивается: медианное значение концентрации золота в пробах в исходном сырье составило около 8%, после финальной очистки 45%. Оценка концентрации серебра по медиане максимальна после флотации (около 8.4%). На последующих стадиях медианное значение снижается (после финальной очистки медиана: 5%), но появляется значительное количество выбросов в большую от медианы сторону.

(3) С целью прогнозирования эффективности обогащения чернового концентрата на этапе флотации и на финальном этапе были обучены три модели: DecisionTreeRegressor, RandomForestRegressor, Linear Regression. Лучшие значения метрики sMAPE показала модель RandomForestRegressor.

Результат итогового sMAPE модели Random Forest Regressor равен 8.97. Модель с лучшим результатом доказала совю состоятельность, т.к. ее ошибка 8.97 меньше ошибки, полученной с помощью константной модели DummyRegressor (9.83).