Kazanimlar:
- Sondaj, üretim ve izleme verisini Python ile temizleyip görselleştiren scriptleri AI desteğiyle üretebilme
- Basit tahmin ve anomali modellerini kurarken veri kalitesi, aşırı öğrenme ve ekstrapolasyon risklerini tanıyabilme
- AI'ın ürettiği kodu ve sonucu birim kontrolü, bağımsız hesap ve mühendislik makullüğüyle doğrulayabilme
Bu modülün her ünitesinde AI'ın kod yazmada güçlü olduğunu gördünüz: sondaj temizleme, kütle dengesi, kriging iskeleti, filo özeti, titreşim analizi, çevre taraması. Bu son ünite, o kodun somut aracı olan Python'a ve AI ile kod üretmenin doğru disiplinine odaklanır. Python, madencilik veri analizinde fiili standart hâline gelmiştir çünkü ücretsizdir, güçlü kütüphaneleri vardır (pandas: tablo verisi işleme; numpy: sayısal hesap; matplotlib: grafik; scikit-learn: makine öğrenmesi) ve tekrar eden işleri otomatikleştirir. AI, bu kodu yazma hızınızı katlar; ama ürettiği kod her zaman doğru değildir. Bu ünitenin merkez ilkesi: AI'ın yazdığı kodu asla okumadan, birimini doğrulamadan ve küçük bilinen bir veriyle test etmeden çalıştırmayın. Kod sessizce yanlış sonuç üretebilir ve bu, madencilikte yanlış bir mühendislik kararına dönüşebilir.
AI ile kod üretmenin temel akışı
AI'dan kod almak bir sohbet değil, bir mühendislik döngüsüdür:
- Görevi net tarif et. Girdi (sütunlar, birimler, örnek satır), istenen çıktı ve kısıtlar. Belirsiz istek, belirsiz kod üretir.
- Küçük ve okunur iste. Tek dev fonksiyon yerine adım adım, yorumlu kod isteyin.
- Oku ve anla. Her satırın ne yaptığını anlayın; anlamadığınız kodu çalıştırmayın.
- Küçük veriyle test et. Elle sonucunu bildiğiniz 5-10 satırla çalıştırıp beklenen çıktıyı doğrulayın.
- Uç durumları sorgula. Boş hücre, negatif değer, birim karışması, tekrar eden kayıt kod nasıl davranıyor?
- Ölçekle ve mantık kontrolü yap. Tüm veride çalıştırın; sonuç mühendislik olarak makul mü?
İpucu: AI koduna en sık giren hatalar sessizdir: yanlış sütun adı, birim karışması (m vs ft, g/t vs ppm), sessizce düşürülen satırlar (dropna gibi), yanlış ortalama (ağırlıklı olması gerekirken düz ortalama). Bunlar hata vermez; sadece yanlış sayı üretir. Bu yüzden "hata almadı" asla "doğru" demek değildir.
Madencilikte tipik Python görevleri
- Veri temizleme: Sondaj/üretim/izleme tablolarını birleştirme, tutarsızlık işaretleme, birim normalize etme.
- Özet ve görselleştirme: Histogram, zaman serisi, tenör-tonaj eğrisi, OEE grafikleri.
- İstatistik ve jeoistatistik: Özet istatistik, korelasyon, variogram/kriging (özel kütüphanelerle).
- Anomali tespiti: Eşik tabanlı veya basit model tabanlı sapma yakalama.
- Basit tahmin modelleri: Regresyon ile örneğin öğütme boyutu-verim ilişkisi.
Bu görevlerin çoğunda AI mükemmel bir başlangıç kodu verir. Ama iki tuzak vardır: veri kalitesi ve model sınırları. İkisini de tanımak, AI kodunu güvenli kullanmanın anahtarıdır.
Model sınırları: aşırı öğrenme ve ekstrapolasyon
AI'ın kolayca kurduğu basit tahmin modelleri iki büyük riske açıktır. Aşırı öğrenme (overfitting): Model, eğitim verisini ezberler ama yeni veride kötü çalışır; az veriyle karmaşık model kurmak bunu davet eder. Ekstrapolasyon: Model, eğitim verisinin dışındaki bir aralıkta tahmin yapmaya zorlanınca güvenilmez olur; örneğin 0,3-0,8 g/t aralığında öğrenmiş bir model 5 g/t için anlamsız sonuç verebilir. AI bu riskleri sizin için "kendiliğinden" yönetmez; modeli eleştirel okumak, eğitim/test ayrımı yapmak, güven aralığına bakmak ve tahminin fiziksel olarak makul olup olmadığını kontrol etmek size düşer. Bir model sayısı ne kadar kesin görünürse görünsün, veri aralığının dışında bir mühendislik kararına temel olamaz.
Üç mini vaka
Vaka 1 — Sessiz birim hatası. Bir mühendis AI'a assay verisinden ortalama tenör hesaplatan kod ister. Kod çalışır, sonuç 2,1 g/t çıkar. Mühendis kodu okur; ortalamanın aralık uzunluğuyla ağırlıklandırılmadığını, düz ortalama alındığını fark eder. Kısa aralıklardaki yüksek tenörler haksız yere ağırlık kazanıyordu. Ağırlıklı ortalamaya geçince değer 1,7 g/t'ye iner. Kod hiç hata vermemişti; okumak hatayı yakaladı.
Vaka 2 — Sessiz satır düşürme. Bir üretim özet kodunda AI, eksik değerli satırları dropna ile temizlemiş. Kod sorunsuz çalışır, ama toplam tonaj gerçeğin altında çıkar çünkü bazı geçerli satırlar tek bir boş sütun yüzünden tümden düşürülmüştü. Mühendis satır sayısını girdi-çıktı arasında karşılaştırınca farkı görür ve temizleme mantığını düzeltir. Ders: girdi ve çıktı satır sayısını her zaman karşılaştırın.
Vaka 3 — Ekstrapolasyon tuzağı. Bir ekip, düşük tenör aralığında öğrenmiş bir regresyon modelini yüksek tenörlü bir bölgeye uygular; model saçma yüksek bir verim tahmini verir. Neyse ki mühendis "bu bölge modelin gördüğü aralığın çok dışında" diyerek sonucu reddeder ve metalurjik test ister. Ders: modelin geçerli olduğu veri aralığını bilin; dışına çıkan tahmini kullanmayın.
Kopyalanabilir prompt şablonları
GÜVENLİ VERİ TEMİZLEME KODU"Rol: Python veri analisti asistanısın. pandas ile şu tabloyutemizleyen kod yaz. Sütunlar ve birimler: [listele]. Kurallar:(1) satır düşürmeden ÖNCE ve SONRA satır sayısını yazdır; (2)hangi satırların neden düşürüldüğünü raporla; (3) birimdönüşümlerini yorumla; (4) düz yerine gerekli yerde ağırlıklıortalama kullan. Her adımı yorum satırıyla açıkla."
KOD İNCELEME İSTEĞİ"Aşağıdaki Python kodunu satır satır açıkla ve şu risk noktalarınıişaretle: yanlış sütun adı varsayımı, birim karışması, sessiz satırdüşürme, düz/ağırlıklı ortalama hatası, uç durum (boş/negatif)davranışı. Kodu DÜZELTME; sadece riskleri listele. Kod: [yapıştır]."
KÜÇÜK VERİYLE TEST KURULUMU"Bu fonksiyon için elle sonucunu bildiğim küçük bir test verisi(5-6 satır) ve beklenen çıktıyı üret; fonksiyonun bu veride doğruçalışıp çalışmadığını kontrol eden bir test bloğu yaz. Uç durumları(boş hücre, negatif, birim uç değeri) de test et. Fonksiyon:[yapıştır]."
BASİT MODEL + SINIR UYARISI"Şu veriyle [x -> y] için basit bir regresyon kur. Eğitim/testayrımı yap, hata metriğini raporla ve modelin GEÇERLİ olduğu xaralığını açıkça belirt. Bu aralık DIŞINDA tahmin yapılırsa uyarıversin. Aşırı öğrenme riskini ve veri azlığını yorumla. Veri:[yapıştır]."
Zayıf prompt / Güçlü prompt
ZAYIF PROMPT:"Bu veriden ortalama tenörü hesapla."
GÜÇLÜ PROMPT:"Rol: Python asistanısın. Sütunlar: HoleID, From(m), To(m),Au(g/t). Aralık uzunluğuyla AĞIRLIKLI ortalama tenör hesapla.Kod: (1) girdi/çıktı satır sayısını yazdırsın; (2) boş/negatifdeğerleri düşürmeden önce raporlasın; (3) birim varsayımınıyorumlasın. Sonucu elle doğrulayabilmem için ara toplamları dagöster. Veri: [yapıştır]."
Karşılaştırma tablosu: risk ve önlem
Risk
Belirti
Önlem
Birim karışması
Makul ama yanlış sayı
Birimi kodda yorumla, kontrol et
Sessiz satır düşürme
Toplam eksik çıkar
Girdi/çıktı satır sayısını karşılaştır
Düz vs ağırlıklı ortalama
Yanlış ortalama
Ağırlıklandırmayı doğrula
Aşırı öğrenme
Test verisinde kötü
Eğitim/test ayrımı, basit tut
Ekstrapolasyon
Aralık dışı saçma tahmin
Geçerli aralığı sınırla
Sık yapılan hatalar
- Kodu okumadan çalıştırmak. "Hata almadı" doğru demek değildir.
- Küçük veriyle test etmemek. Elle doğrulanabilir bir örnek olmadan güven yanlıştır.
- Girdi/çıktı satır sayısını karşılaştırmamak. Sessiz kayıplar böyle kaçar.
- Model aralığını göz ardı etmek. Ekstrapolasyon tahminleri güvenilmezdir.
- Grafiğin güzelliğine güvenmek. Şık bir grafik yanlış sayıyı gizleyebilir.
Dikkat: AI kodu bir mühendislik hesabına girecekse, o kod da bir hesap kadar sorumluluk taşır. Sonucun madencilik kararına dönüştüğü her yerde, kodu ve çıktısını bağımsız bir mantık kontrolünden ve mümkünse ikinci bir yöntemle karşılaştırmadan geçirin.
Özetle
Python, madencilik veri analizinin fiili aracıdır ve AI onu yazma hızınızı büyük ölçüde artırır. Ama AI kodu sessiz hatalar (birim karışması, satır düşürme, yanlış ortalama) ve model tuzakları (aşırı öğrenme, ekstrapolasyon) barındırabilir. Güvenli akış: net tarif et, küçük ve okunur iste, oku ve anla, küçük bilinen veriyle test et, uç durumları sorgula, ölçekle ve mantık kontrolü yap. Bir model çıktısı veri aralığının dışında bir karara temel olamaz; ve her kod, madencilik kararına dönüşüyorsa bir hesap kadar sorumluluk taşır.
Uygulama görevi
Bir tenör ortalama veya üretim özet göreviyle "Güvenli veri temizleme kodu" şablonunu kullanıp AI'dan kod alın; kodu "Kod inceleme isteği" şablonuyla risklerini çıkarttırın. Ardından "Küçük veriyle test kurulumu" şablonuyla elle sonucunu bildiğiniz bir veri seti oluşturup kodu doğrulayın. Son olarak basit bir ilişki için "Basit model + sınır uyarısı" şablonuyla model kurup geçerli aralığın dışına çıkınca uyarı verdiğini test edin.
Kontrol listesi
- [ ] AI kodunu okuyup her satırı anladım, körü körüne çalıştırmadım.
- [ ] Küçük ve elle doğrulanabilir bir veriyle test ettim.
- [ ] Girdi ve çıktı satır sayısını karşılaştırdım.
- [ ] Birim tutarlılığını ve ağırlıklandırmayı doğruladım.
- [ ] Modelin geçerli veri aralığını sınırladım, ekstrapolasyondan kaçındım.
- [ ] Karara dönüşen sonucu bağımsız mantık/ikinci yöntemle kontrol ettim.
Modul Sinavi
1. Bir stajyer, cevher gövdesinin ortalama tenörünü AI sohbet aracına sorup çıkan '1,8 g/t altın' değerini doğrudan rezerv raporuna yazıyor. Bu yaklaşımdaki temel hata nedir?
- A) Tenör değeri projenin kendi sondaj/analiz verisinden ve doğrulanmış tahminden gelmelidir; AI'ın ürettiği sayı kaynağı olmayan bir uydurma olabilir ✔
- B) AI'a gram yerine ons cinsinden sormak gerekirdi
- C) Değer doğrudur, sadece virgül yerine nokta kullanılmalıydı
- D) AI'a aynı soruyu üç kez sorup ortalama almak yeterlidir
Aciklama: Dil modeli sizin projenizin sondaj verisini bilmez; en olası görünen bir sayı üretir (halüsinasyon). Tenör yalnızca projenin kendi kompozitlenmiş sondaj verisinden ve jeoistatistik tahminden gelir; AI çıktısı yetkin kişi onayı olmadan rapora giremez.
2. Maden mühendisliğinde AI kullanımında 'risk temelli sınıflandırma' neyi sağlar?
- A) AI aracının ücretini düşürmeyi
- B) Görevin risk düzeyine göre AI'ın rolünü ve zorunlu doğrulama derinliğini belirlemeyi ✔
- C) Promptların daha kısa yazılmasını
- D) Tüm kararların otomatik olarak AI'a devredilmesini
Aciklama: Her görev aynı risk seviyesinde değildir. Görevi düşük/orta/yüksek/kritik olarak sınıflandırmak, hangi çıktının serbestçe kullanılabileceğini, hangisinin standart ve saha doğrulaması ile yetkin mühendis onayı gerektirdiğini belirler.
3. Jeoistatistikte 'variogram' neyi modeller?
- A) Ekipmanın yakıt tüketimini
- B) Metal fiyatının zamanla değişimini
- C) Mesafeye bağlı mekânsal sürekliliği; noktalar uzaklaştıkça benzerliğin nasıl azaldığını ✔
- D) Patlatmanın oluşturduğu titreşim frekansını
Aciklama: Variogram, iki nokta arasındaki mesafe arttıkça örneklerin birbirine olan benzerliğinin nasıl azaldığını (mekânsal sürekliliği) tanımlar. Kriging bu modeli kullanarak ölçülmemiş noktaları belirsizlik payıyla tahmin eder.
4. AI'a sondaj karotu fotoğrafından litoloji ön-sınıflandırması yaptırırken en doğru tutum hangisidir?
- A) AI'ın verdiği kaya türünü doğrudan sondaj loguna işlemek
- B) Fotoğrafı hiç incelemeden AI'ın metnini rapora kopyalamak
- C) Jeoloğun gözlemini iptal edip yalnızca AI'a güvenmek
- D) Çıktıyı bir ön-tahmin/hipotez sayıp jeolog gözlemi ve laboratuvar analiziyle doğrulamak ✔
Aciklama: AI görüntüden bir ön tahmin ve dikkat listesi üretebilir; ancak nihai litoloji/alterasyon kararı jeoloğun gözlemi ve laboratuvar analiziyle verilir. AI çıktısı bir başlangıç, doğrulanacak bir hipotezdir.
5. Açık ocak planlamada 'sıyırma oranı' (stripping ratio) neyi ifade eder?
- A) Bir birim cevhere ulaşmak için kaldırılması gereken pasa (atık kaya) miktarını ✔
- B) Cevherdeki metal yüzdesini
- C) Kamyonların günlük sefer sayısını
- D) Patlatmada kullanılan patlayıcı miktarını
Aciklama: Sıyırma oranı, bir birim cevhere ulaşmak için kaldırılması gereken pasa (dekapaj/atık) miktarıdır. Nihai ocak sınırı ve ekonomi büyük ölçüde bu orana bağlıdır; AI senaryo üretse de sınır kararı yetkin mühendisindir.
6. Kestirimci bakımda (predictive maintenance) AI'ın titreşim ve sıcaklık verisinden 'anomali' bulması ne anlama gelir?
- A) Ekipmanın kesinlikle arızalandığının kanıtı
- B) Verinin normalden saptığına dair bir uyarı; kesin arıza tanısı değil, fiziksel muayeneyle doğrulanması gereken bir işaret ✔
- C) Ekipmanın otomatik olarak durdurulması gerektiği emri
- D) Verinin hatalı kaydedildiğinin garantisi
Aciklama: Anomali, verinin normal davranıştan sapmasıdır ve bir arıza habercisi olabilir; ancak kesin tanı değildir. Ekipmanı durdurma veya parça değiştirme kararı, bakım ekibinin fiziksel muayenesi ve operasyon sorumlusunun onayıyla verilir.
7. Delme-patlatma tasarımında AI'dan yararlanırken hangisi güvenlik açısından zorunludur?
- A) AI önerisinin doğrudan sahada uygulanması
- B) Titreşim ölçümünün atlanması
- C) AI'ın önerdiği tasarımın saha ölçümü, mevzuat sınırı ve yetkili patlatma uzmanı onayıyla doğrulanması ✔
- D) Patlayıcı miktarını AI'ın verdiği maksimumla sabitlemek
Aciklama: Patlatma; titreşim, hava şoku ve taş savrulması gibi ciddi güvenlik ve mevzuat riskleri taşır. AI bir tasarım taslağı ve parametre önerisi üretebilir; ancak nihai tasarım saha ölçümü, mevzuat sınırları ve yetkili patlatma uzmanının (ateşleyici/sorumlu) onayından geçmelidir.
8. Cevher hazırlamada 'verim' (recovery) ile 'konsantre tenörü' arasındaki tipik ilişki nedir ve AI bunu yorumlarken neyi hatırlatmalıdır?
- A) İkisi her zaman birlikte artar
- B) Aralarında hiçbir ilişki yoktur
- C) İlişki sabittir ve tüm tesislerde aynıdır
- D) Genellikle ters yönlü bir denge vardır (tenör artarken verim düşer); gerçek değerler metalurjik test ve kütle dengesiyle doğrulanmalıdır ✔
Aciklama: Genellikle daha yüksek konsantre tenörü elde etmeye çalışıldıkça verim düşer (tenör-verim dengesi). AI bu eğilimi açıklayabilir, ama gerçek işletme değerleri metalurjik test ve kütle dengesiyle doğrulanmalıdır; genel eğilim tesise özel gerçeğin yerine geçmez.
9. İş güvenliğinde AI ile ramak kala/kaza verisini analiz etmenin en uygun kullanımı hangisidir?
- A) Serbest metin kayıtlarını sınıflandırıp tekrarlayan risk örüntülerini çıkarmak; kararı İSG uzmanına bırakmak ✔
- B) Kazaların suçlusunu otomatik belirlemek
- C) İş durdurma kararlarını AI'a devretmek
- D) Ramak kala kayıtlarını hiç incelemeden arşivlemek
Aciklama: AI, çok sayıda serbest metin kaydını sınıflandırıp tekrarlayan örüntüleri ve riskli koşulları hızla çıkarabilir. Ancak bir işin durdurulması, bir alanın tahliyesi veya kök neden kararı İSG uzmanı ve mevzuat çerçevesinde verilir; AI çıktısı karar değil girdidir.
10. Şev izlemede radar/prizma verisinde 'deformasyon hızının ivmelenmesi' neden kritik bir işarettir?
- A) Ölçüm cihazının bozulduğunu kesin gösterir
- B) İlerleyen bir yenilmenin habercisi olabilir; erken uyarı ve tahliye kararı jeoteknik mühendisindir ✔
- C) Şevin tamamen güvenli olduğunu gösterir
- D) Sadece yağış olduğunda anlamlıdır ve göz ardı edilebilir
Aciklama: Şev göçmelerinden önce genellikle deformasyon hızının giderek artması (ivmelenme) gözlenir; bu, ilerleyen bir yenilmenin (progressive failure) habercisi olabilir. AI trendi vurgulayabilir, ama tahliye/erken uyarı kararı jeoteknik mühendisin analizi ve protokolüyle verilir.
11. Çevresel izlemede AI'ın su kalitesi zaman serisinde bulduğu bir 'sınır aşımı' işaretiyle ilgili en doğru tutum hangisidir?
- A) Doğrudan resmî kuruma AI çıktısını raporlamak
- B) Uyarıyı yok sayıp izlemeye devam etmek
- C) Akredite laboratuvar sonucu, mevzuat limiti ve çevre mühendisi değerlendirmesiyle doğrulamak ✔
- D) Sadece AI'a güvenip laboratuvar analizini iptal etmek
Aciklama: AI olası bir sınır aşımını erken işaret edebilir; ancak resmî uygunluk kararı akredite laboratuvar analizi, mevzuattaki limit değerleri ve çevre mühendisinin değerlendirmesiyle verilir. AI çıktısı bir tarama uyarısıdır, hukuki/teknik karar değildir.
12. AI'a JORC veya NI 43-101 gibi bir standardın madde numarasını sorduğunuzda uydurma (halüsinasyon) bir atıf almanızı önlemenin en sağlam yolu nedir?
- A) AI'ın verdiği madde numarasına güvenmek
- B) Aynı soruyu farklı kelimelerle tekrar sormak
- C) Standart yerine bir blog yazısına bakmak
- D) Her madde atfını standardın güncel resmî metninden açıp teyit etmek ve yetkin kişi onayı almak ✔
Aciklama: Dil modeli standardın adını doğru bilse de madde numarasını ve metnini halüsine edebilir. Her madde atfı, standardın güncel resmî metninden açılıp teyit edilmeli ve nihai uygunluk yetkin kişi (CP/QP) tarafından onaylanmalıdır.
13. AI'ın yazdığı bir Python analiz scriptini çalıştırmadan önce en kritik kontrol hangisidir?
- A) Kodu okuyup birim/sütun eşleşmesini doğrulamak, küçük bilinen veriyle test edip sonucun makullüğünü kontrol etmek ✔
- B) Kodu okumadan doğrudan tüm veri setinde çalıştırmak
- C) Sadece hata vermediğine bakıp sonucu kabul etmek
- D) Çıktının grafiğinin güzel görünmesine güvenmek
Aciklama: AI kodu birimleri karıştırabilir, sütun adlarını yanlış varsayabilir veya sessizce satır düşürebilir. Kodu okumak, birim ve sütun eşleşmesini doğrulamak, küçük bilinen bir veriyle test etmek ve sonucun mühendislik olarak makul olup olmadığını kontrol etmek şarttır.
14. Maden verisini bir bulut tabanlı AI aracına verirken gizlilik açısından en doğru davranış hangisidir?
- A) Tüm ham veriyi olduğu gibi yapıştırmak
- B) Bağlamı anonimleştirip hassas rezerv/koordinat/üretim verisini temizlemek ve kurumsal, politika uyumlu aracı kullanmak ✔
- C) Gerçek koordinatları vermenin sonuç kalitesi için şart olduğunu varsaymak
- D) Gizlilik politikasını hiç dikkate almamak
Aciklama: Rezerv rakamları, ruhsat/koordinat bilgisi ve üretim verisi ticari sır ve mevzuat açısından hassastır. Bağlamı anonimleştirmek, gerçek koordinat ve isimleri temizlemek, kurumsal/gizliliği garanti eden aracı tercih etmek ve şirket politikasına uymak gerekir.