Unitate 12 / 12

Analiza datelor miniere cu Python și frontierele AI

Câștiguri:

  • Abilitatea de a produce scripturi care curăță și vizualizează datele de forare, producție și monitorizare cu Python, cu suport AI
  • Abilitatea de a recunoaște riscurile de calitate, supraînvățare și extrapolare a datelor atunci când construiesc modele simple de predicție și anomalii
  • Abilitatea de a verifica codul generat de AI și rezultatul cu controlul unității, calculul independent și plauzibilitatea inginerească

În fiecare unitate a acestui modul, ați văzut că AI este puternică în codificare: curățarea găurilor de foraj, echilibrul de masă, scheletul kriging, rezumatul flotei, analiza vibrațiilor, scanarea mediului. Această ultimă unitate se concentrează pe Python, instrumentul concret pentru acel cod și disciplina adecvată de a genera cod cu AI. Python a devenit standardul de facto în analiza datelor miniere, deoarece este gratuit, are biblioteci puternice (pandas: manipularea datelor tabulare; numpy: calcul numeric; matplotlib: plotting; scikit-learn: învățare automată) și automatizează sarcini repetitive. AI înmulțește viteza cu care scrieți acel cod; dar codul pe care îl produce nu este întotdeauna corect. Principiul central al acestei unități: Nu rulați niciodată codul pe care îl scrie AI fără să îl citiți mai întâi, să-i validați unitatea și să îl testați cu o cantitate mică de date cunoscute. Codul poate produce în tăcere un rezultat greșit, care se poate transforma într-o decizie proastă de inginerie în minerit.

Flux de bază de generare a codului cu AI

Obținerea codului de la AI este un ciclu de inginerie, nu o conversație:

  1. Descrieți clar sarcina. Intrare (coloane, unități, rând eșantion), rezultat dorit și constrângeri. Cererea ambiguă produce cod ambiguu.
  2. Cereți ca acesta să fie mic și ușor de citit. Cereți codul comentat pas cu pas, mai degrabă decât o funcție uriașă.
  3. Citiți și înțelegeți. Înțelegeți ce face fiecare linie; Nu rulați cod pe care nu îl înțelegeți.
  4. Testați cu date mici. Rulați-l manual cu 5-10 linii ale căror rezultate le cunoașteți și verificați rezultatul așteptat.
  5. Cazuri marginale de întrebare. Celulă goală, valoare negativă, amestecarea unității, înregistrarea repetată Cum se comportă codul?
  6. Scalați și verificați logica. Rulați pe toate datele; Este rezultatul rezonabil din punct de vedere tehnic?
Sfat: cele mai frecvente erori care introduc codul AI sunt silențioase: numele greșit al coloanei, amestecarea unităților (m vs ft, g/t vs ppm), rândurile abandonate în mod silențios (cum ar fi dropna), medie greșită (media simplă când ar trebui ponderată). Acestea nu provoacă erori; Pur și simplu produce un număr greșit. Deci „nu am primit o eroare” nu înseamnă niciodată „corect”.

Sarcini tipice Python în minerit

  • Curățarea datelor: fuzionarea tabelelor de foraj/producție/monitorizare, semnalare a inconsecvenței, normalizarea unității.
  • Rezumat și vizualizare: Histogramă, serii temporale, curba grad-tonaj, grafice OEE.
  • Statistici și geostatistici: Statistici rezumative, corelații, variogramă/kriging (cu biblioteci speciale).
  • Detectarea anomaliilor: captură de derive bazată pe prag sau bazată pe model simplu.
  • Modele de predicție simple: De exemplu, măcinarea relației mărime-randament cu regresie.

Pentru majoritatea acestor sarcini, AI oferă un cod de pornire excelent. Dar există două capcane: calitatea datelor și limitele modelului. Cunoașterea ambelor este cheia pentru utilizarea codului AI în siguranță.

Limitele modelului: supraînvățare și extrapolare

Modelele predictive simple pe care AI le construiește cu ușurință sunt vulnerabile la două riscuri majore. Suprafitting: Modelul memorează datele de antrenament, dar are performanțe slabe la datele noi; Construirea de modele complexe cu puține date invită acest lucru. Extrapolare: modelul devine nefiabil atunci când este forțat să facă o predicție pe un interval în afara datelor de antrenament; De exemplu, un model învățat în intervalul 0,3-0,8 g/t poate da rezultate lipsite de sens pentru 5 g/t. AI nu gestionează „spontan” aceste riscuri pentru tine; Depinde de tine să citești în mod critic modelul, să faci distincția antrenament/test, să te uiți la intervalul de încredere și să verifici dacă predicția este plauzibilă din punct de vedere fizic. Indiferent cât de exact pare un număr de model, acesta nu poate fi baza pentru o decizie de inginerie în afara intervalului de date.

