![]() |
Machine Learning (ML) has become a very important area of research widely used in various industries.
This compendium introduces the basic concepts, fundamental theories, essential computational techniques, codes, and applications related to ML models. With a strong foundation, one can comfortably learn related topics, methods, and algorithms. Most importantly, readers with strong fundamentals can even develop innovative and more effective machine models for his/her problems. The book is written to achieve this goal.
The useful reference text benefits professionals, academics, researchers, graduate and undergraduate students in AI, ML and neural networks.
Sample Chapter(s)
Chapter 1: Introduction
https://doi.org/10.1142/9789811254185_fmatter
The following sections are included:
https://doi.org/10.1142/9789811254185_0001
The following sections are included:
https://doi.org/10.1142/9789811254185_0002
This chapter discusses basics of Python language for coding machine learning models. Python is a very powerful high-level programming language with the need for compiling, but with some level of efficiency of machine-level language. It has become the top popular tool for the development of tools and applications in the general area of machine learning. It has rich libraries for open access, and new libraries are constantly being developed. The language itself is powerful in terms of functionality. It is an excellent tool for effective and productive coding and programming. It is also fast, and the structure of the language is well built for making use of bulky data, which is often the case in machine learning…
https://doi.org/10.1142/9789811254185_0003
This chapter discusses typical scientific computations using codes in Python. We will focus on how numerical data are represented mathematically, how they are structured or organized, stored, manipulated, operated upon, or computed in effective manners. Subtleties in those operations in Python will be examined. At the end of this chapter, techniques for initial treatment of datasets will also be discussed. The reference materials used in the chapter include Numpy documentation, Scipy documentation, https://gluon.mxnet.io/, and https://jupyter.org/. Our discussion shall start with some basic linear algebra operations on data with a structure of vector, matrix and tensor.
https://doi.org/10.1142/9789811254185_0004
This chapter discusses some topics of probability and statistics related to machine learning models and the computation techniques using Python. Referenced materials include codes from Numpy documentation (https://numpy.org/doc/), Jupyter documentation (https://jupyter.org/), and Wikipedia (https://en.wikipedia.org/wiki/Main_Page). Codes from mxnet-the-straight-dope (https://github.com/zackchase/mxnet-the-straight-dope) are also used under the Apache-2.0 License…
https://doi.org/10.1142/9789811254185_0005
To build an ML model for predictions, one needs to use some hypothesis, which predefines the prediction function to connect the feature variables to the learning parameters. Thus, a proper hypothesis may follow the function approximation theory, which has been studied intensively in physics-law-based models [1–4]. The most essential rule is that the prediction function must be capable of predicting an arbitrary linear function in the feature space by a chosen set of learning parameters. Therefore, the prediction function is assumed as a complete linear function of the feature variables, and it is one of the most basic hypotheses…
https://doi.org/10.1142/9789811254185_0006
This chapter discusses two fundamentally important supervised machine learning algorithms, the Perceptron and the Support Vector Machine (SVM), for classification. Both are conceptually related, but very much different in formulation and algorithm. In the opinion of the author, there are a number of key ideas used in both classifiers in terms of computational methods. These ideas and the resulting formulations are very inspiring and can be used for many other machine learning algorithms. We hope the presentation in this chapter can help readers to appreciate these ideas. The referenced materials and much of the codes are from the Numpy documentations (https://numpy.org/doc/), Scikit-learn documentations (https://scikit-learn.org/stable/), mxnet-the-straight-dope (https://github.com/zackchase/mxnet-the-straight-dope), Jupyter Notebook (https://jupyter.org/), and Wikipedia (https://en.wikipedia.org/wiki/Main_Page) …
https://doi.org/10.1142/9789811254185_0007
Activation functions are some of the most essential elements in machine learning models based on artificial neural networks. Activation functions are used for the purpose of bringing in must-have nonlinearity to the neural network to enable it for complex problems. We have discussed about this in Chapter 5. This chapter takes a close look at this topic. In this book, the activation function is generally denoted using ϕ (z) with an argument of z that is often an input to a neuron in a neural network and often an affine transformed output from the previous layer of neurons…
https://doi.org/10.1142/9789811254185_0008
The following sections are included:
https://doi.org/10.1142/9789811254185_0009
The following sections are included:
https://doi.org/10.1142/9789811254185_0010
Regression is one of the most widely used tools in analyses of engineering systems. It is also an important technique in the construction of numerical models for both physics-law-based methods (such as the point interpolation methods PIM [1], and the moving least square or MLS used in the meshfree methods [2]) and machine learning models. In a machine learning setting, it takes inputs of a dataset and produces a prediction of a real number, once a regression model is established/trained…
https://doi.org/10.1142/9789811254185_0011
In many practical applications, we often only need to make a “yes” or “no” type of decision. Probability prediction is often the best choice for making such a decision. For example, what is the likelihood that a machinery may fail in operation in the coming month? What is the probability that a virus will become a pandemic in a region in the coming season? This type of problem requires an assessment on probability of the occurrence of an event, and is a typical classification problem. The simplest classification problem is the binary classification: there are only two classes, “yes” or “no”, for decision making. This chapter shall focus on this type of problem, focusing on necessary methods, formulation, and techniques that can be used for best prediction for binary labels, using neural networks. The reference materials for this chapter include the following:
https://doi.org/10.1142/9789811254185_0012
In the previous chapter, we discussed neural networks for binary classification, useful for “yes” or “no” types of problems. It is also a basis for handling many types of multi-classification problems, because one can often change a multi-classification problem into a set of binary classification problems. The techniques include one-to-rest, all-pairs, and their variation, as we have discussed in the Chapter 6 on SVM. There are many well-established modules for this type of purpose, such as Scikit learn. In this chapter, we discuss a systematic means to handle multi-classification problems, also known as k-classification problems, where we have in general a dataset that has k classes.
https://doi.org/10.1142/9789811254185_0013
In the previous chapter, we have seen examples of using a simple (input and output layers, only one layer has learning parameters) neural network for k-classification of handwritten digits. We found that there is room for improvements, and we have shown that other classifiers like the random forest and the extra-forest performed better than the one-layer neural network. This chapter will show that a neural network with more layers (by adding in some hidden layers) is one of the ways to make an improvement. This type of neural networks is often known as multilayer perceptron (MLP) [1–5]…
https://doi.org/10.1142/9789811254185_0014
The following sections are included:
https://doi.org/10.1142/9789811254185_0015
Convolutional neural network (CNN) or ConvNet [1–6] is one of the most powerful tools in machine learning, especially for processing multi-dimensional images and image-based classifications. It is currently widely used, and effective modules are made available at many packages/libraries, such as Scikit learn, PyTouch, TensorFlow, and Keras. The CNN uses quite a number of special techniques, which have very much different net configurations, compared to the neural networks discussed in the previous chapters. CNNs still use affine transformations, but these are specially designed with spatial filters to capture the spatial features of images. These details are often hidden in the black boxes of the modules available at various libraries. This chapter offers a concise description of the key ideas and techniques used in CNN and then a demonstration of CNN. More detailed information can be found in the rich open literature and the original papers given for each CNN network. An excellent online course by Andrew Ng is also available…
https://doi.org/10.1142/9789811254185_0016
Recurrent neural networks (RNNs) are yet another quite special class of artificial neural networks (NNs) for datasets with features of sequence or temporal significance. An RNN typically has an internal state recorded in a memory cell, so that it can process sequential inputs, such as video and speech records. Affine transformations are used in an extended affine space that includes memorized states as additional features. RNNs have important applications in various areas including natural language processing, speech recognition, translation, music composition, robot control, and unconstrained handwriting recognition [1], to name just a few. A recent review on RNNs can be found in [2]…
https://doi.org/10.1142/9789811254185_0017
The following sections are included:
https://doi.org/10.1142/9789811254185_0018
The following sections are included:
https://doi.org/10.1142/9789811254185_bmatter
The following section is included:
Dr Gui-Rong Liu received PhD from Tohoku University, Japan in 1991. He was a Post-Doctoral Fellow at Northwestern University, USA from 1991–1993. He was a Professor at the National University of Singapore until 2010. He is currently a Professor, Associate Department Head, and Undergraduate Program Director at the Department of Aerospace Engineering and Engineering Mechanics, University of Cincinnati, USA. He was the founder of the Association for Computational Mechanics (Singapore) (SACM) and served as the President of SACM until 2010. He served asl as the President of the Asia-Pacific Association for Computational Mechanics (APACM) (2010–2013), and an Executive Council Member of the International Association for Computational Mechanics (IACM) (2005–2010; 2020–2026). He authored a large number of journal papers and books including two bestsellers: Mesh Free Method: moving beyond the finite element method and Smoothed Particle Hydrodynamics: a Meshfree Particle Methods. He is the Editor-in-Chief of the International Journal of Computational Methods, and served as an Associate Editor for IPSE and MANO. He is the recipient of numerous awards, including the Singapore Defence Technology Prize, NUS Outstanding University Researcher Award and Best Teacher Award, APACM Computational Mechanics Awards, JSME Computational Mechanics Awards, ASME Ted Belytschko Applied Mechanics Award, Zienkiewicz Medal from APACM, the AJCM Computational Mechanics Award, and the Humboldt Research Award. He is listed as a world top 1% most influential scientist (Highly Cited Researchers) by Thomson Reuters in 2014–2016, 2018, 2019.
Sample Chapter(s)
Chapter 1: Introduction