Machine Learning in ArcGIS

What do we mean by Machine Learning?

Machine Learning (ML) refers to a set of data-driven algorithms and techniques that automate the prediction, classification, and clustering of data. Machine learning can play a critical role in spatial problem solving in a wide range of application areas, from image classification to spatial pattern detection to multivariate prediction.

In addition to traditional Machine Learning techniques, ArcGIS also has a subset of ML techniques that are inherently spatial. These spatial methods that incorporate some notion of geography directly into their computation can lead to deeper understanding. The spatial component often takes the form of some measure of shape, density, contiguity, spatial distribution, or proximity. Both traditional and inherently spatial machine learning can play an important role in solving spatial problems, and ArcGIS supports their use in a number of ways.

Machine learning can be computationally intensive and often involves large and complex data. Esri’s continued advancements in data storage and both parallel and distributed computing make solving problems at the intersection of ML and GIS increasingly possible.

Examples of Machine Learning in ArcGIS

Prediction

Prediction is about using the known to estimate the unknown. ArcGIS includes a number of regression and interpolation techniques that can be used to perform prediction. Applications include creating an air pollution surface based on sensor measurements and estimating home values based on recent sales data and related home and community characteristics.

In ArcGIS: Empirical Bayesian Kriging, Areal Interpolation, EBK Regression Prediction, Ordinary Least Squares Regression and Exploratory Regression, Geographically Weighted Regression

Classification

Classification is the process of deciding to which category an object should be assigned based on a training dataset. ArcGIS includes many classification methods focused on remotely sensed data. These tools analyze pixel values and configurations to categorize pixels. Some examples include delineating land use types or identifying areas of forest loss.

In ArcGIS: Maximum Likelihood Classification, Random Trees, Support Vector Machine

Clustering

Clustering is the grouping of observations based on similarities of values or locations. ArcGIS includes a broad range of algorithms that find clusters based on one or many attributes, location, or a combination of both. These methods can be used to do analysis such as segment school districts based on socioeconomic and demographic characteristics or find areas with dense social media activity after a natural disaster.

In ArcGIS: Spatially Constrained Multivariate Clustering, Multivariate Clustering, Density-based Clustering, Image Segmentation, Hot Spot Analysis, Cluster and Outlier Analysis, Space Time Pattern Mining

Behind the Scenes…

In addition to these methods and techniques, machine learning is also used throughout the platform as a means of choosing smart, data-driven defaults, automating workflows, and optimizing results. For instance, EBK Regression Prediction uses principal component analysis (PCA) as a means of dimension reduction to improve predictions, the OPTICS method within Density-based clustering uses ML techniques to choose a cluster tolerance based on a given reachability plot, and the Spatially Constrained Multivariate Clustering tool uses an approach called evidence accumulation to provide the user with probabilities related to clustering results.

Integration

The field of machine learning is both broad and deep, and is constantly evolving. ArcGIS is an open, interoperable platform that allows for the integration of complementary methods and techniques, whether through the ArcGIS API for Python, ArcPy, or the R-ArcGIS Bridge. This integration empowers ArcGIS users to solve complex problems by combining powerful built-in tools with any machine learning package they need, from scikit-learn and TensorFlow in Python to caret in R to IBM Watson and Microsoft AI – all while benefiting from the spatial validation, geoenrichment, and visualization of results in ArcGIS. The combination of these complementary packages and technologies with the system of record, insight and engagement that the ArcGIS platform provides is greater than the sum of its parts.

Examples:

What’s next

There are many key initiatives within Esri to advance machine learning methods and integration approaches across the platform. Methods such as random forests, neural networks, logistic regression, and time-series forecasting are on the roadmap, as well as simplified user experiences for integrating with popular machine learning libraries and packages. A continued focus on distributed processing also plays a major role in these advancements.

In addition to building on traditional machine learning within ArcGIS and ease of integration, Esri is actively working at broadening the intersection of GIS and ML. This focus on innovation in the realm of spatial ML, where the algorithms and approaches incorporate space into their computation, will continue to empower ArcGIS users to take advantage of the latest advances in technology and computing, while still focusing on solving problems in a fundamentally spatial way.

This entry was posted in Analysis & Geoprocessing, ArcGIS Pro, Developer, Python, Sciences, Spatial Statistics. Bookmark the permalink.

Leave a Reply

4 Comments

  1. Stratos Tso says:

    Hello Lauren, nice article. The toolset has been there for a while. It might get a fancy name in the future. But, what about performance??? It will be very interesting to compare ML performance between different platforms!

  2. johnmdye says:

    Lauren, can you list some of the ML libs and packages Esri is looking at integration with? We’re big users (and supporters) of H20.ai.

    • Lauren Bennett says:

      Hey John! I’d say the ones listed are good examples of places we’re spending some time/energy, but its also really great to get your feedback, so thanks for sharing your use of H20.ai. We’ve done some work with H20.ai, but I’d be super interested in hearing some of your use cases, so maybe we can connect to talk a bit more about it. Thanks again, and hope all is well with you!

  3. mehdikerbelae says:

    Thanks a lot, I’m very interesting for the use ML in ArcGIS. I need more details, how can I obtain it?