trei mini cutii

Cazul 1 — Eroare de volum silențios. Un inginer vrea un cod care să facă AI să calculeze nota medie din datele de analiză. Codul funcționează, rezultatul este 2,1 g/t. Inginerul citește codul; Observați că media nu este ponderată de lungimea intervalului, ci este luată ca o medie dreaptă. Notele înalte la intervale scurte câștigau în greutate pe nedrept. La trecerea la media ponderată, valoarea scade la 1,7 g/t. Codul nu a dat erori; lectura a prins eroarea.

Cazul 2 — Căderea silențioasă a liniei. Într-un cod rezumat al producției, AI a curățat rândurile cu valori lipsă cu dropna. Codul rulează fără probleme, dar tonajul total este subestimat deoarece unele rânduri valide au fost eliminate cu totul din cauza unei singure coloane goale. Când inginerul compară numărul de linii dintre intrare și ieșire, el vede diferența și corectează logica de curățare. Lecție: comparați întotdeauna numărul de linii de intrare și de ieșire.

Cazul 3 — Capcană de extrapolare. O echipă aplică un model de regresie învățat în intervalul de nota scăzută într-o zonă de grad înalt; Modelul oferă o estimare a randamentului absurd de mare. Din fericire, inginerul respinge rezultatul, spunând că „această zonă este mult în afara intervalului văzut de model” și solicită testarea metalurgică. Lecție: cunoașteți gama de date pentru care este valabil modelul; Nu utilizați o estimare în afara statului.

Șabloane de prompt copiabile

COD DE CURĂȚARE A DATELOR SECURITATE „Rol: sunteți asistent de analist de date Python. Scrieți codul cu panda care curăța următorul tabel. Coloane și unități: [listă]. Reguli: (1) imprimați numărul de rânduri ÎNAINTE și DUPĂ scăderea rândurilor; (2) raportați care rânduri au fost eliminate și de ce; (3) comentați în medie, unde este necesar, folosiți greutatea fiecărei unități. pas cu o linie de comentariu.”

CERERE DE EXAMINARE A CODULUI „Explicați următorul cod Python linie cu linie și subliniați următoarele puncte de risc: presupunerea incorectă a numelui coloanei, confuzia unității, rowdrop silențios, eroare medie plată/ponderată, comportament marginal (null/negativ). NU CORECTA codul; doar enumerați riscurile. Cod: [paste]."

CONFIGURARE TESTARE CU DATE MICI „Pentru această funcție, produc manual o mică dată de test (5-6 linii) din care știu rezultatul și rezultatul așteptat; scrie un bloc de test care verifică dacă funcția funcționează corect pe aceste date. Testează și cazurile extreme (celulă goală, negativ, valoare extremă a unității). Funcție: [paste]."

MODEL SIMPLU + AVERTISMENT DE LIMITĂ „Configurați o regresie simplă pentru [x -> y] cu următoarele date. Faceți diferența între antrenament/testare, raportați metrica erorii și precizați în mod clar intervalul de x peste care modelul este VALID. Avertizați dacă previziunile sunt făcute în afara acestui interval. Comentați riscul de supraantrenament și dispersarea datelor. Date:

Prompt slab / Prompt puternic

WEAK PROMPT: „Calculați nota medie din aceste date.”

STRONG PROMPT:"Rol: Sunteți asistent Python. Coloane: HoleID, From(m), To(m),Au(g/t). Calculați nota medie PONDERATĂ cu lungimea intervalului. Cod: (1) imprimați numărul de rânduri de intrare/ieșire; (2) raportați valorile nule/negative înainte de a le scăpa; (3) pot verifica rezultatul subtotalului; (3) pot verifica rezultatul unității. manual. Date: [paste]."

Tabel de comparație: risc și precauție

Risc

simptom

precauție

Interferența unității

Număr rezonabil, dar greșit

Comentați unitatea în cod, verificați-o

Scădere silențioasă a liniei

Total lipsește

Comparați numărul de linii de intrare/ieșire

Normal vs medie ponderată

medie greșită

Verificați ponderarea

supraînvățare

Datele de testare sunt proaste

Separarea antrenament/testare, păstrați-o simplă

extrapolare

