Machine and Deep Learning in ArcGIS
Kate Hess
Colin Kelly
What Is AI?
Summary:
Really, machine learning (ML)
Machine learning is about extracting patterns from data
to derive rules, instead of these rules being explicitly
programmed.
Artificial
Intelligence
Machine
Learning
Deep learning is a type of ML using deep neural
networks to find complex patterns especially in
unstructured data (such as images, text, voice, and lidar).
Deep
Learning
What Can Machine Learning Do?
Extract features from
imagery & lidar
Detect anomalies
Make predictions
Find patterns & clusters
Extract insights from
unstructured text
Machine Learning Lifecycle
Data Prep
Train Model
Inferencing
Derive Insights
Sharing
Machine Learning Tools in ArcGIS
Classification
• Maximum Likelihood
Classification
• Random Trees
• Support Vector Machine
Clustering
• Spatially Constrained
Multivariate Clustering
• Multivariate Clustering
• Density-based Clustering
• Image Segmentation
• Hot Spot Analysis
• Cluster and Outlier Analysis
• Space Time Pattern Mining
Prediction
• Empirical Bayesian Kriging
• Areal Interpolation
• EBK Regression Prediction
• Ordinary Least Squares
Regression and
Exploratory Regression
• Geographically Weighted
Regression
• Forest Based Prediction
• Time Series Forecasting
Vector-based
machine learning
in ArcGIS
•
•
•
•
•
Data Engineering
Exploratory Visualization
Identifying Patterns
Understanding Relationships
Making Predictions
Data
Engineering
Data Engineering is one
of the building blocks of
spatial statistics– the
first piece in the puzzle
to answering an analysis
question.
We think of it as “data
wrangling”, and it
includes the process of
cleaning, enriching and
manipulating data for
analysis.
What does this mean in
ArcGIS?
• Dealing with null
data and duplicates
• Time-enabling data
• Standardizing fields
Exploratory
Visualization
Charting
Plotting and
symbolizing
data on a map
Regression in ArcGIS
The regression tools in the Spatial Statistics toolbox allow you to make
predictions for unknown values and to better understand key factors
influencing a variable you are trying to model.
• Ordinary Least Squares (OLS)
• Exploratory Regression
• Generalized Linear Regression (includes options for OLS, Poisson &
logistic regression)
• Geographically Weighted Regression
• Local Bivariate Relationships
• Forest-based Classification & Regression
Key Idea:
Model Assumptions
In order to produce valid results, many models
require our datasets to first meet a set of
assumptions.
OLS is one of the most common regression
models, and it assumes five things:
1. Linear relationship
2. Random sampling of observations
3. Mean of errors should be zero
4. No multi-collinearity among independent
variables
5. Homoscedasticity (error terms should all
have same variance)
Demonstration:
Data Engineering
Analyzing Patterns
• Are the features in the dataset
spatially clustered?
• Is the clustering becoming
more or less intense over time?
Mapping Clusters
• Where are the clusters?
• Where are incidents most
dense?
• Where are the spatial outliers?
• Which features are most alike?
• How can we group these
features so each zone is
homogenous?
• How can we group these
features so each group is most
dissimilar?
Density-based Clustering
• Finds clusters of point features
within surrounding noise based
on their spatial distribution
• Defined distance (DBSCAN)
• Self-adjusting (HDBSCAN)
• Multi-scale (OPTICS)
Demonstration:
Density-based
Clustering
Space Time Pattern Mining
• Analyze data distributions and
patterns in the context of both
space and time
• Tools for clustering,
forecasting, and visualization
What is a hotspot?
Esri defines hotspots as “statistically
significant clusters of high values.”
In ArcGIS, we can identify hotspots
by using:
• Getis-Ord Gi* (Hot Spot Analysis,
Optimized Hot Spot Analysis)
• Anselin Local Moran’s I (Cluster
and Outlier Analysis)
What is
an outlier?
Outliers as conceptualized with basic statistical methods
We can use the local outlier factor
(LOF) to measure the degree by
which points in a study area are
outlying from other points in their
local neighborhood. (Spatial
Outlier Detection)
For data with numeric variables,
we can also use Local Moran’s I
to identify anomalous low values
surrounded by high values or high
values surrounded by low values.
(Cluster and Outlier Analysis)
Local Outlier Factor
Graphic Source: https://towardsdatascience.com/understanding-boxplots-5e2df7bcbd51
Time-series
forecasting
The tools in the Time Series Forecasting toolset allow you to
forecast and estimate future values of a space-time cube as
well as evaluate and compare different forecast models at each
location in a space-time cube.
Forest-Based Forecast
Demonstration:
Space Time
Cubes and
Forecasting
Demystifying the
R-ArcGIS Bridge
Demonstration:
R-ArcGIS Bridge
Part 2: Deep
Learning in ArcGIS
•
•
•
•
Working with unstructured data
Imagery AI workflows
Pre-trained deep learning models
Where/ how to run deep learning
models
Extract Insights from Unstructured Text
Extract Entities, Classify Text, Translate StoryMaps, and More
Extracting entities and relationships from text reports
Classifying country of incomplete addresses
Translate StoryMaps
Correct and normalize mistyped street addresses
Why is deep learning with imagery important?
Traditional human image interpretation doesn’t scale….
More sensors
Large volumes of imagery
Velocity of data
Automation
Accuracy
AI Workflows
Object Detection, Pixel Classification, Object Classification, Tracking, and More
Damaged structures
Building footprints
Roads
Oil pads
Swimming pools
Land cover
Road cracks
Parcel (edge) detection
Pipeline encroachment Palm trees
Tracking in FMV
Feature Extraction from Lidar
Data Pre-processing, Labelling, Training, and Inference
Encroachments and trees
Utility poles and lines
Streetlights
Labelling tools
Rail assets
Training and inference tools
Buildings
Pre-trained models (ArcGIS Living Atlas)
Imagery AI: End-to-End Workflow
Extract Insights from Imagery at Scale, with High Speed and Accuracy
Image
management
Labelling
For Wide Range of Data Types
• Aerial
• Motion imagery
• Satellite
• Bathymetry
• Radar
• Point cloud
• Lidar
• Drone
Data prep
Model training
Inferencing
Implementing Many Tasks
• Object classification
• Object tracking
• Object detection
• Scanned maps
• Pixel classification
• Image translation
Analysis
Field mobility,
monitoring
Imagery AI: End-to-End Workflow
Extract Insights from Imagery at Scale, with High Speed and Accuracy
Image
management
Labelling
For Wide Range of Data Types
• Aerial
• Motion imagery
• Satellite
• Bathymetry
• Radar
• Point cloud
• Lidar
• Drone
Data prep
Model training
Inferencing
Implementing Many Tasks
• Object classification
• Object tracking
• Object detection
• Scanned maps
• Pixel classification
• Image translation
Analysis
Field mobility,
monitoring
Pre-trained Models on ArcGIS Living Atlas
Plug-and-Play Models. No Training Needed. Easy Re-training Using Local Data.
Use Models Within
• ArcGIS Pro (+ Image Analyst Extension)
• ArcGIS Enterprise (+ Image Server)
• ArcGIS Online (+ ArcGIS Image)
AI is not one product. It spans ArcGIS.
Deep Learning - Clients
Web Map Viewer
ArcGIS API for Python with Notebook
ArcGIS Pro
Demo
Using Deep Learning Tools – Vehicle
Detection
Persistent Change Detection
• Classic change detection tools could be less accurate with clouds,
imagery mis-registration, and color differences
• Change detection empowered by deep learning can provide higher
accuracy for persistent change (such as new buildings)
• This could be useful for many use cases like identifying urban growth
patterns to provide recommendations for infrastructure planning, and
identifying illegal construction
Predicting Urban Growth
• Identify locations with a higher probability of urban development
• Use historical land cover raster data (urban and non-urban) along
with other data sets as input variables (for example, drive time to
the nearest urban center, proximity to freeways, proximity to
environmentally protected areas, population growth, and slopes)
• Model development can take place in ArcGIS or other frameworks
like R or Python
Field Boundary Delineation
• Detect boundaries of agricultural spaces or parcels with
high accuracy
• End-to-end AI capabilities for labelling, training data
preparation, model training, inference, analysis, and
information products
Damage Detection and Disaster Response
• Quickly identify damaged buildings, structures (such as dams
or levees), and roads from imagery
• Feed damaged roads to ArcGIS Network Analyst to
understand routable roads and provide faster response
• Leverage disaster assessment dashboards as well as field apps
for field data collection
Asset Extraction from Lidar
• Automate extraction of assets like trees, signs, traffic
lights, guard rails, and more
• Retrieve the results as a feature layer, consumable in
ArcGIS Pro or ArcGIS Enterprise
• Saves a lot of manual time, letting analysts focus on
more important things and real analysis
Resources
- ArcGIS API for Python Sample Notebooks
Spatial Data Science MOOC
- GeoAI Blog Posts
bit.ly/3zUCOZy
- GeoAI Hub Site
- Webinars
- Examples (StoryMaps, Web Apps)
- Learn lessons
Spatial Statistics Page
spatialstats.github.io/