Machine Learning for Geologists 1.5 Hour Workshop · 2021. 1. 20. · Classification Deep learning,...
Transcript of Machine Learning for Geologists 1.5 Hour Workshop · 2021. 1. 20. · Classification Deep learning,...
BY:
Machine Learning for Geologists – 1.5 Hour Workshop
Adrian Martinez VargasSenior Resource Geologist
AME Roundup
18-22 January 2021
Adrian is both a geologist and a geostatistician, an enthusiast of machine learning, and produces open-source software for geostatistics and mineral resources in Python, Fortran, Cython, C and SQL.
He has worked as a consultant since 2002, covering many commodities, including gold, copper, nickel, chromium, and raw material for the cement industry.
Adrian has considerable experience using multiple indicator kriging for resource estimation of gold deposits with high nugget and domaining issues, with non-linear geostatistics and conditional simulations for resource estimation and model validation.
He has previously worked as an Assistant Professor in Cuba and Ethiopia, teaching geology and geostatistics.
2
About thePresenter
Meet ADRIAN MARTINEZ VARGAS - Senior Resource Geologist.
P.Geo, Ph.D. in Geological Sciences, ISMM Moa. Specialist in Geostatistics (CFSG), Paris Mining School. B.Eng. Geology, ISMM Moa
How CSA Global advises the minerals industry globally
3
CSA Global supported by a further 160 ERM offices
Agenda
2Introduction to machine learning, with examples. An overview of machine learning algorithms.
5
Software for machine learning.Demonstration 1: installing the software
1
The machine learning workflow.3
Demonstration 2: Simple rock classifier.4
Demonstration 3: Identifying Circular Structures on DTM.5
Software for machine learning
Software for Machine Learning
7
Python distribution (Anaconda)
Script base / python interface
Scikit-learn TensorFlow
Keras
PyTorch
GUI Graphic User Interface
Orange
Powerful and advanced User friendly
Cloud Computing
Google Collab
Demonstration 1: Installing the Software
Demo 1: Installing the Software
• Install Miniconda 64 bit for Python 3.8
• https://repo.anaconda.com/miniconda/Miniconda3-latest-Windows-x86_64.exe
• Install Orange with conda (run these commands in a terminal/command pront)
conda config --add channels conda-forge
conda install orange3
• Run Orange and install add-ons:
• Execute orange with the command: orange-canvas
• And install Image Analytics add-on
• Next steps for advanced users:
• Install scikit-learn, Tensorflow or/and PyTorch, …
9
Introduction
Introduction: What is Machine Learning (ML)?
ML is the process of solving a practical problems by 1) gathering a dataset, and 2) algorithmically building a statistical model based on the dataset. That statistical model is assumed to be used somehow to solve the practical problem. (Burkov2019)
The algorithms/models are supervised, unsupervised, semi-supervised, and reinforcement learning.
The problems that can solve are regression, classification, anomaly detection and dimensionality reduction.
11
Supervised Classification
Unsupervised Classification
Introduction: Machine Learning Algorithms
12
Neural Networks / Deep learningNaive Bayes
Logistic Regression
Classification Tree
Classification Tree Viewer
Nearest Neighbors
Random Forest Classification
SVM
AdaBoost
Linear Regression
Nearest Neighbors
Stochastic Gradient Descent
SVM Regression
Regression Tree
Random Forest Regression
PCA
Correspondence Analysis
Hierarchical Clustering
k-Means
Manifold Learning
MDS
Supervised Unsupervised
Reinforcement
Unsupervised
Supervised
Dense neural network
Neural networks:• Dense• Convolutional• Recurrent
Introduction: Machine Learning Algorithms
13
Neural Networks / Deep learning
Reinforcement
Unsupervised
Supervised
Neural networks:• Dense• Convolutional• Recurrent
http://playground.tensorflow.org/
14
Group Task Tool Example Software
Unsupervised
Clustering Hierarchical Clustering
Exploratory data analysis and drillhole logging
Orange
Non-supervised classification
K-Means
Dimension reduction PCA
Supervised
Classification Deep learning, Support Vector Machine (SVM), Naïve Bayes
Drillhole logging, density regression modelRegression
Image classification / segmentation
Convolutional neural networksDrillhole image logging, target generation
Keras –Tensorflow
PyTorch
Sequence recognition Recurrent neural networksDownhole geophysical data interpretation
Semi-supervisedAnomaly detection and one-class classification
Autoencoders neural networks and one-class SVN
Target generation from GIS data; Feature mapping
Introduction: Uses of Machine Learning
Introduction: Example - Drillhole Logging with Geophysical Data (Flin Flon)
15
Lithology Probabilities Geophysical data
Introduction: Example - Drillhole Logging with Long Textual Description
16Lithology Probabilities Input data
PredictionML Workflow
Introduction: Example - Domain Modeling
17
Introduction: Example - Robust Regression QAQC Duplicates
18
Outliers are not systematically biased
Random sample consensus (RANSAC)
Introduction: Example - Image Segmentation, to Detect Pebbles in Televiewer (Tristar Gold -Castelo de Sonhos- Brazil)
19
Estimating probability of pebble occurrence using convolutional neural network (sliding windows)
Introduction: Example – Object detection, Wildlife Cameras
20
Identifies Individuals Identifies groups of animals at different distances and aspects
ERM is collaborating with Microsoft and has developed a machine learning program to detect and identify wildlife from Arctic trail cameras.
Introduction: Example - Image Segmentation, to Detect Structures on DTM
21
Input: Image/DTMOutput: Mask of
Structure
Can learn shapes and its common scale/size
Introduction: Example - Image Segmentation, to Detect Pebbles in Televiewer (Tristar Gold -Castelo de Sonhos- Brazil)
22
Image Prediction
Training process
Input
Output
Model
Introduction: Example - Detect Alterations Using Satellite Images
23
Training on known deposit: Taca TacaUsing Aster images as input
Results in a different area:Minera Escondida
The Machine Learning Workflow
The Machine Learning Workflow
25
Testing data
Validating data
UserData collection
and EDA
Training data
Model TrainingTestingValidating
Production (New) Data
Data representation
Production
Model
Data representation
Define the
problem
Define the problem
The Machine Learning Workflow: Drillhole Logging System
26
Training stage
Production stage
Demonstration 2: Simple Rock Classifier
Demo 2: Drillhole Logging System
28
Training stage
Production stage
Demonstration 3: Identifying Circular Structures on DTM
Transfer learning
30
http://playground.tensorflow.org/
Nonlinear features
Image Classification Using Transfer Learning(Good for Prototyping)
31
Extract table with 4096 columns
Transfer learning uses pretrained neural networks
(VGG Convolutional Neural network pretrained on ImageNet {1000 different object categories})
If you enjoyed today’s workshop and would like to learn more, visit us HERE to REGISTER your interest to attend the CSA Global ‘Introduction to Machine Learning’ 2 Day Workshop.
Continue your machine learning journey…
32