одиниця 12 / 12

Аналіз даних видобутку за допомогою Python і передові можливості ШІ

Прибуток:

  • Можливість створювати сценарії, які очищають і візуалізують дані буріння, видобутку та моніторингу за допомогою Python з підтримкою ШІ
  • Здатність розпізнавати ризики якості даних, надмірного навчання та екстраполяції під час побудови простих моделей прогнозування та аномалій
  • Можливість перевірки коду, створеного штучним інтелектом, і результату за допомогою контролю одиниць, незалежного обчислення та інженерної правдоподібності

У кожному блоці цього модуля ви бачили, як штучний інтелект є потужним у кодуванні: очищення свердловини, баланс маси, скелет крігінгу, зведення флоту, аналіз вібрації, сканування навколишнього середовища. Останній розділ присвячений Python, конкретному інструменту для цього коду, і правильній дисципліні створення коду за допомогою ШІ. Python став стандартом де-факто в аналізі даних видобутку, оскільки він безкоштовний, має потужні бібліотеки (pandas: маніпуляції табличними даними; numpy: числове обчислення; matplotlib: побудова графіків; scikit-learn: машинне навчання) і автоматизує повторювані завдання. AI збільшує швидкість, з якою ви пишете цей код; але код, який він створює, не завжди правильний. Головний принцип цього блоку: ніколи не запускайте код, написаний штучним інтелектом, без попереднього його прочитання, перевірки його блоку та тестування з невеликою кількістю відомих даних. Код може мовчки видати неправильний результат, який може обернутися поганим інженерним рішенням у майнінгу.

Базовий процес генерації коду за допомогою ШІ

Отримання коду від ШІ – це інженерний цикл, а не розмова:

  1. Чітко опишіть завдання. Вхідні дані (стовпці, одиниці, рядок вибірки), бажані результати та обмеження. Неоднозначний запит створює неоднозначний код.
  2. Попросіть, щоб він був маленьким і читабельним. Попросіть покроковий код із коментарями, а не одну гігантську функцію.
  3. Прочитайте і зрозумійте. Зрозумійте, що робить кожен рядок; Не запускайте код, який ви не розумієте.
  4. Тест з малими даними. Запустіть його вручну з 5-10 рядками, результати яких ви знаєте, і перевірте очікуваний результат.
  5. Питання крайові випадки. Порожня клітинка, від’ємне значення, перетасування одиниць, повторюваний запис Як поводиться код?
  6. Масштабування та перевірка логіки. Запускати всі дані; Чи результат інженерно обґрунтований?
Порада: найпоширеніші помилки, які вводяться в код штучного інтелекту, мовчазні: неправильна назва стовпця, змішування одиниць (м проти футів, г/т проти проміле), мовчки пропущені рядки (наприклад, dropna), неправильне середнє (звичайне середнє, коли його слід зважити). Вони не викликають помилок; Він просто створює неправильне число. Тому «не отримав повідомлення про помилку» ніколи не означає «виправити».

Типові завдання Python у майнінгу

  • Очищення даних: об’єднання таблиць буріння/видобутку/моніторингу, позначення невідповідності, нормалізація одиниць.
  • Резюме та візуалізація: гістограма, часові ряди, крива змісту й тоннажу, графіки OEE.
  • Статистика та геостатистика: зведена статистика, кореляція, варіограма/крігінг (зі спеціальними бібліотеками).
  • Виявлення аномалій: фіксація дрейфу на основі порогового значення або проста модель.
  • Прості моделі прогнозування: наприклад, співвідношення розміру помелу та виходу з регресією.

Для більшості цих завдань штучний інтелект забезпечує чудовий вихідний код. Але є дві підводні камені: якість даних і обмеження моделі. Знання обох є ключовим для безпечного використання коду ШІ.

Обмеження моделі: перенавчання та екстраполяція

Прості прогностичні моделі, які легко створює ШІ, вразливі до двох основних ризиків. Переобладнання: модель запам’ятовує навчальні дані, але погано працює з новими даними; Побудова складних моделей із невеликою кількістю даних сприяє цьому. Екстраполяція: модель стає ненадійною, коли її змушують робити прогноз у діапазоні за межами навчальних даних; Наприклад, вивчена модель в діапазоні 0,3-0,8 г/т може дати безглузді результати для 5 г/т. ШІ не «спонтанно» керує цими ризиками за вас; Ви повинні критично прочитати модель, провести різницю між навчанням і тестом, подивитися на довірчий інтервал і перевірити, чи є прогноз фізично вірогідним. Незалежно від того, наскільки точним здається номер моделі, він не може бути основою для інженерного рішення поза діапазоном даних.