Prostii ghici în afara intervalului

Limitați intervalul valid

Greșeli comune

  • Rularea codului fără a-l citi. „Nu a primit nicio eroare” nu înseamnă că este adevărat.
  • Nu se testează cu date mici. Încrederea fără un exemplu verificabil este falsă.
  • Nu se compară numărul de linii de intrare/ieșire. Așa scapă pierderile tăcute.
  • Ignorând gama de modele. Estimările extrapolării nu sunt de încredere.
  • Având încredere în frumusețea graficului. O diagramă elegantă poate ascunde numărul greșit.
Atenție: Dacă codul AI intră într-un cont de inginerie, acel cod este la fel de responsabil ca și un cont. Oriunde rezultatul devine o decizie de exploatare, rulați codul și rezultatul acestuia printr-o verificare logică independentă și, dacă este posibil, comparați cu o a doua metodă.

Pe scurt

Python este instrumentul de facto pentru analiza datelor miniere, iar AI crește foarte mult viteza cu care îl scrieți. Dar codul AI poate găzdui erori silențioase (confuzia unităților, scăderea rândurilor, medie greșită) și capcane de model (supraînvățare, extrapolare). Flux sigur: descrieți în mod clar, doriți mic și lizibil, citiți și înțelegeți, testați cu date mici cunoscute, interogați cazuri de margine, scalare și verificare logică. Un model de ieșire nu poate fi baza pentru o decizie în afara intervalului de date; și fiecare cod poartă la fel de multă responsabilitate ca și un cont dacă se transformă într-o decizie de minerit.

Sarcina de aplicare

Utilizați șablonul „Cod de dezinfectare a datelor securizate” cu o medie a notelor sau o sarcină rezumat de producție pentru a obține codul de la AI; Eliminați riscul codului cu șablonul „Solicitare de revizuire a codului”. Apoi, cu șablonul „Test setup with small data”, creați manual un set de date ale cărui rezultate le cunoașteți și verificați codul. În cele din urmă, pentru o relație simplă, configurați un model cu șablonul „Model simplu + avertizare limită” și testați că dă un avertisment atunci când iese din intervalul valid.

lista de verificare

  • [ ] Am citit codul AI și am înțeles fiecare linie, nu l-am rulat orbește.
  • [ ] L-am testat cu date mici, verificabile manual.
  • [ ] Am comparat numărul de linii de intrare și de ieșire.
  • [ ] Am verificat coerența și ponderarea unității.
  • [ ] Am limitat intervalul de date valide ale modelului, evitând extrapolarea.
  • [ ] Am verificat rezultatul, care s-a transformat într-o decizie, cu logică independentă/metoda secundă.

Examenul modulului

1. Un stagiar întreabă instrumentul de chat AI despre gradul mediu al corpului de minereu și scrie valoarea rezultată de „1,8 g/t aur” direct în raportul de rezervă. Care este greșeala fundamentală în această abordare?

  • A) Valoarea notei trebuie să provină din datele de foraj/analiza proprii ale proiectului și din prognoza verificată; Numărul generat de AI poate fi o fabricație fără sursă ✔
  • B) Ar fi trebuit să se ceară IA în uncii în loc de grame
  • C) Valoarea este corectă, ar fi trebuit folosit doar un punct în loc de virgulă
  • D) Este suficient să puneți AI aceeași întrebare de trei ori și să luați media

Explicație: Modelul de limbă nu cunoaște datele de foraj ale proiectului dumneavoastră; produce un număr care pare cel mai probabil (halucinație). Nota provine doar din datele de foraj compuse proprii ale proiectului și estimarea geostatistică; Ieșirea AI nu poate fi inclusă în raport fără aprobarea unei persoane competente.

2. Ce permite „clasificarea bazată pe riscuri” în utilizarea AI în ingineria minieră?

  • A) Scădeți prețul instrumentului AI
  • B) Determinați rolul AI și profunzimea obligatorie a verificării în funcție de nivelul de risc al sarcinii ✔
  • C) Solicitările trebuie scrise mai scurt
  • D) Delegați automat toate deciziile către AI

Explicație: Nu toate misiunile sunt la același nivel de risc. Clasificarea sarcinii ca scăzut/mediu/ridic/critic determină ce ieșire poate fi utilizată în mod liber și care necesită verificare standard și pe teren și aprobarea inginerului competent.

