𝔖 Scriptorium
✦   LIBER   ✦

πŸ“

Machine Learning in Python for Process Systems Engineering: Achieving operational excellence using process data

✍ Scribed by Ankur Kumar, Jesus Flores-Cerrillo


Year
2022
Tongue
English
Leaves
352
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


Perhaps you are reading this book because you too have been inspired by the capabilities
of machine learning and would like to use it to solve problems being faced by your
organization. However, you might be struggling to find a definite guide that can help you
decide which specific methodology to chose among the myriad of available
methodologies. You may have come across a nice research article that showcases an
interesting process systems application of a ML method. However, you might be facing
difficulties trying to understand the intricate details of the algorithm. We won’t be surprised
if you have struggled to find a data-science book that caters to the needs of a process
systems engineer, considers unique characteristics of industrial process systems, and
uses industrial-scale process systems for illustrations. We, the authors, have been in that
phase. A process engineer will arguably find it more relevant and useful to learn principal
component analysis (PCA) by working through a process monitoring application (the most
popular application area of PCA in process industry) and learning how to compute the
monitoring metrics. Similar arguments could be made for several other popular ML
methods. There is a gap in available machine learning resources for industrial
practitioners and this book attempts to cover this gap.

In one sense, we wrote this book for our younger selves; a book that we wish had existed
when we started experimenting with machine learning techniques. Drawing from our
years of experience in developing data-driven industrial solutions, this book has been
written with the focus on de-cluttering the world of machine learning, giving a
comprehensive exposition of ML tools that have proven useful in process industry,
providing step-by-step elucidation of implementation details, cautioning against the`
pitfalls and listing various tips & tricks that we have encountered over the years, and using
dataset from industrial-scale process systems for illustrations. We strongly believe in
β€˜learning by doing’ and therefore we encourage the readers to work through in-chapter
illustrations as they follow along the text. For reader’s assistance, Jupyter notebooks with
complete code implementations are available for download. We have chosen Python as
the coding language for the book as it convenient to use, has large collection of ML
libraries, and is the de facto standard language for ML. No prior experience with Python
is assumed. The book has been designed to teach machine learning from scratch and
upon completion, the reader will feel comfortable at using ML techniques.

✦ Table of Contents


Preface
Part 1 Introduction and Fundamentals
β€’ Chapter 1 Machine Learning for Process Systems Engineering
o 1.1 What are Process Systems
β–ͺ 1.1.1 Characteristics of process data
o 1.2 What is Machine Learning
β–ͺ 1.2.1 Machine learning workflow
β–ͺ 1.2.2 Type of machine learning systems
o 1.3 Machine Learning Applications in Process Industry
β–ͺ 1.3.1 Decision hierarchy levels in a process plant
β–ͺ 1.3.2 Application areas
o 1.4 ML Solution Deployment
o 1.5 The Future of Process Data Science
β€’ Chapter 2 The Scripting Environment
o 2.1 Introduction to Python
o 2.2 Introduction to Spyder and Jupyter
o 2.3 Python Language: Basics
o 2.4 Scientific Computing Packages: Basics
β–ͺ 2.4.1 Numpy
β–ͺ 2.4.2 Pandas
o 2.5 Typical ML Script 20
β€’ Chapter 3 Machine Learning Model Development: Workflow and Best Practices
o 3.1 ML Model Development Workflow
o 3.2 Data Pre-processing: Data Transformation
β–ͺ 3.2.1 (Robust) Data centering & scaling
β–ͺ 3.2.2 Feature extraction
β–ͺ 3.2.3 Feature engineering
β–ͺ 3.2.4 Workflow automation via pipelines
o 3.3 Model Evaluation
β–ͺ 3.3.1 Regression metrics
β–ͺ 3.3.2 Classification metrics
β–ͺ 3.3.3 Holdout method / cross-validation
β–ͺ 3.3.4 Residual analysis
o 3.4 Model Tuning
β–ͺ 3.4.1 Overfitting & underfitting
β–ͺ 3.4.2 Train/validation/test split
β–ͺ 3.3.3 K-fold cross-validation
β–ͺ 3.4.4 Regularization
β–ͺ 3.4.5 Hyperparameter optimization via GridSearchCV 39
β€’ Chapter 4 Data Pre-processing: Cleaning Process Data
o 4.1 Signal De-noising
β–ͺ 4.1.1 Moving window average filter
β–ͺ 4.1.2 SG filter 674.2 Variable Selection/Feature Selection β–ͺ 4.2.1 Filter methods β–ͺ 4.2.2 Wrapper methods β–ͺ 4.2.3 Embedded methods 4.3 Outlier Handling β–ͺ 4.3.1 Univariate methods β–ͺ 4.3.2 Multivariate methods β–ͺ 4.3.3 Data-mining methods 4.4 Handling Missing Data Part 2 Classical Machine Learning Methods β€’ Chapter 5 Dimension Reduction and Latent Variable Methods (Part 1) o 5.1 PCA: An Introduction β–ͺ 5.1.1 Mathematical background β–ͺ 5.1.2 Dimensionality reduction for polymer manufacturing process o 5.2 Process Monitoring via PCA for Polymer Manufacturing Process β–ͺ 5.2.1 Process monitoring/fault detection indices β–ͺ 5.2.2 Fault detection β–ͺ 5.2.3 Fault diagnosis o 5.3 Variants of Classical PCA β–ͺ 5.3.1 Dynamic PCA β–ͺ 5.3.2 Multiway PCA β–ͺ 5.3.3 Kernel PCA o 5.4 PLS: An Introduction β–ͺ 5.4.1 Mathematical background o 5.5 Soft Sensing via PLS for Pulp & Paper Manufacturing Process o 5.6 Process monitoring via PLS for Polyethylene Manufacturing Process β–ͺ 5.6.1 Fault detection indices β–ͺ 5.6.2 Fault detection o 5.7 Variants of Classical PLS β€’ Chapter 6 Dimension Reduction and Latent Variable Methods (Part 2) o 6.1 ICA: An Introduction β–ͺ 6.1.1 Mathematical background β–ͺ 6.1.2 Complex chemical process: Tennessee Eastman Process β–ͺ 6.1.3 Deciding number of ICs o 6.2 Process Monitoring via ICA for Tennessee Eastman Process β–ͺ 6.2.1 Fault detection indices β–ͺ 6.2.2 Fault detection 6.3 FDA: An Introduction β–ͺ 6.3.1 Mathematical background β–ͺ 6.3.2 Dimensionality reduction for Tennessee Eastman Process o 6.4 Fault Classification via FDA for Tennessee Eastman Process 120 β€’ Chapter 7 Support Vector Machines & Kernel-based Learning o 7.1 SVMs: An Introduction β–ͺ 7.1.1 Mathematical background β–ͺ 7.1.2 Hard margin vs soft margin classification o 7.2 The Kernel Trick for Nonlinear Data β–ͺ 7.2.1 Mathematical background 7.3 SVDD: An Introduction 142
7.3.1 Mathematical background
7.3.2 OC-SVM vs SVDD
7.3.3 Bandwidth parameter and SVDD illustration
7.4 Process Fault Detection via SVDD
7.5 SVR: An Introduction
β–ͺ 7.5.1 Mathematical background
7.6 Soft Sensing via SVR in a Polymer Processing Plant
7.7 Soft Sensing via SVR for Debutanizer Column in a Petroleum Refinery
β€’ Chapter 8 Finding Groups in Process Data: Clustering & Mixture Modeling
o 8.1 Clustering: An Introduction
β–ͺ 8.1.1 Multimode semiconductor manufacturing process
o 8.2 Centroid-based Clustering: K-Means
β–ͺ 8.2.1 Determining the number of clusters via elbow method
β–ͺ 8.2.2 Silhouette analysis for quantifying clusters quality
β–ͺ 8.2.3 Pros and cons
8.3 Density-based Clustering: DBSCAN
β–ͺ 8.3.3 Pros and cons
o 8.4 Probabilistic Clustering: Gaussian Mixtures
β–ͺ 8.4.1 Mathematical background
β–ͺ 8.4.2 Determining the number of clusters
o 8.5 Multimode Process Monitoring via GMM for Semiconductor Manufacturing Process
β–ͺ 8.5.1 Fault detection indices
β–ͺ 8.5.2 Fault detection β€’ Chapter 9 Decision Trees & Ensemble Learning
o 9.1 Decision Trees: An Introduction
β–ͺ 9.1.1 Mathematical background
o 9.2 Random Forests: An Introduction
β–ͺ 9.2.1 Mathematical background
o 9.3 Soft Sensing via Random Forest in Concrete Construction Industry
β–ͺ 9.3.1 Feature importances
o 9.4 Introduction to Ensemble Learning
β–ͺ 9.4.1 Bagging
β–ͺ 9.4.2 Boosting
o 9.5 Effluent Quality Prediction in Wastewater Treatment Plant via XGBoost 192
β€’ Chapter 10 Other Useful Classical ML Techniques
o 10.1 KDE: An Introduction
β–ͺ 10.1.1 Mathematical background
β–ͺ 10.1.2 Deciding KDE hyperparameters
o 10.2 Determining Monitoring Metric Control Limit via KDE
o 10.3 kNN: An Introduction
β–ͺ 10.3.1 Mathematical background
β–ͺ 10.3.2 Deciding kNN hyperparameters
β–ͺ 10.3.3 Applications of kNN for process systems
o 10.4 Process Fault Detection via kNN for semiconductor Manufacturing Process
o 10.5 Combining ML Techniques 214
Part 3 Artificial Neural Networks & Deep Learning
β€’ Chapter 11 Feedforward Neural Networks
o 11.1 ANN: An Introduction
β–ͺ 11.1.1 Deep learning
β–ͺ 11.1.2 TensorFlow
o 11.2 Process Modeling via FFNN for Combined Cycle Power Plant
o 11.3 Mathematical Background
β–ͺ 11.3.1 Activation functions
β–ͺ 11.3.2 Loss functions & cost functions
β–ͺ 11.3.3 Gradient descent optimization
β–ͺ 11.3.4 Epochs & batch-size
β–ͺ 11.3.5 Backpropagation
β–ͺ 11,3,6 Vanishing/Exploding gradients
o 11.4 Nonlinearity in Neural Nets (Width vs Depth)
o 11.5 Neural Net Hyperparameter Optimization
o 11.6 Strategies for Improved Network Training
β–ͺ 11.6.1 Early stopping
β–ͺ 11.6.2 Regularization
β–ͺ 11.6.3 Initialization
β–ͺ 11.6.4 Batch normalization
o 11.7 Soft Sensing via FFNN for Debutanizer Column in a Petroleum Refinery
o FFNN Modeling Guidelines
β€’ Chapter 12 Recurrent Neural Networks
o 12.1 RNN: An Introduction
β–ͺ 12.1.1 RNN outputs
β–ͺ 12.1.2 LSTM networks
o 12.2 System Identification via LSTM RNN for SISO Heater System
o 12.3 Mathematical Background
o 12.4 Stacked/Deep RNNs
o 12.5 Fault Classification vis LSTM for Tennessee Eastman Process
o 12.6 Predictive Maintenance using LSTM Networks
β–ͺ 12.6.1 Failure prediction using LSTM
β–ͺ 12.6.2 Remaining useful life (RUL) prediction using LSTM 256
β€’ Chapter 13 Reinforcement Learning
o 13.1 Reinforcement Learning: An Introduction
β–ͺ 13.1.1 RL for process control
o 13.2 RL Terminology & Mathematical Concepts
β–ͺ 13.2.1 Environment and Markov decision process
β–ͺ 13.2.2 Reward and return
β–ͺ 13.2.3 Policy
β–ͺ 13.2.4 Value function
β–ͺ 13.2.5 Bellman equation
o 13.3 Fundamentals of Q-learning
o 13.4 Deep RL & Actor-Critic Framework
β–ͺ 13.4.1 Deep Q-learning
β–ͺ 13.4.2 Policy gradient methods
β–ͺ 13.4.3 Actor-Critic framework
o 13.5 Deep Deterministic Policy Gradient (DDPG)
β–ͺ 13.5.1 Replay memory 285`
13.5.2 Target networks
13.5.3 OU process as exploration noise
13.6 DDPG RL Agent as Level Controller
Part 4 Deploying ML Solutions Over Web
β€’ Chapter 14 Process Monitoring Web Application
o 14.1 Process Monitoring Web App: Introduction
o 14.2 A Simple β€˜Hello World’ Web App
o 14.3 Embedding ML Models into Web Apps
o 14.4 Building Front-end User Interface
Appendix
Dataset Descriptions