три міні-чохла

Випадок 1 — помилка тихого звуку. Інженеру потрібен код, який змушує штучний інтелект обчислювати середню оцінку на основі даних аналізу. Код працює, результат 2,1 г/т. Інженер читає код; Зауважте, що середнє не зважене за довжиною інтервалу, а береться як пряме середнє. Високі оцінки за короткі проміжки часу несправедливо набирали вагу. При переході до середньозваженого значення знижується до 1,7 г/т. Код не давав помилок; читання виявив помилку.

Випадок 2 — безшумне пропускання лінії. У підсумковому коді виробництва AI очистив рядки з відсутніми значеннями за допомогою dropna. Код працює гладко, але загальний тоннаж недооцінений, оскільки деякі дійсні рядки взагалі випущено через один порожній стовпець. Коли інженер порівнює кількість рядків між входом і виходом, він бачить різницю та виправляє логіку очищення. Урок: завжди порівнюйте кількість вхідних і вихідних рядків.

Випадок 3 — Екстраполяційна пастка. Команда застосовує регресійну модель, отриману в діапазоні низького рівня, до області високого рівня; Модель дає абсурдно високу оцінку врожаю. На щастя, інженер відхиляє результат, кажучи, що «ця область знаходиться далеко за межами діапазону, який бачить модель», і вимагає проведення металургійних випробувань. Урок: знати діапазон даних, для якого дійсна модель; Не використовуйте оцінку за межами штату.

Шаблони підказок, які можна копіювати

КОД БЕЗПЕЧНОГО ОЧИЩЕННЯ ДАНИХ "Роль: Ви помічник аналітика даних Python. Напишіть код за допомогою панд, який очищає наступну таблицю. Стовпці та одиниці вимірювання: [список]. Правила: (1) друкувати кількість рядків ДО та ПІСЛЯ видалення рядків; (2) повідомляти, які рядки було вилучено та чому; (3) коментувати перетворення одиниць; (4) використовувати зважене середнє, де необхідно, замість звичайного. Поясніть кожен крок із рядком коментаря».

ЗАПИТ НА ПЕРЕГЛЯД КОДУ "Поясніть наведений нижче код Python рядок за рядком і вкажіть на наступні моменти ризику: неправильне припущення назви стовпця, плутанина одиниць, безшумне перенесення рядків, плоска/зважена середня помилка, поведінка крайнього випадку (нульове/від’ємне). НЕ ВИПРАВЛЯЙТЕ код; просто перерахуйте ризики. Код: [вставити]."

НАЛАШТУВАННЯ ТЕСТУ З НЕВЕЛИКИМИ ДАНИМИ "Для цієї функції створіть вручну невеликі тестові дані (5-6 рядків), результат і очікуваний результат яких я знаю; напишіть тестовий блок, який перевіряє, чи функція правильно працює з цими даними. Також перевірте екстремальні випадки (порожня клітинка, негативне, одиничне екстремальне значення). Функція: [вставити]."

ПРОСТА МОДЕЛЬ + ПОПЕРЕДЖЕННЯ ПРО МЕЖУ "Налаштуйте просту регресію для [x -> y] з такими даними. Розрізняйте навчання/тестування, повідомте про метрику помилки та чітко вкажіть діапазон x, у якому модель ДІЙСНА. Попереджайте, якщо передбачення зроблені ПОЗА межами цього діапазону. Прокоментуйте ризик перенавчання та розрідженість даних. Дані: [вставити]."

Слабка підказка / Сильна підказка

СЛАБКА ПІДКАЗКА: «Обчисліть середню оцінку за цими даними».

ВАЖНА ПІДКАЗКА: «Роль: Ви помічник Python. Стовпці: HoleID, From(m), To(m),Au(g/t). Обчислити ЗВАЖЕНУ середню оцінку з довжиною інтервалу. Код: (1) надрукувати кількість рядків введення/виведення; (2) повідомити про нульові/від’ємні значення, перш ніж їх скинути; (3) підтвердити припущення про одиницю. Також показати проміжні підсумки, щоб я міг перевірити результат вручну. Дані: [вставити]."

Порівняльна таблиця: ризик і запобіжні заходи

Ризик

симптом

запобіжний захід

Втручання агрегату

Розумне, але неправильне число

Закоментуйте одиницю в коді, перевірте її

Безшумне падіння лінії

Всього не вистачає