3. Ce înseamnă „variograma” model în geostatistică?

  • A) Consumul de combustibil al echipamentului
  • B) Modificarea prețului metalului în timp
  • C) Continuitate spațială în funcție de distanță; ✔ cum scade similaritatea pe măsură ce punctele se îndepărtează
  • D) Frecvența de vibrație creată de sablare

Descriere: Variograma descrie modul în care similitudinea probelor între ele scade (continuitate spațială) pe măsură ce distanța dintre două puncte crește. Kriging folosește acest model pentru a estima punctele nemăsurate cu o marjă de incertitudine.

4. Care este cea mai bună abordare atunci când AI pre-clasifică litologia din fotografia cu carote de foraj?

  • A) Prelucrarea tipului de rocă dat de AI direct în jurnalul de foraj
  • B) Copierea textului AI în raport fără a examina deloc fotografia
  • C) Anularea observației geologului și bazarea exclusiv pe AI
  • D) Considerați rezultatul o predicție/ipoteză preliminară și verificați-o cu observații geologiști și analize de laborator ✔

Descriere: AI poate genera o listă de predicții și atenție din imagine; Cu toate acestea, decizia finală de litologie/alterare este luată de observația geologului și analizele de laborator. Ieșirea AI este un început, o ipoteză care trebuie verificată.

5. Ce înseamnă „raportul de decapare” în planificarea carierei deschise?

  • A) Cantitatea de rugină (rocă sterilă) care trebuie îndepărtată pentru a ajunge la o unitate de minereu ✔
  • B) Procentul de metal din minereu
  • C) Numărul zilnic de călătorii ale camioanelor
  • D) Cantitatea de exploziv folosită la explozie

Descriere: Rata de stripare este cantitatea de deșeuri (bandă/deșeuri) care trebuie îndepărtată pentru a obține o unitate de minereu. Limita finală a gropii și economia depind în mare măsură de acest raport; Chiar dacă AI generează scenarii, decizia limită este la latitudinea inginerului competent.

6. Ce înseamnă în întreținerea predictivă când AI găsește „anomalii” în datele de vibrație și temperatură?

  • A) Dovada că echipamentul a eșuat definitiv
  • B) Un avertisment că datele se abate de la normal; Nu este un diagnostic definitiv de defecțiune, ci un semn care trebuie confirmat prin examen fizic ✔
  • C) Ordonați ca echipamentul să fie oprit automat
  • D) Să garanteze că datele au fost înregistrate incorect

Explicație: O anomalie este o abatere a datelor de la comportamentul normal și poate indica o defecțiune; dar nu este un diagnostic definitiv. Decizia de oprire a echipamentului sau înlocuire a pieselor se ia cu examinarea fizică a echipei de întreținere și aprobarea directorului de operațiuni.

7. Care este esențial pentru siguranță atunci când se utilizează AI în proiectarea forajului cu explozie?

  • A) Implementarea recomandării AI direct în teren
  • B) Omiterea măsurării vibrațiilor
  • C) Verificarea proiectării propuse de AI cu măsurători în teren, limită de reglementare și aprobarea expertului autorizat în explozie ✔
  • D) Fixarea cantității de explozibili cu maximul dat de AI

Descriere: sablare; Prezintă riscuri serioase de siguranță și de reglementare, cum ar fi vibrații, șocuri de aer și pietre care zboară. AI poate produce o schiță de proiectare și o recomandare de parametri; Cu toate acestea, proiectul final trebuie să treacă de măsurarea în teren, limitele de reglementare și aprobarea expertului autorizat în explozie (detonator/responsabil).

8. Care este relația tipică dintre „recuperare” și „gradul de concentrat” în prelucrarea mineralelor și ce ar trebui să-și amintească AI când interpretează acest lucru?

  • A) Cele două cresc mereu împreună
  • B) Nu există nicio relație între ei
  • C) Relația este constantă și aceeași în toate facilitățile
  • D) Există de obicei un echilibru invers (randamentul scade pe măsură ce nota crește); valorile reale trebuie verificate prin teste metalurgice și bilanțul masei ✔

Explicație: În general, pe măsură ce încercăm să obținem o notă concentrată mai mare, randamentul scade (echilibrul grad-randament). AI poate explica această tendință, dar valorile reale de funcționare trebuie confirmate prin teste metalurgice și bilanțul masei; tendința generală nu este un substitut pentru realitatea specifică site-ului.

9. Care este cea mai adecvată utilizare a analizei datelor de aproape accident/accident cu AI în securitatea muncii?

  • A) Clasificarea înregistrărilor cu text liber și extragerea tiparelor de risc recurente; Lasă decizia expertului SSM ✔
  • B) Determinarea automată a vinovatului de accidente
  • C) Delegarea ordinelor de oprire a lucrului către AI
  • D) Arhivarea înregistrărilor aproape ratate fără a le revizui

