From a theoretical viewpoint,probably approximately correct learning provides a mathematical and statistical framework for describing machine learning. Most traditional machine learning and deep learning algorithms can be described asempirical risk minimisation under this framework.
The earliest machine learning program was introduced in the 1950s whenArthur Samuel invented acomputer program that calculated the winning chance in checkers for each side, but the history of machine learning roots back to decades of human desire and effort to study human cognitive processes.[9] In 1949,Canadian psychologistDonald Hebb published the bookThe Organization of Behavior, in which he introduced atheoretical neural structure formed by certain interactions amongnerve cells.[10]Hebb's model ofneurons interacting with one another set a groundwork for how AIs and machine learning algorithms work under nodes, orartificial neurons used by computers to communicate data.[9] Other researchers who have studied humancognitive systems contributed to the modern machine learning technologies as well, including logicianWalter Pitts andWarren McCulloch, who proposed the early mathematical models of neural networks to come up withalgorithms that mirror human thought processes.[9]
By the early 1960s, an experimental "learning machine" withpunched tape memory, called Cybertron, had been developed byRaytheon Company to analysesonar signals,electrocardiograms, and speech patterns using rudimentaryreinforcement learning. It was repetitively "trained" by a human operator/teacher to recognise patterns and equipped with a "goof" button to cause it to reevaluate incorrect decisions.[11] A representative book on research into machine learning during the 1960s wasNils Nilsson's book on Learning Machines, dealing mostly with machine learning for pattern classification.[12] Interest related to pattern recognition continued into the 1970s, as described by Duda and Hart in 1973.[13] In 1981, a report was given on using teaching strategies so that anartificial neural network learns to recognise 40 characters (26 letters, 10 digits, and 4 special symbols) from a computer terminal.[14]
Tom M. Mitchell provided a widely quoted, more formal definition of the algorithms studied in the machine learning field: "A computer program is said to learn from experienceE with respect to some class of tasksT and performance measureP if its performance at tasks inT, as measured byP, improves with experienceE."[15] This definition of the tasks in which machine learning is concerned offers a fundamentallyoperational definition rather than defining the field in cognitive terms. This followsAlan Turing's proposal in his paper "Computing Machinery and Intelligence", in which the question, "Can machines think?", is replaced with the question, "Can machines do what we (as thinking entities) can do?".[16]
Modern-day Machine Learning algorithms are broken into 3 algorithm types: Supervised Learning Algorithms, Unsupervised Learning Algorithms, and Reinforcement Learning Algorithms.[17]
Current Supervised Learning Algorithms have objectives of classification and regression.
Current Unsupervised Learning Algorithms have objectives of clustering, dimensionality reduction, and association rule.
Current Reinforcement Learning Algorithms focus on decisions that must be made with respect to some previous, unknown time and are broken down to either be studies of model-based methods or model-free methods.
In 2014 Ian Goodfellow and others introduced generative adversarial networks (GANs) with realistic data synthesis.[18] By 2016 AlphaGo obtained victory against top human players using reinforcement learning techniques.[19]
However, an increasing emphasis on thelogical, knowledge-based approach caused a rift between AI and machine learning. Probabilistic systems were plagued by theoretical and practical problems of data acquisition and representation.[22]: 488 By 1980,expert systems had come to dominate AI, and statistics was out of favour.[23] Work on symbolic/knowledge-based learning did continue within AI, leading toinductive logic programming(ILP), but the more statistical line of research was now outside the field of AI proper, inpattern recognition andinformation retrieval.[22]: 708–710, 755 Neural networks research had been abandoned by AI andcomputer science around the same time. This line, too, was continued outside the AI/CS field, as "connectionism", by researchers from other disciplines, includingJohn Hopfield,David Rumelhart, andGeoffrey Hinton. Their main success came in the mid-1980s with the reinvention ofbackpropagation.[22]: 25
Machine learning (ML), reorganised and recognised as its own field, started to flourish in the 1990s. The field changed its goal from achieving artificial intelligence to tackling solvable problems of a practical nature. It shifted focus away from thesymbolic approaches it had inherited from AI, and toward methods and models borrowed from statistics,fuzzy logic, andprobability theory.[23]
There is a close connection between machine learning and compression. A system that predicts theposterior probabilities of a sequence given its entire history can be used for optimal data compression (by usingarithmetic coding on the output distribution). Conversely, an optimal compressor can be used for prediction (by finding the symbol that compresses best, given the previous history). This equivalence has been used as a justification for using data compression as a benchmark for "general intelligence".[24][25][26]
An alternative view can show compression algorithms implicitly map strings into implicitfeature space vectors, and compression-based similarity measures compute similarity within these feature spaces. For each compressor C(.) we define an associated vector space ℵ, such that C(.) maps an input string x, corresponding to the vector norm ||~x||. An exhaustive examination of the feature spaces underlying all compression algorithms is precluded by space; instead, feature vectors chooses to examine three representative lossless compression methods, LZW, LZ77, and PPM.[27]
According toAIXI theory, a connection more directly explained inHutter Prize, the best possible compression of x is the smallest possible software that generates x. For example, in that model, a zip file's compressed size includes both the zip file and the unzipping software, since you can not unzip it without both, but there may be an even smaller combined form.
Examples of AI-powered audio/video compression software includeNVIDIA Maxine, AIVC.[28] Examples of software that can perform AI-powered image compression includeOpenCV,TensorFlow,MATLAB's Image Processing Toolbox (IPT) and High-Fidelity Generative Image Compression.[29]
Inunsupervised machine learning,k-means clustering can be utilized to compress data by grouping similar data points into clusters. This technique simplifies handling extensive datasets that lack predefined labels and finds widespread use in fields such asimage compression.[30]
Data compression aims to reduce the size of data files, enhancing storage efficiency and speeding up data transmission. K-means clustering, an unsupervised machine learning algorithm, is employed to partition a dataset into a specified number of clusters, k, each represented by thecentroid of its points. This process condenses extensive datasets into a more compact set of representative points. Particularly beneficial inimage andsignal processing, k-means clustering aids in data reduction by replacing groups of data points with their centroids, thereby preserving the core information of the original data while significantly decreasing the required storage space.[31]
Large language models (LLMs) are also efficient lossless data compressors on some data sets, as demonstrated byDeepMind's research with the Chinchilla 70B model. Developed by DeepMind, Chinchilla 70B effectively compressed data, outperforming conventional methods such asPortable Network Graphics (PNG) for images andFree Lossless Audio Codec (FLAC) for audio. It achieved compression of image and audio data to 43.4% and 16.4% of their original sizes, respectively. There is, however, some reason to be concerned that the data set used for testing overlaps the LLM training data set, making it possible that the Chinchilla 70B model is only an efficient compression tool on data it has already been trained on.[32][33]
Machine learning anddata mining often employ the same methods and overlap significantly, but while machine learning focuses on prediction, based onknown properties learned from the training data, data mining focuses on thediscovery of (previously)unknown properties in the data (this is the analysis step ofknowledge discovery in databases). Data mining uses many machine learning methods, but with different goals; on the other hand, machine learning also employs data mining methods as "unsupervised learning" or as a preprocessing step to improve learner accuracy. Much of the confusion between these two research communities (which do often have separate conferences and separate journals,ECML PKDD being a major exception) comes from the basic assumptions they work with: in machine learning, performance is usually evaluated with respect to the ability toreproduce known knowledge, while in knowledge discovery and data mining (KDD) the key task is the discovery of previouslyunknown knowledge. Evaluated with respect to known knowledge, an uninformed (unsupervised) method will easily be outperformed by other supervised methods, while in a typical KDD task, supervised methods cannot be used due to the unavailability of training data.[citation needed]
Machine learning also has intimate ties tooptimisation: Many learning problems are formulated as minimisation of someloss function on a training set of examples. Loss functions express the discrepancy between the predictions of the model being trained and the actual problem instances (for example, in classification, one wants to assign alabel to instances, and models are trained to correctly predict the preassigned labels of a set of examples).[34]
Machine learning andstatistics are closely related fields in terms of methods, but distinct in their principal goal: statistics draws populationinferences from asample, while machine learning finds generalisable predictive patterns.[35]
Conventional statistical analyses require the a priori selection of a model most suitable for the study data set. In addition, only significant or theoretically relevant variables based on previous experience are included for analysis. In contrast, machine learning is not built on a pre-structured model; rather, the data shape the model by detecting underlying patterns. The more variables (input) used to train the model, the more accurate the ultimate model will be.[36]
Leo Breiman distinguished two statistical modelling paradigms: data model and algorithmic model,[37] wherein "algorithmic model" means more or less the machine learning algorithms likeRandom Forest.
Some statisticians have adopted methods from machine learning, leading to a combined field that they callstatistical learning.[38]
Analytical and computational techniques derived from deep-rooted physics of disordered systems can be extended to large-scale problems, including machine learning, e.g., to analyse the weight space ofdeep neural networks.[39] Statistical physics is thus finding applications in the area ofmedical diagnostics.[40]
A core objective of a learner is to generalise from its experience.[2][41] Generalization in this context is the ability of a learning machine to perform accurately on new, unseen examples/tasks after having experienced a learning data set. The training examples come from some generally unknown probability distribution (considered representative of the space of occurrences) and the learner has to build a general model about this space that enables it to produce sufficiently accurate predictions in new cases.
For the best performance in the context of generalisation, the complexity of the hypothesis should match the complexity of the function underlying the data. If the hypothesis is less complex than the function, then the model has underfitted the data. If the complexity of the model is increased in response, then the training error decreases. But if the hypothesis is too complex, then the model is subject tooverfitting and generalisation will be poorer.[42]
In addition to performance bounds, learning theorists study the time complexity and feasibility of learning. In computational learning theory, a computation is considered feasible if it can be done inpolynomial time. There are two kinds oftime complexity results: Positive results show that a certain class of functions can be learned in polynomial time. Negative results show that certain classes cannot be learned in polynomial time.
Insupervised learning, the training data is labelled with the expected answers, while inunsupervised learning, the model identifies patterns or structures in unlabelled data.
Machine learning approaches are traditionally divided into three broad categories, which correspond to learning paradigms, depending on the nature of the "signal" or "feedback" available to the learning system:
Supervised learning: The computer is presented with example inputs and their desired outputs, given by a "teacher", and the goal is to learn a general rule thatmaps inputs to outputs.
Unsupervised learning: No labels are given to the learning algorithm, leaving it on its own to find structure in its input. Unsupervised learning can be a goal in itself (discovering hidden patterns in data) or a means towards an end (feature learning).
Reinforcement learning: A computer program interacts with a dynamic environment in which it must perform a certain goal (such asdriving a vehicle or playing a game against an opponent). As it navigates its problem space, the program is provided feedback that's analogous to rewards, which it tries to maximise.[2]
Although each algorithm has advantages and limitations, no single algorithm works for all problems.[43][44][45]
Asupport-vector machine is a supervised learning model that divides the data into regions separated by alinear boundary. Here, the linear boundary divides the black circles from the white.
Supervised learning algorithms build a mathematical model of a set of data that contains both the inputs and the desired outputs.[46] The data, known astraining data, consists of a set of training examples. Each training example has one or more inputs and the desired output, also known as a supervisory signal. In the mathematical model, each training example is represented by anarray or vector, sometimes called afeature vector, and the training data is represented by amatrix. Throughiterative optimisation of anobjective function, supervised learning algorithms learn a function that can be used to predict the output associated with new inputs.[47] An optimal function allows the algorithm to correctly determine the output for inputs that were not a part of the training data. An algorithm that improves the accuracy of its outputs or predictions over time is said to have learned to perform that task.[15]
Types of supervised-learning algorithms includeactive learning,classification andregression.[48] Classification algorithms are used when the outputs are restricted to a limited set of values, while regression algorithms are used when the outputs can take any numerical value within a range. For example, in a classification algorithm that filters emails, the input is an incoming email, and the output is the folder in which to file the email. In contrast, regression is used for tasks such as predicting a person's height based on factors like age and genetics or forecasting future temperatures based on historical data.[49]
Similarity learning is an area of supervised machine learning closely related to regression and classification, but the goal is to learn from examples using a similarity function that measures how similar or related two objects are. It has applications inranking,recommendation systems, visual identity tracking, face verification, and speaker verification.
Unsupervised learning algorithms find structures in data that has not been labelled, classified or categorised. Instead of responding to feedback, unsupervised learning algorithms identify commonalities in the data and react based on the presence or absence of such commonalities in each new piece of data. Central applications of unsupervised machine learning include clustering,dimensionality reduction,[4] anddensity estimation.[50]
Cluster analysis is the assignment of a set of observations into subsets (calledclusters) so that observations within the same cluster are similar according to one or more predesignated criteria, while observations drawn from different clusters are dissimilar. Different clustering techniques make different assumptions on the structure of the data, often defined by somesimilarity metric and evaluated, for example, byinternal compactness, or the similarity between members of the same cluster, andseparation, the difference between clusters. Other methods are based onestimated density andgraph connectivity.
A special type of unsupervised learning called,self-supervised learning involves training a model by generating the supervisory signal from the data itself.[51][52]
Semi-supervised learning falls betweenunsupervised learning (without any labelled training data) andsupervised learning (with completely labelled training data). Some of the training examples are missing training labels, yet many machine-learning researchers have found that unlabelled data, when used in conjunction with a small amount of labelled data, can produce a considerable improvement in learning accuracy.
Inweakly supervised learning, the training labels are noisy, limited, or imprecise; however, these labels are often cheaper to obtain, resulting in larger effective training sets.[53]
In reinforcement learning, an agent takes actions in an environment: these produce a reward and/or a representation of the state, which is fed back to the agent.
Dimensionality reduction is a process of reducing the number of random variables under consideration by obtaining a set of principal variables.[55] In other words, it is a process of reducing the dimension of thefeature set, also called the "number of features". Most of the dimensionality reduction techniques can be considered as either feature elimination orextraction. One of the popular methods of dimensionality reduction isprincipal component analysis (PCA). PCA involves changing higher-dimensional data (e.g., 3D) to a smaller space (e.g., 2D).Themanifold hypothesis proposes that high-dimensional data sets lie along low-dimensionalmanifolds, and many dimensionality reduction techniques make this assumption, leading to the areas ofmanifold learning andmanifold regularisation.
Other approaches have been developed which do not fit neatly into this three-fold categorisation, and sometimes more than one is used by the same machine learning system. For example,topic modelling,meta-learning.[56]
Self-learning, as a machine learning paradigm, was introduced in 1982 along with a neural network capable of self-learning, namedcrossbar adaptive array (CAA).[57][58] It gives a solution to the problem learning without any external reward, by introducing emotion as an internal reward. Emotion is used as a state evaluation of a self-learning agent. The CAA self-learning algorithm computes, in a crossbar fashion, both decisions about actions and emotions (feelings) about consequence situations. The system is driven by the interaction between cognition and emotion.[59]The self-learning algorithm updates a memory matrix W =||w(a,s)|| such that in each iteration executes the following machine learning routine:
in situations acta
receive a consequence situations'
compute emotion of being in the consequence situationv(s')
update crossbar memoryw'(a,s) = w(a,s) + v(s')
It is a system with only one input, situation, and only one output, action (or behaviour) a. There is neither a separate reinforcement input nor an advice input from the environment. The backpropagated value (secondary reinforcement) is the emotion toward the consequence situation. The CAA exists in two environments, one is the behavioural environment where it behaves, and the other is the genetic environment, wherefrom it initially and only once receives initial emotions about situations to be encountered in the behavioural environment. After receiving the genome (species) vector from the genetic environment, the CAA learns a goal-seeking behaviour in an environment that contains both desirable and undesirable situations.[60]
Several learning algorithms aim at discovering better representations of the inputs provided during training.[61] Classic examples includeprincipal component analysis and cluster analysis. Feature learning algorithms, also called representation learning algorithms, often attempt to preserve the information in their input but also transform it in a way that makes it useful, often as a pre-processing step before performing classification or predictions. This technique allows reconstruction of the inputs coming from the unknown data-generating distribution, while not being necessarily faithful to configurations that are implausible under that distribution. This replaces manualfeature engineering, and allows a machine to both learn the features and use them to perform a specific task.
Manifold learning algorithms attempt to do so under the constraint that the learned representation is low-dimensional.Sparse coding algorithms attempt to do so under the constraint that the learned representation is sparse, meaning that the mathematical model has many zeros.Multilinear subspace learning algorithms aim to learn low-dimensional representations directly fromtensor representations for multidimensional data, without reshaping them into higher-dimensional vectors.[66]Deep learning algorithms discover multiple levels of representation, or a hierarchy of features, with higher-level, more abstract features defined in terms of (or generating) lower-level features. It has been argued that an intelligent machine learns a representation that disentangles the underlying factors of variation that explain the observed data.[67]
Feature learning is motivated by the fact that machine learning tasks such as classification often require input that is mathematically and computationally convenient to process. However, real-world data such as images, video, and sensory data have not yielded attempts to algorithmically define specific features. An alternative is to discover such features or representations through examination, without relying on explicit algorithms.
Sparse dictionary learning is a feature learning method where a training example is represented as a linear combination ofbasis functions and assumed to be asparse matrix. The method isstrongly NP-hard and difficult to solve approximately.[68] A popularheuristic method for sparse dictionary learning is thek-SVD algorithm. Sparse dictionary learning has been applied in several contexts. In classification, the problem is to determine the class to which a previously unseen training example belongs. For a dictionary where each class has already been built, a new training example is associated with the class that is best sparsely represented by the corresponding dictionary. Sparse dictionary learning has also been applied inimage denoising. The key idea is that a clean image patch can be sparsely represented by an image dictionary, but the noise cannot.[69]
Indata mining, anomaly detection, also known as outlier detection, is the identification of rare items, events or observations that raise suspicions by differing significantly from the majority of the data.[70] Typically, the anomalous items represent an issue such asbank fraud, a structural defect, medical problems or errors in a text. Anomalies are referred to asoutliers, novelties, noise, deviations and exceptions.[71]
In particular, in the context of abuse and network intrusion detection, the interesting objects are often not rare, but unexpected bursts of inactivity. This pattern does not adhere to the common statistical definition of an outlier as a rare object. Many outlier detection methods (in particular, unsupervised algorithms) will fail on such data unless aggregated appropriately. Instead, a cluster analysis algorithm may be able to detect the micro-clusters formed by these patterns.[72]
Three broad categories of anomaly detection techniques exist.[73] Unsupervised anomaly detection techniques detect anomalies in an unlabelled test data set under the assumption that the majority of the instances in the data set are normal, by looking for instances that seem to fit the least to the remainder of the data set. Supervised anomaly detection techniques require a data set that has been labelled as "normal" and "abnormal" and involves training a classifier (the key difference from many other statistical classification problems is the inherently unbalanced nature of outlier detection). Semi-supervised anomaly detection techniques construct a model representing normal behaviour from a given normal training data set and then test the likelihood of a test instance being generated by the model.
Robot learning is inspired by a multitude of machine learning methods, starting from supervised learning, reinforcement learning,[74][75] and finallymeta-learning (e.g. MAML).
Association rule learning is arule-based machine learning method for discovering relationships between variables in large databases. It is intended to identify strong rules discovered in databases using some measure of "interestingness".[76]
Rule-based machine learning is a general term for any machine learning method that identifies, learns, or evolves "rules" to store, manipulate or apply knowledge. The defining characteristic of a rule-based machine learning algorithm is the identification and utilisation of a set of relational rules that collectively represent the knowledge captured by the system. This is in contrast to other machine learning algorithms that commonly identify a singular model that can be universally applied to any instance in order to make a prediction.[77] Rule-based machine learning approaches includelearning classifier systems, association rule learning, andartificial immune systems.
Based on the concept of strong rules,Rakesh Agrawal,Tomasz Imieliński and Arun Swami introduced association rules for discovering regularities between products in large-scale transaction data recorded bypoint-of-sale (POS) systems in supermarkets.[78] For example, the rule found in the sales data of a supermarket would indicate that if a customer buys onions and potatoes together, they are likely to also buy hamburger meat. Such information can be used as the basis for decisions about marketing activities such as promotionalpricing orproduct placements. In addition tomarket basket analysis, association rules are employed today in application areas includingWeb usage mining,intrusion detection,continuous production, andbioinformatics. In contrast withsequence mining, association rule learning typically does not consider the order of items either within a transaction or across transactions.
Inductive logic programming (ILP) is an approach to rule learning usinglogic programming as a uniform representation for input examples, background knowledge, and hypotheses. Given an encoding of the known background knowledge and a set of examples represented as a logical database of facts, an ILP system will derive a hypothesized logic program thatentails all positive and no negative examples.Inductive programming is a related field that considers any kind of programming language for representing hypotheses (and not only logic programming), such asfunctional programs.
Inductive logic programming is particularly useful inbioinformatics andnatural language processing.Gordon Plotkin andEhud Shapiro laid the initial theoretical foundation for inductive machine learning in a logical setting.[80][81][82] Shapiro built their first implementation (Model Inference System) in 1981: a Prolog program that inductively inferred logic programs from positive and negative examples.[83] The terminductive here refers tophilosophical induction, suggesting a theory to explain observed facts, rather thanmathematical induction, proving a property for all members of a well-ordered set.
Amachine learning model is a type ofmathematical model that, once "trained" on a given dataset, can be used to make predictions or classifications on new data. During training, a learning algorithm iteratively adjusts the model's internal parameters to minimise errors in its predictions.[84] By extension, the term "model" can refer to several levels of specificity, from a general class of models and their associated learning algorithms to a fully trained model with all its internal parameters tuned.[85]
Various types of models have been used and researched for machine learning systems, picking the best model for a task is calledmodel selection.
An artificial neural network is an interconnected group of nodes, akin to the vast network ofneurons in abrain. Here, each circular node represents anartificial neuron and an arrow represents a connection from the output of one artificial neuron to the input of another.
Artificial neural networks (ANNs), orconnectionist systems, are computing systems vaguely inspired by thebiological neural networks that constitute animalbrains. Such systems "learn" to perform tasks by considering examples, generally without being programmed with any task-specific rules.
An ANN is a model based on a collection of connected units or nodes called "artificial neurons", which loosely model theneurons in a biological brain. Each connection, like thesynapses in a biological brain, can transmit information, a "signal", from one artificial neuron to another. An artificial neuron that receives a signal can process it and then signal additional artificial neurons connected to it. In common ANN implementations, the signal at a connection between artificial neurons is areal number, and the output of each artificial neuron is computed by some non-linear function of the sum of its inputs. The connections between artificial neurons are called "edges". Artificial neurons and edges typically have aweight that adjusts as learning proceeds. The weight increases or decreases the strength of the signal at a connection. Artificial neurons may have a threshold such that the signal is only sent if the aggregate signal crosses that threshold. Typically, artificial neurons are aggregated into layers. Different layers may perform different kinds of transformations on their inputs. Signals travel from the first layer (the input layer) to the last layer (the output layer), possibly after traversing the layers multiple times.
Deep learning consists of multiple hidden layers in an artificial neural network. This approach tries to model the way the human brain processes light and sound into vision and hearing. Some successful applications of deep learning are computer vision and speech recognition.[86]
A decision tree showing survival probability of passengers on theTitanic
Decision tree learning uses adecision tree as apredictive model to go from observations about an item (represented in the branches) to conclusions about the item's target value (represented in the leaves). It is one of the predictive modelling approaches used in statistics, data mining, and machine learning. Tree models where the target variable can take a discrete set of values are called classification trees; in these tree structures,leaves represent class labels, and branches representconjunctions of features that lead to those class labels. Decision trees where the target variable can take continuous values (typicallyreal numbers) are called regression trees. In decision analysis, a decision tree can be used to visually and explicitly represent decisions anddecision making. In data mining, a decision tree describes data, but the resulting classification tree can be an input for decision-making.
Random forest regression (RFR) falls under the umbrella of decisiontree-based models. RFR is an ensemble learning method that builds multiple decision trees and averages their predictions to improve accuracy and to avoid overfitting. To build decision trees, RFR uses bootstrapped sampling; for instance, each decision tree is trained on random data from the training set. This random selection of RFR for training enables the model to reduce biased predictions and achieve a higher degree of accuracy. RFR generates independent decision trees, and it can work on single-output data as well as multiple regressor tasks. This makes RFR compatible to be use in various applications.[87][88]
Support-vector machines (SVMs), also known as support-vector networks, are a set of relatedsupervised learning methods used for classification and regression. Given a set of training examples, each marked as belonging to one of two categories, an SVM training algorithm builds a model that predicts whether a new example falls into one category.[89] An SVM training algorithm is a non-probabilistic,binary,linear classifier, although methods such asPlatt scaling exist to use SVM in a probabilistic classification setting. In addition to performing linear classification, SVMs can efficiently perform a non-linear classification using what is called thekernel trick, implicitly mapping their inputs into high-dimensional feature spaces.
Regression analysis encompasses a large variety of statistical methods to estimate the relationship between input variables and their associated features. Its most common form islinear regression, where a single line is drawn to best fit the given data according to a mathematical criterion such asordinary least squares. The latter is often extended byregularisation methods to mitigate overfitting and bias, as inridge regression. When dealing with non-linear problems, go-to models includepolynomial regression (for example, used for trendline fitting in Microsoft Excel[90]),logistic regression (often used instatistical classification) or evenkernel regression, which introduces non-linearity by taking advantage of thekernel trick to implicitly map input variables to higher-dimensional space.
Multivariate linear regression extends the concept of linear regression to handle multiple dependent variables simultaneously. This approach estimates the relationships between a set of input variables and several output variables by fitting amultidimensional linear model. It is particularly useful in scenarios where outputs are interdependent or share underlying patterns, such as predicting multiple economic indicators or reconstructing images,[91] which are inherently multi-dimensional.
A simple Bayesian network. Rain influences whether the sprinkler is activated, and both rain and the sprinkler influence whether the grass is wet.
A Bayesian network, belief network, or directed acyclic graphical model is a probabilisticgraphical model that represents a set ofrandom variables and theirconditional independence with adirected acyclic graph (DAG). For example, a Bayesian network could represent the probabilistic relationships between diseases and symptoms. Given symptoms, the network can be used to compute the probabilities of the presence of various diseases. Efficient algorithms exist that performinference and learning. Bayesian networks that model sequences of variables, likespeech signals orprotein sequences, are calleddynamic Bayesian networks. Generalisations of Bayesian networks that can represent and solve decision problems under uncertainty are calledinfluence diagrams.
An example of Gaussian Process Regression (prediction) compared with other regression models[92]
A Gaussian process is astochastic process in which every finite collection of the random variables in the process has amultivariate normal distribution, and it relies on a pre-definedcovariance function, or kernel, that models how pairs of points relate to each other depending on their locations.
Given a set of observed points, or input–output examples, the distribution of the (unobserved) output of a new point as a function of its input data can be directly computed by looking at the observed points and the covariances between those points and the new, unobserved point.
A genetic algorithm (GA) is asearch algorithm andheuristic technique that mimics the process ofnatural selection, using methods such asmutation andcrossover to generate newgenotypes in the hope of finding good solutions to a given problem. In machine learning, genetic algorithms were used in the 1980s and 1990s.[93][94] Conversely, machine learning techniques have been used to improve the performance of genetic andevolutionary algorithms.[95]
The theory of belief functions, also referred to as evidence theory or Dempster–Shafer theory, is a general framework for reasoning with uncertainty, with understood connections to other frameworks such asprobability,possibility andimprecise probability theories. These theoretical frameworks can be thought of as a kind of learner and have some analogous properties of how evidence is combined (e.g., Dempster's rule of combination), just like how in apmf-based Bayesian approach would combine probabilities.[96] However, there are many caveats to these beliefs functions when compared to Bayesian approaches to incorporate ignorance anduncertainty quantification. These belief function approaches that are implemented within the machine learning domain typically leverage a fusion approach of variousensemble methods to better handle the learner'sdecision boundary, low samples, and ambiguous class issues that standard machine learning approach tend to have difficulty resolving.[97][6] However, the computational complexity of these algorithms is dependent on the number of propositions (classes), and can lead to a much higher computation time when compared to other machine learning approaches.
Rule-based machine learning (RBML) is a branch of machine learning that automatically discovers and learns 'rules' from data. It provides interpretable models, making it useful for decision-making in fields like healthcare, fraud detection, and cybersecurity. Key RBML techniques includeslearning classifier systems,[98]association rule learning,[99]artificial immune systems,[100] and other similar models. These methods extract patterns from data and evolve rules over time.
Typically, machine learning models require a high quantity of reliable data to perform accurate predictions. When training a machine learning model, machine learning engineers need to target and collect a large and representativesample of data. Data from the training set can be as varied as acorpus of text, a collection of images,sensor data, and data collected from individual users of a service.Overfitting is something to watch out for when training a machine learning model. Trained models derived from biased or non-evaluated data can result in skewed or undesired predictions. Biased models may result in detrimental outcomes, thereby furthering the negative impacts on society or objectives.Algorithmic bias is a potential result of data not being fully prepared for training. Machine learning ethics is becoming a field of study and, notably, becoming integrated within machine learning engineering teams.
Federated learning is an adapted form ofdistributed artificial intelligence to train machine learning models that decentralises the training process, allowing for users' privacy to be maintained by not needing to send their data to a centralised server. This also increases efficiency by decentralising the training process to many devices. For example,Gboard uses federated machine learning to train search query prediction models on users' mobile phones without having to send individual searches back toGoogle.[101]
In 2006, the media-services providerNetflix held the first "Netflix Prize" competition to find a program to better predict user preferences and improve the accuracy of its existing Cinematch movie recommendation algorithm by at least 10%. A joint team made up of researchers fromAT&T Labs-Research in collaboration with the teams Big Chaos and Pragmatic Theory built anensemble model to win the Grand Prize in 2009 for $1 million.[105] Shortly after the prize was awarded, Netflix realised that viewers' ratings were not the best indicators of their viewing patterns ("everything is a recommendation") and they changed their recommendation engine accordingly.[106] In 2010, an article inThe Wall Street Journal noted the use of machine learning by Rebellion Research to predict the2008 financial crisis.[107] In 2012, co-founder ofSun Microsystems,Vinod Khosla, predicted that 80% of medical doctors jobs would be lost in the next two decades to automated machine learning medical diagnostic software.[108] In 2014, it was reported that a machine learning algorithm had been applied in the field of art history to study fine art paintings and that it may have revealed previously unrecognised influences among artists.[109] In 2019Springer Nature published the first research book created using machine learning.[110] In 2020, machine learning technology was used to help make diagnoses and aid researchers in developing a cure for COVID-19.[111] Machine learning was recently applied to predict the pro-environmental behaviour of travellers.[112] Recently, machine learning technology was also applied to optimise smartphone's performance and thermal behaviour based on the user's interaction with the phone.[113][114][115] When applied correctly, machine learning algorithms (MLAs) can utilise a wide range of company characteristics to predict stock returns withoutoverfitting. By employing effective feature engineering and combining forecasts, MLAs can generate results that far surpass those obtained from basic linear techniques likeOLS.[116]
Recent advancements in machine learning have extended into the field of quantum chemistry, where novel algorithms now enable the prediction of solvent effects on chemical reactions, thereby offering new tools for chemists to tailor experimental conditions for optimal outcomes.[117]
Machine Learning is becoming a useful tool to investigate and predict evacuation decision-making in large-scale and small-scale disasters. Different solutions have been tested to predict if and when householders decide to evacuate during wildfires and hurricanes.[118][119][120] Other applications have been focusing on pre evacuation decisions in building fires.[121][122]
Although machine learning has been transformative in some fields, machine-learning programs often fail to deliver expected results.[123][124][125] Reasons for this are numerous: lack of (suitable) data, lack of access to the data, data bias, privacy problems, badly chosen tasks and algorithms, wrong tools and people, lack of resources, and evaluation problems.[126]
The "black box theory" poses another yet significant challenge. Black box refers to a situation where the algorithm or the process of producing an output is entirely opaque, meaning that even the coders of the algorithm cannot audit the pattern that the machine extracted from the data.[127] The House of Lords Select Committee, which claimed that such an "intelligence system" that could have a "substantial impact on an individual's life" would not be considered acceptable unless it provided "a full and satisfactory explanation for the decisions" it makes.[127]
In 2018, a self-driving car fromUber failed to detect a pedestrian, who was killed after a collision.[128] Attempts to use machine learning in healthcare with theIBM Watson system failed to deliver even after years of time and billions of dollars invested.[129][130] Microsoft'sBing Chat chatbot has been reported to produce hostile and offensive response against its users.[131]
Machine learning has been used as a strategy to update the evidence related to a systematic review and increased reviewer burden related to the growth of biomedical literature. While it has improved with training sets, it has not yet developed sufficiently to reduce the workload burden without limiting the necessary sensitivity for the findings research itself.[132]
Explainable AI (XAI), or Interpretable AI, or Explainable Machine Learning (XML), is artificial intelligence (AI) in which humans can understand the decisions or predictions made by the AI.[133] It contrasts with the "black box" concept in machine learning where even its designers cannot explain why an AI arrived at a specific decision.[134] By refining the mental models of users of AI-powered systems and dismantling their misconceptions, XAI promises to help users perform more effectively. XAI may be an implementation of the social right to explanation.
The blue line could be an example of overfitting a linear function due to random noise.
Settling on a bad, overly complex theory gerrymandered to fit all the past training data is known as overfitting. Many systems attempt to reduce overfitting by rewarding a theory in accordance with how well it fits the data but penalising the theory in accordance with how complex the theory is.[135]
Learners can also be disappointed by "learning the wrong lesson". A toy example is that an image classifier trained only on pictures of brown horses and black cats might conclude that all brown patches are likely to be horses.[136] A real-world example is that, unlike humans, current image classifiers often do not primarily make judgments from the spatial relationship between components of the picture, and they learn relationships between pixels that humans are oblivious to, but that still correlate with images of certain types of real objects. Modifying these patterns on a legitimate image can result in "adversarial" images that the system misclassifies.[137][138]
Adversarial vulnerabilities can also result in nonlinear systems or from non-pattern perturbations. For some systems, it is possible to change the output by only changing a single adversarially chosen pixel.[139] Machine learning models are often vulnerable to manipulation or evasion viaadversarial machine learning.[140]
Researchers have demonstrated howbackdoors can be placed undetectably into classifying (e.g., for categories "spam" and "not spam" of posts) machine learning models that are often developed or trained by third parties. Parties can change the classification of any input, including in cases for which a type ofdata/software transparency is provided, possibly includingwhite-box access.[141][142][143]
Classification of machine learning models can be validated by accuracy estimation techniques like theholdout method, which splits the data into a training and test set (conventionally 2/3 training set and 1/3 test set designation) and evaluates the performance of the training model on the test set. In comparison, the K-fold-cross-validation method randomly partitions the data into K subsets and then K experiments are performed each considering 1 subset for evaluation and the remaining K-1 subsets for training the model. In addition to the holdout and cross-validation methods,bootstrap, which samples n instances with replacement from the dataset, can be used to assess model accuracy.[144]
In addition to overall accuracy, investigators frequently reportsensitivity and specificity, meaning true positive rate (TPR) and true negative rate (TNR), respectively. Similarly, investigators sometimes report thefalse positive rate (FPR) as well as thefalse negative rate (FNR). However, these rates are ratios that fail to reveal their numerators and denominators.Receiver operating characteristic (ROC), along with the accompanying Area Under the ROC Curve (AUC), offer additional tools for classification model assessment. Higher AUC is associated with a better performing model.[145]
Different machine learning approaches can suffer from different data biases. A machine learning system trained specifically on current customers may not be able to predict the needs of new customer groups that are not represented in the training data. When trained on human-made data, machine learning is likely to pick up the constitutional and unconscious biases already present in society.[150]
Systems that are trained on datasets collected with biases may exhibit these biases upon use (algorithmic bias), thus digitising cultural prejudices.[151] For example, in 1988, the UK'sCommission for Racial Equality found thatSt. George's Medical School had been using a computer program trained from data of previous admissions staff and this program had denied nearly 60 candidates who were found to either be women or have non-European-sounding names.[150] Using job hiring data from a firm with racist hiring policies may lead to a machine learning system duplicating the bias by scoring job applicants by similarity to previous successful applicants.[152][153] Another example includes predictive policing companyGeolitica's predictive algorithm that resulted in "disproportionately high levels of over-policing in low-income and minority communities" after being trained with historical crime data.[154]
While responsiblecollection of data and documentation of algorithmic rules used by a system is considered a critical part of machine learning, some researchers blame the lack of participation and representation of minority populations in the field of AI for machine learning's vulnerability to biases.[155] In fact, according to research carried out by the Computing Research Association in 2021, "female faculty make up just 16.1%" of all faculty members who focus on AI among several universities around the world.[156] Furthermore, among the group of "new U.S. resident AI PhD graduates," 45% identified as white, 22.4% as Asian, 3.2% as Hispanic, and 2.4% as African American, which further demonstrates a lack of diversity in the field of AI.[156]
Language models learned from data have been shown to contain human-like biases.[157][158] Because human languages contain biases, machines trained on languagecorpora will necessarily also learn these biases.[159][160] In 2016, Microsoft testedTay, achatbot that learned from Twitter, and it quickly picked up racist and sexist language.[161]
In an experiment carried out byProPublica, aninvestigative journalism organisation, a machine learning algorithm's insight into the recidivism rates among prisoners falsely flagged "black defendants high risk twice as often as white defendants".[154] In 2015, Google Photos once tagged a couple of black people as gorillas, which caused controversy. The gorilla label was subsequently removed, and in 2023, it still cannot recognise gorillas.[162] Similar issues with recognising non-white people have been found in many other systems.[163]
Because of such challenges, the effective use of machine learning may take longer to be adopted in other domains.[164] Concern forfairness in machine learning, that is, reducing bias in machine learning and propelling its use for human good, is increasingly expressed by artificial intelligence scientists, includingFei-Fei Li, who said that "[t]here's nothing artificial about AI. It's inspired by people, it's created by people, and—most importantly—it impacts people. It is a powerful tool we are only just beginning to understand, and that is a profound responsibility."[165]
There are concerns among health care professionals that these systems might not be designed in the public's interest but as income-generating machines. This is especially true in the United States, where there is a long-standing ethical dilemma of improving health care, but also increasing profits. For example, the algorithms could be designed to provide patients with unnecessary tests or medication in which the algorithm's proprietary owners hold stakes. There is potential for machine learning in health care to provide professionals with an additional tool to diagnose, medicate, and plan recovery paths for patients, but this requires these biases to be mitigated.[166]
Since the 2010s, advances in both machine learning algorithms and computer hardware have led to more efficient methods for trainingdeep neural networks (a particular narrow subdomain of machine learning) that contain many layers of nonlinear hidden units.[167] By 2019, graphics processing units (GPUs), often with AI-specific enhancements, had displaced CPUs as the dominant method of training large-scale commercial cloud AI.[168]OpenAI estimated the hardware compute used in the largest deep learning projects fromAlexNet (2012) toAlphaZero (2017), and found a 300,000-fold increase in the amount of compute required, with a doubling-time trendline of 3.4 months.[169][170]
Tensor Processing Units (TPUs) are specialised hardware accelerators developed byGoogle specifically for machine learning workloads. Unlike general-purposeGPUs andFPGAs, TPUs are optimised for tensor computations, making them particularly efficient for deep learning tasks such as training and inference. They are widely used in Google Cloud AI services and large-scale machine learning models like Google's DeepMind AlphaFold and large language models. TPUs leverage matrix multiplication units and high-bandwidth memory to accelerate computations while maintaining energy efficiency.[171] Since their introduction in 2016, TPUs have become a key component of AI infrastructure, especially in cloud-based environments.
Neuromorphic computing refers to a class of computing systems designed to emulate the structure and functionality of biological neural networks. These systems may be implemented through software-based simulations on conventional hardware or through specialised hardware architectures.[172]
Aphysical neural network is a specific type of neuromorphic hardware that relies on electrically adjustable materials, such as memristors, to emulate the function ofneural synapses. The term "physical neural network" highlights the use of physical hardware for computation, as opposed to software-based implementations. It broadly refers to artificial neural networks that use materials with adjustable resistance to replicate neural synapses.[173][174]
Embedded machine learning is a sub-field of machine learning where models are deployed onembedded systems with limited computing resources, such aswearable computers,edge devices andmicrocontrollers.[175][176][177][178] Running models directly on these devices eliminates the need to transfer and store data on cloud servers for further processing, thereby reducing the risk of data breaches, privacy leaks and theft of intellectual property, personal data and business secrets. Embedded machine learning can be achieved through various techniques, such ashardware acceleration,[179][180]approximate computing,[181] and model optimisation.[182][183] Common optimisation techniques includepruning,quantisation,knowledge distillation, low-rank factorisation, network architecture search, and parameter sharing.
^The definition "without being explicitly programmed" is often attributed toArthur Samuel, who coined the term "machine learning" in 1959, but the phrase is not found verbatim in this publication, and may be aparaphrase that appeared later. Confer "Paraphrasing Arthur Samuel (1959), the question is: How can computers learn to solve problems without being explicitly programmed?" inKoza, John R.; Bennett, Forrest H.; Andre, David; Keane, Martin A. (1996). "Automated Design of Both the Topology and Sizing of Analog Electrical Circuits Using Genetic Programming".Artificial Intelligence in Design '96. Artificial Intelligence in Design '96. Dordrecht, Netherlands: Springer Netherlands. pp. 151–170.doi:10.1007/978-94-009-0279-4_9.ISBN978-94-010-6610-5.
^Goodfellow, Ian; Pouget-Abadie, Jean; Mirza, Mehdi (2014).Generative adversarial nets(PDF). Advances in Neural Information Processing Systems 27 (2014).
^Sarle, Warren S. (1994). "Neural Networks and statistical models".SUGI 19: proceedings of the Nineteenth Annual SAS Users Group International Conference. SAS Institute. pp. 1538–50.ISBN978-1-55544-611-6.OCLC35546178.
^Gareth James; Daniela Witten; Trevor Hastie; Robert Tibshirani (2013).An Introduction to Statistical Learning. Springer. p. vii.Archived from the original on 23 June 2019. Retrieved25 October 2014.
^Jordan, Michael I.; Bishop, Christopher M. (2004). "Neural Networks". In Allen B. Tucker (ed.).Computer Science Handbook, Second Edition (Section VII: Intelligent Systems). Boca Raton, Florida: Chapman & Hall/CRC Press LLC.ISBN978-1-58488-360-9.
^van Otterlo, M.; Wiering, M. (2012). "Reinforcement Learning and Markov Decision Processes".Reinforcement Learning. Adaptation, Learning, and Optimization. Vol. 12. pp. 3–42.doi:10.1007/978-3-642-27645-3_1.ISBN978-3-642-27644-6.
^Bozinovski, S. (1982). "A self-learning system using secondary reinforcement". In Trappl, Robert (ed.). Cybernetics and Systems Research: Proceedings of the Sixth European Meeting on Cybernetics and Systems Research. North-Holland. pp. 397–402.ISBN978-0-444-86488-8.
^Bozinovski, S. (1999) "Crossbar Adaptive Array: The first connectionist network that solved the delayed reinforcement learning problem" In A. Dobnikar, N. Steele, D. Pearson, R. Albert (eds.) Artificial Neural Networks and Genetic Algorithms, Springer Verlag, p. 320–325, ISBN 3-211-83364-1
^Bozinovski, Stevo (2014) "Modeling mechanisms of cognition-emotion interaction in artificial neural networks, since 1981." Procedia Computer Science p. 255–263
^Bozinovski, S. (2001) "Self-learning agents: A connectionist theory of emotion based on crossbar value judgment." Cybernetics and Systems 32(6) 637–667.
^Csurka, Gabriella; Dance, Christopher C.; Fan, Lixin; Willamowski, Jutta; Bray, Cédric (2004).Visual categorization with bags of keypoints(PDF). ECCV Workshop on Statistical Learning in Computer Vision.Archived(PDF) from the original on 13 July 2019. Retrieved29 August 2019.
^Daniel Jurafsky; James H. Martin (2009).Speech and Language Processing. Pearson Education International. pp. 145–146.
^Dokas, Paul; Ertoz, Levent; Kumar, Vipin; Lazarevic, Aleksandar; Srivastava, Jaideep; Tan, Pang-Ning (2002)."Data mining for network intrusion detection"(PDF).Proceedings NSF Workshop on Next Generation Data Mining.Archived(PDF) from the original on 23 September 2015. Retrieved26 March 2023.
^Moringen, Alexandra; Fleer, Sascha; Walck, Guillaume; Ritter, Helge (2020), Nisky, Ilana; Hartcher-O'Brien, Jess; Wiertlewski, Michaël; Smeets, Jeroen (eds.), "Attention-Based Robot Learning of Haptic Interaction",Haptics: Science, Technology, Applications, Lecture Notes in Computer Science, vol. 12272, Cham: Springer International Publishing, pp. 462–470,doi:10.1007/978-3-030-58147-3_51,ISBN978-3-030-58146-6,S2CID220069113
^Piatetsky-Shapiro, Gregory (1991),Discovery, analysis, and presentation of strong rules, in Piatetsky-Shapiro, Gregory; and Frawley, William J.; eds.,Knowledge Discovery in Databases, AAAI/MIT Press, Cambridge, MA.
^Shapiro, Ehud Y.Inductive inference of theories from factsArchived 21 August 2021 at theWayback Machine, Research Report 192, Yale University, Department of Computer Science, 1981. Reprinted in J.-L. Lassez, G. Plotkin (Eds.), Computational Logic, The MIT Press, Cambridge, MA, 1991, pp. 199–254.
^Shapiro, Ehud Y. (1983).Algorithmic program debugging. Cambridge, Mass: MIT Press.ISBN0-262-19218-7
^Shapiro, Ehud Y. "The model inference systemArchived 2023-04-06 at theWayback Machine." Proceedings of the 7th international joint conference on Artificial intelligence-Volume 2. Morgan Kaufmann Publishers Inc., 1981.
^Russell, Stuart J.; Norvig, Peter (2021).Artificial intelligence: a modern approach. Pearson series in artificial intelligence (Fourth ed.). Hoboken: Pearson.ISBN978-0-13-461099-3.
^Michie, D.; Spiegelhalter, D. J.; Taylor, C. C. (1994). "Machine Learning, Neural and Statistical Classification".Ellis Horwood Series in Artificial Intelligence.Bibcode:1994mlns.book.....M.
^Sun, Yuran; Zhao, Xilei; Lovreglio, Ruggiero; Kuligowski, Erica (1 January 2024), Naser, M. Z. (ed.),"8 - AI for large-scale evacuation modeling: promises and challenges",Interpretable Machine Learning for the Analysis, Design, Assessment, and Informed Decision Making for Civil Infrastructure, Woodhead Publishing Series in Civil and Structural Engineering, Woodhead Publishing, pp. 185–204,ISBN978-0-12-824073-1,archived from the original on 19 May 2024, retrieved19 May 2024
^Xu, Ningzhe; Lovreglio, Ruggiero; Kuligowski, Erica D.; Cova, Thomas J.; Nilsson, Daniel; Zhao, Xilei (1 March 2023). "Predicting and Assessing Wildfire Evacuation Decision-Making Using Machine Learning: Findings from the 2019 Kincade Fire".Fire Technology.59 (2):793–825.doi:10.1007/s10694-023-01363-1.ISSN1572-8099.
^abBabuta, Alexander; Oswald, Marion; Rinik, Christine (2018).Transparency and Intelligibility (Report). Royal United Services Institute (RUSI). pp. 17–22.Archived from the original on 9 December 2023. Retrieved9 December 2023.
^Goldwasser, Shafi; Kim, Michael P.; Vaikuntanathan, Vinod; Zamir, Or (14 April 2022). "Planting Undetectable Backdoors in Machine Learning Models".arXiv:2204.06974 [cs.LG].
^Wang, Xinan; Dasgupta, Sanjoy (2016), Lee, D. D.; Sugiyama, M.; Luxburg, U. V.; Guyon, I. (eds.),"An algorithm for L1 nearest neighbor search via monotonic embedding"(PDF),Advances in Neural Information Processing Systems 29, Curran Associates, Inc., pp. 983–991,archived(PDF) from the original on 7 April 2017, retrieved20 August 2018
^M.O.R. Prates; P.H.C. Avelar; L.C. Lamb (11 March 2019). "Assessing Gender Bias in Machine Translation – A Case Study with Google Translate".arXiv:1809.02208 [cs.CY].
^"AI and compute".OpenAI. 16 May 2018.Archived from the original on 17 June 2020. Retrieved11 June 2020.
^Jouppi, Norman P.; Young, Cliff; Patil, Nishant; Patterson, David; Agrawal, Gaurav; Bajwa, Raminder; Bates, Sarah; Bhatia, Suresh; Boden, Nan; Borchers, Al; Boyle, Rick; Cantin, Pierre-luc; Chao, Clifford; Clark, Chris; Coriell, Jeremy (24 June 2017)."In-Datacenter Performance Analysis of a Tensor Processing Unit".Proceedings of the 44th Annual International Symposium on Computer Architecture. ISCA '17. New York, NY, US: Association for Computing Machinery. pp. 1–12.arXiv:1704.04760.doi:10.1145/3079856.3080246.ISBN978-1-4503-4892-8.
^Ibrahim, Ali; Osta, Mario; Alameh, Mohamad; Saleh, Moustafa; Chible, Hussein; Valle, Maurizio (21 January 2019). "Approximate Computing Methods for Embedded Machine Learning".2018 25th IEEE International Conference on Electronics, Circuits and Systems (ICECS). pp. 845–848.doi:10.1109/ICECS.2018.8617877.ISBN978-1-5386-9562-3.S2CID58670712.
Domingos, Pedro (22 September 2015).The Master Algorithm: How the Quest for the Ultimate Learning Machine Will Remake Our World. Basic Books.ISBN978-0-465-06570-7.