Порівняти кількість рядків введення/виведення

Звичайний чи середньозважений

неправильне середнє значення

Перевірте зважування

перенавчання

Погано з тестовими даними

Розділ навчання/тестування, будьте простими

екстраполяція

Безглуздя здогадка поза діапазоном

Обмеження допустимого діапазону

Поширені помилки

  • Запуск коду без його читання. «Не було жодних помилок» не означає, що це правда.
  • Не тестування з малими даними. Довіра без перевіреного прикладу є хибною.
  • Без порівняння кількості ліній введення/виведення. Так рятуються тихі втрати.
  • Ігнорування модельного ряду. Оцінки екстраполяції ненадійні.
  • Довіряючи красі діаграми. Стильна таблиця може приховати неправильне число.
Увага: якщо код AI потрапляє в інженерний обліковий запис, цей код так само відповідальний, як і обліковий запис. Усюди, де результат стає рішенням майнінгу, запустіть код і його вихід через незалежну логічну перевірку та порівняйте з другим методом, якщо можливо.

Підсумовуючи

Python є де-факто інструментом для аналізу даних видобутку, а ШІ значно збільшує швидкість, з якою ви їх записуєте. Але код штучного інтелекту може містити мовчазні помилки (плутання одиниць, пропуск рядків, неправильне усереднення) і пастки моделі (надмірне навчання, екстраполяція). Безпечний потік: описуйте чітко, бажайте невеликого та читабельного, читайте та розумійте, тестуйте з невеликими відомими даними, граничні випадки запитів, перевірка масштабу та логіки. Вихідні дані моделі не можуть бути основою для прийняття рішення за межами діапазону даних; і кожен код несе таку ж відповідальність, як обліковий запис, якщо він перетворюється на рішення про майнінг.

Аплікаційне завдання

Використовуйте шаблон «Код безпечної обробки даних» із усередненням оцінки або підсумковим завданням виробництва, щоб отримати код від ШІ; Усуньте код від ризику за допомогою шаблону "Запит на перевірку коду". Потім за допомогою шаблону «Налаштування тесту з малими даними» вручну створіть набір даних, результати якого вам відомі, і перевірте код. Нарешті, для простого зв’язку налаштуйте модель із шаблоном «Проста модель + попередження про обмеження» та перевірте, чи видає він попередження, коли виходить за межі допустимого діапазону.

контрольний список

  • [ ] Я прочитав код AI і зрозумів кожен рядок, я не запускав його наосліп.
  • [ ] Я протестував це з невеликими даними, які можна перевірити вручну.
  • [ ] Я порівняв кількість вхідних і вихідних рядків.
  • [ ] Я перевірив узгодженість одиниць і зважування.
  • [] Я обмежив допустимий діапазон даних моделі, уникаючи екстраполяції.
  • [ ] Я перевірив результат, який перетворився на рішення, за допомогою незалежної логіки/другого методу.

Модульний екзамен

1. Стажер запитує інструмент чату AI про середній вміст рудного тіла та записує отримане значення «1,8 г/т золота» безпосередньо у звіті про запаси. У чому принципова помилка такого підходу?

  • A) Значення вмісту має виходити з власних даних буріння/аналізу проекту та підтвердженого прогнозу; Число, згенероване ШІ, може бути вигадкою без джерел ✔
  • B) Треба було запитати AI в унціях замість грамів
  • C) Значення правильне, лише крапку слід було використовувати замість коми
  • Г) Досить поставити ШІ одне й те саме запитання тричі та взяти середнє значення

Пояснення: модель мови не знає даних буріння вашого проекту; створює число, яке здається найбільш вірогідним (галюцинація). Оцінка виходить лише з власних складених даних буріння та геостатистичних оцінок проекту; Результати ШІ не можуть бути включені до звіту без схвалення компетентної особи.

2. Що дає «класифікація на основі ризику» при використанні штучного інтелекту в гірничому виробництві?

  • A) Знизити ціну на інструмент ШІ
  • B) Визначте роль ШІ та обов’язкову глибину перевірки відповідно до рівня ризику завдання ✔
  • В) Підказки слід писати коротше
  • D) Автоматично делегувати всі рішення ШІ

Пояснення: не кожна місія має однаковий рівень ризику. Класифікація завдання як низька/середня/висока/критична визначає, який результат може вільно використовуватися, а який потребує стандартної та польової перевірки та схвалення компетентного інженера.