πŸ“œ SIMILAR VOLUMES


Machine Learning in Python for Dynamic P
✍ Ankur Kumar, Jesus Flores-Cerrillo πŸ“‚ Library πŸ“… 2023 πŸ› Leanpub 🌐 English

This book provides a comprehensive coverage of Machine Learning (ML) methods that have proven useful in process industry for dynamic process modeling. Step-by-step instructions, supported with industry-relevant case studies, show (using Python) how to develop solutions for process modeling, process

Data Processing and Reconciliation for C
✍ JosΓ© A. Romagnoli; Mabel Cristina Sanchez πŸ“‚ Library πŸ“… 1999 🌐 English

Computer techniques have made online measurements available at every sampling period in a chemical process. However, measurement errors are introduced that require suitable techniques for data reconciliation and improvements in accuracy. Reconciliation of process data and reliable monitoring are ess

Data Processing and Reconciliation for C
✍ JosΓ© Alberto Romagnoli, Mabel Cristina SΓ‘nchez πŸ“‚ Library πŸ“… 2000 πŸ› Academic Press 🌐 English

Computer techniques have made online measurements available at every sampling period in a chemical process. However, measurement errors are introduced that require suitable techniques for data reconciliation and improvements in accuracy. Reconciliation of process data and reliable monitoring are ess

Dirty Data Processing for Machine Learni
✍ Zhixin Qi, Hongzhi Wang, Zejiao Dong πŸ“‚ Library πŸ“… 2023 πŸ› Springer 🌐 English

<p><span>In both the database and machine learning communities, data quality has become a serious issue which cannot be ignored. In this context, we refer to data with quality problems as β€œdirty data.” Clearly, for a given data mining or machine learning task, dirty data in both training and test da

Scala for Machine Learning - Second Edit
✍ Patrick R. Nicolas πŸ“‚ Library πŸ› Packt Publishing 🌐 English

<h4><span>Key Features</span></h4><ul><li><span><span>Explore a broad variety of data processing, machine learning, and genetic algorithms through diagrams, mathematical formulation, and updated source code in Scala</span></span></li><li><span><span>Take your expertise in Scala programming to the ne

Scala for Machine Learning - Second Edit
✍ Patrick R. Nicolas πŸ“‚ Library πŸ› Packt Publishing 🌐 English

<h4><span>Key Features</span></h4><ul><li><span><span>Explore a broad variety of data processing, machine learning, and genetic algorithms through diagrams, mathematical formulation, and updated source code in Scala</span></span></li><li><span><span>Take your expertise in Scala programming to the ne