Descriere: AI poate clasifica cantități mari de înregistrări cu text liber și poate extrage rapid modele repetitive și condiții riscante. Totuși, decizia de a opri o lucrare, de a evacua o zonă sau cauza principală se ia în cadrul expertului SSM și a legislației; Ieșirea AI este intrare, nu decizie.

10. De ce este „accelerarea vitezei de deformare” un semn critic în datele radar/prisme în monitorizarea pantei?

  • A) Indică cu siguranță că dispozitivul de măsurare este stricat.
  • B) Poate anunța o înfrângere progresivă; Decizia de avertizare timpurie și evacuare aparține inginerului geotehnic ✔
  • C) Arată că panta este complet sigură
  • D) Este semnificativ doar atunci când sunt precipitații și poate fi ignorat

Explicație: Înainte de cedarea taluzului, se observă în general o creștere treptată a ratei de deformare (accelerare); Acesta poate fi un semn de eșec progresiv. AI poate evidenția tendința, dar decizia de evacuare/avertizare timpurie este luată de analiza și protocolul inginerului geotehnic.

11. În monitorizarea mediului, care este răspunsul cel mai precis la un semn de „depășire” pe care AI îl găsește într-o serie temporală a calității apei?

  • A) Raportarea rezultatelor AI direct către agenția guvernamentală
  • B) Ignorați avertismentul și continuați vizionarea
  • C) Verificați cu rezultatul de laborator acreditat, limita de reglementare și evaluarea inginerului de mediu ✔
  • D) Bazându-se numai pe AI și anularea analizelor de laborator

Descriere: AI poate semnala din timp o posibilă încălcare; Cu toate acestea, decizia oficială de conformitate se ia prin analize de laborator acreditate, valori limită din legislație și evaluarea inginerului de mediu. Ieșirea AI este o alertă de screening, nu o decizie legală/tehnică.

12. Care este cel mai sigur mod de a evita obținerea unei referințe inventate (halucinatorii) atunci când cereți AI numărul clauzei unui standard precum JORC sau NI 43-101?

  • A) Bazându-se pe numărul articolului dat de AI
  • B) Pune din nou aceeași întrebare cu cuvinte diferite
  • C) Privind o postare pe blog în loc de standard
  • D) Deschiderea și confirmarea fiecărei referințe la articol din textul oficial actual al standardului și obținerea aprobării de la o persoană competentă ✔

Explicație: Deși modelul lingvistic cunoaște corect numele standardului, poate halucina numărul articolului și textul. Fiecare referință la substanță trebuie să fie deschisă și confirmată din textul oficial curent al standardului, iar conformitatea finală trebuie confirmată de persoana competentă (CP/QP).

13. Care este cea mai critică verificare înainte de a rula un script de analiză Python scris de AI?

  • A) Citirea codului și verificarea potrivirii unitate/coloană, testare cu date mici cunoscute și verificarea plauzibilității rezultatului ✔
  • B) Rularea codului direct pe întregul set de date fără a-l citi
  • C) Doar să văd că nu există nicio greșeală și să accept rezultatul
  • D) Bazându-te pe grafica ieșirii pentru a arăta frumos.

Descriere: codul AI poate amesteca unități, poate presupune incorect numele coloanelor sau poate renunța la rânduri. Este esențial să citiți codul, să verificați potrivirea volumului și coloanelor, să testați cu o cantitate mică de date cunoscute și să verificați dacă rezultatul este rezonabil din punct de vedere tehnic.

14. Care este cel mai bun comportament în ceea ce privește confidențialitatea atunci când oferiți date miniere unui instrument AI bazat pe cloud?

  • A) Lipirea tuturor datelor brute ca atare
  • B) Anonimizați contextul și curățați datele sensibile de rezervă/coordonate/producție și utilizați un instrument corporativ, care respectă politicile ✔
  • C) Presupunând că furnizarea coordonatelor reale este esențială pentru calitatea rezultatului
  • D) Ignorarea politicii de confidențialitate

Explicație: Cifrele de rezervă, informațiile de licență/coordonate și datele de producție sunt sensibile în ceea ce privește secretele comerciale și legislația. Este necesar să anonimizați contextul, să ștergeți coordonatele și numele reale, să alegeți instrumentul de garantare a corporației/confidențialitate și să respectați politica companiei.