3. Що означає модель «варіограма» в геостатистиці?

  • А) Споживання палива обладнанням
  • B) Зміна ціни металу з часом
  • В) Просторова безперервність залежно від відстані; ✔ як подібність зменшується, коли точки віддаляються
  • D) Частота вібрації, створюваної вибухом

Опис: варіограма описує, як схожість зразків один з одним зменшується (просторова безперервність) зі збільшенням відстані між двома точками. Крігінг використовує цю модель для оцінки невиміряних точок із запасом невизначеності.

4. Який найкращий підхід, коли AI попередньо класифікує літологію за допомогою фотографії бурового керна?

  • A) Обробка типу породи, заданого ШІ, безпосередньо в буровому журналі
  • B) Копіювання тексту AI у звіт без вивчення фотографії взагалі
  • C) Скасування спостереження геолога та покладання виключно на ШІ
  • D) Вважайте результат попереднім прогнозом/гіпотезою та підтверджуйте його за допомогою спостереження геолога та лабораторного аналізу ✔

Опис: штучний інтелект може створити прогноз і список уваги із зображення; Однак остаточне рішення щодо літології/зміни приймається за результатами спостереження геолога та лабораторного аналізу. Результат штучного інтелекту – це початок, гіпотеза, яку потрібно перевірити.

5. Що означає «коефіцієнт розкриття» при плануванні відкритого кар’єру?

  • A) Кількість іржі (пустої породи), яку необхідно видалити, щоб отримати одну одиницю руди ✔
  • Б) Відсоток металу в руді
  • В) Щоденна кількість рейсів вантажівок
  • D) Кількість вибухової речовини, використаної під час вибуху

Опис: Швидкість розкриття – це кількість відходів (смуга/відходи), які необхідно видалити, щоб отримати одну одиницю руди. Від цього співвідношення значною мірою залежить кінцева межа ями та економія; Незважаючи на те, що штучний інтелект створює сценарії, рішення про межі залежить від компетентного інженера.

6. Що це означає при профілактичному обслуговуванні, коли штучний інтелект знаходить «аномалії» у даних про вібрацію та температуру?

  • A) Доказ того, що обладнання точно вийшло з ладу
  • B) Попередження про те, що дані відхиляються від норми; Це не остаточний діагноз несправності, а ознака, яку потрібно підтвердити фізичним оглядом ✔
  • C) Наказ про автоматичну зупинку обладнання
  • D) Гарантія, що дані були записані неправильно

Пояснення: аномалія – це відхилення даних від нормальної поведінки та може вказувати на несправність; але це не остаточний діагноз. Рішення про зупинку обладнання або заміну частин приймається після фізичного огляду командою технічного обслуговування та схвалення керівника операцій.

7. Що має важливе значення для безпеки під час використання штучного інтелекту в проектуванні буроструминних робіт?

  • A) Реалізація рекомендацій AI безпосередньо в полі
  • B) Пропуск вимірювання вібрації
  • C) Перевірка запропонованої конструкції ШІ за допомогою польових вимірювань, нормативного ліміту та затвердження уповноваженого експерта з вибухових робіт ✔
  • D) Фіксація кількості вибухівки з максимумом, заданим ШІ

Опис: Підривні роботи; Він несе серйозні ризики для безпеки та регулювання, такі як вібрація, повітряний удар і розлітання каміння. AI може створювати ескіз дизайну та рекомендації щодо параметрів; Однак остаточний проект повинен пройти польове вимірювання, нормативні обмеження та схвалення уповноваженого експерта з вибухових робіт (детонатор/відповідальний).

8. Який типовий зв’язок між «відновленням» і «класом концентрату» при переробці корисних копалин і що ШІ повинен пам’ятати, інтерпретуючи це?

  • A) Обидва завжди зростають разом
  • Б) Між ними немає жодного зв’язку
  • В) Зв’язок постійний і однаковий у всіх закладах
  • D) Зазвичай існує зворотний баланс (врожайність зменшується зі збільшенням сортності); фактичні значення повинні бути підтверджені металургійними випробуваннями та балансом маси ✔

Пояснення: як правило, коли ми намагаємося отримати вищий концентрований сорт, урожайність зменшується (баланс сорт-урожайність). ШІ може пояснити цю тенденцію, але фактичні робочі значення повинні бути підтверджені металургійними випробуваннями та балансом маси; загальна тенденція не є заміною реальності конкретного сайту.

9. Яким є найдоцільніше використання аналізу даних про випадкові промахи/нещасні випадки за допомогою ШІ в охороні праці?

  • A) Класифікувати довільні текстові записи та виділити повторювані шаблони ризику; Залиште рішення експерту з охорони праці ✔
  • Б) Автоматичне визначення винуватця ДТП
  • C) Делегування наказів про припинення роботи AI
  • D) Архівування записів про випадкові випадки без їх перегляду

Опис: штучний інтелект може класифікувати велику кількість довільних текстових записів і швидко виділяти повторювані шаблони та ризиковані умови. Однак рішення про припинення роботи, евакуацію території або першопричину приймається в рамках експерта з охорони праці та законодавства; Результат штучного інтелекту – це введення, а не рішення.

10. Чому «прискорення швидкості деформації» є критичною ознакою в радіолокаційних/призматичних даних у моніторингу схилів?

  • A) Це однозначно вказує на те, що вимірювальний прилад зламався.
  • B) Це може передвіщати прогресуючу поразку; Рішення про раннє попередження та евакуацію належить інженеру-геотехніку ✔
  • C) Це показує, що схил абсолютно безпечний
  • D) Він важливий лише тоді, коли є опади, і його можна ігнорувати

Пояснення: перед руйнуванням схилу зазвичай спостерігається поступове збільшення швидкості деформації (прискорення); Це може бути ознакою прогресуючої невдачі. ШІ може висвітлити тенденцію, але рішення про евакуацію/раннє попередження приймається аналізом і протоколом інженера-геотехніка.

11. Яка найточніша відповідь на ознаку «перевищення» у моніторингу навколишнього середовища, яку ШІ знаходить у часових рядах якості води?

  • A) Звітування результатів штучного інтелекту безпосередньо урядовій установі
  • B) Проігноруйте попередження та продовжуйте перегляд
  • C) Перевірте результати акредитованої лабораторії, нормативний ліміт і оцінку інженера-еколога ✔
  • D) Покладатися лише на ШІ та скасувати лабораторний аналіз

Опис: AI може завчасно сигналізувати про можливе порушення; Однак офіційне рішення про відповідність приймається на основі аналізу акредитованої лабораторії, граничних значень у законодавстві та оцінки інженера-еколога. Вихід AI є попередженням перевірки, а не юридичним/технічним рішенням.

12. Який найнадійніший спосіб уникнути отримання вигаданого (галюцинаційного) посилання, коли ви запитуєте у ШІ номер пункту стандарту, такого як JORC або NI 43-101?

  • A) Покладаючись на номер предмета, наданий ШІ
  • Б) Знову поставити те саме запитання іншими словами
  • C) Перегляд допису в блозі замість стандартного
  • D) Відкриття та підтвердження кожного посилання на статтю з поточного офіційного тексту стандарту та отримання затвердження від компетентної особи ✔

Пояснення: хоча мовна модель правильно знає назву стандарту, вона може мати галюцинацію номера статті та тексту. Кожне посилання на речовину має бути відкрито та підтверджено з поточного офіційного тексту стандарту, а остаточна відповідність має бути підтверджена компетентною особою (CP/QP).

13. Яка перевірка є найважливішою перед запуском сценарію аналізу Python, написаного ШІ?

  • A) Читання коду та перевірка відповідності одиниці/стовпця, тестування з невеликими відомими даними та перевірка правдоподібності результату ✔
  • B) Запуск коду безпосередньо на всьому наборі даних без його читання
  • C) Просто переконатися, що немає помилки, і прийняти результат
  • D) Покладання на графіку результату, щоб виглядати добре.

Опис: код штучного інтелекту може змішувати одиниці, неправильно приймати назви стовпців або мовчки пропускати рядки. Важливо прочитати код, перевірити відповідність обсягів і стовпців, протестувати з невеликою кількістю відомих даних і перевірити, чи результат є технічним.

14. Яка найкраща поведінка з точки зору конфіденційності під час надання даних видобутку в хмарний інструмент ШІ?

  • A) Вставлення всіх необроблених даних як є
  • Б) Зробіть анонімним контекст і очистіть конфіденційні дані про резерв/координати/виробництво та використовуйте корпоративний інструмент, сумісний із політикою ✔
  • C) Припущення, що надання фактичних координат є важливим для якості результату
  • D) Ігнорування політики конфіденційності взагалі

Пояснення: цифри запасів, інформація про ліцензії/координати та дані про виробництво є чутливими з точки зору комерційної таємниці та законодавства. Необхідно анонімізувати контекст, очистити справжні координати та імена, вибрати корпоративний інструмент гарантії конфіденційності та дотримуватися політики компанії.