{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "#### BeautifulSoup4 설치." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Collecting bs4\n", " Using cached https://files.pythonhosted.org/packages/10/ed/7e8b97591f6f456174139ec089c769f89a94a1a4025fe967691de971f314/bs4-0.0.1.tar.gz\n", "Requirement already satisfied: beautifulsoup4 in c:\\anaconda3\\lib\\site-packages (from bs4) (4.6.0)\n", "Building wheels for collected packages: bs4\n", " Building wheel for bs4 (setup.py): started\n", " Building wheel for bs4 (setup.py): finished with status 'done'\n", " Created wheel for bs4: filename=bs4-0.0.1-cp37-none-any.whl size=1278 sha256=ca08e80dbfe2299878046653c8e3a9b7d8069b140ba855a879aed1cc24f7abf9\n", " Stored in directory: C:\\Users\\Gram\\AppData\\Local\\pip\\Cache\\wheels\\a0\\b0\\b2\\4f80b9456b87abedbc0bf2d52235414c3467d8889be38dd472\n", "Successfully built bs4\n", "Installing collected packages: bs4\n", "Successfully installed bs4-0.0.1\n" ] } ], "source": [ "!pip install bs4" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import requests as rq\n", "import bs4" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1. Requests 라이브러리를 사용해서 HTML을 가져온다:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# 웹사이트의 URL에 접속.\n", "res = rq.get(\"https://en.wikipedia.org/wiki/Machine_learning\") #위키피디아 머신러닝페이지 가져옴" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "200" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# status_code가 200이면 OK.\n", "# status_code가 4xx이면 접속 오류.\n", "res.status_code #결과값이 200인거 확인" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "requests.structures.CaseInsensitiveDict" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "type(res.headers) #결과값이 복잡해서 딕셔너리(키:값)형태로 변환해보기" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "dict_keys(['Date', 'Content-Type', 'Server', 'X-Powered-By', 'X-Content-Type-Options', 'P3P', 'Content-language', 'Vary', 'Content-Encoding', 'Last-Modified', 'Backend-Timing', 'X-ATS-Timestamp', 'X-Varnish', 'Age', 'X-Cache', 'X-Cache-Status', 'Server-Timing', 'Strict-Transport-Security', 'Set-Cookie', 'X-Client-IP', 'Cache-Control', 'Accept-Ranges', 'Content-Length', 'Connection'])" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#헤더를 딕셔너리(키:값)로 변환시킴\n", "my_headers = dict(res.headers)\n", "my_headers.keys() #헤더의 키들을 호출하니 여러 키들이 나옴" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Sat, 18 Jan 2020 15:01:49 GMT\n", "text/html; charset=UTF-8\n", "en\n", "65540\n" ] } ], "source": [ "# 헤더의 몇몇 키 값들을 출력해 본다. \n", "print(my_headers['Date']) #미국이라 전날 날짜\n", "print(my_headers['Content-Type']) \n", "print(my_headers['Content-language'])\n", "print(my_headers['Content-Length'])" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "\n", "
\n", "\n", "Machine learning (ML) is the scientific study of algorithms and statistical models that computer systems use to perform a specific task without using explicit instructions, relying on patterns and inference instead. It is seen as a subset of artificial intelligence. Machine learning algorithms build a mathematical model based on sample data, known as \"training data\", in order to make predictions or decisions without being explicitly programmed to perform the task.[1][2]:2 Machine learning algorithms are used in a wide variety of applications, such as email filtering and computer vision, where it is difficult or infeasible to develop a conventional algorithm for effectively performing the task.\n", "
Machine learning is closely related to computational statistics, which focuses on making predictions using computers. The study of mathematical optimization delivers methods, theory and application domains to the field of machine learning. Data mining is a field of study within machine learning, and focuses on exploratory data analysis through unsupervised learning.[3][4] In its application across business problems, machine learning is also referred to as predictive analytics.\n", "
\n", "The name machine learning was coined in 1959 by Arthur Samuel.[5] 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 experience E with respect to some class of tasks T and performance measure P if its performance at tasks in T, as measured by P, improves with experience E.\"[6] This definition of the tasks in which machine learning is concerned offers a fundamentally operational definition rather than defining the field in cognitive terms. This follows Alan 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?\".[7] In Turing's proposal the various characteristics that could be possessed by a thinking machine and the various implications in constructing one are exposed.\n", "
\n", "\n", "
\n", "\n", "Machine learning tasks are classified into several broad categories. In supervised learning, the algorithm builds a mathematical model from a set of data that contains both the inputs and the desired outputs. For example, if the task were determining whether an image contained a certain object, the training data for a supervised learning algorithm would include images with and without that object (the input), and each image would have a label (the output) designating whether it contained the object. In special cases, the input may be only partially available, or restricted to special feedback.[clarification needed] Semi-supervised learning algorithms develop mathematical models from incomplete training data, where a portion of the sample input doesn't have labels.\n", "
Classification algorithms and regression algorithms are types of supervised learning. Classification algorithms are used when the outputs are restricted to a limited set of values. For a classification algorithm that filters emails, the input would be an incoming email, and the output would be the name of the folder in which to file the email. For an algorithm that identifies spam emails, the output would be the prediction of either \"spam\" or \"not spam\", represented by the Boolean values true and false. Regression algorithms are named for their continuous outputs, meaning they may have any value within a range. Examples of a continuous value are the temperature, length, or price of an object.\n", "
In unsupervised learning, the algorithm builds a mathematical model from a set of data that contains only inputs and no desired output labels. Unsupervised learning algorithms are used to find structure in the data, like grouping or clustering of data points. Unsupervised learning can discover patterns in the data, and can group the inputs into categories, as in feature learning. Dimensionality reduction is the process of reducing the number of \"features\", or inputs, in a set of data.\n", "
Active learning algorithms access the desired outputs (training labels) for a limited set of inputs based on a budget and optimize the choice of inputs for which it will acquire training labels. When used interactively, these can be presented to a human user for labeling. Reinforcement learning algorithms are given feedback in the form of positive or negative reinforcement in a dynamic environment and are used in autonomous vehicles or in learning to play a game against a human opponent.[2]:3 Other specialized algorithms in machine learning include topic modeling, where the computer program is given a set of natural language documents and finds other documents that cover similar topics. Machine learning algorithms can be used to find the unobservable probability density function in density estimation problems. Meta learning algorithms learn their own inductive bias based on previous experience. In developmental robotics, robot learning algorithms generate their own sequences of learning experiences, also known as a curriculum, to cumulatively acquire new skills through self-guided exploration and social interaction with humans. These robots use guidance mechanisms such as active learning, maturation, motor synergies, and imitation.[clarification needed]\n", "
\n", "Arthur Samuel, an American pioneer in the field of computer gaming and artificial intelligence, coined the term \"Machine Learning\" in 1959 while at IBM.[8] A representative book of the machine learning research during the 1960s was the Nilsson's book on Learning Machines, dealing mostly with machine learning for pattern classification.[9] The interest of machine learning related to pattern recognition continued during the 1970s, as described in the book of Duda and Hart in 1973. [10] In 1981 a report was given on using teaching strategies so that a neural network learns to recognize 40 characters (26 letters, 10 digits, and 4 special symbols) from a computer terminal. [11] \n", "As a scientific endeavor, machine learning grew out of the quest for artificial intelligence. Already in the early days of AI as an academic discipline, some researchers were interested in having machines learn from data. They attempted to approach the problem with various symbolic methods, as well as what were then termed \"neural networks\"; these were mostly perceptrons and other models that were later found to be reinventions of the generalized linear models of statistics.[12] Probabilistic reasoning was also employed, especially in automated medical diagnosis.[13]:488\n", "
However, an increasing emphasis on the logical, 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.[13]:488 By 1980, expert systems had come to dominate AI, and statistics was out of favor.[14] Work on symbolic/knowledge-based learning did continue within AI, leading to inductive logic programming, but the more statistical line of research was now outside the field of AI proper, in pattern recognition and information retrieval.[13]:708–710; 755 Neural networks research had been abandoned by AI and computer science around the same time. This line, too, was continued outside the AI/CS field, as \"connectionism\", by researchers from other disciplines including Hopfield, Rumelhart and Hinton. Their main success came in the mid-1980s with the reinvention of backpropagation.[13]:25\n", "
Machine learning, reorganized as a separate 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 the symbolic approaches it had inherited from AI, and toward methods and models borrowed from statistics and probability theory.[14] It also benefited from the increasing availability of digitized information, and the ability to distribute it via the Internet.\n", "
\n", "Machine learning and data mining often employ the same methods and overlap significantly, but while machine learning focuses on prediction, based on known properties learned from the training data, data mining focuses on the discovery of (previously) unknown properties in the data (this is the analysis step of knowledge 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 to reproduce known knowledge, while in knowledge discovery and data mining (KDD) the key task is the discovery of previously unknown 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.\n", "
\n", "Machine learning also has intimate ties to optimization: many learning problems are formulated as minimization of some loss 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 a label to instances, and models are trained to correctly predict the pre-assigned labels of a set of examples). The difference between the two fields arises from the goal of generalization: while optimization algorithms can minimize the loss on a training set, machine learning is concerned with minimizing the loss on unseen samples.[15]\n", "
\n", "Machine learning and statistics are closely related fields in terms of methods, but distinct in their principal goal: statistics draws population inferences from a sample, while machine learning finds generalizable predictive patterns.[16] According to Michael I. Jordan, the ideas of machine learning, from methodological principles to theoretical tools, have had a long pre-history in statistics.[17] He also suggested the term data science as a placeholder to call the overall field.[17]\n", "
Leo Breiman distinguished two statistical modeling paradigms: data model and algorithmic model,[18] wherein \"algorithmic model\" means more or less the machine learning algorithms like Random forest.\n", "
Some statisticians have adopted methods from machine learning, leading to a combined field that they call statistical learning.[19]\n", "
\n", "A core objective of a learner is to generalize from its experience.[2][20] 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.\n", "
The computational analysis of machine learning algorithms and their performance is a branch of theoretical computer science known as computational learning theory. Because training sets are finite and the future is uncertain, learning theory usually does not yield guarantees of the performance of algorithms. Instead, probabilistic bounds on the performance are quite common. The bias–variance decomposition is one way to quantify generalization error.\n", "
For the best performance in the context of generalization, 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 under fitted 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 to overfitting and generalization will be poorer.[21]\n", "
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 in polynomial time. There are two kinds of time 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.\n", "
\n", "The types of machine learning algorithms differ in their approach, the type of data they input and output, and the type of task or problem that they are intended to solve.\n", "
\n", "Supervised learning algorithms build a mathematical model of a set of data that contains both the inputs and the desired outputs.[22] The data is known as training data, and 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 an array or vector, sometimes called a feature vector, and the training data is represented by a matrix. Through iterative optimization of an objective function, supervised learning algorithms learn a function that can be used to predict the output associated with new inputs.[23] An optimal function will allow 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.[6]\n", "
Supervised learning algorithms include classification and regression.[24] Classification algorithms are used when the outputs are restricted to a limited set of values, and regression algorithms are used when the outputs may have any numerical value within a range. 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 in ranking, recommendation systems, visual identity tracking, face verification, and speaker verification.\n", "
In the case of semi-supervised learning algorithms, some of the training examples are missing training labels, but they can nevertheless be used to improve the quality of a model. In weakly supervised learning, the training labels are noisy, limited, or imprecise; however, these labels are often cheaper to obtain, resulting in larger effective training sets.[25]\n", "
\n", "Unsupervised learning algorithms take a set of data that contains only inputs, and find structure in the data, like grouping or clustering of data points. The algorithms, therefore, learn from test data that has not been labeled, classified or categorized. 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. A central application of unsupervised learning is in the field of density estimation in statistics,[26] though unsupervised learning encompasses other domains involving summarizing and explaining data features.\n", "
Cluster analysis is the assignment of a set of observations into subsets (called clusters) 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 some similarity metric and evaluated, for example, by internal compactness, or the similarity between members of the same cluster, and separation, the difference between clusters. Other methods are based on estimated density and graph connectivity.\n", "
Semi-supervised learning\n", "
\n", "Semi-supervised learning falls between unsupervised learning (without any labeled training data) and supervised learning (with completely labeled training data). Many machine-learning researchers have found that unlabeled data, when used in conjunction with a small amount of labeled data, can produce a considerable improvement in learning accuracy.\n", "
\n", "Reinforcement learning is an area of machine learning concerned with how software agents ought to take actions in an environment so as to maximize some notion of cumulative reward. Due to its generality, the field is studied in many other disciplines, such as game theory, control theory, operations research, information theory, simulation-based optimization, multi-agent systems, swarm intelligence, statistics and genetic algorithms. In machine learning, the environment is typically represented as a Markov Decision Process (MDP). Many reinforcement learning algorithms use dynamic programming techniques.[27] Reinforcement learning algorithms do not assume knowledge of an exact mathematical model of the MDP, and are used when exact models are infeasible. Reinforcement learning algorithms are used in autonomous vehicles or in learning to play a game against a human opponent.\n", "
\n", "Self-learning as machine learning paradigm was introduced in 1982 along with a neural network capable of self-learning named Crossbar Adaptive Array (CAA). [28] It is a learning with no external rewards and no external teacher advices. 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. [29]\n", "The self-learning algorithm updates a memory matrix W =||w(a,s)|| such that in each iteration executes the following machine learning routine: \n", "
\n", "In situation s perform action a;\n", " Receive consequence situation s’;\n", " Compute emotion of being in consequence situation v(s’);\n", " Update crossbar memory w’(a,s) = w(a,s) + v(s’).\n", "\n", "
It is a system with only one input, situation s, and only one output, action (or behavior) 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 behavioral environment where it behaves, and the other is genetic environment, wherefrom it initially and only once receives initial emotions about situations to be encountered in the behavioral environment. After receiving the genome (species) vector from the genetic environment, the CAA learns a goal seeking behavior, in an environment that contains both desirable and undesirable situations. [30]\n", "
\n", "Several learning algorithms aim at discovering better representations of the inputs provided during training.[31] Classic examples include principal components 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 manual feature engineering, and allows a machine to both learn the features and use them to perform a specific task.\n", "
Feature learning can be either supervised or unsupervised. In supervised feature learning, features are learned using labeled input data. Examples include artificial neural networks, multilayer perceptrons, and supervised dictionary learning. In unsupervised feature learning, features are learned with unlabeled input data. Examples include dictionary learning, independent component analysis, autoencoders, matrix factorization[32] and various forms of clustering.[33][34][35]\n", "
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 from tensor representations for multidimensional data, without reshaping them into higher-dimensional vectors.[36] 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 is one that learns a representation that disentangles the underlying factors of variation that explain the observed data.[37]\n", "
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 has not yielded to attempts to algorithmically define specific features. An alternative is to discover such features or representations through examination, without relying on explicit algorithms.\n", "
\n", "Sparse dictionary learning is a feature learning method where a training example is represented as a linear combination of basis functions, and is assumed to be a sparse matrix. The method is strongly NP-hard and difficult to solve approximately.[38] A popular heuristic method for sparse dictionary learning is the K-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 in image de-noising. The key idea is that a clean image patch can be sparsely represented by an image dictionary, but the noise cannot.[39]\n", "
\n", "In data mining, anomaly detection, also known as outlier detection, is the identification of rare items, events or observations which raise suspicions by differing significantly from the majority of the data.[40] Typically, the anomalous items represent an issue such as bank fraud, a structural defect, medical problems or errors in a text. Anomalies are referred to as outliers, novelties, noise, deviations and exceptions.[41]\n", "
In particular, in the context of abuse and network intrusion detection, the interesting objects are often not rare objects, but unexpected bursts in activity. This pattern does not adhere to the common statistical definition of an outlier as a rare object, and many outlier detection methods (in particular, unsupervised algorithms) will fail on such data, unless it has been aggregated appropriately. Instead, a cluster analysis algorithm may be able to detect the micro-clusters formed by these patterns.[42]\n", "
Three broad categories of anomaly detection techniques exist.[43] Unsupervised anomaly detection techniques detect anomalies in an unlabeled 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 least to the remainder of the data set. Supervised anomaly detection techniques require a data set that has been labeled as \"normal\" and \"abnormal\" and involves training a classifier (the key difference to many other statistical classification problems is the inherently unbalanced nature of outlier detection). Semi-supervised anomaly detection techniques construct a model representing normal behavior from a given normal training data set and then test the likelihood of a test instance to be generated by the model.\n", "
\n", "Association rule learning is a rule-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\".[44]\n", "
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 utilization 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.[45] Rule-based machine learning approaches include learning classifier systems, association rule learning, and artificial immune systems.\n", "
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 by point-of-sale (POS) systems in supermarkets.[46] 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 promotional pricing or product placements. In addition to market basket analysis, association rules are employed today in application areas including Web usage mining, intrusion detection, continuous production, and bioinformatics. In contrast with sequence mining, association rule learning typically does not consider the order of items either within a transaction or across transactions.\n", "
Learning classifier systems (LCS) are a family of rule-based machine learning algorithms that combine a discovery component, typically a genetic algorithm, with a learning component, performing either supervised learning, reinforcement learning, or unsupervised learning. They seek to identify a set of context-dependent rules that collectively store and apply knowledge in a piecewise manner in order to make predictions.[47]\n", "
Inductive logic programming (ILP) is an approach to rule-learning using logic 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 that entails all positive and no negative examples. Inductive programming is a related field that considers any kind of programming languages for representing hypotheses (and not only logic programming), such as functional programs.\n", "
Inductive logic programming is particularly useful in bioinformatics and natural language processing. Gordon Plotkin and Ehud Shapiro laid the initial theoretical foundation for inductive machine learning in a logical setting.[48][49][50] Shapiro built their first implementation (Model Inference System) in 1981: a Prolog program that inductively inferred logic programs from positive and negative examples.[51] The term inductive here refers to philosophical induction, suggesting a theory to explain observed facts, rather than mathematical induction, proving a property for all members of a well-ordered set.\n", "
\n", "Performing machine learning involves creating a model, which is trained on some training data and then can process additional data to make predictions. Various types of models have been used and researched for machine learning systems.\n", "
\n", "Artificial neural networks (ANNs), or connectionist systems, are computing systems vaguely inspired by the biological neural networks that constitute animal brains. Such systems \"learn\" to perform tasks by considering examples, generally without being programmed with any task-specific rules.\n", "
An ANN is a model based on a collection of connected units or nodes called \"artificial neurons\", which loosely model the neurons in a biological brain. Each connection, like the synapses 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 a real 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 a weight 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.\n", "
The original goal of the ANN approach was to solve problems in the same way that a human brain would. However, over time, attention moved to performing specific tasks, leading to deviations from biology. Artificial neural networks have been used on a variety of tasks, including computer vision, speech recognition, machine translation, social network filtering, playing board and video games and medical diagnosis.\n", "
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.[52]\n", "
\n", "Decision tree learning uses a decision tree as a predictive 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 modeling 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 represent conjunctions of features that lead to those class labels. Decision trees where the target variable can take continuous values (typically real numbers) are called regression trees. In decision analysis, a decision tree can be used to visually and explicitly represent decisions and decision making. In data mining, a decision tree describes data, but the resulting classification tree can be an input for decision making.\n", "
\n", "Support vector machines (SVMs), also known as support vector networks, are a set of related supervised 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 or the other.[53] An SVM training algorithm is a non-probabilistic, binary, linear classifier, although methods such as Platt 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 the kernel trick, implicitly mapping their inputs into high-dimensional feature spaces.\n", "
\n", "\n", "Regression analysis encompasses a large variety of statistical methods to estimate the relationship between input variables and their associated features. Its most common form is linear regression, where a single line is drawn to best fit the given data according to a mathematical criterion such as ordinary least squares. The latter is oftentimes extended by regularization (mathematics) methods to mitigate overfitting and high bias, as can be seen in ridge regression. When dealing with non-linear problems, go-to models include polynomial regression (e.g. used for trendline fitting in Microsoft Excel [54]), Logistic regression (often used in statistical classification) or even kernel regression, which introduces non-linearity by taking advantage of the kernel trick to implicitly map input variables to higher dimensional space. \n", "
\n", "A Bayesian network, belief network or directed acyclic graphical model is a probabilistic graphical model that represents a set of random variables and their conditional independence with a directed 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 perform inference and learning. Bayesian networks that model sequences of variables, like speech signals or protein sequences, are called dynamic Bayesian networks. Generalizations of Bayesian networks that can represent and solve decision problems under uncertainty are called influence diagrams.\n", "
\n", "A genetic algorithm (GA) is a search algorithm and heuristic technique that mimics the process of natural selection, using methods such as mutation and crossover to generate new genotypes in the hope of finding good solutions to a given problem. In machine learning, genetic algorithms were used in the 1980s and 1990s.[55][56] Conversely, machine learning techniques have been used to improve the performance of genetic and evolutionary algorithms.[57]\n", "
\n", "Usually, machine learning models require a lot of data in order for them to perform well. Usually, when training a machine learning model, one needs to collect a large, representative sample of data from a training set. Data from the training set can be as varied as a corpus of text, a collection of images, and data collected from individual users of a service. Overfitting is something to watch out for when training a machine learning model.\n", "
\n", "Federated learning is a new approach to training machine learning models that decentralizes the training process, allowing for users' privacy to be maintained by not needing to send their data to a centralized server. This also increases efficiency by decentralizing 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 to Google.[58]\n", "
\n", "There are many applications for machine learning, including:\n", "
\n", "In 2006, the media-services provider Netflix held the first \"Netflix Prize\" competition to find a program to better predict user preferences and improve the accuracy on its existing Cinematch movie recommendation algorithm by at least 10%. A joint team made up of researchers from AT&T Labs-Research in collaboration with the teams Big Chaos and Pragmatic Theory built an ensemble model to win the Grand Prize in 2009 for $1 million.[60] Shortly after the prize was awarded, Netflix realized that viewers' ratings were not the best indicators of their viewing patterns (\"everything is a recommendation\") and they changed their recommendation engine accordingly.[61] In 2010 The Wall Street Journal wrote about the firm Rebellion Research and their use of machine learning to predict the financial crisis.[62] In 2012, co-founder of Sun 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.[63] 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 unrecognized influences among artists.[64] In 2019 Springer Nature published the first research book created using machine learning.[65]\n", "
\n", "Although machine learning has been transformative in some fields, machine-learning programs often fail to deliver expected results.[66][67][68] 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.[69]\n", "
In 2018, a self-driving car from Uber failed to detect a pedestrian, who was killed after a collision.[70] Attempts to use machine learning in healthcare with the IBM Watson system failed to deliver even after years of time and billions of investment.[71][72]\n", "
\n", "Machine learning approaches in particular can suffer from different data biases. A machine learning system trained on current customers only may not be able to predict the needs of new customer groups that are not represented in the training data. When trained on man-made data, machine learning is likely to pick up the same constitutional and unconscious biases already present in society.[73] Language models learned from data have been shown to contain human-like biases.[74][75] Machine learning systems used for criminal risk assessment have been found to be biased against black people.[76][77] In 2015, Google photos would often tag black people as gorillas,[78] and in 2018 this still was not well resolved, but Google reportedly was still using the workaround to remove all gorillas from the training data, and thus was not able to recognize real gorillas at all.[79] Similar issues with recognizing non-white people have been found in many other systems.[80] In 2016, Microsoft tested a chatbot that learned from Twitter, and it quickly picked up racist and sexist language.[81] Because of such challenges, the effective use of machine learning may take longer to be adopted in other domains.[82] Concern for fairness in machine learning, that is, reducing bias in machine learning and propelling its use for human good is increasingly expressed by artificial intelligence scientists, including Fei-Fei Li, who reminds engineers that \"There’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.”[83]\n", "
\n", "Classification machine learning models can be validated by accuracy estimation techniques like the Holdout method, which splits the data in 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 respectively 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.[84]\n", "
In addition to overall accuracy, investigators frequently report sensitivity and specificity meaning True Positive Rate (TPR) and True Negative Rate (TNR) respectively. Similarly, investigators sometimes report the False Positive Rate (FPR) as well as the False Negative Rate (FNR). However, these rates are ratios that fail to reveal their numerators and denominators. The Total Operating Characteristic (TOC) is an effective method to express a model's diagnostic ability. TOC shows the numerators and denominators of the previously mentioned rates, thus TOC provides more information than the commonly used Receiver Operating Characteristic (ROC) and ROC's associated Area Under the Curve (AUC).[85]\n", "
\n", "Machine learning poses a host of ethical questions. Systems which are trained on datasets collected with biases may exhibit these biases upon use (algorithmic bias), thus digitizing cultural prejudices.[86] For example, 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 against similarity to previous successful applicants.[87][88] Responsible collection of data and documentation of algorithmic rules used by a system thus is a critical part of machine learning.\n", "
Because human languages contain biases, machines trained on language corpora will necessarily also learn these biases.[89][90]\n", "
Other forms of ethical challenges, not related to personal biases, are more seen in health care. 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 perpetual ethical dilemma of improving health care, but also increase 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 in. There is huge potential for machine learning in health care to provide professionals a great tool to diagnose, medicate, and even plan recovery paths for patients, but this will not happen until the personal biases mentioned previously, and these \"greed\" biases are addressed.[91]\n", "
\n", "Software suites containing a variety of machine learning algorithms include the following:\n", "
\n", "\n", " | Wikimedia Commons has media related to Machine learning. |
Machine learning and data mining |
---|
\\n Problems | \\n
\\n | \\n
\\n \\n\\n | \\n
\\n | \\n
\\n | \\n
\\n | \\n
\\n \\n
| \\n
\\n | \\n
\\n | \\n
\\n Machine-learning venues \\n
| \\n
\\n | \\n
\\n Related articles | \\n
Machine learning (ML) is the scientific study of algorithms and statistical models that computer systems use to perform a specific task without using explicit instructions, relying on patterns and inference instead. It is seen as a subset of artificial intelligence. Machine learning algorithms build a mathematical model based on sample data, known as \"training data\", in order to make predictions or decisions without being explicitly programmed to perform the task.[1][2]:2 Machine learning algorithms are used in a wide variety of applications, such as email filtering and computer vision, where it is difficult or infeasible to develop a conventional algorithm for effectively performing the task.\\n
Machine learning is closely related to computational statistics, which focuses on making predictions using computers. The study of mathematical optimization delivers methods, theory and application domains to the field of machine learning. Data mining is a field of study within machine learning, and focuses on exploratory data analysis through unsupervised learning.[3][4] In its application across business problems, machine learning is also referred to as predictive analytics.\\n
\\nThe name machine learning was coined in 1959 by Arthur Samuel.[5] 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 experience E with respect to some class of tasks T and performance measure P if its performance at tasks in T, as measured by P, improves with experience E.\"[6] This definition of the tasks in which machine learning is concerned offers a fundamentally operational definition rather than defining the field in cognitive terms. This follows Alan 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?\".[7] In Turing\\'s proposal the various characteristics that could be possessed by a thinking machine and the various implications in constructing one are exposed.\\n
\\n\\n
\\n\\nMachine learning tasks are classified into several broad categories. In supervised learning, the algorithm builds a mathematical model from a set of data that contains both the inputs and the desired outputs. For example, if the task were determining whether an image contained a certain object, the training data for a supervised learning algorithm would include images with and without that object (the input), and each image would have a label (the output) designating whether it contained the object. In special cases, the input may be only partially available, or restricted to special feedback.[clarification needed] Semi-supervised learning algorithms develop mathematical models from incomplete training data, where a portion of the sample input doesn\\'t have labels.\\n
Classification algorithms and regression algorithms are types of supervised learning. Classification algorithms are used when the outputs are restricted to a limited set of values. For a classification algorithm that filters emails, the input would be an incoming email, and the output would be the name of the folder in which to file the email. For an algorithm that identifies spam emails, the output would be the prediction of either \"spam\" or \"not spam\", represented by the Boolean values true and false. Regression algorithms are named for their continuous outputs, meaning they may have any value within a range. Examples of a continuous value are the temperature, length, or price of an object.\\n
In unsupervised learning, the algorithm builds a mathematical model from a set of data that contains only inputs and no desired output labels. Unsupervised learning algorithms are used to find structure in the data, like grouping or clustering of data points. Unsupervised learning can discover patterns in the data, and can group the inputs into categories, as in feature learning. Dimensionality reduction is the process of reducing the number of \"features\", or inputs, in a set of data.\\n
Active learning algorithms access the desired outputs (training labels) for a limited set of inputs based on a budget and optimize the choice of inputs for which it will acquire training labels. When used interactively, these can be presented to a human user for labeling. Reinforcement learning algorithms are given feedback in the form of positive or negative reinforcement in a dynamic environment and are used in autonomous vehicles or in learning to play a game against a human opponent.[2]:3 Other specialized algorithms in machine learning include topic modeling, where the computer program is given a set of natural language documents and finds other documents that cover similar topics. Machine learning algorithms can be used to find the unobservable probability density function in density estimation problems. Meta learning algorithms learn their own inductive bias based on previous experience. In developmental robotics, robot learning algorithms generate their own sequences of learning experiences, also known as a curriculum, to cumulatively acquire new skills through self-guided exploration and social interaction with humans. These robots use guidance mechanisms such as active learning, maturation, motor synergies, and imitation.[clarification needed]\\n
\\nArthur Samuel, an American pioneer in the field of computer gaming and artificial intelligence, coined the term \"Machine Learning\" in 1959 while at IBM.[8] A representative book of the machine learning research during the 1960s was the Nilsson\\'s book on Learning Machines, dealing mostly with machine learning for pattern classification.[9] The interest of machine learning related to pattern recognition continued during the 1970s, as described in the book of Duda and Hart in 1973. [10] In 1981 a report was given on using teaching strategies so that a neural network learns to recognize 40 characters (26 letters, 10 digits, and 4 special symbols) from a computer terminal. [11] \\nAs a scientific endeavor, machine learning grew out of the quest for artificial intelligence. Already in the early days of AI as an academic discipline, some researchers were interested in having machines learn from data. They attempted to approach the problem with various symbolic methods, as well as what were then termed \"neural networks\"; these were mostly perceptrons and other models that were later found to be reinventions of the generalized linear models of statistics.[12] Probabilistic reasoning was also employed, especially in automated medical diagnosis.[13]:488\\n
However, an increasing emphasis on the logical, 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.[13]:488 By 1980, expert systems had come to dominate AI, and statistics was out of favor.[14] Work on symbolic/knowledge-based learning did continue within AI, leading to inductive logic programming, but the more statistical line of research was now outside the field of AI proper, in pattern recognition and information retrieval.[13]:708\\xe2\\x80\\x93710; 755 Neural networks research had been abandoned by AI and computer science around the same time. This line, too, was continued outside the AI/CS field, as \"connectionism\", by researchers from other disciplines including Hopfield, Rumelhart and Hinton. Their main success came in the mid-1980s with the reinvention of backpropagation.[13]:25\\n
Machine learning, reorganized as a separate 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 the symbolic approaches it had inherited from AI, and toward methods and models borrowed from statistics and probability theory.[14] It also benefited from the increasing availability of digitized information, and the ability to distribute it via the Internet.\\n
\\nMachine learning and data mining often employ the same methods and overlap significantly, but while machine learning focuses on prediction, based on known properties learned from the training data, data mining focuses on the discovery of (previously) unknown properties in the data (this is the analysis step of knowledge 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 to reproduce known knowledge, while in knowledge discovery and data mining (KDD) the key task is the discovery of previously unknown 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.\\n
\\nMachine learning also has intimate ties to optimization: many learning problems are formulated as minimization of some loss 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 a label to instances, and models are trained to correctly predict the pre-assigned labels of a set of examples). The difference between the two fields arises from the goal of generalization: while optimization algorithms can minimize the loss on a training set, machine learning is concerned with minimizing the loss on unseen samples.[15]\\n
\\nMachine learning and statistics are closely related fields in terms of methods, but distinct in their principal goal: statistics draws population inferences from a sample, while machine learning finds generalizable predictive patterns.[16] According to Michael I. Jordan, the ideas of machine learning, from methodological principles to theoretical tools, have had a long pre-history in statistics.[17] He also suggested the term data science as a placeholder to call the overall field.[17]\\n
Leo Breiman distinguished two statistical modeling paradigms: data model and algorithmic model,[18] wherein \"algorithmic model\" means more or less the machine learning algorithms like Random forest.\\n
Some statisticians have adopted methods from machine learning, leading to a combined field that they call statistical learning.[19]\\n
\\nA core objective of a learner is to generalize from its experience.[2][20] 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.\\n
The computational analysis of machine learning algorithms and their performance is a branch of theoretical computer science known as computational learning theory. Because training sets are finite and the future is uncertain, learning theory usually does not yield guarantees of the performance of algorithms. Instead, probabilistic bounds on the performance are quite common. The bias\\xe2\\x80\\x93variance decomposition is one way to quantify generalization error.\\n
For the best performance in the context of generalization, 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 under fitted 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 to overfitting and generalization will be poorer.[21]\\n
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 in polynomial time. There are two kinds of time 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.\\n
\\nThe types of machine learning algorithms differ in their approach, the type of data they input and output, and the type of task or problem that they are intended to solve.\\n
\\nSupervised learning algorithms build a mathematical model of a set of data that contains both the inputs and the desired outputs.[22] The data is known as training data, and 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 an array or vector, sometimes called a feature vector, and the training data is represented by a matrix. Through iterative optimization of an objective function, supervised learning algorithms learn a function that can be used to predict the output associated with new inputs.[23] An optimal function will allow 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.[6]\\n
Supervised learning algorithms include classification and regression.[24] Classification algorithms are used when the outputs are restricted to a limited set of values, and regression algorithms are used when the outputs may have any numerical value within a range. 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 in ranking, recommendation systems, visual identity tracking, face verification, and speaker verification.\\n
In the case of semi-supervised learning algorithms, some of the training examples are missing training labels, but they can nevertheless be used to improve the quality of a model. In weakly supervised learning, the training labels are noisy, limited, or imprecise; however, these labels are often cheaper to obtain, resulting in larger effective training sets.[25]\\n
\\nUnsupervised learning algorithms take a set of data that contains only inputs, and find structure in the data, like grouping or clustering of data points. The algorithms, therefore, learn from test data that has not been labeled, classified or categorized. 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. A central application of unsupervised learning is in the field of density estimation in statistics,[26] though unsupervised learning encompasses other domains involving summarizing and explaining data features.\\n
Cluster analysis is the assignment of a set of observations into subsets (called clusters) 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 some similarity metric and evaluated, for example, by internal compactness, or the similarity between members of the same cluster, and separation, the difference between clusters. Other methods are based on estimated density and graph connectivity.\\n
Semi-supervised learning\\n
\\nSemi-supervised learning falls between unsupervised learning (without any labeled training data) and supervised learning (with completely labeled training data). Many machine-learning researchers have found that unlabeled data, when used in conjunction with a small amount of labeled data, can produce a considerable improvement in learning accuracy.\\n
\\nReinforcement learning is an area of machine learning concerned with how software agents ought to take actions in an environment so as to maximize some notion of cumulative reward. Due to its generality, the field is studied in many other disciplines, such as game theory, control theory, operations research, information theory, simulation-based optimization, multi-agent systems, swarm intelligence, statistics and genetic algorithms. In machine learning, the environment is typically represented as a Markov Decision Process (MDP). Many reinforcement learning algorithms use dynamic programming techniques.[27] Reinforcement learning algorithms do not assume knowledge of an exact mathematical model of the MDP, and are used when exact models are infeasible. Reinforcement learning algorithms are used in autonomous vehicles or in learning to play a game against a human opponent.\\n
\\nSelf-learning as machine learning paradigm was introduced in 1982 along with a neural network capable of self-learning named Crossbar Adaptive Array (CAA). [28] It is a learning with no external rewards and no external teacher advices. 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. [29]\\nThe self-learning algorithm updates a memory matrix W =||w(a,s)|| such that in each iteration executes the following machine learning routine: \\n
\\nIn situation s perform action a;\\n Receive consequence situation s\\xe2\\x80\\x99;\\n Compute emotion of being in consequence situation v(s\\xe2\\x80\\x99);\\n Update crossbar memory w\\xe2\\x80\\x99(a,s) = w(a,s) + v(s\\xe2\\x80\\x99).\\n\\n
It is a system with only one input, situation s, and only one output, action (or behavior) 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 behavioral environment where it behaves, and the other is genetic environment, wherefrom it initially and only once receives initial emotions about situations to be encountered in the behavioral environment. After receiving the genome (species) vector from the genetic environment, the CAA learns a goal seeking behavior, in an environment that contains both desirable and undesirable situations. [30]\\n
\\nSeveral learning algorithms aim at discovering better representations of the inputs provided during training.[31] Classic examples include principal components 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 manual feature engineering, and allows a machine to both learn the features and use them to perform a specific task.\\n
Feature learning can be either supervised or unsupervised. In supervised feature learning, features are learned using labeled input data. Examples include artificial neural networks, multilayer perceptrons, and supervised dictionary learning. In unsupervised feature learning, features are learned with unlabeled input data. Examples include dictionary learning, independent component analysis, autoencoders, matrix factorization[32] and various forms of clustering.[33][34][35]\\n
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 from tensor representations for multidimensional data, without reshaping them into higher-dimensional vectors.[36] 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 is one that learns a representation that disentangles the underlying factors of variation that explain the observed data.[37]\\n
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 has not yielded to attempts to algorithmically define specific features. An alternative is to discover such features or representations through examination, without relying on explicit algorithms.\\n
\\nSparse dictionary learning is a feature learning method where a training example is represented as a linear combination of basis functions, and is assumed to be a sparse matrix. The method is strongly NP-hard and difficult to solve approximately.[38] A popular heuristic method for sparse dictionary learning is the K-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 in image de-noising. The key idea is that a clean image patch can be sparsely represented by an image dictionary, but the noise cannot.[39]\\n
\\nIn data mining, anomaly detection, also known as outlier detection, is the identification of rare items, events or observations which raise suspicions by differing significantly from the majority of the data.[40] Typically, the anomalous items represent an issue such as bank fraud, a structural defect, medical problems or errors in a text. Anomalies are referred to as outliers, novelties, noise, deviations and exceptions.[41]\\n
In particular, in the context of abuse and network intrusion detection, the interesting objects are often not rare objects, but unexpected bursts in activity. This pattern does not adhere to the common statistical definition of an outlier as a rare object, and many outlier detection methods (in particular, unsupervised algorithms) will fail on such data, unless it has been aggregated appropriately. Instead, a cluster analysis algorithm may be able to detect the micro-clusters formed by these patterns.[42]\\n
Three broad categories of anomaly detection techniques exist.[43] Unsupervised anomaly detection techniques detect anomalies in an unlabeled 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 least to the remainder of the data set. Supervised anomaly detection techniques require a data set that has been labeled as \"normal\" and \"abnormal\" and involves training a classifier (the key difference to many other statistical classification problems is the inherently unbalanced nature of outlier detection). Semi-supervised anomaly detection techniques construct a model representing normal behavior from a given normal training data set and then test the likelihood of a test instance to be generated by the model.\\n
\\nAssociation rule learning is a rule-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\".[44]\\n
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 utilization 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.[45] Rule-based machine learning approaches include learning classifier systems, association rule learning, and artificial immune systems.\\n
Based on the concept of strong rules, Rakesh Agrawal, Tomasz Imieli\\xc5\\x84ski and Arun Swami introduced association rules for discovering regularities between products in large-scale transaction data recorded by point-of-sale (POS) systems in supermarkets.[46] 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 promotional pricing or product placements. In addition to market basket analysis, association rules are employed today in application areas including Web usage mining, intrusion detection, continuous production, and bioinformatics. In contrast with sequence mining, association rule learning typically does not consider the order of items either within a transaction or across transactions.\\n
Learning classifier systems (LCS) are a family of rule-based machine learning algorithms that combine a discovery component, typically a genetic algorithm, with a learning component, performing either supervised learning, reinforcement learning, or unsupervised learning. They seek to identify a set of context-dependent rules that collectively store and apply knowledge in a piecewise manner in order to make predictions.[47]\\n
Inductive logic programming (ILP) is an approach to rule-learning using logic 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 that entails all positive and no negative examples. Inductive programming is a related field that considers any kind of programming languages for representing hypotheses (and not only logic programming), such as functional programs.\\n
Inductive logic programming is particularly useful in bioinformatics and natural language processing. Gordon Plotkin and Ehud Shapiro laid the initial theoretical foundation for inductive machine learning in a logical setting.[48][49][50] Shapiro built their first implementation (Model Inference System) in 1981: a Prolog program that inductively inferred logic programs from positive and negative examples.[51] The term inductive here refers to philosophical induction, suggesting a theory to explain observed facts, rather than mathematical induction, proving a property for all members of a well-ordered set.\\n
\\nPerforming machine learning involves creating a model, which is trained on some training data and then can process additional data to make predictions. Various types of models have been used and researched for machine learning systems.\\n
\\nArtificial neural networks (ANNs), or connectionist systems, are computing systems vaguely inspired by the biological neural networks that constitute animal brains. Such systems \"learn\" to perform tasks by considering examples, generally without being programmed with any task-specific rules.\\n
An ANN is a model based on a collection of connected units or nodes called \"artificial neurons\", which loosely model the neurons in a biological brain. Each connection, like the synapses 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 a real 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 a weight 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.\\n
The original goal of the ANN approach was to solve problems in the same way that a human brain would. However, over time, attention moved to performing specific tasks, leading to deviations from biology. Artificial neural networks have been used on a variety of tasks, including computer vision, speech recognition, machine translation, social network filtering, playing board and video games and medical diagnosis.\\n
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.[52]\\n
\\nDecision tree learning uses a decision tree as a predictive 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 modeling 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 represent conjunctions of features that lead to those class labels. Decision trees where the target variable can take continuous values (typically real numbers) are called regression trees. In decision analysis, a decision tree can be used to visually and explicitly represent decisions and decision making. In data mining, a decision tree describes data, but the resulting classification tree can be an input for decision making.\\n
\\nSupport vector machines (SVMs), also known as support vector networks, are a set of related supervised 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 or the other.[53] An SVM training algorithm is a non-probabilistic, binary, linear classifier, although methods such as Platt 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 the kernel trick, implicitly mapping their inputs into high-dimensional feature spaces.\\n
\\n\\nRegression analysis encompasses a large variety of statistical methods to estimate the relationship between input variables and their associated features. Its most common form is linear regression, where a single line is drawn to best fit the given data according to a mathematical criterion such as ordinary least squares. The latter is oftentimes extended by regularization (mathematics) methods to mitigate overfitting and high bias, as can be seen in ridge regression. When dealing with non-linear problems, go-to models include polynomial regression (e.g. used for trendline fitting in Microsoft Excel [54]), Logistic regression (often used in statistical classification) or even kernel regression, which introduces non-linearity by taking advantage of the kernel trick to implicitly map input variables to higher dimensional space. \\n
\\nA Bayesian network, belief network or directed acyclic graphical model is a probabilistic graphical model that represents a set of random variables and their conditional independence with a directed 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 perform inference and learning. Bayesian networks that model sequences of variables, like speech signals or protein sequences, are called dynamic Bayesian networks. Generalizations of Bayesian networks that can represent and solve decision problems under uncertainty are called influence diagrams.\\n
\\nA genetic algorithm (GA) is a search algorithm and heuristic technique that mimics the process of natural selection, using methods such as mutation and crossover to generate new genotypes in the hope of finding good solutions to a given problem. In machine learning, genetic algorithms were used in the 1980s and 1990s.[55][56] Conversely, machine learning techniques have been used to improve the performance of genetic and evolutionary algorithms.[57]\\n
\\nUsually, machine learning models require a lot of data in order for them to perform well. Usually, when training a machine learning model, one needs to collect a large, representative sample of data from a training set. Data from the training set can be as varied as a corpus of text, a collection of images, and data collected from individual users of a service. Overfitting is something to watch out for when training a machine learning model.\\n
\\nFederated learning is a new approach to training machine learning models that decentralizes the training process, allowing for users\\' privacy to be maintained by not needing to send their data to a centralized server. This also increases efficiency by decentralizing 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 to Google.[58]\\n
\\nThere are many applications for machine learning, including:\\n
\\nIn 2006, the media-services provider Netflix held the first \"Netflix Prize\" competition to find a program to better predict user preferences and improve the accuracy on its existing Cinematch movie recommendation algorithm by at least 10%. A joint team made up of researchers from AT&T Labs-Research in collaboration with the teams Big Chaos and Pragmatic Theory built an ensemble model to win the Grand Prize in 2009 for $1 million.[60] Shortly after the prize was awarded, Netflix realized that viewers\\' ratings were not the best indicators of their viewing patterns (\"everything is a recommendation\") and they changed their recommendation engine accordingly.[61] In 2010 The Wall Street Journal wrote about the firm Rebellion Research and their use of machine learning to predict the financial crisis.[62] In 2012, co-founder of Sun 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.[63] 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 unrecognized influences among artists.[64] In 2019 Springer Nature published the first research book created using machine learning.[65]\\n
\\nAlthough machine learning has been transformative in some fields, machine-learning programs often fail to deliver expected results.[66][67][68] 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.[69]\\n
In 2018, a self-driving car from Uber failed to detect a pedestrian, who was killed after a collision.[70] Attempts to use machine learning in healthcare with the IBM Watson system failed to deliver even after years of time and billions of investment.[71][72]\\n
\\nMachine learning approaches in particular can suffer from different data biases. A machine learning system trained on current customers only may not be able to predict the needs of new customer groups that are not represented in the training data. When trained on man-made data, machine learning is likely to pick up the same constitutional and unconscious biases already present in society.[73] Language models learned from data have been shown to contain human-like biases.[74][75] Machine learning systems used for criminal risk assessment have been found to be biased against black people.[76][77] In 2015, Google photos would often tag black people as gorillas,[78] and in 2018 this still was not well resolved, but Google reportedly was still using the workaround to remove all gorillas from the training data, and thus was not able to recognize real gorillas at all.[79] Similar issues with recognizing non-white people have been found in many other systems.[80] In 2016, Microsoft tested a chatbot that learned from Twitter, and it quickly picked up racist and sexist language.[81] Because of such challenges, the effective use of machine learning may take longer to be adopted in other domains.[82] Concern for fairness in machine learning, that is, reducing bias in machine learning and propelling its use for human good is increasingly expressed by artificial intelligence scientists, including Fei-Fei Li, who reminds engineers that \"There\\xe2\\x80\\x99s nothing artificial about AI...It\\xe2\\x80\\x99s inspired by people, it\\xe2\\x80\\x99s created by people, and\\xe2\\x80\\x94most importantly\\xe2\\x80\\x94it impacts people. It is a powerful tool we are only just beginning to understand, and that is a profound responsibility.\\xe2\\x80\\x9d[83]\\n
\\nClassification machine learning models can be validated by accuracy estimation techniques like the Holdout method, which splits the data in 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 respectively 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.[84]\\n
In addition to overall accuracy, investigators frequently report sensitivity and specificity meaning True Positive Rate (TPR) and True Negative Rate (TNR) respectively. Similarly, investigators sometimes report the False Positive Rate (FPR) as well as the False Negative Rate (FNR). However, these rates are ratios that fail to reveal their numerators and denominators. The Total Operating Characteristic (TOC) is an effective method to express a model\\'s diagnostic ability. TOC shows the numerators and denominators of the previously mentioned rates, thus TOC provides more information than the commonly used Receiver Operating Characteristic (ROC) and ROC\\'s associated Area Under the Curve (AUC).[85]\\n
\\nMachine learning poses a host of ethical questions. Systems which are trained on datasets collected with biases may exhibit these biases upon use (algorithmic bias), thus digitizing cultural prejudices.[86] For example, 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 against similarity to previous successful applicants.[87][88] Responsible collection of data and documentation of algorithmic rules used by a system thus is a critical part of machine learning.\\n
Because human languages contain biases, machines trained on language corpora will necessarily also learn these biases.[89][90]\\n
Other forms of ethical challenges, not related to personal biases, are more seen in health care. 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 perpetual ethical dilemma of improving health care, but also increase 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 in. There is huge potential for machine learning in health care to provide professionals a great tool to diagnose, medicate, and even plan recovery paths for patients, but this will not happen until the personal biases mentioned previously, and these \"greed\" biases are addressed.[91]\\n
\\nSoftware suites containing a variety of machine learning algorithms include the following:\\n
\\n\\n | Wikimedia Commons has media related to Machine learning. |
\n",
" \n",
" Machine learning\n",
" \n",
" and\n",
" \n", " \n", " data mining\n", " \n", " | \n",
"
---|
\n", " \n", " \n", " \n", " | \n", "
\n",
" \n",
" \n",
" \n",
" Problems\n",
" \n",
" \n",
" \n",
" \n",
" \n",
"
| \n",
"
\n",
" \n",
" \n",
" \n",
" \n",
" \n",
" \n",
" Supervised learning\n",
" \n",
" \n",
" \n", " \n", " \n", " \n", " (\n", " \n", " \n", " classification\n", " \n", " \n", " •\n", " \n", " \n", " regression\n", " \n", " \n", " )\n", " \n", " \n", " \n",
" \n",
" \n",
" \n",
"
| \n",
"
\n",
" \n",
" \n",
" \n",
" \n",
" Clustering\n",
" \n",
" \n",
" \n",
" \n",
" \n",
" \n",
"
| \n",
"
\n",
" \n",
" \n",
" \n",
" \n",
" Dimensionality reduction\n",
" \n",
" \n",
" \n",
" \n",
" \n",
" \n",
"
| \n",
"
\n",
" \n",
" \n",
" \n",
" \n",
" Structured prediction\n",
" \n",
" \n",
" \n",
" \n",
" \n",
" \n",
"
| \n",
"
\n",
" \n",
" \n",
" \n",
" \n",
" Anomaly detection\n",
" \n",
" \n",
" \n",
" \n",
" \n",
" \n",
"
| \n",
"
\n",
" \n",
" \n",
" \n",
" \n",
" Artificial neural network\n",
" \n",
" \n",
" \n",
" \n",
" \n",
" \n",
"
| \n",
"
\n",
" \n",
" \n",
" \n",
" \n",
" Reinforcement learning\n",
" \n",
" \n",
" \n",
" \n",
" \n",
" \n",
"
| \n",
"
\n",
" \n",
" \n",
" \n",
" Theory\n",
" \n",
" \n",
" \n",
" \n",
" \n",
"
| \n",
"
\n",
" \n",
" \n",
" \n",
" Machine-learning venues\n",
" \n",
" \n",
" \n",
" \n",
" \n",
"
| \n",
"
\n",
" \n",
" \n",
" \n",
" \n",
" Glossary of artificial intelligence\n",
" \n",
" \n",
" \n",
" \n",
" \n",
" \n",
"
| \n",
"
\n",
" \n",
" \n",
" \n",
" Related articles\n",
" \n",
" \n",
" \n",
" \n",
" \n",
"
| \n",
"
\n",
" \n",
" \n",
"
| \n",
"
\n", " \n", " Machine learning\n", " \n", " (\n", " \n", " ML\n", " \n", " ) is the\n", " \n", " scientific study\n", " \n", " of\n", " \n", " algorithms\n", " \n", " and\n", " \n", " statistical models\n", " \n", " that\n", " \n", " computer systems\n", " \n", " use to perform a specific task without using explicit instructions, relying on patterns and\n", " \n", " inference\n", " \n", " instead. It is seen as a subset of\n", " \n", " artificial intelligence\n", " \n", " . Machine learning algorithms build a\n", " \n", " mathematical model\n", " \n", " based on sample data, known as \"\n", " \n", " training data\n", " \n", " \", in order to make predictions or decisions without being explicitly programmed to perform the task.\n", " \n", " \n", " [1]\n", " \n", " \n", " \n", " \n", " [2]\n", " \n", " \n", " \n", " :\n", " \n", " 2\n", " \n", " \n", " Machine learning algorithms are used in a wide variety of applications, such as\n", " \n", " email filtering\n", " \n", " and\n", " \n", " computer vision\n", " \n", " , where it is difficult or infeasible to develop a conventional algorithm for effectively performing the task.\n", "
\n", "\n", " Machine learning is closely related to\n", " \n", " computational statistics\n", " \n", " , which focuses on making predictions using computers. The study of\n", " \n", " mathematical optimization\n", " \n", " delivers methods, theory and application domains to the field of machine learning.\n", " \n", " Data mining\n", " \n", " is a field of study within machine learning, and focuses on\n", " \n", " exploratory data analysis\n", " \n", " through\n", " \n", " unsupervised learning\n", " \n", " .\n", " \n", " \n", " [3]\n", " \n", " \n", " \n", " \n", " [4]\n", " \n", " \n", " In its application across business problems, machine learning is also referred to as\n", " \n", " predictive analytics\n", " \n", " .\n", "
\n", "\n", " The name\n", " \n", " machine learning\n", " \n", " was coined in 1959 by\n", " \n", " Arthur Samuel\n", " \n", " .\n", " \n", " \n", " [5]\n", " \n", " \n", " \n", " Tom M. Mitchell\n", " \n", " provided a widely quoted, more formal definition of the algorithms studied in the machine learning field: \"A computer program is said to learn from experience\n", " \n", " E\n", " \n", " with respect to some class of tasks\n", " \n", " T\n", " \n", " and performance measure\n", " \n", " P\n", " \n", " if its performance at tasks in\n", " \n", " T\n", " \n", " , as measured by\n", " \n", " P\n", " \n", " , improves with experience\n", " \n", " E\n", " \n", " .\"\n", " \n", " \n", " [6]\n", " \n", " \n", " This definition of the tasks in which machine learning is concerned offers a fundamentally\n", " \n", " operational definition\n", " \n", " rather than defining the field in cognitive terms. This follows\n", " \n", " Alan Turing\n", " \n", " 's proposal in his paper \"\n", " \n", " Computing Machinery and Intelligence\n", " \n", " \", in which the question \"Can machines think?\" is replaced with the question \"Can machines do what we (as thinking entities) can do?\".\n", " \n", " \n", " [7]\n", " \n", " \n", " In Turing's proposal the various characteristics that could be possessed by a\n", " \n", " thinking machine\n", " \n", " and the various implications in constructing one are exposed.\n", "
\n", "\n", " \n", " \n", "
\n", "\n", " Machine learning tasks are classified into several broad categories. In\n", " \n", " supervised learning\n", " \n", " , the algorithm builds a\n", " \n", " mathematical model\n", " \n", " from a set of data that contains both the inputs and the desired outputs. For example, if the task were determining whether an image contained a certain object, the\n", " \n", " training data\n", " \n", " for a supervised learning algorithm would include images with and without that object (the input), and each image would have a label (the output) designating whether it contained the object. In special cases, the input may be only partially available, or restricted to special feedback.\n", " \n", " [\n", " \n", " \n", " \n", " clarification needed\n", " \n", " \n", " \n", " ]\n", " \n", " \n", " Semi-supervised learning\n", " \n", " algorithms develop mathematical models from incomplete training data, where a portion of the sample input doesn't have labels.\n", "
\n", "\n", " \n", " Classification\n", " \n", " algorithms and\n", " \n", " regression\n", " \n", " algorithms are types of supervised learning. Classification algorithms are used when the outputs are restricted to a\n", " \n", " limited set\n", " \n", " of values. For a classification algorithm that filters emails, the input would be an incoming email, and the output would be the name of the folder in which to file the email. For an algorithm that identifies spam emails, the output would be the prediction of either \"\n", " \n", " spam\n", " \n", " \" or \"not spam\", represented by the\n", " \n", " Boolean\n", " \n", " values true and false.\n", " \n", " Regression\n", " \n", " algorithms are named for their continuous outputs, meaning they may have any value within a range. Examples of a continuous value are the temperature, length, or price of an object.\n", "
\n", "\n", " In\n", " \n", " unsupervised learning\n", " \n", " , the algorithm builds a mathematical model from a set of data that contains only inputs and no desired output labels. Unsupervised learning algorithms are used to find structure in the data, like grouping or\n", " \n", " clustering\n", " \n", " of data points. Unsupervised learning can discover patterns in the data, and can group the inputs into categories, as in\n", " \n", " feature learning\n", " \n", " .\n", " \n", " Dimensionality reduction\n", " \n", " is the process of reducing the number of \"\n", " \n", " features\n", " \n", " \", or inputs, in a set of data.\n", "
\n", "\n", " \n", " Active learning\n", " \n", " algorithms access the desired outputs (training labels) for a limited set of inputs based on a budget and optimize the choice of inputs for which it will acquire training labels. When used interactively, these can be presented to a human user for labeling.\n", " \n", " Reinforcement learning\n", " \n", " algorithms are given feedback in the form of positive or negative reinforcement in a dynamic environment and are used in\n", " \n", " autonomous vehicles\n", " \n", " or in learning to play a game against a human opponent.\n", " \n", " \n", " [2]\n", " \n", " \n", " \n", " :\n", " \n", " 3\n", " \n", " \n", " Other specialized algorithms in machine learning include\n", " \n", " topic modeling\n", " \n", " , where the computer program is given a set of\n", " \n", " natural language\n", " \n", " documents and finds other documents that cover similar topics. Machine learning algorithms can be used to find the unobservable\n", " \n", " probability density function\n", " \n", " in\n", " \n", " density estimation\n", " \n", " problems.\n", " \n", " Meta learning\n", " \n", " algorithms learn their own\n", " \n", " inductive bias\n", " \n", " based on previous experience. In\n", " \n", " developmental robotics\n", " \n", " ,\n", " \n", " robot learning\n", " \n", " algorithms generate their own sequences of learning experiences, also known as a curriculum, to cumulatively acquire new skills through self-guided exploration and social interaction with humans. These robots use guidance mechanisms such as active learning, maturation, motor synergies, and imitation.\n", " \n", " [\n", " \n", " \n", " \n", " clarification needed\n", " \n", " \n", " \n", " ]\n", " \n", "
\n", "\n", " \n", " Arthur Samuel\n", " \n", " , an American pioneer in the field of\n", " \n", " computer gaming\n", " \n", " and\n", " \n", " artificial intelligence\n", " \n", " , coined the term \"Machine Learning\" in 1959 while at\n", " \n", " IBM\n", " \n", " .\n", " \n", " \n", " [8]\n", " \n", " \n", " A representative book of the machine learning research during the 1960s was the Nilsson's book on Learning Machines, dealing mostly with machine learning for pattern classification.\n", " \n", " \n", " [9]\n", " \n", " \n", " The interest of machine learning related to pattern recognition continued during the 1970s, as described in the book of Duda and Hart in 1973.\n", " \n", " \n", " [10]\n", " \n", " \n", " In 1981 a report was given on using teaching strategies so that a neural network learns to recognize 40 characters (26 letters, 10 digits, and 4 special symbols) from a computer terminal.\n", " \n", " \n", " [11]\n", " \n", " \n", " As a scientific endeavor, machine learning grew out of the quest for artificial intelligence. Already in the early days of AI as an\n", " \n", " academic discipline\n", " \n", " , some researchers were interested in having machines learn from data. They attempted to approach the problem with various symbolic methods, as well as what were then termed \"\n", " \n", " neural networks\n", " \n", " \"; these were mostly\n", " \n", " perceptrons\n", " \n", " and\n", " \n", " other models\n", " \n", " that were later found to be reinventions of the\n", " \n", " generalized linear models\n", " \n", " of statistics.\n", " \n", " \n", " [12]\n", " \n", " \n", " \n", " Probabilistic\n", " \n", " reasoning was also employed, especially in automated\n", " \n", " medical diagnosis\n", " \n", " .\n", " \n", " \n", " [13]\n", " \n", " \n", " \n", " :\n", " \n", " 488\n", " \n", " \n", "
\n", "\n", " However, an increasing emphasis on the\n", " \n", " logical, knowledge-based approach\n", " \n", " caused a rift between AI and machine learning. Probabilistic systems were plagued by theoretical and practical problems of data acquisition and representation.\n", " \n", " \n", " [13]\n", " \n", " \n", " \n", " :\n", " \n", " 488\n", " \n", " \n", " By 1980,\n", " \n", " expert systems\n", " \n", " had come to dominate AI, and statistics was out of favor.\n", " \n", " \n", " [14]\n", " \n", " \n", " Work on symbolic/knowledge-based learning did continue within AI, leading to\n", " \n", " inductive logic programming\n", " \n", " , but the more statistical line of research was now outside the field of AI proper, in\n", " \n", " pattern recognition\n", " \n", " and\n", " \n", " information retrieval\n", " \n", " .\n", " \n", " \n", " [13]\n", " \n", " \n", " \n", " :\n", " \n", " 708–710; 755\n", " \n", " \n", " Neural networks research had been abandoned by AI and\n", " \n", " computer science\n", " \n", " around the same time. This line, too, was continued outside the AI/CS field, as \"\n", " \n", " connectionism\n", " \n", " \", by researchers from other disciplines including\n", " \n", " Hopfield\n", " \n", " ,\n", " \n", " Rumelhart\n", " \n", " and\n", " \n", " Hinton\n", " \n", " . Their main success came in the mid-1980s with the reinvention of\n", " \n", " backpropagation\n", " \n", " .\n", " \n", " \n", " [13]\n", " \n", " \n", " \n", " :\n", " \n", " 25\n", " \n", " \n", "
\n", "\n", " Machine learning, reorganized as a separate 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 the\n", " \n", " symbolic approaches\n", " \n", " it had inherited from AI, and toward methods and models borrowed from statistics and\n", " \n", " probability theory\n", " \n", " .\n", " \n", " \n", " [14]\n", " \n", " \n", " It also benefited from the increasing availability of digitized information, and the ability to distribute it via the\n", " \n", " Internet\n", " \n", " .\n", "
\n", "\n", " Machine learning and\n", " \n", " data mining\n", " \n", " often employ the same methods and overlap significantly, but while machine learning focuses on prediction, based on\n", " \n", " known\n", " \n", " properties learned from the training data,\n", " \n", " data mining\n", " \n", " focuses on the\n", " \n", " discovery\n", " \n", " of (previously)\n", " \n", " unknown\n", " \n", " properties in the data (this is the analysis step of\n", " \n", " knowledge discovery\n", " \n", " 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,\n", " \n", " ECML PKDD\n", " \n", " being a major exception) comes from the basic assumptions they work with: in machine learning, performance is usually evaluated with respect to the ability to\n", " \n", " reproduce known\n", " \n", " knowledge, while in knowledge discovery and data mining (KDD) the key task is the discovery of previously\n", " \n", " unknown\n", " \n", " 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.\n", "
\n", "\n", " Machine learning also has intimate ties to\n", " \n", " optimization\n", " \n", " : many learning problems are formulated as minimization of some\n", " \n", " loss function\n", " \n", " 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 a label to instances, and models are trained to correctly predict the pre-assigned labels of a set of examples). The difference between the two fields arises from the goal of generalization: while optimization algorithms can minimize the loss on a training set, machine learning is concerned with minimizing the loss on unseen samples.\n", " \n", " \n", " [15]\n", " \n", " \n", "
\n", "\n", " Machine learning and\n", " \n", " statistics\n", " \n", " are closely related fields in terms of methods, but distinct in their principal goal: statistics draws population\n", " \n", " inferences\n", " \n", " from a\n", " \n", " sample\n", " \n", " , while machine learning finds generalizable predictive patterns.\n", " \n", " \n", " [16]\n", " \n", " \n", " According to\n", " \n", " Michael I. Jordan\n", " \n", " , the ideas of machine learning, from methodological principles to theoretical tools, have had a long pre-history in statistics.\n", " \n", " \n", " [17]\n", " \n", " \n", " He also suggested the term\n", " \n", " data science\n", " \n", " as a placeholder to call the overall field.\n", " \n", " \n", " [17]\n", " \n", " \n", "
\n", "\n", " \n", " Leo Breiman\n", " \n", " distinguished two statistical modeling paradigms: data model and algorithmic model,\n", " \n", " \n", " [18]\n", " \n", " \n", " wherein \"algorithmic model\" means more or less the machine learning algorithms like\n", " \n", " Random forest\n", " \n", " .\n", "
\n", "\n", " Some statisticians have adopted methods from machine learning, leading to a combined field that they call\n", " \n", " statistical learning\n", " \n", " .\n", " \n", " \n", " [19]\n", " \n", " \n", "
\n", "\n", " A core objective of a learner is to generalize from its experience.\n", " \n", " \n", " [2]\n", " \n", " \n", " \n", " \n", " [20]\n", " \n", " \n", " 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.\n", "
\n", "\n", " The computational analysis of machine learning algorithms and their performance is a branch of\n", " \n", " theoretical computer science\n", " \n", " known as\n", " \n", " computational learning theory\n", " \n", " . Because training sets are finite and the future is uncertain, learning theory usually does not yield guarantees of the performance of algorithms. Instead, probabilistic bounds on the performance are quite common. The\n", " \n", " bias–variance decomposition\n", " \n", " is one way to quantify generalization\n", " \n", " error\n", " \n", " .\n", "
\n", "\n", " For the best performance in the context of generalization, 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 under fitted 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 to\n", " \n", " overfitting\n", " \n", " and generalization will be poorer.\n", " \n", " \n", " [21]\n", " \n", " \n", "
\n", "\n", " 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 in\n", " \n", " polynomial time\n", " \n", " . There are two kinds of\n", " \n", " time complexity\n", " \n", " 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.\n", "
\n", "\n", " The types of machine learning algorithms differ in their approach, the type of data they input and output, and the type of task or problem that they are intended to solve.\n", "
\n", "\n", " Supervised learning algorithms build a mathematical model of a set of data that contains both the inputs and the desired outputs.\n", " \n", " \n", " [22]\n", " \n", " \n", " The data is known as\n", " \n", " training data\n", " \n", " , and 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 an\n", " \n", " array\n", " \n", " or vector, sometimes called a feature vector, and the training data is represented by a\n", " \n", " matrix\n", " \n", " . Through iterative optimization of an\n", " \n", " objective function\n", " \n", " , supervised learning algorithms learn a function that can be used to predict the output associated with new inputs.\n", " \n", " \n", " [23]\n", " \n", " \n", " An optimal function will allow 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.\n", " \n", " \n", " [6]\n", " \n", " \n", "
\n", "\n", " Supervised learning algorithms include\n", " \n", " classification\n", " \n", " and\n", " \n", " regression\n", " \n", " .\n", " \n", " \n", " [24]\n", " \n", " \n", " Classification algorithms are used when the outputs are restricted to a limited set of values, and regression algorithms are used when the outputs may have any numerical value within a range.\n", " \n", " Similarity learning\n", " \n", " 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 in\n", " \n", " ranking\n", " \n", " ,\n", " \n", " recommendation systems\n", " \n", " , visual identity tracking, face verification, and speaker verification.\n", "
\n", "\n", " In the case of\n", " \n", " semi-supervised\n", " \n", " learning algorithms, some of the training examples are missing training labels, but they can nevertheless be used to improve the quality of a model. In\n", " \n", " weakly supervised learning\n", " \n", " , the training labels are noisy, limited, or imprecise; however, these labels are often cheaper to obtain, resulting in larger effective training sets.\n", " \n", " \n", " [25]\n", " \n", " \n", "
\n", "\n", " Unsupervised learning algorithms take a set of data that contains only inputs, and find structure in the data, like grouping or clustering of data points. The algorithms, therefore, learn from test data that has not been labeled, classified or categorized. 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. A central application of unsupervised learning is in the field of\n", " \n", " density estimation\n", " \n", " in\n", " \n", " statistics\n", " \n", " ,\n", " \n", " \n", " [26]\n", " \n", " \n", " though unsupervised learning encompasses other domains involving summarizing and explaining data features.\n", "
\n", "\n", " Cluster analysis is the assignment of a set of observations into subsets (called\n", " \n", " clusters\n", " \n", " ) 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 some\n", " \n", " similarity metric\n", " \n", " and evaluated, for example, by\n", " \n", " internal compactness\n", " \n", " , or the similarity between members of the same cluster, and\n", " \n", " separation\n", " \n", " , the difference between clusters. Other methods are based on\n", " \n", " estimated density\n", " \n", " and\n", " \n", " graph connectivity\n", " \n", " .\n", "
\n", "\n", " \n", " Semi-supervised learning\n", " \n", "
\n", "\n", " Semi-supervised learning falls between\n", " \n", " unsupervised learning\n", " \n", " (without any labeled training data) and\n", " \n", " supervised learning\n", " \n", " (with completely labeled training data). Many machine-learning researchers have found that unlabeled data, when used in conjunction with a small amount of labeled data, can produce a considerable improvement in learning accuracy.\n", "
\n", "\n", " Reinforcement learning is an area of machine learning concerned with how\n", " \n", " software agents\n", " \n", " ought to take\n", " \n", " actions\n", " \n", " in an environment so as to maximize some notion of cumulative reward. Due to its generality, the field is studied in many other disciplines, such as\n", " \n", " game theory\n", " \n", " ,\n", " \n", " control theory\n", " \n", " ,\n", " \n", " operations research\n", " \n", " ,\n", " \n", " information theory\n", " \n", " ,\n", " \n", " simulation-based optimization\n", " \n", " ,\n", " \n", " multi-agent systems\n", " \n", " ,\n", " \n", " swarm intelligence\n", " \n", " ,\n", " \n", " statistics\n", " \n", " and\n", " \n", " genetic algorithms\n", " \n", " . In machine learning, the environment is typically represented as a\n", " \n", " Markov Decision Process\n", " \n", " (MDP). Many reinforcement learning algorithms use\n", " \n", " dynamic programming\n", " \n", " techniques.\n", " \n", " \n", " [27]\n", " \n", " \n", " Reinforcement learning algorithms do not assume knowledge of an exact mathematical model of the MDP, and are used when exact models are infeasible. Reinforcement learning algorithms are used in autonomous vehicles or in learning to play a game against a human opponent.\n", "
\n", "\n", " Self-learning as machine learning paradigm was introduced in 1982 along with a neural network capable of self-learning named Crossbar Adaptive Array (CAA).\n", " \n", " \n", " [28]\n", " \n", " \n", " It is a learning with no external rewards and no external teacher advices. 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.\n", " \n", " \n", " [29]\n", " \n", " \n", " The self-learning algorithm updates a memory matrix W =||w(a,s)|| such that in each iteration executes the following machine learning routine:\n", "
\n", "In situation s perform action a;\n", " Receive consequence situation s’;\n", " Compute emotion of being in consequence situation v(s’);\n", " Update crossbar memory w’(a,s) = w(a,s) + v(s’).\n", "\n", "
\n", " It is a system with only one input, situation s, and only one output, action (or behavior) 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 behavioral environment where it behaves, and the other is genetic environment, wherefrom it initially and only once receives initial emotions about situations to be encountered in the behavioral environment. After receiving the genome (species) vector from the genetic environment, the CAA learns a goal seeking behavior, in an environment that contains both desirable and undesirable situations.\n", " \n", " \n", " [30]\n", " \n", " \n", "
\n", "\n", " Several learning algorithms aim at discovering better representations of the inputs provided during training.\n", " \n", " \n", " [31]\n", " \n", " \n", " Classic examples include\n", " \n", " principal components analysis\n", " \n", " 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 manual\n", " \n", " feature engineering\n", " \n", " , and allows a machine to both learn the features and use them to perform a specific task.\n", "
\n", "\n", " Feature learning can be either supervised or unsupervised. In supervised feature learning, features are learned using labeled input data. Examples include\n", " \n", " artificial neural networks\n", " \n", " ,\n", " \n", " multilayer perceptrons\n", " \n", " , and supervised\n", " \n", " dictionary learning\n", " \n", " . In unsupervised feature learning, features are learned with unlabeled input data. Examples include dictionary learning,\n", " \n", " independent component analysis\n", " \n", " ,\n", " \n", " autoencoders\n", " \n", " ,\n", " \n", " matrix factorization\n", " \n", " \n", " \n", " [32]\n", " \n", " \n", " and various forms of\n", " \n", " clustering\n", " \n", " .\n", " \n", " \n", " [33]\n", " \n", " \n", " \n", " \n", " [34]\n", " \n", " \n", " \n", " \n", " [35]\n", " \n", " \n", "
\n", "\n", " \n", " Manifold learning\n", " \n", " algorithms attempt to do so under the constraint that the learned representation is low-dimensional.\n", " \n", " Sparse coding\n", " \n", " algorithms attempt to do so under the constraint that the learned representation is sparse, meaning that the mathematical model has many zeros.\n", " \n", " Multilinear subspace learning\n", " \n", " algorithms aim to learn low-dimensional representations directly from\n", " \n", " tensor\n", " \n", " representations for multidimensional data, without reshaping them into higher-dimensional vectors.\n", " \n", " \n", " [36]\n", " \n", " \n", " \n", " Deep learning\n", " \n", " 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 is one that learns a representation that disentangles the underlying factors of variation that explain the observed data.\n", " \n", " \n", " [37]\n", " \n", " \n", "
\n", "\n", " 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 has not yielded to attempts to algorithmically define specific features. An alternative is to discover such features or representations through examination, without relying on explicit algorithms.\n", "
\n", "\n", " Sparse dictionary learning is a feature learning method where a training example is represented as a linear combination of\n", " \n", " basis functions\n", " \n", " , and is assumed to be a\n", " \n", " sparse matrix\n", " \n", " . The method is\n", " \n", " strongly NP-hard\n", " \n", " and difficult to solve approximately.\n", " \n", " \n", " [38]\n", " \n", " \n", " A popular\n", " \n", " heuristic\n", " \n", " method for sparse dictionary learning is the\n", " \n", " K-SVD\n", " \n", " 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 in\n", " \n", " image de-noising\n", " \n", " . The key idea is that a clean image patch can be sparsely represented by an image dictionary, but the noise cannot.\n", " \n", " \n", " [39]\n", " \n", " \n", "
\n", "\n", " In\n", " \n", " data mining\n", " \n", " , anomaly detection, also known as outlier detection, is the identification of rare items, events or observations which raise suspicions by differing significantly from the majority of the data.\n", " \n", " \n", " [40]\n", " \n", " \n", " Typically, the anomalous items represent an issue such as\n", " \n", " bank fraud\n", " \n", " , a structural defect, medical problems or errors in a text. Anomalies are referred to as\n", " \n", " outliers\n", " \n", " , novelties, noise, deviations and exceptions.\n", " \n", " \n", " [41]\n", " \n", " \n", "
\n", "\n", " In particular, in the context of abuse and network intrusion detection, the interesting objects are often not rare objects, but unexpected bursts in activity. This pattern does not adhere to the common statistical definition of an outlier as a rare object, and many outlier detection methods (in particular, unsupervised algorithms) will fail on such data, unless it has been aggregated appropriately. Instead, a cluster analysis algorithm may be able to detect the micro-clusters formed by these patterns.\n", " \n", " \n", " [42]\n", " \n", " \n", "
\n", "\n", " Three broad categories of anomaly detection techniques exist.\n", " \n", " \n", " [43]\n", " \n", " \n", " Unsupervised anomaly detection techniques detect anomalies in an unlabeled 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 least to the remainder of the data set. Supervised anomaly detection techniques require a data set that has been labeled as \"normal\" and \"abnormal\" and involves training a classifier (the key difference to many other statistical classification problems is the inherently unbalanced nature of outlier detection). Semi-supervised anomaly detection techniques construct a model representing normal behavior from a given normal training data set and then test the likelihood of a test instance to be generated by the model.\n", "
\n", "\n", " Association rule learning is a\n", " \n", " rule-based machine learning\n", " \n", " method for discovering relationships between variables in large databases. It is intended to identify strong rules discovered in databases using some measure of \"interestingness\".\n", " \n", " \n", " [44]\n", " \n", " \n", "
\n", "\n", " 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 utilization 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.\n", " \n", " \n", " [45]\n", " \n", " \n", " Rule-based machine learning approaches include\n", " \n", " learning classifier systems\n", " \n", " , association rule learning, and\n", " \n", " artificial immune systems\n", " \n", " .\n", "
\n", "\n", " Based on the concept of strong rules,\n", " \n", " Rakesh Agrawal\n", " \n", " ,\n", " \n", " Tomasz Imieliński\n", " \n", " and Arun Swami introduced association rules for discovering regularities between products in large-scale transaction data recorded by\n", " \n", " point-of-sale\n", " \n", " (POS) systems in supermarkets.\n", " \n", " \n", " [46]\n", " \n", " \n", " For example, the rule\n", " \n", " \n", " \n", " \n", " \n", " \n", " 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 promotional\n", " \n", " pricing\n", " \n", " or\n", " \n", " product placements\n", " \n", " . In addition to\n", " \n", " market basket analysis\n", " \n", " , association rules are employed today in application areas including\n", " \n", " Web usage mining\n", " \n", " ,\n", " \n", " intrusion detection\n", " \n", " ,\n", " \n", " continuous production\n", " \n", " , and\n", " \n", " bioinformatics\n", " \n", " . In contrast with\n", " \n", " sequence mining\n", " \n", " , association rule learning typically does not consider the order of items either within a transaction or across transactions.\n", "
\n", "\n", " Learning classifier systems (LCS) are a family of rule-based machine learning algorithms that combine a discovery component, typically a\n", " \n", " genetic algorithm\n", " \n", " , with a learning component, performing either\n", " \n", " supervised learning\n", " \n", " ,\n", " \n", " reinforcement learning\n", " \n", " , or\n", " \n", " unsupervised learning\n", " \n", " . They seek to identify a set of context-dependent rules that collectively store and apply knowledge in a\n", " \n", " piecewise\n", " \n", " manner in order to make predictions.\n", " \n", " \n", " [47]\n", " \n", " \n", "
\n", "\n", " Inductive logic programming (ILP) is an approach to rule-learning using\n", " \n", " logic programming\n", " \n", " 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 that\n", " \n", " entails\n", " \n", " all positive and no negative examples.\n", " \n", " Inductive programming\n", " \n", " is a related field that considers any kind of programming languages for representing hypotheses (and not only logic programming), such as\n", " \n", " functional programs\n", " \n", " .\n", "
\n", "\n", " Inductive logic programming is particularly useful in\n", " \n", " bioinformatics\n", " \n", " and\n", " \n", " natural language processing\n", " \n", " .\n", " \n", " Gordon Plotkin\n", " \n", " and\n", " \n", " Ehud Shapiro\n", " \n", " laid the initial theoretical foundation for inductive machine learning in a logical setting.\n", " \n", " \n", " [48]\n", " \n", " \n", " \n", " \n", " [49]\n", " \n", " \n", " \n", " \n", " [50]\n", " \n", " \n", " Shapiro built their first implementation (Model Inference System) in 1981: a Prolog program that inductively inferred logic programs from positive and negative examples.\n", " \n", " \n", " [51]\n", " \n", " \n", " The term\n", " \n", " inductive\n", " \n", " here refers to\n", " \n", " philosophical\n", " \n", " induction, suggesting a theory to explain observed facts, rather than\n", " \n", " mathematical\n", " \n", " induction, proving a property for all members of a well-ordered set.\n", "
\n", "\n", " Performing machine learning involves creating a\n", " \n", " model\n", " \n", " , which is trained on some training data and then can process additional data to make predictions. Various types of models have been used and researched for machine learning systems.\n", "
\n", "\n", " Artificial neural networks (ANNs), or\n", " \n", " connectionist\n", " \n", " systems, are computing systems vaguely inspired by the\n", " \n", " biological neural networks\n", " \n", " that constitute animal\n", " \n", " brains\n", " \n", " . Such systems \"learn\" to perform tasks by considering examples, generally without being programmed with any task-specific rules.\n", "
\n", "\n", " An ANN is a model based on a collection of connected units or nodes called \"\n", " \n", " artificial neurons\n", " \n", " \", which loosely model the\n", " \n", " neurons\n", " \n", " in a biological\n", " \n", " brain\n", " \n", " . Each connection, like the\n", " \n", " synapses\n", " \n", " in a biological\n", " \n", " brain\n", " \n", " , 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 a\n", " \n", " real number\n", " \n", " , 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 a\n", " \n", " weight\n", " \n", " 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.\n", "
\n", "\n", " The original goal of the ANN approach was to solve problems in the same way that a\n", " \n", " human brain\n", " \n", " would. However, over time, attention moved to performing specific tasks, leading to deviations from\n", " \n", " biology\n", " \n", " . Artificial neural networks have been used on a variety of tasks, including\n", " \n", " computer vision\n", " \n", " ,\n", " \n", " speech recognition\n", " \n", " ,\n", " \n", " machine translation\n", " \n", " ,\n", " \n", " social network\n", " \n", " filtering,\n", " \n", " playing board and video games\n", " \n", " and\n", " \n", " medical diagnosis\n", " \n", " .\n", "
\n", "\n", " \n", " Deep learning\n", " \n", " 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\n", " \n", " computer vision\n", " \n", " and\n", " \n", " speech recognition\n", " \n", " .\n", " \n", " \n", " [52]\n", " \n", " \n", "
\n", "\n", " Decision tree learning uses a\n", " \n", " decision tree\n", " \n", " as a\n", " \n", " predictive model\n", " \n", " 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 modeling 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,\n", " \n", " leaves\n", " \n", " represent class labels and branches represent\n", " \n", " conjunctions\n", " \n", " of features that lead to those class labels. Decision trees where the target variable can take continuous values (typically\n", " \n", " real numbers\n", " \n", " ) are called regression trees. In decision analysis, a decision tree can be used to visually and explicitly represent decisions and\n", " \n", " decision making\n", " \n", " . In data mining, a decision tree describes data, but the resulting classification tree can be an input for decision making.\n", "
\n", "\n", " Support vector machines (SVMs), also known as support vector networks, are a set of related\n", " \n", " supervised learning\n", " \n", " 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 or the other.\n", " \n", " \n", " [53]\n", " \n", " \n", " An SVM training algorithm is a non-\n", " \n", " probabilistic\n", " \n", " ,\n", " \n", " binary\n", " \n", " ,\n", " \n", " linear classifier\n", " \n", " , although methods such as\n", " \n", " Platt scaling\n", " \n", " 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 the\n", " \n", " kernel trick\n", " \n", " , implicitly mapping their inputs into high-dimensional feature spaces.\n", "
\n", "\n", " Regression analysis encompasses a large variety of statistical methods to estimate the relationship between input variables and their associated features. Its most common form is\n", " \n", " linear regression\n", " \n", " , where a single line is drawn to best fit the given data according to a mathematical criterion such as\n", " \n", " ordinary least squares\n", " \n", " . The latter is oftentimes extended by\n", " \n", " regularization (mathematics)\n", " \n", " methods to mitigate overfitting and high bias, as can be seen in\n", " \n", " ridge regression\n", " \n", " . When dealing with non-linear problems, go-to models include\n", " \n", " polynomial regression\n", " \n", " (e.g. used for trendline fitting in Microsoft Excel\n", " \n", " \n", " [54]\n", " \n", " \n", " ),\n", " \n", " Logistic regression\n", " \n", " (often used in\n", " \n", " statistical classification\n", " \n", " ) or even\n", " \n", " kernel regression\n", " \n", " , which introduces non-linearity by taking advantage of the\n", " \n", " kernel trick\n", " \n", " to implicitly map input variables to higher dimensional space.\n", "
\n", "\n", " A Bayesian network, belief network or directed acyclic graphical model is a probabilistic\n", " \n", " graphical model\n", " \n", " that represents a set of\n", " \n", " random variables\n", " \n", " and their\n", " \n", " conditional independence\n", " \n", " with a\n", " \n", " directed acyclic graph\n", " \n", " (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 perform\n", " \n", " inference\n", " \n", " and learning. Bayesian networks that model sequences of variables, like\n", " \n", " speech signals\n", " \n", " or\n", " \n", " protein sequences\n", " \n", " , are called\n", " \n", " dynamic Bayesian networks\n", " \n", " . Generalizations of Bayesian networks that can represent and solve decision problems under uncertainty are called\n", " \n", " influence diagrams\n", " \n", " .\n", "
\n", "\n", " A genetic algorithm (GA) is a\n", " \n", " search algorithm\n", " \n", " and\n", " \n", " heuristic\n", " \n", " technique that mimics the process of\n", " \n", " natural selection\n", " \n", " , using methods such as\n", " \n", " mutation\n", " \n", " and\n", " \n", " crossover\n", " \n", " to generate new\n", " \n", " genotypes\n", " \n", " in the hope of finding good solutions to a given problem. In machine learning, genetic algorithms were used in the 1980s and 1990s.\n", " \n", " \n", " [55]\n", " \n", " \n", " \n", " \n", " [56]\n", " \n", " \n", " Conversely, machine learning techniques have been used to improve the performance of genetic and\n", " \n", " evolutionary algorithms\n", " \n", " .\n", " \n", " \n", " [57]\n", " \n", " \n", "
\n", "\n", " Usually, machine learning models require a lot of data in order for them to perform well. Usually, when training a machine learning model, one needs to collect a large, representative sample of data from a training set. Data from the training set can be as varied as a corpus of text, a collection of images, and data collected from individual users of a service.\n", " \n", " Overfitting\n", " \n", " is something to watch out for when training a machine learning model.\n", "
\n", "\n", " Federated learning is a new approach to training machine learning models that decentralizes the training process, allowing for users' privacy to be maintained by not needing to send their data to a centralized server. This also increases efficiency by decentralizing the training process to many devices. For example,\n", " \n", " Gboard\n", " \n", " uses federated machine learning to train search query prediction models on users' mobile phones without having to send individual searches back to\n", " \n", " Google\n", " \n", " .\n", " \n", " \n", " [58]\n", " \n", " \n", "
\n", "\n", " There are many applications for machine learning, including:\n", "
\n", "\n", " In 2006, the media-services provider\n", " \n", " Netflix\n", " \n", " held the first \"\n", " \n", " Netflix Prize\n", " \n", " \" competition to find a program to better predict user preferences and improve the accuracy on its existing Cinematch movie recommendation algorithm by at least 10%. A joint team made up of researchers from\n", " \n", " AT&T Labs\n", " \n", " -Research in collaboration with the teams Big Chaos and Pragmatic Theory built an\n", " \n", " ensemble model\n", " \n", " to win the Grand Prize in 2009 for $1 million.\n", " \n", " \n", " [60]\n", " \n", " \n", " Shortly after the prize was awarded, Netflix realized that viewers' ratings were not the best indicators of their viewing patterns (\"everything is a recommendation\") and they changed their recommendation engine accordingly.\n", " \n", " \n", " [61]\n", " \n", " \n", " In 2010 The Wall Street Journal wrote about the firm Rebellion Research and their use of machine learning to predict the financial crisis.\n", " \n", " \n", " [62]\n", " \n", " \n", " In 2012, co-founder of\n", " \n", " Sun Microsystems\n", " \n", " ,\n", " \n", " Vinod Khosla\n", " \n", " , predicted that 80% of medical doctors' jobs would be lost in the next two decades to automated machine learning medical diagnostic software.\n", " \n", " \n", " [63]\n", " \n", " \n", " 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 unrecognized influences among artists.\n", " \n", " \n", " [64]\n", " \n", " \n", " In 2019\n", " \n", " Springer Nature\n", " \n", " published the first research book created using machine learning.\n", " \n", " \n", " [65]\n", " \n", " \n", "
\n", "\n", " Although machine learning has been transformative in some fields, machine-learning programs often fail to deliver expected results.\n", " \n", " \n", " [66]\n", " \n", " \n", " \n", " \n", " [67]\n", " \n", " \n", " \n", " \n", " [68]\n", " \n", " \n", " 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.\n", " \n", " \n", " [69]\n", " \n", " \n", "
\n", "\n", " In 2018, a self-driving car from\n", " \n", " Uber\n", " \n", " failed to detect a pedestrian, who was killed after a collision.\n", " \n", " \n", " [70]\n", " \n", " \n", " Attempts to use machine learning in healthcare with the\n", " \n", " IBM Watson\n", " \n", " system failed to deliver even after years of time and billions of investment.\n", " \n", " \n", " [71]\n", " \n", " \n", " \n", " \n", " [72]\n", " \n", " \n", "
\n", "\n", " Machine learning approaches in particular can suffer from different data biases. A machine learning system trained on current customers only may not be able to predict the needs of new customer groups that are not represented in the training data. When trained on man-made data, machine learning is likely to pick up the same constitutional and unconscious biases already present in society.\n", " \n", " \n", " [73]\n", " \n", " \n", " Language models learned from data have been shown to contain human-like biases.\n", " \n", " \n", " [74]\n", " \n", " \n", " \n", " \n", " [75]\n", " \n", " \n", " Machine learning systems used for criminal risk assessment have been found to be biased against black people.\n", " \n", " \n", " [76]\n", " \n", " \n", " \n", " \n", " [77]\n", " \n", " \n", " In 2015, Google photos would often tag black people as gorillas,\n", " \n", " \n", " [78]\n", " \n", " \n", " and in 2018 this still was not well resolved, but Google reportedly was still using the workaround to remove all gorillas from the training data, and thus was not able to recognize real gorillas at all.\n", " \n", " \n", " [79]\n", " \n", " \n", " Similar issues with recognizing non-white people have been found in many other systems.\n", " \n", " \n", " [80]\n", " \n", " \n", " In 2016, Microsoft tested a\n", " \n", " chatbot\n", " \n", " that learned from Twitter, and it quickly picked up racist and sexist language.\n", " \n", " \n", " [81]\n", " \n", " \n", " Because of such challenges, the effective use of machine learning may take longer to be adopted in other domains.\n", " \n", " \n", " [82]\n", " \n", " \n", " Concern for\n", " \n", " fairness\n", " \n", " in machine learning, that is, reducing bias in machine learning and propelling its use for human good is increasingly expressed by artificial intelligence scientists, including\n", " \n", " Fei-Fei Li\n", " \n", " , who reminds engineers that \"There’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.”\n", " \n", " \n", " [83]\n", " \n", " \n", "
\n", "\n", " Classification machine learning models can be validated by accuracy estimation techniques like the\n", " \n", " Holdout\n", " \n", " method, which splits the data in 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-\n", " \n", " cross-validation\n", " \n", " method randomly partitions the data into K subsets and then K experiments are performed each respectively considering 1 subset for evaluation and the remaining K-1 subsets for training the model. In addition to the holdout and cross-validation methods,\n", " \n", " bootstrap\n", " \n", " , which samples n instances with replacement from the dataset, can be used to assess model accuracy.\n", " \n", " \n", " [84]\n", " \n", " \n", "
\n", "\n", " In addition to overall accuracy, investigators frequently report\n", " \n", " sensitivity and specificity\n", " \n", " meaning True Positive Rate (TPR) and True Negative Rate (TNR) respectively. Similarly, investigators sometimes report the\n", " \n", " False Positive Rate\n", " \n", " (FPR) as well as the\n", " \n", " False Negative Rate\n", " \n", " (FNR). However, these rates are ratios that fail to reveal their numerators and denominators. The\n", " \n", " Total Operating Characteristic\n", " \n", " (TOC) is an effective method to express a model's diagnostic ability. TOC shows the numerators and denominators of the previously mentioned rates, thus TOC provides more information than the commonly used\n", " \n", " Receiver Operating Characteristic\n", " \n", " (ROC) and ROC's associated Area Under the Curve (AUC).\n", " \n", " \n", " [85]\n", " \n", " \n", "
\n", "\n", " Machine learning poses a host of\n", " \n", " ethical questions\n", " \n", " . Systems which are trained on datasets collected with biases may exhibit these biases upon use (\n", " \n", " algorithmic bias\n", " \n", " ), thus digitizing cultural prejudices.\n", " \n", " \n", " [86]\n", " \n", " \n", " For example, 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 against similarity to previous successful applicants.\n", " \n", " \n", " [87]\n", " \n", " \n", " \n", " \n", " [88]\n", " \n", " \n", " Responsible\n", " \n", " collection of data\n", " \n", " and documentation of algorithmic rules used by a system thus is a critical part of machine learning.\n", "
\n", "\n", " Because human languages contain biases, machines trained on language\n", " \n", " \n", " corpora\n", " \n", " \n", " will necessarily also learn these biases.\n", " \n", " \n", " [89]\n", " \n", " \n", " \n", " \n", " [90]\n", " \n", " \n", "
\n", "\n", " Other forms of ethical challenges, not related to personal biases, are more seen in health care. 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 perpetual ethical dilemma of improving health care, but also increase 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 in. There is huge potential for machine learning in health care to provide professionals a great tool to diagnose, medicate, and even plan recovery paths for patients, but this will not happen until the personal biases mentioned previously, and these \"greed\" biases are addressed.\n", " \n", " \n", " [91]\n", " \n", " \n", "
\n", "\n", " \n", " Software suites\n", " \n", " containing a variety of machine learning algorithms include the following:\n", "
\n", "\n", " \n", " | \n", "\n", " Wikimedia Commons has media related to\n", " \n", " \n", " \n", " \n", " Machine learning\n", " \n", " \n", " \n", " \n", " .\n", " | \n", "
태그의 내용을 찾아서 이어 붙여 출력한다.\n", "x=soup.find_all('p') #모든 p태그 가져오기 #x는 리스트성격\n", "n = len(x) #길이로 x의 원소개수 확인\n", "result = '' #빈 문자열 만들어 원소 하나하나 가져옴 #초기화\n", "\n", "#x[i]태그객체를 가져와 text속성가져옴\n", "for i in range(n):\n", " result += x[i].text.strip() + '\\n\\n' #문자열 메서드 strip(왼쪽 오른쪽 스페이스 떨궈줌)\n", " #\\n\\n(라인 체인지), +(두개 연결)\n", " \n", "# 출력.\n", "print(result) #p태그 안에 있는 내용만 나옴" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "type(x) #결과값 ResultSet은 리스트형태로 나옴: 인덱싱해서 원소 가져올 수 있음\n", "type(x[0]) #첫번째 원소 가져옴\n", "\n", "for i in range(n):\n", " result += x[i].text.strip() #인덱싱해 원소가져옴" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.2 BeautifulSoup4 라이브러리로 parsing을 한다: div태그" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "\n", "\n", "\n", "Machine learning\n", "\n", "From Wikipedia, the free encyclopedia\n", "\n", "\n", "Jump to navigation\n", "Jump to search\n", "For the journal, see Machine Learning (journal).\n", "\"Statistical learning\" redirects here. For statistical learning in linguistics, see statistical learning in language acquisition.\n", "Scientific study of algorithms and statistical models that computer systems use to perform tasks without explicit instructions\n", "Machine learning anddata mining\n", "Problems\n", "Classification\n", "Clustering\n", "Regression\n", "Anomaly detection\n", "AutoML\n", "Association rules\n", "Reinforcement learning\n", "Structured prediction\n", "Feature engineering\n", "Feature learning\n", "Online learning\n", "Semi-supervised learning\n", "Unsupervised learning\n", "Learning to rank\n", "Grammar induction\n", "\n", "\n", "Supervised learning.mw-parser-output .nobold{font-weight:normal}(classification • regression) \n", "Decision trees\n", "Ensembles\n", "Bagging\n", "Boosting\n", "Random forest\n", "k-NN\n", "Linear regression\n", "Naive Bayes\n", "Artificial neural networks\n", "Logistic regression\n", "Perceptron\n", "Relevance vector machine (RVM)\n", "Support vector machine (SVM)\n", "\n", "\n", "Clustering\n", "BIRCH\n", "CURE\n", "Hierarchical\n", "k-means\n", "Expectation–maximization (EM)\n", "DBSCAN\n", "OPTICS\n", "Mean-shift\n", "\n", "\n", "Dimensionality reduction\n", "Factor analysis\n", "CCA\n", "ICA\n", "LDA\n", "NMF\n", "PCA\n", "t-SNE\n", "\n", "\n", "Structured prediction\n", "Graphical models\n", "Bayes net\n", "Conditional random field\n", "Hidden Markov\n", "\n", "\n", "Anomaly detection\n", "k-NN\n", "Local outlier factor\n", "\n", "\n", "Artificial neural network\n", "Autoencoder\n", "Deep learning\n", "DeepDream\n", "Multilayer perceptron\n", "RNN\n", "LSTM\n", "GRU\n", "Restricted Boltzmann machine\n", "GAN\n", "SOM\n", "Convolutional neural network\n", "U-Net\n", "\n", "\n", "Reinforcement learning\n", "Q-learning\n", "SARSA\n", "Temporal difference (TD)\n", "\n", "\n", "Theory\n", "Bias–variance dilemma\n", "Computational learning theory\n", "Empirical risk minimization\n", "Occam learning\n", "PAC learning\n", "Statistical learning\n", "VC theory\n", "\n", "\n", "Machine-learning venues\n", "NeurIPS\n", "ICML\n", "ML\n", "JMLR\n", "ArXiv:cs.LG\n", "\n", "\n", "Glossary of artificial intelligence\n", "Glossary of artificial intelligence\n", "\n", "\n", "Related articles\n", "List of datasets for machine-learning research\n", "Outline of machine learning\n", "\n", "vte\n", "Machine learning (ML) is the scientific study of algorithms and statistical models that computer systems use to perform a specific task without using explicit instructions, relying on patterns and inference instead. It is seen as a subset of artificial intelligence. Machine learning algorithms build a mathematical model based on sample data, known as \"training data\", in order to make predictions or decisions without being explicitly programmed to perform the task.[1][2]:2 Machine learning algorithms are used in a wide variety of applications, such as email filtering and computer vision, where it is difficult or infeasible to develop a conventional algorithm for effectively performing the task.\n", "Machine learning is closely related to computational statistics, which focuses on making predictions using computers. The study of mathematical optimization delivers methods, theory and application domains to the field of machine learning. Data mining is a field of study within machine learning, and focuses on exploratory data analysis through unsupervised learning.[3][4] In its application across business problems, machine learning is also referred to as predictive analytics.\n", "\n", "Contents\n", "\n", "1 Overview\n", "\n", "1.1 Machine learning tasks\n", "\n", "\n", "2 History and relationships to other fields\n", "\n", "2.1 Relation to data mining\n", "2.2 Relation to optimization\n", "2.3 Relation to statistics\n", "\n", "\n", "3 Theory\n", "4 Approaches\n", "\n", "4.1 Types of learning algorithms\n", "\n", "4.1.1 Supervised learning\n", "4.1.2 Unsupervised learning\n", "4.1.3 Reinforcement learning\n", "4.1.4 Self learning\n", "4.1.5 Feature learning\n", "4.1.6 Sparse dictionary learning\n", "4.1.7 Anomaly detection\n", "4.1.8 Association rules\n", "\n", "\n", "4.2 Models\n", "\n", "4.2.1 Artificial neural networks\n", "4.2.2 Decision trees\n", "4.2.3 Support vector machines\n", "4.2.4 Regression analysis\n", "4.2.5 Bayesian networks\n", "4.2.6 Genetic algorithms\n", "\n", "\n", "4.3 Training models\n", "\n", "4.3.1 Federated learning\n", "\n", "\n", "\n", "\n", "5 Applications\n", "6 Limitations\n", "\n", "6.1 Bias\n", "\n", "\n", "7 Model assessments\n", "8 Ethics\n", "9 Software\n", "\n", "9.1 Free and open-source software\n", "9.2 Proprietary software with free and open-source editions\n", "9.3 Proprietary software\n", "\n", "\n", "10 Journals\n", "11 Conferences\n", "12 See also\n", "13 References\n", "14 Further reading\n", "15 External links\n", "\n", "\n", "Overview[edit]\n", "The name machine learning was coined in 1959 by Arthur Samuel.[5] 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 experience E with respect to some class of tasks T and performance measure P if its performance at tasks in T, as measured by P, improves with experience E.\"[6] This definition of the tasks in which machine learning is concerned offers a fundamentally operational definition rather than defining the field in cognitive terms. This follows Alan 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?\".[7] In Turing's proposal the various characteristics that could be possessed by a thinking machine and the various implications in constructing one are exposed.\n", "\n", "Machine learning tasks[edit]\n", "\n", "\n", " A support vector machine is a supervised learning model that divides the data into regions separated by a linear boundary. Here, the linear boundary divides the black circles from the white.\n", "Machine learning tasks are classified into several broad categories. In supervised learning, the algorithm builds a mathematical model from a set of data that contains both the inputs and the desired outputs. For example, if the task were determining whether an image contained a certain object, the training data for a supervised learning algorithm would include images with and without that object (the input), and each image would have a label (the output) designating whether it contained the object. In special cases, the input may be only partially available, or restricted to special feedback.[clarification needed] Semi-supervised learning algorithms develop mathematical models from incomplete training data, where a portion of the sample input doesn't have labels.\n", "Classification algorithms and regression algorithms are types of supervised learning. Classification algorithms are used when the outputs are restricted to a limited set of values. For a classification algorithm that filters emails, the input would be an incoming email, and the output would be the name of the folder in which to file the email. For an algorithm that identifies spam emails, the output would be the prediction of either \"spam\" or \"not spam\", represented by the Boolean values true and false. Regression algorithms are named for their continuous outputs, meaning they may have any value within a range. Examples of a continuous value are the temperature, length, or price of an object.\n", "In unsupervised learning, the algorithm builds a mathematical model from a set of data that contains only inputs and no desired output labels. Unsupervised learning algorithms are used to find structure in the data, like grouping or clustering of data points. Unsupervised learning can discover patterns in the data, and can group the inputs into categories, as in feature learning. Dimensionality reduction is the process of reducing the number of \"features\", or inputs, in a set of data.\n", "Active learning algorithms access the desired outputs (training labels) for a limited set of inputs based on a budget and optimize the choice of inputs for which it will acquire training labels. When used interactively, these can be presented to a human user for labeling. Reinforcement learning algorithms are given feedback in the form of positive or negative reinforcement in a dynamic environment and are used in autonomous vehicles or in learning to play a game against a human opponent.[2]:3 Other specialized algorithms in machine learning include topic modeling, where the computer program is given a set of natural language documents and finds other documents that cover similar topics. Machine learning algorithms can be used to find the unobservable probability density function in density estimation problems. Meta learning algorithms learn their own inductive bias based on previous experience. In developmental robotics, robot learning algorithms generate their own sequences of learning experiences, also known as a curriculum, to cumulatively acquire new skills through self-guided exploration and social interaction with humans. These robots use guidance mechanisms such as active learning, maturation, motor synergies, and imitation.[clarification needed]\n", "\n", "History and relationships to other fields[edit]\n", "See also: Timeline of machine learning\n", "Arthur Samuel, an American pioneer in the field of computer gaming and artificial intelligence, coined the term \"Machine Learning\" in 1959 while at IBM.[8] A representative book of the machine learning research during the 1960s was the Nilsson's book on Learning Machines, dealing mostly with machine learning for pattern classification.[9] The interest of machine learning related to pattern recognition continued during the 1970s, as described in the book of Duda and Hart in 1973. [10] In 1981 a report was given on using teaching strategies so that a neural network learns to recognize 40 characters (26 letters, 10 digits, and 4 special symbols) from a computer terminal. [11] \n", "As a scientific endeavor, machine learning grew out of the quest for artificial intelligence. Already in the early days of AI as an academic discipline, some researchers were interested in having machines learn from data. They attempted to approach the problem with various symbolic methods, as well as what were then termed \"neural networks\"; these were mostly perceptrons and other models that were later found to be reinventions of the generalized linear models of statistics.[12] Probabilistic reasoning was also employed, especially in automated medical diagnosis.[13]:488\n", "However, an increasing emphasis on the logical, 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.[13]:488 By 1980, expert systems had come to dominate AI, and statistics was out of favor.[14] Work on symbolic/knowledge-based learning did continue within AI, leading to inductive logic programming, but the more statistical line of research was now outside the field of AI proper, in pattern recognition and information retrieval.[13]:708–710; 755 Neural networks research had been abandoned by AI and computer science around the same time. This line, too, was continued outside the AI/CS field, as \"connectionism\", by researchers from other disciplines including Hopfield, Rumelhart and Hinton. Their main success came in the mid-1980s with the reinvention of backpropagation.[13]:25\n", "Machine learning, reorganized as a separate 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 the symbolic approaches it had inherited from AI, and toward methods and models borrowed from statistics and probability theory.[14] It also benefited from the increasing availability of digitized information, and the ability to distribute it via the Internet.\n", "\n", "Relation to data mining[edit]\n", "Machine learning and data mining often employ the same methods and overlap significantly, but while machine learning focuses on prediction, based on known properties learned from the training data, data mining focuses on the discovery of (previously) unknown properties in the data (this is the analysis step of knowledge 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 to reproduce known knowledge, while in knowledge discovery and data mining (KDD) the key task is the discovery of previously unknown 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.\n", "\n", "Relation to optimization[edit]\n", "Machine learning also has intimate ties to optimization: many learning problems are formulated as minimization of some loss 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 a label to instances, and models are trained to correctly predict the pre-assigned labels of a set of examples). The difference between the two fields arises from the goal of generalization: while optimization algorithms can minimize the loss on a training set, machine learning is concerned with minimizing the loss on unseen samples.[15]\n", "\n", "Relation to statistics[edit]\n", "Machine learning and statistics are closely related fields in terms of methods, but distinct in their principal goal: statistics draws population inferences from a sample, while machine learning finds generalizable predictive patterns.[16] According to Michael I. Jordan, the ideas of machine learning, from methodological principles to theoretical tools, have had a long pre-history in statistics.[17] He also suggested the term data science as a placeholder to call the overall field.[17]\n", "Leo Breiman distinguished two statistical modeling paradigms: data model and algorithmic model,[18] wherein \"algorithmic model\" means more or less the machine learning algorithms like Random forest.\n", "Some statisticians have adopted methods from machine learning, leading to a combined field that they call statistical learning.[19]\n", "\n", " Theory[edit]\n", "Main articles: Computational learning theory and Statistical learning theory\n", "A core objective of a learner is to generalize from its experience.[2][20] 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.\n", "The computational analysis of machine learning algorithms and their performance is a branch of theoretical computer science known as computational learning theory. Because training sets are finite and the future is uncertain, learning theory usually does not yield guarantees of the performance of algorithms. Instead, probabilistic bounds on the performance are quite common. The bias–variance decomposition is one way to quantify generalization error.\n", "For the best performance in the context of generalization, 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 under fitted 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 to overfitting and generalization will be poorer.[21]\n", "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 in polynomial time. There are two kinds of time 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.\n", "\n", "Approaches[edit]\n", "Types of learning algorithms[edit]\n", "The types of machine learning algorithms differ in their approach, the type of data they input and output, and the type of task or problem that they are intended to solve.\n", "\n", "Supervised learning[edit]\n", "Main article: Supervised learning\n", "Supervised learning algorithms build a mathematical model of a set of data that contains both the inputs and the desired outputs.[22] The data is known as training data, and 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 an array or vector, sometimes called a feature vector, and the training data is represented by a matrix. Through iterative optimization of an objective function, supervised learning algorithms learn a function that can be used to predict the output associated with new inputs.[23] An optimal function will allow 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.[6]\n", "Supervised learning algorithms include classification and regression.[24] Classification algorithms are used when the outputs are restricted to a limited set of values, and regression algorithms are used when the outputs may have any numerical value within a range. 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 in ranking, recommendation systems, visual identity tracking, face verification, and speaker verification.\n", "In the case of semi-supervised learning algorithms, some of the training examples are missing training labels, but they can nevertheless be used to improve the quality of a model. In weakly supervised learning, the training labels are noisy, limited, or imprecise; however, these labels are often cheaper to obtain, resulting in larger effective training sets.[25]\n", "\n", "Unsupervised learning[edit]\n", "Main article: Unsupervised learningSee also: Cluster analysis\n", "Unsupervised learning algorithms take a set of data that contains only inputs, and find structure in the data, like grouping or clustering of data points. The algorithms, therefore, learn from test data that has not been labeled, classified or categorized. 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. A central application of unsupervised learning is in the field of density estimation in statistics,[26] though unsupervised learning encompasses other domains involving summarizing and explaining data features.\n", "Cluster analysis is the assignment of a set of observations into subsets (called clusters) 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 some similarity metric and evaluated, for example, by internal compactness, or the similarity between members of the same cluster, and separation, the difference between clusters. Other methods are based on estimated density and graph connectivity.\n", "Semi-supervised learning\n", "\n", "Main article: Semi-supervised learning\n", "Semi-supervised learning falls between unsupervised learning (without any labeled training data) and supervised learning (with completely labeled training data). Many machine-learning researchers have found that unlabeled data, when used in conjunction with a small amount of labeled data, can produce a considerable improvement in learning accuracy.\n", "\n", "Reinforcement learning[edit]\n", "Main article: Reinforcement learning\n", "Reinforcement learning is an area of machine learning concerned with how software agents ought to take actions in an environment so as to maximize some notion of cumulative reward. Due to its generality, the field is studied in many other disciplines, such as game theory, control theory, operations research, information theory, simulation-based optimization, multi-agent systems, swarm intelligence, statistics and genetic algorithms. In machine learning, the environment is typically represented as a Markov Decision Process (MDP). Many reinforcement learning algorithms use dynamic programming techniques.[27] Reinforcement learning algorithms do not assume knowledge of an exact mathematical model of the MDP, and are used when exact models are infeasible. Reinforcement learning algorithms are used in autonomous vehicles or in learning to play a game against a human opponent.\n", "\n", "Self learning[edit]\n", "Self-learning as machine learning paradigm was introduced in 1982 along with a neural network capable of self-learning named Crossbar Adaptive Array (CAA). [28] It is a learning with no external rewards and no external teacher advices. 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. [29]\n", "The self-learning algorithm updates a memory matrix W =||w(a,s)|| such that in each iteration executes the following machine learning routine: \n", "\n", " In situation s perform action a;\n", " Receive consequence situation s’;\n", " Compute emotion of being in consequence situation v(s’);\n", " Update crossbar memory w’(a,s) = w(a,s) + v(s’).\n", "\n", "It is a system with only one input, situation s, and only one output, action (or behavior) 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 behavioral environment where it behaves, and the other is genetic environment, wherefrom it initially and only once receives initial emotions about situations to be encountered in the behavioral environment. After receiving the genome (species) vector from the genetic environment, the CAA learns a goal seeking behavior, in an environment that contains both desirable and undesirable situations. [30]\n", "\n", "Feature learning[edit]\n", "Main article: Feature learning\n", "Several learning algorithms aim at discovering better representations of the inputs provided during training.[31] Classic examples include principal components 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 manual feature engineering, and allows a machine to both learn the features and use them to perform a specific task.\n", "Feature learning can be either supervised or unsupervised. In supervised feature learning, features are learned using labeled input data. Examples include artificial neural networks, multilayer perceptrons, and supervised dictionary learning. In unsupervised feature learning, features are learned with unlabeled input data. Examples include dictionary learning, independent component analysis, autoencoders, matrix factorization[32] and various forms of clustering.[33][34][35]\n", "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 from tensor representations for multidimensional data, without reshaping them into higher-dimensional vectors.[36] 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 is one that learns a representation that disentangles the underlying factors of variation that explain the observed data.[37]\n", "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 has not yielded to attempts to algorithmically define specific features. An alternative is to discover such features or representations through examination, without relying on explicit algorithms.\n", "\n", "Sparse dictionary learning[edit]\n", "Main article: Sparse dictionary learning\n", "Sparse dictionary learning is a feature learning method where a training example is represented as a linear combination of basis functions, and is assumed to be a sparse matrix. The method is strongly NP-hard and difficult to solve approximately.[38] A popular heuristic method for sparse dictionary learning is the K-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 in image de-noising. The key idea is that a clean image patch can be sparsely represented by an image dictionary, but the noise cannot.[39]\n", "\n", "Anomaly detection[edit]\n", "Main article: Anomaly detection\n", "In data mining, anomaly detection, also known as outlier detection, is the identification of rare items, events or observations which raise suspicions by differing significantly from the majority of the data.[40] Typically, the anomalous items represent an issue such as bank fraud, a structural defect, medical problems or errors in a text. Anomalies are referred to as outliers, novelties, noise, deviations and exceptions.[41]\n", "In particular, in the context of abuse and network intrusion detection, the interesting objects are often not rare objects, but unexpected bursts in activity. This pattern does not adhere to the common statistical definition of an outlier as a rare object, and many outlier detection methods (in particular, unsupervised algorithms) will fail on such data, unless it has been aggregated appropriately. Instead, a cluster analysis algorithm may be able to detect the micro-clusters formed by these patterns.[42]\n", "Three broad categories of anomaly detection techniques exist.[43] Unsupervised anomaly detection techniques detect anomalies in an unlabeled 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 least to the remainder of the data set. Supervised anomaly detection techniques require a data set that has been labeled as \"normal\" and \"abnormal\" and involves training a classifier (the key difference to many other statistical classification problems is the inherently unbalanced nature of outlier detection). Semi-supervised anomaly detection techniques construct a model representing normal behavior from a given normal training data set and then test the likelihood of a test instance to be generated by the model.\n", "\n", "Association rules[edit]\n", "Main article: Association rule learningSee also: Inductive logic programming\n", "Association rule learning is a rule-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\".[44]\n", "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 utilization 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.[45] Rule-based machine learning approaches include learning classifier systems, association rule learning, and artificial immune systems.\n", "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 by point-of-sale (POS) systems in supermarkets.[46] For example, the rule \n", "\n", "\n", "\n", "{\n", "\n", "o\n", "n\n", "i\n", "o\n", "n\n", "s\n", ",\n", "p\n", "o\n", "t\n", "a\n", "t\n", "o\n", "e\n", "s\n", "\n", "}\n", "⇒\n", "{\n", "\n", "b\n", "u\n", "r\n", "g\n", "e\n", "r\n", "\n", "}\n", "\n", "\n", "{\\displaystyle \\{\\mathrm {onions,potatoes} \\}\\Rightarrow \\{\\mathrm {burger} \\}}\n", "\n", " 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 promotional pricing or product placements. In addition to market basket analysis, association rules are employed today in application areas including Web usage mining, intrusion detection, continuous production, and bioinformatics. In contrast with sequence mining, association rule learning typically does not consider the order of items either within a transaction or across transactions.\n", "Learning classifier systems (LCS) are a family of rule-based machine learning algorithms that combine a discovery component, typically a genetic algorithm, with a learning component, performing either supervised learning, reinforcement learning, or unsupervised learning. They seek to identify a set of context-dependent rules that collectively store and apply knowledge in a piecewise manner in order to make predictions.[47]\n", "Inductive logic programming (ILP) is an approach to rule-learning using logic 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 that entails all positive and no negative examples. Inductive programming is a related field that considers any kind of programming languages for representing hypotheses (and not only logic programming), such as functional programs.\n", "Inductive logic programming is particularly useful in bioinformatics and natural language processing. Gordon Plotkin and Ehud Shapiro laid the initial theoretical foundation for inductive machine learning in a logical setting.[48][49][50] Shapiro built their first implementation (Model Inference System) in 1981: a Prolog program that inductively inferred logic programs from positive and negative examples.[51] The term inductive here refers to philosophical induction, suggesting a theory to explain observed facts, rather than mathematical induction, proving a property for all members of a well-ordered set.\n", "\n", "Models[edit]\n", "Performing machine learning involves creating a model, which is trained on some training data and then can process additional data to make predictions. Various types of models have been used and researched for machine learning systems.\n", "\n", "Artificial neural networks[edit]\n", "Main article: Artificial neural networkSee also: Deep learning\n", " An artificial neural network is an interconnected group of nodes, akin to the vast network of neurons in a brain. Here, each circular node represents an artificial neuron and an arrow represents a connection from the output of one artificial neuron to the input of another.\n", "Artificial neural networks (ANNs), or connectionist systems, are computing systems vaguely inspired by the biological neural networks that constitute animal brains. Such systems \"learn\" to perform tasks by considering examples, generally without being programmed with any task-specific rules.\n", "An ANN is a model based on a collection of connected units or nodes called \"artificial neurons\", which loosely model the neurons in a biological brain. Each connection, like the synapses 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 a real 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 a weight 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.\n", "The original goal of the ANN approach was to solve problems in the same way that a human brain would. However, over time, attention moved to performing specific tasks, leading to deviations from biology. Artificial neural networks have been used on a variety of tasks, including computer vision, speech recognition, machine translation, social network filtering, playing board and video games and medical diagnosis.\n", "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.[52]\n", "\n", "Decision trees[edit]\n", "Main article: Decision tree learning\n", "Decision tree learning uses a decision tree as a predictive 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 modeling 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 represent conjunctions of features that lead to those class labels. Decision trees where the target variable can take continuous values (typically real numbers) are called regression trees. In decision analysis, a decision tree can be used to visually and explicitly represent decisions and decision making. In data mining, a decision tree describes data, but the resulting classification tree can be an input for decision making.\n", "\n", "Support vector machines[edit]\n", "Main article: Support vector machines\n", "Support vector machines (SVMs), also known as support vector networks, are a set of related supervised 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 or the other.[53] An SVM training algorithm is a non-probabilistic, binary, linear classifier, although methods such as Platt 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 the kernel trick, implicitly mapping their inputs into high-dimensional feature spaces.\n", "\n", " Illustration of linear regression on a data set.\n", "Regression analysis[edit]\n", "Main article: Regression analysis\n", "Regression analysis encompasses a large variety of statistical methods to estimate the relationship between input variables and their associated features. Its most common form is linear regression, where a single line is drawn to best fit the given data according to a mathematical criterion such as ordinary least squares. The latter is oftentimes extended by regularization (mathematics) methods to mitigate overfitting and high bias, as can be seen in ridge regression. When dealing with non-linear problems, go-to models include polynomial regression (e.g. used for trendline fitting in Microsoft Excel [54]), Logistic regression (often used in statistical classification) or even kernel regression, which introduces non-linearity by taking advantage of the kernel trick to implicitly map input variables to higher dimensional space. \n", "\n", "Bayesian networks[edit]\n", "Main article: Bayesian network\n", " A simple Bayesian network. Rain influences whether the sprinkler is activated, and both rain and the sprinkler influence whether the grass is wet.\n", "A Bayesian network, belief network or directed acyclic graphical model is a probabilistic graphical model that represents a set of random variables and their conditional independence with a directed 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 perform inference and learning. Bayesian networks that model sequences of variables, like speech signals or protein sequences, are called dynamic Bayesian networks. Generalizations of Bayesian networks that can represent and solve decision problems under uncertainty are called influence diagrams.\n", "\n", "Genetic algorithms[edit]\n", "Main article: Genetic algorithm\n", "A genetic algorithm (GA) is a search algorithm and heuristic technique that mimics the process of natural selection, using methods such as mutation and crossover to generate new genotypes in the hope of finding good solutions to a given problem. In machine learning, genetic algorithms were used in the 1980s and 1990s.[55][56] Conversely, machine learning techniques have been used to improve the performance of genetic and evolutionary algorithms.[57]\n", "\n", "Training models[edit]\n", "Usually, machine learning models require a lot of data in order for them to perform well. Usually, when training a machine learning model, one needs to collect a large, representative sample of data from a training set. Data from the training set can be as varied as a corpus of text, a collection of images, and data collected from individual users of a service. Overfitting is something to watch out for when training a machine learning model.\n", "\n", "Federated learning[edit]\n", "Main article: Federated learning\n", "Federated learning is a new approach to training machine learning models that decentralizes the training process, allowing for users' privacy to be maintained by not needing to send their data to a centralized server. This also increases efficiency by decentralizing 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 to Google.[58]\n", "\n", "Applications[edit]\n", "There are many applications for machine learning, including:\n", "\n", "\n", "Agriculture\n", "Anatomy\n", "Adaptive websites\n", "Affective computing\n", "Banking\n", "Bioinformatics\n", "Brain–machine interfaces\n", "Cheminformatics\n", "Citizen science\n", "Computer networks\n", "Computer vision\n", "Credit-card fraud detection\n", "Data quality\n", "DNA sequence classification\n", "Economics\n", "Financial market analysis [59]\n", "General game playing\n", "Handwriting recognition\n", "Information retrieval\n", "Insurance\n", "Internet fraud detection\n", "Linguistics\n", "Machine learning control\n", "Machine perception\n", "Machine translation\n", "Marketing\n", "Medical diagnosis\n", "Natural language processing\n", "Natural language understanding\n", "Online advertising\n", "Optimization\n", "Recommender systems\n", "Robot locomotion\n", "Search engines\n", "Sentiment analysis\n", "Sequence mining\n", "Software engineering\n", "Speech recognition\n", "Structural health monitoring\n", "Syntactic pattern recognition\n", "Telecommunication\n", "Theorem proving\n", "Time series forecasting\n", "User behavior analytics\n", "\n", "In 2006, the media-services provider Netflix held the first \"Netflix Prize\" competition to find a program to better predict user preferences and improve the accuracy on its existing Cinematch movie recommendation algorithm by at least 10%. A joint team made up of researchers from AT&T Labs-Research in collaboration with the teams Big Chaos and Pragmatic Theory built an ensemble model to win the Grand Prize in 2009 for $1 million.[60] Shortly after the prize was awarded, Netflix realized that viewers' ratings were not the best indicators of their viewing patterns (\"everything is a recommendation\") and they changed their recommendation engine accordingly.[61] In 2010 The Wall Street Journal wrote about the firm Rebellion Research and their use of machine learning to predict the financial crisis.[62] In 2012, co-founder of Sun 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.[63] 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 unrecognized influences among artists.[64] In 2019 Springer Nature published the first research book created using machine learning.[65]\n", "\n", "Limitations[edit]\n", "Although machine learning has been transformative in some fields, machine-learning programs often fail to deliver expected results.[66][67][68] 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.[69]\n", "In 2018, a self-driving car from Uber failed to detect a pedestrian, who was killed after a collision.[70] Attempts to use machine learning in healthcare with the IBM Watson system failed to deliver even after years of time and billions of investment.[71][72]\n", "\n", "Bias[edit]\n", "Main article: Algorithmic bias\n", "Machine learning approaches in particular can suffer from different data biases. A machine learning system trained on current customers only may not be able to predict the needs of new customer groups that are not represented in the training data. When trained on man-made data, machine learning is likely to pick up the same constitutional and unconscious biases already present in society.[73] Language models learned from data have been shown to contain human-like biases.[74][75] Machine learning systems used for criminal risk assessment have been found to be biased against black people.[76][77] In 2015, Google photos would often tag black people as gorillas,[78] and in 2018 this still was not well resolved, but Google reportedly was still using the workaround to remove all gorillas from the training data, and thus was not able to recognize real gorillas at all.[79] Similar issues with recognizing non-white people have been found in many other systems.[80] In 2016, Microsoft tested a chatbot that learned from Twitter, and it quickly picked up racist and sexist language.[81] Because of such challenges, the effective use of machine learning may take longer to be adopted in other domains.[82] Concern for fairness in machine learning, that is, reducing bias in machine learning and propelling its use for human good is increasingly expressed by artificial intelligence scientists, including Fei-Fei Li, who reminds engineers that \"There’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.”[83]\n", "\n", "Model assessments[edit]\n", "Classification machine learning models can be validated by accuracy estimation techniques like the Holdout method, which splits the data in 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 respectively 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.[84]\n", "In addition to overall accuracy, investigators frequently report sensitivity and specificity meaning True Positive Rate (TPR) and True Negative Rate (TNR) respectively. Similarly, investigators sometimes report the False Positive Rate (FPR) as well as the False Negative Rate (FNR). However, these rates are ratios that fail to reveal their numerators and denominators. The Total Operating Characteristic (TOC) is an effective method to express a model's diagnostic ability. TOC shows the numerators and denominators of the previously mentioned rates, thus TOC provides more information than the commonly used Receiver Operating Characteristic (ROC) and ROC's associated Area Under the Curve (AUC).[85]\n", "\n", "Ethics[edit]\n", "Machine learning poses a host of ethical questions. Systems which are trained on datasets collected with biases may exhibit these biases upon use (algorithmic bias), thus digitizing cultural prejudices.[86] For example, 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 against similarity to previous successful applicants.[87][88] Responsible collection of data and documentation of algorithmic rules used by a system thus is a critical part of machine learning.\n", "Because human languages contain biases, machines trained on language corpora will necessarily also learn these biases.[89][90]\n", "Other forms of ethical challenges, not related to personal biases, are more seen in health care. 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 perpetual ethical dilemma of improving health care, but also increase 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 in. There is huge potential for machine learning in health care to provide professionals a great tool to diagnose, medicate, and even plan recovery paths for patients, but this will not happen until the personal biases mentioned previously, and these \"greed\" biases are addressed.[91]\n", "\n", "Software[edit]\n", "Software suites containing a variety of machine learning algorithms include the following:\n", "\n", "Free and open-source software[edit]\n", "\n", "CNTK\n", "Deeplearning4j\n", "ELKI\n", "Keras\n", "Caffe\n", "ML.NET\n", "Mahout\n", "Mallet\n", "mlpack\n", "MXNet\n", "Neural Lab\n", "GNU Octave\n", "OpenNN\n", "Orange\n", "scikit-learn\n", "Shogun\n", "Spark MLlib\n", "Apache SystemML\n", "TensorFlow\n", "ROOT (TMVA with ROOT)\n", "Torch / PyTorch\n", "Weka / MOA\n", "Yooreeka\n", "R\n", "\n", "Proprietary software with free and open-source editions[edit]\n", "\n", "KNIME\n", "RapidMiner\n", "\n", "Proprietary software[edit]\n", "\n", "Amazon Machine Learning\n", "Angoss KnowledgeSTUDIO\n", "Azure Machine Learning\n", "Ayasdi\n", "IBM Data Science Experience\n", "Google Prediction API\n", "IBM SPSS Modeler\n", "KXEN Modeler\n", "LIONsolver\n", "Mathematica\n", "MATLAB\n", "Microsoft Azure\n", "Neural Designer\n", "NeuroSolutions\n", "Oracle Data Mining\n", "Oracle AI Platform Cloud Service\n", "RCASE\n", "SAS Enterprise Miner\n", "SequenceL\n", "Splunk\n", "STATISTICA Data Miner\n", "\n", "Journals[edit]\n", "Journal of Machine Learning Research\n", "Machine Learning\n", "Nature Machine Intelligence\n", "Neural Computation\n", "Conferences[edit]\n", "Conference on Neural Information Processing Systems\n", "International Conference on Machine Learning\n", "See also[edit]\n", "\n", "Automated machine learning\n", "Big data\n", "Explanation-based learning\n", "Important publications in machine learning\n", "List of datasets for machine learning research\n", "Predictive analytics\n", "Quantum machine learning\n", "Machine-learning applications in bioinformatics\n", "Seq2seq\n", "Fairness (machine learning)\n", "\n", "References[edit]\n", "\n", "\n", "^ The definition \"without being explicitly programmed\" is often attributed to Arthur Samuel, who coined the term \"machine learning\" in 1959, but the phrase is not found verbatim in this publication, and may be a paraphrase that appeared later. Confer \"Paraphrasing Arthur Samuel (1959), the question is: How can computers learn to solve problems without being explicitly programmed?\" in Koza, 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. Springer, Dordrecht. pp. 151–170. doi:10.1007/978-94-009-0279-4_9..mw-parser-output cite.citation{font-style:inherit}.mw-parser-output .citation q{quotes:\"\\\"\"\"\\\"\"\"'\"\"'\"}.mw-parser-output .id-lock-free a,.mw-parser-output .citation .cs1-lock-free a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/6/65/Lock-green.svg/9px-Lock-green.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .id-lock-limited a,.mw-parser-output .id-lock-registration a,.mw-parser-output .citation .cs1-lock-limited a,.mw-parser-output .citation .cs1-lock-registration a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Lock-gray-alt-2.svg/9px-Lock-gray-alt-2.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .id-lock-subscription a,.mw-parser-output .citation .cs1-lock-subscription a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/a/aa/Lock-red-alt-2.svg/9px-Lock-red-alt-2.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration{color:#555}.mw-parser-output .cs1-subscription span,.mw-parser-output .cs1-registration span{border-bottom:1px dotted;cursor:help}.mw-parser-output .cs1-ws-icon a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/4/4c/Wikisource-logo.svg/12px-Wikisource-logo.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output code.cs1-code{color:inherit;background:inherit;border:inherit;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;font-size:100%}.mw-parser-output .cs1-visible-error{font-size:100%}.mw-parser-output .cs1-maint{display:none;color:#33aa33;margin-left:0.3em}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration,.mw-parser-output .cs1-format{font-size:95%}.mw-parser-output .cs1-kern-left,.mw-parser-output .cs1-kern-wl-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right,.mw-parser-output .cs1-kern-wl-right{padding-right:0.2em}\n", "\n", "^ a b c d Bishop, C. M. (2006), Pattern Recognition and Machine Learning, Springer, ISBN 978-0-387-31073-2\n", "\n", "^ Machine learning and pattern recognition \"can be viewed as two facets of the same field.\"[2]:vii\n", "\n", "^ Friedman, Jerome H. (1998). \"Data Mining and Statistics: What's the connection?\". Computing Science and Statistics. 29 (1): 3–9.\n", "\n", "^ Samuel, Arthur (1959). \"Some Studies in Machine Learning Using the Game of Checkers\". IBM Journal of Research and Development. 3 (3): 210–229. CiteSeerX 10.1.1.368.2254. doi:10.1147/rd.33.0210.\n", "\n", "^ a b Mitchell, T. (1997). Machine Learning. McGraw Hill. p. 2. ISBN 978-0-07-042807-2.\n", "\n", "^ Harnad, Stevan (2008), \"The Annotation Game: On Turing (1950) on Computing, Machinery, and Intelligence\", in Epstein, Robert; Peters, Grace (eds.), The Turing Test Sourcebook: Philosophical and Methodological Issues in the Quest for the Thinking Computer, Kluwer, pp. 23–66, ISBN 9781402067082\n", "\n", "^ R. Kohavi and F. Provost, \"Glossary of terms,\" Machine Learning, vol. 30, no. 2–3, pp. 271–274, 1998.\n", "\n", "^ Nilsson N. Learning Machines, McGraw Hill, 1965. \n", "\n", "^ Duda, R., Hart P. Pattern Recognition and Scene Analysis, Wiley Interscience, 1973 \n", "\n", "^ S. Bozinovski \"Teaching space: A representation concept for adaptive pattern classification\" COINS Technical Report No. 81-28, Computer and Information Science Department, University of Massachusetts at Amherst, MA, 1981. https://web.cs.umass.edu/publication/docs/1981/UM-CS-1981-028.pdf \n", "\n", "^ Sarle, Warren (1994). \"Neural Networks and statistical models\". CiteSeerX 10.1.1.27.699.\n", "\n", "^ a b c d Russell, Stuart; Norvig, Peter (2003) [1995]. Artificial Intelligence: A Modern Approach (2nd ed.). Prentice Hall. ISBN 978-0137903955.\n", "\n", "^ a b Langley, Pat (2011). \"The changing science of machine learning\". Machine Learning. 82 (3): 275–279. doi:10.1007/s10994-011-5242-y.\n", "\n", "^ Le Roux, Nicolas; Bengio, Yoshua; Fitzgibbon, Andrew (2012). \"Improving+First+and+Second-Order+Methods+by+Modeling+Uncertainty \"Improving First and Second-Order Methods by Modeling Uncertainty\". In Sra, Suvrit; Nowozin, Sebastian; Wright, Stephen J. (eds.). Optimization for Machine Learning. MIT Press. p. 404. ISBN 9780262016469.\n", "\n", "^ Bzdok, Danilo; Altman, Naomi; Krzywinski, Martin (2018). \"Statistics versus Machine Learning\". Nature Methods. 15 (4): 233–234. doi:10.1038/nmeth.4642. PMC 6082636. PMID 30100822.\n", "\n", "^ a b Michael I. Jordan (2014-09-10). \"statistics and machine learning\". reddit. Retrieved 2014-10-01.\n", "\n", "^ Cornell University Library. \"Breiman: Statistical Modeling: The Two Cultures (with comments and a rejoinder by the author)\". Retrieved 8 August 2015.\n", "\n", "^ Gareth James; Daniela Witten; Trevor Hastie; Robert Tibshirani (2013). An Introduction to Statistical Learning. Springer. p. vii.\n", "\n", "^ Mohri, Mehryar; Rostamizadeh, Afshin; Talwalkar, Ameet (2012). Foundations of Machine Learning. USA, Massachusetts: MIT Press. ISBN 9780262018258.\n", "\n", "^ Alpaydin, Ethem (2010). Introduction to Machine Learning. London: The MIT Press. ISBN 978-0-262-01243-0. Retrieved 4 February 2017.\n", "\n", "^ Russell, Stuart J.; Norvig, Peter (2010). Artificial Intelligence: A Modern Approach (Third ed.). Prentice Hall. ISBN 9780136042594.\n", "\n", "^ Mohri, Mehryar; Rostamizadeh, Afshin; Talwalkar, Ameet (2012). Foundations of Machine Learning. The MIT Press. ISBN 9780262018258.\n", "\n", "^ Alpaydin, Ethem (2010). Introduction to Machine Learning. MIT Press. p. 9. ISBN 978-0-262-01243-0.\n", "\n", "^ Alex Ratner; Stephen Bach; Paroma Varma; Chris. \"Weak Supervision: The New Programming Paradigm for Machine Learning\". hazyresearch.github.io. referencing work by many other members of Hazy Research. Retrieved 2019-06-06.\n", "\n", "^ 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. ISBN 978-1-58488-360-9.\n", "\n", "^ van Otterlo, M.; Wiering, M. (2012). Reinforcement learning and markov decision processes. Reinforcement Learning. Adaptation, Learning, and Optimization. 12. pp. 3–42. doi:10.1007/978-3-642-27645-3_1. ISBN 978-3-642-27644-6.\n", "\n", "^ 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. ISBN 978-0-444-86488-8.\n", "\n", "^ Bozinovski, Stevo (2014) \"Modeling mechanisms of cognition-emotion interaction in artificial neural networks, since 1981.\" Procedia Computer Science p. 255-263 \n", "\n", "^ Bozinovski, S. (2001) \"Self-learning agents: A connectionist theory of emotion based on crossbar value judgment.\" Cybernetics and Systems 32(6) 637-667. \n", "\n", "^ Y. Bengio; A. Courville; P. Vincent (2013). \"Representation Learning: A Review and New Perspectives\". IEEE Transactions on Pattern Analysis and Machine Intelligence. 35 (8): 1798–1828. arXiv:1206.5538. doi:10.1109/tpami.2013.50. PMID 23787338.\n", "\n", "^ Nathan Srebro; Jason D. M. Rennie; Tommi S. Jaakkola (2004). Maximum-Margin Matrix Factorization. NIPS.\n", "\n", "^ Coates, Adam; Lee, Honglak; Ng, Andrew Y. (2011). An analysis of single-layer networks in unsupervised feature learning (PDF). Int'l Conf. on AI and Statistics (AISTATS).\n", "\n", "^ 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.\n", "\n", "^ Daniel Jurafsky; James H. Martin (2009). Speech and Language Processing. Pearson Education International. pp. 145–146.\n", "\n", "^ Lu, Haiping; Plataniotis, K.N.; Venetsanopoulos, A.N. (2011). \"A Survey of Multilinear Subspace Learning for Tensor Data\" (PDF). Pattern Recognition. 44 (7): 1540–1551. doi:10.1016/j.patcog.2011.01.004.\n", "\n", "^ Yoshua Bengio (2009). Learning Deep Architectures for AI. Now Publishers Inc. pp. 1–3. ISBN 978-1-60198-294-0.\n", "\n", "^ Tillmann, A. M. (2015). \"On the Computational Intractability of Exact and Approximate Dictionary Learning\". IEEE Signal Processing Letters. 22 (1): 45–49. arXiv:1405.6664. Bibcode:2015ISPL...22...45T. doi:10.1109/LSP.2014.2345761.\n", "\n", "^ Aharon, M, M Elad, and A Bruckstein. 2006. \"K-SVD: An Algorithm for Designing Overcomplete Dictionaries for Sparse Representation.\" Signal Processing, IEEE Transactions on 54 (11): 4311–4322\n", "\n", "^ Zimek, Arthur; Schubert, Erich (2017), \"Outlier Detection\", Encyclopedia of Database Systems, Springer New York, pp. 1–5, doi:10.1007/978-1-4899-7993-3_80719-1, ISBN 9781489979933\n", "\n", "^ Hodge, V. J.; Austin, J. (2004). \"A Survey of Outlier Detection Methodologies\" (PDF). Artificial Intelligence Review. 22 (2): 85–126. CiteSeerX 10.1.1.318.4023. doi:10.1007/s10462-004-4304-y.\n", "\n", "^ 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.\n", "\n", "^ Chandola, V.; Banerjee, A.; Kumar, V. (2009). \"Anomaly detection: A survey\". ACM Computing Surveys. 41 (3): 1–58. doi:10.1145/1541880.1541882.\n", "\n", "^ 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.\n", "\n", "^ Bassel, George W.; Glaab, Enrico; Marquez, Julietta; Holdsworth, Michael J.; Bacardit, Jaume (2011-09-01). \"Functional Network Construction in Arabidopsis Using Rule-Based Machine Learning on Large-Scale Data Sets\". The Plant Cell. 23 (9): 3101–3116. doi:10.1105/tpc.111.088153. ISSN 1532-298X. PMC 3203449. PMID 21896882.\n", "\n", "^ Agrawal, R.; Imieliński, T.; Swami, A. (1993). \"Mining association rules between sets of items in large databases\". Proceedings of the 1993 ACM SIGMOD international conference on Management of data - SIGMOD '93. p. 207. CiteSeerX 10.1.1.40.6984. doi:10.1145/170035.170072. ISBN 978-0897915922.\n", "\n", "^ Urbanowicz, Ryan J.; Moore, Jason H. (2009-09-22). \"Learning Classifier Systems: A Complete Introduction, Review, and Roadmap\". Journal of Artificial Evolution and Applications. 2009: 1–25. doi:10.1155/2009/736398. ISSN 1687-6229.\n", "\n", "^ Plotkin G.D. Automatic Methods of Inductive Inference, PhD thesis, University of Edinburgh, 1970.\n", "\n", "^ Shapiro, Ehud Y. Inductive inference of theories from facts, 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.\n", "\n", "^ Shapiro, Ehud Y. (1983). Algorithmic program debugging. Cambridge, Mass: MIT Press. ISBN 0-262-19218-7\n", "\n", "^ Shapiro, Ehud Y. \"The model inference system.\" Proceedings of the 7th international joint conference on Artificial intelligence-Volume 2. Morgan Kaufmann Publishers Inc., 1981.\n", "\n", "^ Honglak Lee, Roger Grosse, Rajesh Ranganath, Andrew Y. Ng. \"Convolutional Deep Belief Networks for Scalable Unsupervised Learning of Hierarchical Representations\" Proceedings of the 26th Annual International Conference on Machine Learning, 2009.\n", "\n", "^ Cortes, Corinna; Vapnik, Vladimir N. (1995). \"Support-vector networks\". Machine Learning. 20 (3): 273–297. doi:10.1007/BF00994018.\n", "\n", "^ Stevenson, Christopher. \"Tutorial: Polynomial Regression in Excel\". facultystaff.richmond.edu. Retrieved 22 January 2017.\n", "\n", "^ Goldberg, David E.; Holland, John H. (1988). \"Genetic algorithms and machine learning\" (PDF). Machine Learning. 3 (2): 95–99. doi:10.1007/bf00113892.\n", "\n", "^ 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.\n", "\n", "^ Zhang, Jun; Zhan, Zhi-hui; Lin, Ying; Chen, Ni; Gong, Yue-jiao; Zhong, Jing-hui; Chung, Henry S.H.; Li, Yun; Shi, Yu-hui (2011). \"Evolutionary Computation Meets Machine Learning: A Survey\". Computational Intelligence Magazine. 6 (4): 68–75. doi:10.1109/mci.2011.942584.\n", "\n", "^ \"Federated Learning: Collaborative Machine Learning without Centralized Training Data\". Google AI Blog. Retrieved 2019-06-08.\n", "\n", "^ Machine learning is included in the CFA Curriculum (discussion is top down); see: Kathleen DeRose and Christophe Le Lanno (2020). \"Machine Learning\".\n", "\n", "^ \"BelKor Home Page\" research.att.com\n", "\n", "^ \"The Netflix Tech Blog: Netflix Recommendations: Beyond the 5 stars (Part 1)\". 2012-04-06. Retrieved 8 August 2015.\n", "\n", "^ Scott Patterson (13 July 2010). \"Letting the Machines Decide\". The Wall Street Journal. Retrieved 24 June 2018.\n", "\n", "^ Vinod Khosla (January 10, 2012). \"Do We Need Doctors or Algorithms?\". Tech Crunch.\n", "\n", "^ When A Machine Learning Algorithm Studied Fine Art Paintings, It Saw Things Art Historians Had Never Noticed, The Physics at ArXiv blog\n", "\n", "^ Vincent, James (2019-04-10). \"The first AI-generated textbook shows what robot writers are actually good at\". The Verge. Retrieved 2019-05-05.\n", "\n", "^ \"Why Machine Learning Models Often Fail to Learn: QuickTake Q&A\". Bloomberg.com. 2016-11-10. Retrieved 2017-04-10.\n", "\n", "^ \"The First Wave of Corporate AI Is Doomed to Fail\". Harvard Business Review. 2017-04-18. Retrieved 2018-08-20.\n", "\n", "^ \"Why the A.I. euphoria is doomed to fail\". VentureBeat. 2016-09-18. Retrieved 2018-08-20.\n", "\n", "^ \"9 Reasons why your machine learning project will fail\". www.kdnuggets.com. Retrieved 2018-08-20.\n", "\n", "^ \"Why Uber's self-driving car killed a pedestrian\". The Economist. Retrieved 2018-08-20.\n", "\n", "^ \"IBM's Watson recommended 'unsafe and incorrect' cancer treatments - STAT\". STAT. 2018-07-25. Retrieved 2018-08-21.\n", "\n", "^ Hernandez, Daniela; Greenwald, Ted (2018-08-11). \"IBM Has a Watson Dilemma\". Wall Street Journal. ISSN 0099-9660. Retrieved 2018-08-21.\n", "\n", "^ Garcia, Megan (2016). \"Racist in the Machine\". World Policy Journal. 33 (4): 111–117. doi:10.1215/07402775-3813015. ISSN 0740-2775.\n", "\n", "^ Caliskan, Aylin; Bryson, Joanna J.; Narayanan, Arvind (2017-04-14). \"Semantics derived automatically from language corpora contain human-like biases\". Science. 356 (6334): 183–186. arXiv:1608.07187. Bibcode:2017Sci...356..183C. doi:10.1126/science.aal4230. ISSN 0036-8075. PMID 28408601.\n", "\n", "^ 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, retrieved 2018-08-20\n", "\n", "^ Julia Angwin; Jeff Larson; Lauren Kirchner; Surya Mattu (2016-05-23). \"Machine Bias\". ProPublica. Retrieved 2018-08-20.\n", "\n", "^ \"Opinion | When an Algorithm Helps Send You to Prison\". New York Times. Retrieved 2018-08-20.\n", "\n", "^ \"Google apologises for racist blunder\". BBC News. 2015-07-01. Retrieved 2018-08-20.\n", "\n", "^ \"Google 'fixed' its racist algorithm by removing gorillas from its image-labeling tech\". The Verge. Retrieved 2018-08-20.\n", "\n", "^ \"Opinion | Artificial Intelligence's White Guy Problem\". New York Times. Retrieved 2018-08-20.\n", "\n", "^ Metz, Rachel. \"Why Microsoft's teen chatbot, Tay, said lots of awful things online\". MIT Technology Review. Retrieved 2018-08-20.\n", "\n", "^ Simonite, Tom. \"Microsoft says its racist chatbot illustrates how AI isn't adaptable enough to help most businesses\". MIT Technology Review. Retrieved 2018-08-20.\n", "\n", "^ Hempel, Jessi (2018-11-13). \"Fei-Fei Li's Quest to Make Machines Better for Humanity\". Wired. ISSN 1059-1028. Retrieved 2019-02-17.\n", "\n", "^ Kohavi, Ron (1995). \"A Study of Cross-Validation and Bootstrap for Accuracy Estimation and Model Selection\" (PDF). International Joint Conference on Artificial Intelligence.\n", "\n", "^ Pontius, Robert Gilmore; Si, Kangping (2014). \"The total operating characteristic to measure diagnostic ability for multiple thresholds\". International Journal of Geographical Information Science. 28 (3): 570–583. doi:10.1080/13658816.2013.862623.\n", "\n", "^ Bostrom, Nick (2011). \"The Ethics of Artificial Intelligence\" (PDF). Retrieved 11 April 2016.\n", "\n", "^ Edionwe, Tolulope. \"The fight against racist algorithms\". The Outline. Retrieved 17 November 2017.\n", "\n", "^ Jeffries, Adrianne. \"Machine learning is racist because the internet is racist\". The Outline. Retrieved 17 November 2017.\n", "\n", "^ Prates, Marcelo O. R. (11 Mar 2019). \"Assessing Gender Bias in Machine Translation -- A Case Study with Google Translate\". arXiv:1809.02208 [cs.CY].\n", "\n", "^ Narayanan, Arvind (August 24, 2016). \"Language necessarily contains human biases, and so will machines trained on language corpora\". Freedom to Tinker.\n", "\n", "^ Char, D. S.; Shah, N. H.; Magnus, D. (2018). \"Implementing Machine Learning in Health Care—Addressing Ethical Challenges\". New England Journal of Medicine. 378 (11): 981–983. doi:10.1056/nejmp1714229. PMC 5962261. PMID 29539284.\n", "\n", "\n", "Further reading[edit]\n", ".mw-parser-output .refbegin{font-size:90%;margin-bottom:0.5em}.mw-parser-output .refbegin-hanging-indents>ul{list-style-type:none;margin-left:0}.mw-parser-output .refbegin-hanging-indents>ul>li,.mw-parser-output .refbegin-hanging-indents>dl>dd{margin-left:0;padding-left:3.2em;text-indent:-3.2em;list-style:none}.mw-parser-output .refbegin-100{font-size:100%}\n", "Nils J. Nilsson, Introduction to Machine Learning.\n", "Trevor Hastie, Robert Tibshirani and Jerome H. Friedman (2001). The Elements of Statistical Learning, Springer. ISBN 0-387-95284-5.\n", "Pedro Domingos (September 2015), The Master Algorithm, Basic Books, ISBN 978-0-465-06570-7\n", "Ian H. Witten and Eibe Frank (2011). Data Mining: Practical machine learning tools and techniques Morgan Kaufmann, 664pp., ISBN 978-0-12-374856-0.\n", "Ethem Alpaydin (2004). Introduction to Machine Learning, MIT Press, ISBN 978-0-262-01243-0.\n", "David J. C. MacKay. Information Theory, Inference, and Learning Algorithms Cambridge: Cambridge University Press, 2003. ISBN 0-521-64298-1\n", "Richard O. Duda, Peter E. Hart, David G. Stork (2001) Pattern classification (2nd edition), Wiley, New York, ISBN 0-471-05669-3.\n", "Christopher Bishop (1995). Neural Networks for Pattern Recognition, Oxford University Press. ISBN 0-19-853864-2.\n", "Stuart Russell & Peter Norvig, (2009). Artificial Intelligence – A Modern Approach. Pearson, ISBN 9789332543515.\n", "Ray Solomonoff, An Inductive Inference Machine, IRE Convention Record, Section on Information Theory, Part 2, pp., 56–62, 1957.\n", "Ray Solomonoff, An Inductive Inference Machine A privately circulated report from the 1956 Dartmouth Summer Research Conference on AI.\n", "\n", "External links[edit]\n", "\n", "\n", "\n", "Wikimedia Commons has media related to Machine learning.\n", "\n", "International Machine Learning Society\n", "mloss is an academic database of open-source machine learning software.\n", "Machine Learning Crash Course by Google. This is a free course on machine learning through the use of TensorFlow.\n", "vteComputer scienceNote: This template roughly follows the 2012 ACM Computing Classification System.Hardware\n", "Printed circuit board\n", "Peripheral\n", "Integrated circuit\n", "Very Large Scale Integration\n", "Systems on Chip (SoCs)\n", "Energy consumption (Green computing)\n", "Electronic design automation\n", "Hardware acceleration\n", "Computer systemsorganization\n", "Computer architecture\n", "Embedded system\n", "Real-time computing\n", "Dependability\n", "Networks\n", "Network architecture\n", "Network protocol\n", "Network components\n", "Network scheduler\n", "Network performance evaluation\n", "Network service\n", "Software organization\n", "Interpreter\n", "Middleware\n", "Virtual machine\n", "Operating system\n", "Software quality\n", "Software notationsand tools\n", "Programming paradigm\n", "Programming language\n", "Compiler\n", "Domain-specific language\n", "Modeling language\n", "Software framework\n", "Integrated development environment\n", "Software configuration management\n", "Software library\n", "Software repository\n", "Software development\n", "Software development process\n", "Requirements analysis\n", "Software design\n", "Software construction\n", "Software deployment\n", "Software maintenance\n", "Programming team\n", "Open-source model\n", "Theory of computation\n", "Model of computation\n", "Formal language\n", "Automata theory\n", "Computability theory\n", "Computational complexity theory\n", "Logic\n", "Semantics\n", "Algorithms\n", "Algorithm design\n", "Analysis of algorithms\n", "Algorithmic efficiency\n", "Randomized algorithm\n", "Computational geometry\n", "Mathematicsof computing\n", "Discrete mathematics\n", "Probability\n", "Statistics\n", "Mathematical software\n", "Information theory\n", "Mathematical analysis\n", "Numerical analysis\n", "Informationsystems\n", "Database management system\n", "Information storage systems\n", "Enterprise information system\n", "Social information systems\n", "Geographic information system\n", "Decision support system\n", "Process control system\n", "Multimedia information system\n", "Data mining\n", "Digital library\n", "Computing platform\n", "Digital marketing\n", "World Wide Web\n", "Information retrieval\n", "Security\n", "Cryptography\n", "Formal methods\n", "Security services\n", "Intrusion detection system\n", "Hardware security\n", "Network security\n", "Information security\n", "Application security\n", "Human–computerinteraction\n", "Interaction design\n", "Social computing\n", "Ubiquitous computing\n", "Visualization\n", "Accessibility\n", "Concurrency\n", "Concurrent computing\n", "Parallel computing\n", "Distributed computing\n", "Multithreading\n", "Multiprocessing\n", "Artificialintelligence\n", "Natural language processing\n", "Knowledge representation and reasoning\n", "Computer vision\n", "Automated planning and scheduling\n", "Search methodology\n", "Control method\n", "Philosophy of artificial intelligence\n", "Distributed artificial intelligence\n", "Machine learning\n", "Supervised learning\n", "Unsupervised learning\n", "Reinforcement learning\n", "Multi-task learning\n", "Cross-validation\n", "Graphics\n", "Animation\n", "Rendering\n", "Image manipulation\n", "Graphics processing unit\n", "Mixed reality\n", "Virtual reality\n", "Image compression\n", "Solid modeling\n", "Appliedcomputing\n", "E-commerce\n", "Enterprise software\n", "Computational mathematics\n", "Computational physics\n", "Computational chemistry\n", "Computational biology\n", "Computational social science\n", "Computational engineering\n", "Computational healthcare\n", "Digital art\n", "Electronic publishing\n", "Cyberwarfare\n", "Electronic voting\n", "Video games\n", "Word processing\n", "Operations research\n", "Educational technology\n", "Document management\n", "\n", " Book\n", " Category\n", " Outline\n", "WikiProject\n", " Commons\n", "\n", "\n", "\n", "\n", "\n", "Retrieved from \"https://en.wikipedia.org/w/index.php?title=Machine_learning&oldid=936385536\"\n", "Categories: Machine learningCyberneticsLearningHidden categories: Articles with short descriptionArticles with long short descriptionWikipedia articles needing clarification from November 2018Commons category link from Wikidata\n", "\n", "\n", "\n", "\n", "\n", "From Wikipedia, the free encyclopedia\n", "\n", "\n", "Jump to navigation\n", "Jump to search\n", "For the journal, see Machine Learning (journal).\n", "\"Statistical learning\" redirects here. For statistical learning in linguistics, see statistical learning in language acquisition.\n", "Scientific study of algorithms and statistical models that computer systems use to perform tasks without explicit instructions\n", "Machine learning anddata mining\n", "Problems\n", "Classification\n", "Clustering\n", "Regression\n", "Anomaly detection\n", "AutoML\n", "Association rules\n", "Reinforcement learning\n", "Structured prediction\n", "Feature engineering\n", "Feature learning\n", "Online learning\n", "Semi-supervised learning\n", "Unsupervised learning\n", "Learning to rank\n", "Grammar induction\n", "\n", "\n", "Supervised learning.mw-parser-output .nobold{font-weight:normal}(classification • regression) \n", "Decision trees\n", "Ensembles\n", "Bagging\n", "Boosting\n", "Random forest\n", "k-NN\n", "Linear regression\n", "Naive Bayes\n", "Artificial neural networks\n", "Logistic regression\n", "Perceptron\n", "Relevance vector machine (RVM)\n", "Support vector machine (SVM)\n", "\n", "\n", "Clustering\n", "BIRCH\n", "CURE\n", "Hierarchical\n", "k-means\n", "Expectation–maximization (EM)\n", "DBSCAN\n", "OPTICS\n", "Mean-shift\n", "\n", "\n", "Dimensionality reduction\n", "Factor analysis\n", "CCA\n", "ICA\n", "LDA\n", "NMF\n", "PCA\n", "t-SNE\n", "\n", "\n", "Structured prediction\n", "Graphical models\n", "Bayes net\n", "Conditional random field\n", "Hidden Markov\n", "\n", "\n", "Anomaly detection\n", "k-NN\n", "Local outlier factor\n", "\n", "\n", "Artificial neural network\n", "Autoencoder\n", "Deep learning\n", "DeepDream\n", "Multilayer perceptron\n", "RNN\n", "LSTM\n", "GRU\n", "Restricted Boltzmann machine\n", "GAN\n", "SOM\n", "Convolutional neural network\n", "U-Net\n", "\n", "\n", "Reinforcement learning\n", "Q-learning\n", "SARSA\n", "Temporal difference (TD)\n", "\n", "\n", "Theory\n", "Bias–variance dilemma\n", "Computational learning theory\n", "Empirical risk minimization\n", "Occam learning\n", "PAC learning\n", "Statistical learning\n", "VC theory\n", "\n", "\n", "Machine-learning venues\n", "NeurIPS\n", "ICML\n", "ML\n", "JMLR\n", "ArXiv:cs.LG\n", "\n", "\n", "Glossary of artificial intelligence\n", "Glossary of artificial intelligence\n", "\n", "\n", "Related articles\n", "List of datasets for machine-learning research\n", "Outline of machine learning\n", "\n", "vte\n", "Machine learning (ML) is the scientific study of algorithms and statistical models that computer systems use to perform a specific task without using explicit instructions, relying on patterns and inference instead. It is seen as a subset of artificial intelligence. Machine learning algorithms build a mathematical model based on sample data, known as \"training data\", in order to make predictions or decisions without being explicitly programmed to perform the task.[1][2]:2 Machine learning algorithms are used in a wide variety of applications, such as email filtering and computer vision, where it is difficult or infeasible to develop a conventional algorithm for effectively performing the task.\n", "Machine learning is closely related to computational statistics, which focuses on making predictions using computers. The study of mathematical optimization delivers methods, theory and application domains to the field of machine learning. Data mining is a field of study within machine learning, and focuses on exploratory data analysis through unsupervised learning.[3][4] In its application across business problems, machine learning is also referred to as predictive analytics.\n", "\n", "Contents\n", "\n", "1 Overview\n", "\n", "1.1 Machine learning tasks\n", "\n", "\n", "2 History and relationships to other fields\n", "\n", "2.1 Relation to data mining\n", "2.2 Relation to optimization\n", "2.3 Relation to statistics\n", "\n", "\n", "3 Theory\n", "4 Approaches\n", "\n", "4.1 Types of learning algorithms\n", "\n", "4.1.1 Supervised learning\n", "4.1.2 Unsupervised learning\n", "4.1.3 Reinforcement learning\n", "4.1.4 Self learning\n", "4.1.5 Feature learning\n", "4.1.6 Sparse dictionary learning\n", "4.1.7 Anomaly detection\n", "4.1.8 Association rules\n", "\n", "\n", "4.2 Models\n", "\n", "4.2.1 Artificial neural networks\n", "4.2.2 Decision trees\n", "4.2.3 Support vector machines\n", "4.2.4 Regression analysis\n", "4.2.5 Bayesian networks\n", "4.2.6 Genetic algorithms\n", "\n", "\n", "4.3 Training models\n", "\n", "4.3.1 Federated learning\n", "\n", "\n", "\n", "\n", "5 Applications\n", "6 Limitations\n", "\n", "6.1 Bias\n", "\n", "\n", "7 Model assessments\n", "8 Ethics\n", "9 Software\n", "\n", "9.1 Free and open-source software\n", "9.2 Proprietary software with free and open-source editions\n", "9.3 Proprietary software\n", "\n", "\n", "10 Journals\n", "11 Conferences\n", "12 See also\n", "13 References\n", "14 Further reading\n", "15 External links\n", "\n", "\n", "Overview[edit]\n", "The name machine learning was coined in 1959 by Arthur Samuel.[5] 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 experience E with respect to some class of tasks T and performance measure P if its performance at tasks in T, as measured by P, improves with experience E.\"[6] This definition of the tasks in which machine learning is concerned offers a fundamentally operational definition rather than defining the field in cognitive terms. This follows Alan 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?\".[7] In Turing's proposal the various characteristics that could be possessed by a thinking machine and the various implications in constructing one are exposed.\n", "\n", "Machine learning tasks[edit]\n", "\n", "\n", " A support vector machine is a supervised learning model that divides the data into regions separated by a linear boundary. Here, the linear boundary divides the black circles from the white.\n", "Machine learning tasks are classified into several broad categories. In supervised learning, the algorithm builds a mathematical model from a set of data that contains both the inputs and the desired outputs. For example, if the task were determining whether an image contained a certain object, the training data for a supervised learning algorithm would include images with and without that object (the input), and each image would have a label (the output) designating whether it contained the object. In special cases, the input may be only partially available, or restricted to special feedback.[clarification needed] Semi-supervised learning algorithms develop mathematical models from incomplete training data, where a portion of the sample input doesn't have labels.\n", "Classification algorithms and regression algorithms are types of supervised learning. Classification algorithms are used when the outputs are restricted to a limited set of values. For a classification algorithm that filters emails, the input would be an incoming email, and the output would be the name of the folder in which to file the email. For an algorithm that identifies spam emails, the output would be the prediction of either \"spam\" or \"not spam\", represented by the Boolean values true and false. Regression algorithms are named for their continuous outputs, meaning they may have any value within a range. Examples of a continuous value are the temperature, length, or price of an object.\n", "In unsupervised learning, the algorithm builds a mathematical model from a set of data that contains only inputs and no desired output labels. Unsupervised learning algorithms are used to find structure in the data, like grouping or clustering of data points. Unsupervised learning can discover patterns in the data, and can group the inputs into categories, as in feature learning. Dimensionality reduction is the process of reducing the number of \"features\", or inputs, in a set of data.\n", "Active learning algorithms access the desired outputs (training labels) for a limited set of inputs based on a budget and optimize the choice of inputs for which it will acquire training labels. When used interactively, these can be presented to a human user for labeling. Reinforcement learning algorithms are given feedback in the form of positive or negative reinforcement in a dynamic environment and are used in autonomous vehicles or in learning to play a game against a human opponent.[2]:3 Other specialized algorithms in machine learning include topic modeling, where the computer program is given a set of natural language documents and finds other documents that cover similar topics. Machine learning algorithms can be used to find the unobservable probability density function in density estimation problems. Meta learning algorithms learn their own inductive bias based on previous experience. In developmental robotics, robot learning algorithms generate their own sequences of learning experiences, also known as a curriculum, to cumulatively acquire new skills through self-guided exploration and social interaction with humans. These robots use guidance mechanisms such as active learning, maturation, motor synergies, and imitation.[clarification needed]\n", "\n", "History and relationships to other fields[edit]\n", "See also: Timeline of machine learning\n", "Arthur Samuel, an American pioneer in the field of computer gaming and artificial intelligence, coined the term \"Machine Learning\" in 1959 while at IBM.[8] A representative book of the machine learning research during the 1960s was the Nilsson's book on Learning Machines, dealing mostly with machine learning for pattern classification.[9] The interest of machine learning related to pattern recognition continued during the 1970s, as described in the book of Duda and Hart in 1973. [10] In 1981 a report was given on using teaching strategies so that a neural network learns to recognize 40 characters (26 letters, 10 digits, and 4 special symbols) from a computer terminal. [11] \n", "As a scientific endeavor, machine learning grew out of the quest for artificial intelligence. Already in the early days of AI as an academic discipline, some researchers were interested in having machines learn from data. They attempted to approach the problem with various symbolic methods, as well as what were then termed \"neural networks\"; these were mostly perceptrons and other models that were later found to be reinventions of the generalized linear models of statistics.[12] Probabilistic reasoning was also employed, especially in automated medical diagnosis.[13]:488\n", "However, an increasing emphasis on the logical, 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.[13]:488 By 1980, expert systems had come to dominate AI, and statistics was out of favor.[14] Work on symbolic/knowledge-based learning did continue within AI, leading to inductive logic programming, but the more statistical line of research was now outside the field of AI proper, in pattern recognition and information retrieval.[13]:708–710; 755 Neural networks research had been abandoned by AI and computer science around the same time. This line, too, was continued outside the AI/CS field, as \"connectionism\", by researchers from other disciplines including Hopfield, Rumelhart and Hinton. Their main success came in the mid-1980s with the reinvention of backpropagation.[13]:25\n", "Machine learning, reorganized as a separate 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 the symbolic approaches it had inherited from AI, and toward methods and models borrowed from statistics and probability theory.[14] It also benefited from the increasing availability of digitized information, and the ability to distribute it via the Internet.\n", "\n", "Relation to data mining[edit]\n", "Machine learning and data mining often employ the same methods and overlap significantly, but while machine learning focuses on prediction, based on known properties learned from the training data, data mining focuses on the discovery of (previously) unknown properties in the data (this is the analysis step of knowledge 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 to reproduce known knowledge, while in knowledge discovery and data mining (KDD) the key task is the discovery of previously unknown 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.\n", "\n", "Relation to optimization[edit]\n", "Machine learning also has intimate ties to optimization: many learning problems are formulated as minimization of some loss 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 a label to instances, and models are trained to correctly predict the pre-assigned labels of a set of examples). The difference between the two fields arises from the goal of generalization: while optimization algorithms can minimize the loss on a training set, machine learning is concerned with minimizing the loss on unseen samples.[15]\n", "\n", "Relation to statistics[edit]\n", "Machine learning and statistics are closely related fields in terms of methods, but distinct in their principal goal: statistics draws population inferences from a sample, while machine learning finds generalizable predictive patterns.[16] According to Michael I. Jordan, the ideas of machine learning, from methodological principles to theoretical tools, have had a long pre-history in statistics.[17] He also suggested the term data science as a placeholder to call the overall field.[17]\n", "Leo Breiman distinguished two statistical modeling paradigms: data model and algorithmic model,[18] wherein \"algorithmic model\" means more or less the machine learning algorithms like Random forest.\n", "Some statisticians have adopted methods from machine learning, leading to a combined field that they call statistical learning.[19]\n", "\n", " Theory[edit]\n", "Main articles: Computational learning theory and Statistical learning theory\n", "A core objective of a learner is to generalize from its experience.[2][20] 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.\n", "The computational analysis of machine learning algorithms and their performance is a branch of theoretical computer science known as computational learning theory. Because training sets are finite and the future is uncertain, learning theory usually does not yield guarantees of the performance of algorithms. Instead, probabilistic bounds on the performance are quite common. The bias–variance decomposition is one way to quantify generalization error.\n", "For the best performance in the context of generalization, 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 under fitted 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 to overfitting and generalization will be poorer.[21]\n", "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 in polynomial time. There are two kinds of time 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.\n", "\n", "Approaches[edit]\n", "Types of learning algorithms[edit]\n", "The types of machine learning algorithms differ in their approach, the type of data they input and output, and the type of task or problem that they are intended to solve.\n", "\n", "Supervised learning[edit]\n", "Main article: Supervised learning\n", "Supervised learning algorithms build a mathematical model of a set of data that contains both the inputs and the desired outputs.[22] The data is known as training data, and 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 an array or vector, sometimes called a feature vector, and the training data is represented by a matrix. Through iterative optimization of an objective function, supervised learning algorithms learn a function that can be used to predict the output associated with new inputs.[23] An optimal function will allow 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.[6]\n", "Supervised learning algorithms include classification and regression.[24] Classification algorithms are used when the outputs are restricted to a limited set of values, and regression algorithms are used when the outputs may have any numerical value within a range. 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 in ranking, recommendation systems, visual identity tracking, face verification, and speaker verification.\n", "In the case of semi-supervised learning algorithms, some of the training examples are missing training labels, but they can nevertheless be used to improve the quality of a model. In weakly supervised learning, the training labels are noisy, limited, or imprecise; however, these labels are often cheaper to obtain, resulting in larger effective training sets.[25]\n", "\n", "Unsupervised learning[edit]\n", "Main article: Unsupervised learningSee also: Cluster analysis\n", "Unsupervised learning algorithms take a set of data that contains only inputs, and find structure in the data, like grouping or clustering of data points. The algorithms, therefore, learn from test data that has not been labeled, classified or categorized. 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. A central application of unsupervised learning is in the field of density estimation in statistics,[26] though unsupervised learning encompasses other domains involving summarizing and explaining data features.\n", "Cluster analysis is the assignment of a set of observations into subsets (called clusters) 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 some similarity metric and evaluated, for example, by internal compactness, or the similarity between members of the same cluster, and separation, the difference between clusters. Other methods are based on estimated density and graph connectivity.\n", "Semi-supervised learning\n", "\n", "Main article: Semi-supervised learning\n", "Semi-supervised learning falls between unsupervised learning (without any labeled training data) and supervised learning (with completely labeled training data). Many machine-learning researchers have found that unlabeled data, when used in conjunction with a small amount of labeled data, can produce a considerable improvement in learning accuracy.\n", "\n", "Reinforcement learning[edit]\n", "Main article: Reinforcement learning\n", "Reinforcement learning is an area of machine learning concerned with how software agents ought to take actions in an environment so as to maximize some notion of cumulative reward. Due to its generality, the field is studied in many other disciplines, such as game theory, control theory, operations research, information theory, simulation-based optimization, multi-agent systems, swarm intelligence, statistics and genetic algorithms. In machine learning, the environment is typically represented as a Markov Decision Process (MDP). Many reinforcement learning algorithms use dynamic programming techniques.[27] Reinforcement learning algorithms do not assume knowledge of an exact mathematical model of the MDP, and are used when exact models are infeasible. Reinforcement learning algorithms are used in autonomous vehicles or in learning to play a game against a human opponent.\n", "\n", "Self learning[edit]\n", "Self-learning as machine learning paradigm was introduced in 1982 along with a neural network capable of self-learning named Crossbar Adaptive Array (CAA). [28] It is a learning with no external rewards and no external teacher advices. 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. [29]\n", "The self-learning algorithm updates a memory matrix W =||w(a,s)|| such that in each iteration executes the following machine learning routine: \n", "\n", " In situation s perform action a;\n", " Receive consequence situation s’;\n", " Compute emotion of being in consequence situation v(s’);\n", " Update crossbar memory w’(a,s) = w(a,s) + v(s’).\n", "\n", "It is a system with only one input, situation s, and only one output, action (or behavior) 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 behavioral environment where it behaves, and the other is genetic environment, wherefrom it initially and only once receives initial emotions about situations to be encountered in the behavioral environment. After receiving the genome (species) vector from the genetic environment, the CAA learns a goal seeking behavior, in an environment that contains both desirable and undesirable situations. [30]\n", "\n", "Feature learning[edit]\n", "Main article: Feature learning\n", "Several learning algorithms aim at discovering better representations of the inputs provided during training.[31] Classic examples include principal components 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 manual feature engineering, and allows a machine to both learn the features and use them to perform a specific task.\n", "Feature learning can be either supervised or unsupervised. In supervised feature learning, features are learned using labeled input data. Examples include artificial neural networks, multilayer perceptrons, and supervised dictionary learning. In unsupervised feature learning, features are learned with unlabeled input data. Examples include dictionary learning, independent component analysis, autoencoders, matrix factorization[32] and various forms of clustering.[33][34][35]\n", "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 from tensor representations for multidimensional data, without reshaping them into higher-dimensional vectors.[36] 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 is one that learns a representation that disentangles the underlying factors of variation that explain the observed data.[37]\n", "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 has not yielded to attempts to algorithmically define specific features. An alternative is to discover such features or representations through examination, without relying on explicit algorithms.\n", "\n", "Sparse dictionary learning[edit]\n", "Main article: Sparse dictionary learning\n", "Sparse dictionary learning is a feature learning method where a training example is represented as a linear combination of basis functions, and is assumed to be a sparse matrix. The method is strongly NP-hard and difficult to solve approximately.[38] A popular heuristic method for sparse dictionary learning is the K-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 in image de-noising. The key idea is that a clean image patch can be sparsely represented by an image dictionary, but the noise cannot.[39]\n", "\n", "Anomaly detection[edit]\n", "Main article: Anomaly detection\n", "In data mining, anomaly detection, also known as outlier detection, is the identification of rare items, events or observations which raise suspicions by differing significantly from the majority of the data.[40] Typically, the anomalous items represent an issue such as bank fraud, a structural defect, medical problems or errors in a text. Anomalies are referred to as outliers, novelties, noise, deviations and exceptions.[41]\n", "In particular, in the context of abuse and network intrusion detection, the interesting objects are often not rare objects, but unexpected bursts in activity. This pattern does not adhere to the common statistical definition of an outlier as a rare object, and many outlier detection methods (in particular, unsupervised algorithms) will fail on such data, unless it has been aggregated appropriately. Instead, a cluster analysis algorithm may be able to detect the micro-clusters formed by these patterns.[42]\n", "Three broad categories of anomaly detection techniques exist.[43] Unsupervised anomaly detection techniques detect anomalies in an unlabeled 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 least to the remainder of the data set. Supervised anomaly detection techniques require a data set that has been labeled as \"normal\" and \"abnormal\" and involves training a classifier (the key difference to many other statistical classification problems is the inherently unbalanced nature of outlier detection). Semi-supervised anomaly detection techniques construct a model representing normal behavior from a given normal training data set and then test the likelihood of a test instance to be generated by the model.\n", "\n", "Association rules[edit]\n", "Main article: Association rule learningSee also: Inductive logic programming\n", "Association rule learning is a rule-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\".[44]\n", "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 utilization 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.[45] Rule-based machine learning approaches include learning classifier systems, association rule learning, and artificial immune systems.\n", "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 by point-of-sale (POS) systems in supermarkets.[46] For example, the rule \n", "\n", "\n", "\n", "{\n", "\n", "o\n", "n\n", "i\n", "o\n", "n\n", "s\n", ",\n", "p\n", "o\n", "t\n", "a\n", "t\n", "o\n", "e\n", "s\n", "\n", "}\n", "⇒\n", "{\n", "\n", "b\n", "u\n", "r\n", "g\n", "e\n", "r\n", "\n", "}\n", "\n", "\n", "{\\displaystyle \\{\\mathrm {onions,potatoes} \\}\\Rightarrow \\{\\mathrm {burger} \\}}\n", "\n", " 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 promotional pricing or product placements. In addition to market basket analysis, association rules are employed today in application areas including Web usage mining, intrusion detection, continuous production, and bioinformatics. In contrast with sequence mining, association rule learning typically does not consider the order of items either within a transaction or across transactions.\n", "Learning classifier systems (LCS) are a family of rule-based machine learning algorithms that combine a discovery component, typically a genetic algorithm, with a learning component, performing either supervised learning, reinforcement learning, or unsupervised learning. They seek to identify a set of context-dependent rules that collectively store and apply knowledge in a piecewise manner in order to make predictions.[47]\n", "Inductive logic programming (ILP) is an approach to rule-learning using logic 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 that entails all positive and no negative examples. Inductive programming is a related field that considers any kind of programming languages for representing hypotheses (and not only logic programming), such as functional programs.\n", "Inductive logic programming is particularly useful in bioinformatics and natural language processing. Gordon Plotkin and Ehud Shapiro laid the initial theoretical foundation for inductive machine learning in a logical setting.[48][49][50] Shapiro built their first implementation (Model Inference System) in 1981: a Prolog program that inductively inferred logic programs from positive and negative examples.[51] The term inductive here refers to philosophical induction, suggesting a theory to explain observed facts, rather than mathematical induction, proving a property for all members of a well-ordered set.\n", "\n", "Models[edit]\n", "Performing machine learning involves creating a model, which is trained on some training data and then can process additional data to make predictions. Various types of models have been used and researched for machine learning systems.\n", "\n", "Artificial neural networks[edit]\n", "Main article: Artificial neural networkSee also: Deep learning\n", " An artificial neural network is an interconnected group of nodes, akin to the vast network of neurons in a brain. Here, each circular node represents an artificial neuron and an arrow represents a connection from the output of one artificial neuron to the input of another.\n", "Artificial neural networks (ANNs), or connectionist systems, are computing systems vaguely inspired by the biological neural networks that constitute animal brains. Such systems \"learn\" to perform tasks by considering examples, generally without being programmed with any task-specific rules.\n", "An ANN is a model based on a collection of connected units or nodes called \"artificial neurons\", which loosely model the neurons in a biological brain. Each connection, like the synapses 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 a real 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 a weight 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.\n", "The original goal of the ANN approach was to solve problems in the same way that a human brain would. However, over time, attention moved to performing specific tasks, leading to deviations from biology. Artificial neural networks have been used on a variety of tasks, including computer vision, speech recognition, machine translation, social network filtering, playing board and video games and medical diagnosis.\n", "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.[52]\n", "\n", "Decision trees[edit]\n", "Main article: Decision tree learning\n", "Decision tree learning uses a decision tree as a predictive 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 modeling 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 represent conjunctions of features that lead to those class labels. Decision trees where the target variable can take continuous values (typically real numbers) are called regression trees. In decision analysis, a decision tree can be used to visually and explicitly represent decisions and decision making. In data mining, a decision tree describes data, but the resulting classification tree can be an input for decision making.\n", "\n", "Support vector machines[edit]\n", "Main article: Support vector machines\n", "Support vector machines (SVMs), also known as support vector networks, are a set of related supervised 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 or the other.[53] An SVM training algorithm is a non-probabilistic, binary, linear classifier, although methods such as Platt 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 the kernel trick, implicitly mapping their inputs into high-dimensional feature spaces.\n", "\n", " Illustration of linear regression on a data set.\n", "Regression analysis[edit]\n", "Main article: Regression analysis\n", "Regression analysis encompasses a large variety of statistical methods to estimate the relationship between input variables and their associated features. Its most common form is linear regression, where a single line is drawn to best fit the given data according to a mathematical criterion such as ordinary least squares. The latter is oftentimes extended by regularization (mathematics) methods to mitigate overfitting and high bias, as can be seen in ridge regression. When dealing with non-linear problems, go-to models include polynomial regression (e.g. used for trendline fitting in Microsoft Excel [54]), Logistic regression (often used in statistical classification) or even kernel regression, which introduces non-linearity by taking advantage of the kernel trick to implicitly map input variables to higher dimensional space. \n", "\n", "Bayesian networks[edit]\n", "Main article: Bayesian network\n", " A simple Bayesian network. Rain influences whether the sprinkler is activated, and both rain and the sprinkler influence whether the grass is wet.\n", "A Bayesian network, belief network or directed acyclic graphical model is a probabilistic graphical model that represents a set of random variables and their conditional independence with a directed 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 perform inference and learning. Bayesian networks that model sequences of variables, like speech signals or protein sequences, are called dynamic Bayesian networks. Generalizations of Bayesian networks that can represent and solve decision problems under uncertainty are called influence diagrams.\n", "\n", "Genetic algorithms[edit]\n", "Main article: Genetic algorithm\n", "A genetic algorithm (GA) is a search algorithm and heuristic technique that mimics the process of natural selection, using methods such as mutation and crossover to generate new genotypes in the hope of finding good solutions to a given problem. In machine learning, genetic algorithms were used in the 1980s and 1990s.[55][56] Conversely, machine learning techniques have been used to improve the performance of genetic and evolutionary algorithms.[57]\n", "\n", "Training models[edit]\n", "Usually, machine learning models require a lot of data in order for them to perform well. Usually, when training a machine learning model, one needs to collect a large, representative sample of data from a training set. Data from the training set can be as varied as a corpus of text, a collection of images, and data collected from individual users of a service. Overfitting is something to watch out for when training a machine learning model.\n", "\n", "Federated learning[edit]\n", "Main article: Federated learning\n", "Federated learning is a new approach to training machine learning models that decentralizes the training process, allowing for users' privacy to be maintained by not needing to send their data to a centralized server. This also increases efficiency by decentralizing 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 to Google.[58]\n", "\n", "Applications[edit]\n", "There are many applications for machine learning, including:\n", "\n", "\n", "Agriculture\n", "Anatomy\n", "Adaptive websites\n", "Affective computing\n", "Banking\n", "Bioinformatics\n", "Brain–machine interfaces\n", "Cheminformatics\n", "Citizen science\n", "Computer networks\n", "Computer vision\n", "Credit-card fraud detection\n", "Data quality\n", "DNA sequence classification\n", "Economics\n", "Financial market analysis [59]\n", "General game playing\n", "Handwriting recognition\n", "Information retrieval\n", "Insurance\n", "Internet fraud detection\n", "Linguistics\n", "Machine learning control\n", "Machine perception\n", "Machine translation\n", "Marketing\n", "Medical diagnosis\n", "Natural language processing\n", "Natural language understanding\n", "Online advertising\n", "Optimization\n", "Recommender systems\n", "Robot locomotion\n", "Search engines\n", "Sentiment analysis\n", "Sequence mining\n", "Software engineering\n", "Speech recognition\n", "Structural health monitoring\n", "Syntactic pattern recognition\n", "Telecommunication\n", "Theorem proving\n", "Time series forecasting\n", "User behavior analytics\n", "\n", "In 2006, the media-services provider Netflix held the first \"Netflix Prize\" competition to find a program to better predict user preferences and improve the accuracy on its existing Cinematch movie recommendation algorithm by at least 10%. A joint team made up of researchers from AT&T Labs-Research in collaboration with the teams Big Chaos and Pragmatic Theory built an ensemble model to win the Grand Prize in 2009 for $1 million.[60] Shortly after the prize was awarded, Netflix realized that viewers' ratings were not the best indicators of their viewing patterns (\"everything is a recommendation\") and they changed their recommendation engine accordingly.[61] In 2010 The Wall Street Journal wrote about the firm Rebellion Research and their use of machine learning to predict the financial crisis.[62] In 2012, co-founder of Sun 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.[63] 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 unrecognized influences among artists.[64] In 2019 Springer Nature published the first research book created using machine learning.[65]\n", "\n", "Limitations[edit]\n", "Although machine learning has been transformative in some fields, machine-learning programs often fail to deliver expected results.[66][67][68] 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.[69]\n", "In 2018, a self-driving car from Uber failed to detect a pedestrian, who was killed after a collision.[70] Attempts to use machine learning in healthcare with the IBM Watson system failed to deliver even after years of time and billions of investment.[71][72]\n", "\n", "Bias[edit]\n", "Main article: Algorithmic bias\n", "Machine learning approaches in particular can suffer from different data biases. A machine learning system trained on current customers only may not be able to predict the needs of new customer groups that are not represented in the training data. When trained on man-made data, machine learning is likely to pick up the same constitutional and unconscious biases already present in society.[73] Language models learned from data have been shown to contain human-like biases.[74][75] Machine learning systems used for criminal risk assessment have been found to be biased against black people.[76][77] In 2015, Google photos would often tag black people as gorillas,[78] and in 2018 this still was not well resolved, but Google reportedly was still using the workaround to remove all gorillas from the training data, and thus was not able to recognize real gorillas at all.[79] Similar issues with recognizing non-white people have been found in many other systems.[80] In 2016, Microsoft tested a chatbot that learned from Twitter, and it quickly picked up racist and sexist language.[81] Because of such challenges, the effective use of machine learning may take longer to be adopted in other domains.[82] Concern for fairness in machine learning, that is, reducing bias in machine learning and propelling its use for human good is increasingly expressed by artificial intelligence scientists, including Fei-Fei Li, who reminds engineers that \"There’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.”[83]\n", "\n", "Model assessments[edit]\n", "Classification machine learning models can be validated by accuracy estimation techniques like the Holdout method, which splits the data in 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 respectively 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.[84]\n", "In addition to overall accuracy, investigators frequently report sensitivity and specificity meaning True Positive Rate (TPR) and True Negative Rate (TNR) respectively. Similarly, investigators sometimes report the False Positive Rate (FPR) as well as the False Negative Rate (FNR). However, these rates are ratios that fail to reveal their numerators and denominators. The Total Operating Characteristic (TOC) is an effective method to express a model's diagnostic ability. TOC shows the numerators and denominators of the previously mentioned rates, thus TOC provides more information than the commonly used Receiver Operating Characteristic (ROC) and ROC's associated Area Under the Curve (AUC).[85]\n", "\n", "Ethics[edit]\n", "Machine learning poses a host of ethical questions. Systems which are trained on datasets collected with biases may exhibit these biases upon use (algorithmic bias), thus digitizing cultural prejudices.[86] For example, 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 against similarity to previous successful applicants.[87][88] Responsible collection of data and documentation of algorithmic rules used by a system thus is a critical part of machine learning.\n", "Because human languages contain biases, machines trained on language corpora will necessarily also learn these biases.[89][90]\n", "Other forms of ethical challenges, not related to personal biases, are more seen in health care. 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 perpetual ethical dilemma of improving health care, but also increase 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 in. There is huge potential for machine learning in health care to provide professionals a great tool to diagnose, medicate, and even plan recovery paths for patients, but this will not happen until the personal biases mentioned previously, and these \"greed\" biases are addressed.[91]\n", "\n", "Software[edit]\n", "Software suites containing a variety of machine learning algorithms include the following:\n", "\n", "Free and open-source software[edit]\n", "\n", "CNTK\n", "Deeplearning4j\n", "ELKI\n", "Keras\n", "Caffe\n", "ML.NET\n", "Mahout\n", "Mallet\n", "mlpack\n", "MXNet\n", "Neural Lab\n", "GNU Octave\n", "OpenNN\n", "Orange\n", "scikit-learn\n", "Shogun\n", "Spark MLlib\n", "Apache SystemML\n", "TensorFlow\n", "ROOT (TMVA with ROOT)\n", "Torch / PyTorch\n", "Weka / MOA\n", "Yooreeka\n", "R\n", "\n", "Proprietary software with free and open-source editions[edit]\n", "\n", "KNIME\n", "RapidMiner\n", "\n", "Proprietary software[edit]\n", "\n", "Amazon Machine Learning\n", "Angoss KnowledgeSTUDIO\n", "Azure Machine Learning\n", "Ayasdi\n", "IBM Data Science Experience\n", "Google Prediction API\n", "IBM SPSS Modeler\n", "KXEN Modeler\n", "LIONsolver\n", "Mathematica\n", "MATLAB\n", "Microsoft Azure\n", "Neural Designer\n", "NeuroSolutions\n", "Oracle Data Mining\n", "Oracle AI Platform Cloud Service\n", "RCASE\n", "SAS Enterprise Miner\n", "SequenceL\n", "Splunk\n", "STATISTICA Data Miner\n", "\n", "Journals[edit]\n", "Journal of Machine Learning Research\n", "Machine Learning\n", "Nature Machine Intelligence\n", "Neural Computation\n", "Conferences[edit]\n", "Conference on Neural Information Processing Systems\n", "International Conference on Machine Learning\n", "See also[edit]\n", "\n", "Automated machine learning\n", "Big data\n", "Explanation-based learning\n", "Important publications in machine learning\n", "List of datasets for machine learning research\n", "Predictive analytics\n", "Quantum machine learning\n", "Machine-learning applications in bioinformatics\n", "Seq2seq\n", "Fairness (machine learning)\n", "\n", "References[edit]\n", "\n", "\n", "^ The definition \"without being explicitly programmed\" is often attributed to Arthur Samuel, who coined the term \"machine learning\" in 1959, but the phrase is not found verbatim in this publication, and may be a paraphrase that appeared later. Confer \"Paraphrasing Arthur Samuel (1959), the question is: How can computers learn to solve problems without being explicitly programmed?\" in Koza, 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. Springer, Dordrecht. pp. 151–170. doi:10.1007/978-94-009-0279-4_9..mw-parser-output cite.citation{font-style:inherit}.mw-parser-output .citation q{quotes:\"\\\"\"\"\\\"\"\"'\"\"'\"}.mw-parser-output .id-lock-free a,.mw-parser-output .citation .cs1-lock-free a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/6/65/Lock-green.svg/9px-Lock-green.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .id-lock-limited a,.mw-parser-output .id-lock-registration a,.mw-parser-output .citation .cs1-lock-limited a,.mw-parser-output .citation .cs1-lock-registration a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Lock-gray-alt-2.svg/9px-Lock-gray-alt-2.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .id-lock-subscription a,.mw-parser-output .citation .cs1-lock-subscription a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/a/aa/Lock-red-alt-2.svg/9px-Lock-red-alt-2.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration{color:#555}.mw-parser-output .cs1-subscription span,.mw-parser-output .cs1-registration span{border-bottom:1px dotted;cursor:help}.mw-parser-output .cs1-ws-icon a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/4/4c/Wikisource-logo.svg/12px-Wikisource-logo.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output code.cs1-code{color:inherit;background:inherit;border:inherit;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;font-size:100%}.mw-parser-output .cs1-visible-error{font-size:100%}.mw-parser-output .cs1-maint{display:none;color:#33aa33;margin-left:0.3em}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration,.mw-parser-output .cs1-format{font-size:95%}.mw-parser-output .cs1-kern-left,.mw-parser-output .cs1-kern-wl-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right,.mw-parser-output .cs1-kern-wl-right{padding-right:0.2em}\n", "\n", "^ a b c d Bishop, C. M. (2006), Pattern Recognition and Machine Learning, Springer, ISBN 978-0-387-31073-2\n", "\n", "^ Machine learning and pattern recognition \"can be viewed as two facets of the same field.\"[2]:vii\n", "\n", "^ Friedman, Jerome H. (1998). \"Data Mining and Statistics: What's the connection?\". Computing Science and Statistics. 29 (1): 3–9.\n", "\n", "^ Samuel, Arthur (1959). \"Some Studies in Machine Learning Using the Game of Checkers\". IBM Journal of Research and Development. 3 (3): 210–229. CiteSeerX 10.1.1.368.2254. doi:10.1147/rd.33.0210.\n", "\n", "^ a b Mitchell, T. (1997). Machine Learning. McGraw Hill. p. 2. ISBN 978-0-07-042807-2.\n", "\n", "^ Harnad, Stevan (2008), \"The Annotation Game: On Turing (1950) on Computing, Machinery, and Intelligence\", in Epstein, Robert; Peters, Grace (eds.), The Turing Test Sourcebook: Philosophical and Methodological Issues in the Quest for the Thinking Computer, Kluwer, pp. 23–66, ISBN 9781402067082\n", "\n", "^ R. Kohavi and F. Provost, \"Glossary of terms,\" Machine Learning, vol. 30, no. 2–3, pp. 271–274, 1998.\n", "\n", "^ Nilsson N. Learning Machines, McGraw Hill, 1965. \n", "\n", "^ Duda, R., Hart P. Pattern Recognition and Scene Analysis, Wiley Interscience, 1973 \n", "\n", "^ S. Bozinovski \"Teaching space: A representation concept for adaptive pattern classification\" COINS Technical Report No. 81-28, Computer and Information Science Department, University of Massachusetts at Amherst, MA, 1981. https://web.cs.umass.edu/publication/docs/1981/UM-CS-1981-028.pdf \n", "\n", "^ Sarle, Warren (1994). \"Neural Networks and statistical models\". CiteSeerX 10.1.1.27.699.\n", "\n", "^ a b c d Russell, Stuart; Norvig, Peter (2003) [1995]. Artificial Intelligence: A Modern Approach (2nd ed.). Prentice Hall. ISBN 978-0137903955.\n", "\n", "^ a b Langley, Pat (2011). \"The changing science of machine learning\". Machine Learning. 82 (3): 275–279. doi:10.1007/s10994-011-5242-y.\n", "\n", "^ Le Roux, Nicolas; Bengio, Yoshua; Fitzgibbon, Andrew (2012). \"Improving+First+and+Second-Order+Methods+by+Modeling+Uncertainty \"Improving First and Second-Order Methods by Modeling Uncertainty\". In Sra, Suvrit; Nowozin, Sebastian; Wright, Stephen J. (eds.). Optimization for Machine Learning. MIT Press. p. 404. ISBN 9780262016469.\n", "\n", "^ Bzdok, Danilo; Altman, Naomi; Krzywinski, Martin (2018). \"Statistics versus Machine Learning\". Nature Methods. 15 (4): 233–234. doi:10.1038/nmeth.4642. PMC 6082636. PMID 30100822.\n", "\n", "^ a b Michael I. Jordan (2014-09-10). \"statistics and machine learning\". reddit. Retrieved 2014-10-01.\n", "\n", "^ Cornell University Library. \"Breiman: Statistical Modeling: The Two Cultures (with comments and a rejoinder by the author)\". Retrieved 8 August 2015.\n", "\n", "^ Gareth James; Daniela Witten; Trevor Hastie; Robert Tibshirani (2013). An Introduction to Statistical Learning. Springer. p. vii.\n", "\n", "^ Mohri, Mehryar; Rostamizadeh, Afshin; Talwalkar, Ameet (2012). Foundations of Machine Learning. USA, Massachusetts: MIT Press. ISBN 9780262018258.\n", "\n", "^ Alpaydin, Ethem (2010). Introduction to Machine Learning. London: The MIT Press. ISBN 978-0-262-01243-0. Retrieved 4 February 2017.\n", "\n", "^ Russell, Stuart J.; Norvig, Peter (2010). Artificial Intelligence: A Modern Approach (Third ed.). Prentice Hall. ISBN 9780136042594.\n", "\n", "^ Mohri, Mehryar; Rostamizadeh, Afshin; Talwalkar, Ameet (2012). Foundations of Machine Learning. The MIT Press. ISBN 9780262018258.\n", "\n", "^ Alpaydin, Ethem (2010). Introduction to Machine Learning. MIT Press. p. 9. ISBN 978-0-262-01243-0.\n", "\n", "^ Alex Ratner; Stephen Bach; Paroma Varma; Chris. \"Weak Supervision: The New Programming Paradigm for Machine Learning\". hazyresearch.github.io. referencing work by many other members of Hazy Research. Retrieved 2019-06-06.\n", "\n", "^ 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. ISBN 978-1-58488-360-9.\n", "\n", "^ van Otterlo, M.; Wiering, M. (2012). Reinforcement learning and markov decision processes. Reinforcement Learning. Adaptation, Learning, and Optimization. 12. pp. 3–42. doi:10.1007/978-3-642-27645-3_1. ISBN 978-3-642-27644-6.\n", "\n", "^ 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. ISBN 978-0-444-86488-8.\n", "\n", "^ Bozinovski, Stevo (2014) \"Modeling mechanisms of cognition-emotion interaction in artificial neural networks, since 1981.\" Procedia Computer Science p. 255-263 \n", "\n", "^ Bozinovski, S. (2001) \"Self-learning agents: A connectionist theory of emotion based on crossbar value judgment.\" Cybernetics and Systems 32(6) 637-667. \n", "\n", "^ Y. Bengio; A. Courville; P. Vincent (2013). \"Representation Learning: A Review and New Perspectives\". IEEE Transactions on Pattern Analysis and Machine Intelligence. 35 (8): 1798–1828. arXiv:1206.5538. doi:10.1109/tpami.2013.50. PMID 23787338.\n", "\n", "^ Nathan Srebro; Jason D. M. Rennie; Tommi S. Jaakkola (2004). Maximum-Margin Matrix Factorization. NIPS.\n", "\n", "^ Coates, Adam; Lee, Honglak; Ng, Andrew Y. (2011). An analysis of single-layer networks in unsupervised feature learning (PDF). Int'l Conf. on AI and Statistics (AISTATS).\n", "\n", "^ 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.\n", "\n", "^ Daniel Jurafsky; James H. Martin (2009). Speech and Language Processing. Pearson Education International. pp. 145–146.\n", "\n", "^ Lu, Haiping; Plataniotis, K.N.; Venetsanopoulos, A.N. (2011). \"A Survey of Multilinear Subspace Learning for Tensor Data\" (PDF). Pattern Recognition. 44 (7): 1540–1551. doi:10.1016/j.patcog.2011.01.004.\n", "\n", "^ Yoshua Bengio (2009). Learning Deep Architectures for AI. Now Publishers Inc. pp. 1–3. ISBN 978-1-60198-294-0.\n", "\n", "^ Tillmann, A. M. (2015). \"On the Computational Intractability of Exact and Approximate Dictionary Learning\". IEEE Signal Processing Letters. 22 (1): 45–49. arXiv:1405.6664. Bibcode:2015ISPL...22...45T. doi:10.1109/LSP.2014.2345761.\n", "\n", "^ Aharon, M, M Elad, and A Bruckstein. 2006. \"K-SVD: An Algorithm for Designing Overcomplete Dictionaries for Sparse Representation.\" Signal Processing, IEEE Transactions on 54 (11): 4311–4322\n", "\n", "^ Zimek, Arthur; Schubert, Erich (2017), \"Outlier Detection\", Encyclopedia of Database Systems, Springer New York, pp. 1–5, doi:10.1007/978-1-4899-7993-3_80719-1, ISBN 9781489979933\n", "\n", "^ Hodge, V. J.; Austin, J. (2004). \"A Survey of Outlier Detection Methodologies\" (PDF). Artificial Intelligence Review. 22 (2): 85–126. CiteSeerX 10.1.1.318.4023. doi:10.1007/s10462-004-4304-y.\n", "\n", "^ 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.\n", "\n", "^ Chandola, V.; Banerjee, A.; Kumar, V. (2009). \"Anomaly detection: A survey\". ACM Computing Surveys. 41 (3): 1–58. doi:10.1145/1541880.1541882.\n", "\n", "^ 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.\n", "\n", "^ Bassel, George W.; Glaab, Enrico; Marquez, Julietta; Holdsworth, Michael J.; Bacardit, Jaume (2011-09-01). \"Functional Network Construction in Arabidopsis Using Rule-Based Machine Learning on Large-Scale Data Sets\". The Plant Cell. 23 (9): 3101–3116. doi:10.1105/tpc.111.088153. ISSN 1532-298X. PMC 3203449. PMID 21896882.\n", "\n", "^ Agrawal, R.; Imieliński, T.; Swami, A. (1993). \"Mining association rules between sets of items in large databases\". Proceedings of the 1993 ACM SIGMOD international conference on Management of data - SIGMOD '93. p. 207. CiteSeerX 10.1.1.40.6984. doi:10.1145/170035.170072. ISBN 978-0897915922.\n", "\n", "^ Urbanowicz, Ryan J.; Moore, Jason H. (2009-09-22). \"Learning Classifier Systems: A Complete Introduction, Review, and Roadmap\". Journal of Artificial Evolution and Applications. 2009: 1–25. doi:10.1155/2009/736398. ISSN 1687-6229.\n", "\n", "^ Plotkin G.D. Automatic Methods of Inductive Inference, PhD thesis, University of Edinburgh, 1970.\n", "\n", "^ Shapiro, Ehud Y. Inductive inference of theories from facts, 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.\n", "\n", "^ Shapiro, Ehud Y. (1983). Algorithmic program debugging. Cambridge, Mass: MIT Press. ISBN 0-262-19218-7\n", "\n", "^ Shapiro, Ehud Y. \"The model inference system.\" Proceedings of the 7th international joint conference on Artificial intelligence-Volume 2. Morgan Kaufmann Publishers Inc., 1981.\n", "\n", "^ Honglak Lee, Roger Grosse, Rajesh Ranganath, Andrew Y. Ng. \"Convolutional Deep Belief Networks for Scalable Unsupervised Learning of Hierarchical Representations\" Proceedings of the 26th Annual International Conference on Machine Learning, 2009.\n", "\n", "^ Cortes, Corinna; Vapnik, Vladimir N. (1995). \"Support-vector networks\". Machine Learning. 20 (3): 273–297. doi:10.1007/BF00994018.\n", "\n", "^ Stevenson, Christopher. \"Tutorial: Polynomial Regression in Excel\". facultystaff.richmond.edu. Retrieved 22 January 2017.\n", "\n", "^ Goldberg, David E.; Holland, John H. (1988). \"Genetic algorithms and machine learning\" (PDF). Machine Learning. 3 (2): 95–99. doi:10.1007/bf00113892.\n", "\n", "^ 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.\n", "\n", "^ Zhang, Jun; Zhan, Zhi-hui; Lin, Ying; Chen, Ni; Gong, Yue-jiao; Zhong, Jing-hui; Chung, Henry S.H.; Li, Yun; Shi, Yu-hui (2011). \"Evolutionary Computation Meets Machine Learning: A Survey\". Computational Intelligence Magazine. 6 (4): 68–75. doi:10.1109/mci.2011.942584.\n", "\n", "^ \"Federated Learning: Collaborative Machine Learning without Centralized Training Data\". Google AI Blog. Retrieved 2019-06-08.\n", "\n", "^ Machine learning is included in the CFA Curriculum (discussion is top down); see: Kathleen DeRose and Christophe Le Lanno (2020). \"Machine Learning\".\n", "\n", "^ \"BelKor Home Page\" research.att.com\n", "\n", "^ \"The Netflix Tech Blog: Netflix Recommendations: Beyond the 5 stars (Part 1)\". 2012-04-06. Retrieved 8 August 2015.\n", "\n", "^ Scott Patterson (13 July 2010). \"Letting the Machines Decide\". The Wall Street Journal. Retrieved 24 June 2018.\n", "\n", "^ Vinod Khosla (January 10, 2012). \"Do We Need Doctors or Algorithms?\". Tech Crunch.\n", "\n", "^ When A Machine Learning Algorithm Studied Fine Art Paintings, It Saw Things Art Historians Had Never Noticed, The Physics at ArXiv blog\n", "\n", "^ Vincent, James (2019-04-10). \"The first AI-generated textbook shows what robot writers are actually good at\". The Verge. Retrieved 2019-05-05.\n", "\n", "^ \"Why Machine Learning Models Often Fail to Learn: QuickTake Q&A\". Bloomberg.com. 2016-11-10. Retrieved 2017-04-10.\n", "\n", "^ \"The First Wave of Corporate AI Is Doomed to Fail\". Harvard Business Review. 2017-04-18. Retrieved 2018-08-20.\n", "\n", "^ \"Why the A.I. euphoria is doomed to fail\". VentureBeat. 2016-09-18. Retrieved 2018-08-20.\n", "\n", "^ \"9 Reasons why your machine learning project will fail\". www.kdnuggets.com. Retrieved 2018-08-20.\n", "\n", "^ \"Why Uber's self-driving car killed a pedestrian\". The Economist. Retrieved 2018-08-20.\n", "\n", "^ \"IBM's Watson recommended 'unsafe and incorrect' cancer treatments - STAT\". STAT. 2018-07-25. Retrieved 2018-08-21.\n", "\n", "^ Hernandez, Daniela; Greenwald, Ted (2018-08-11). \"IBM Has a Watson Dilemma\". Wall Street Journal. ISSN 0099-9660. Retrieved 2018-08-21.\n", "\n", "^ Garcia, Megan (2016). \"Racist in the Machine\". World Policy Journal. 33 (4): 111–117. doi:10.1215/07402775-3813015. ISSN 0740-2775.\n", "\n", "^ Caliskan, Aylin; Bryson, Joanna J.; Narayanan, Arvind (2017-04-14). \"Semantics derived automatically from language corpora contain human-like biases\". Science. 356 (6334): 183–186. arXiv:1608.07187. Bibcode:2017Sci...356..183C. doi:10.1126/science.aal4230. ISSN 0036-8075. PMID 28408601.\n", "\n", "^ 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, retrieved 2018-08-20\n", "\n", "^ Julia Angwin; Jeff Larson; Lauren Kirchner; Surya Mattu (2016-05-23). \"Machine Bias\". ProPublica. Retrieved 2018-08-20.\n", "\n", "^ \"Opinion | When an Algorithm Helps Send You to Prison\". New York Times. Retrieved 2018-08-20.\n", "\n", "^ \"Google apologises for racist blunder\". BBC News. 2015-07-01. Retrieved 2018-08-20.\n", "\n", "^ \"Google 'fixed' its racist algorithm by removing gorillas from its image-labeling tech\". The Verge. Retrieved 2018-08-20.\n", "\n", "^ \"Opinion | Artificial Intelligence's White Guy Problem\". New York Times. Retrieved 2018-08-20.\n", "\n", "^ Metz, Rachel. \"Why Microsoft's teen chatbot, Tay, said lots of awful things online\". MIT Technology Review. Retrieved 2018-08-20.\n", "\n", "^ Simonite, Tom. \"Microsoft says its racist chatbot illustrates how AI isn't adaptable enough to help most businesses\". MIT Technology Review. Retrieved 2018-08-20.\n", "\n", "^ Hempel, Jessi (2018-11-13). \"Fei-Fei Li's Quest to Make Machines Better for Humanity\". Wired. ISSN 1059-1028. Retrieved 2019-02-17.\n", "\n", "^ Kohavi, Ron (1995). \"A Study of Cross-Validation and Bootstrap for Accuracy Estimation and Model Selection\" (PDF). International Joint Conference on Artificial Intelligence.\n", "\n", "^ Pontius, Robert Gilmore; Si, Kangping (2014). \"The total operating characteristic to measure diagnostic ability for multiple thresholds\". International Journal of Geographical Information Science. 28 (3): 570–583. doi:10.1080/13658816.2013.862623.\n", "\n", "^ Bostrom, Nick (2011). \"The Ethics of Artificial Intelligence\" (PDF). Retrieved 11 April 2016.\n", "\n", "^ Edionwe, Tolulope. \"The fight against racist algorithms\". The Outline. Retrieved 17 November 2017.\n", "\n", "^ Jeffries, Adrianne. \"Machine learning is racist because the internet is racist\". The Outline. Retrieved 17 November 2017.\n", "\n", "^ Prates, Marcelo O. R. (11 Mar 2019). \"Assessing Gender Bias in Machine Translation -- A Case Study with Google Translate\". arXiv:1809.02208 [cs.CY].\n", "\n", "^ Narayanan, Arvind (August 24, 2016). \"Language necessarily contains human biases, and so will machines trained on language corpora\". Freedom to Tinker.\n", "\n", "^ Char, D. S.; Shah, N. H.; Magnus, D. (2018). \"Implementing Machine Learning in Health Care—Addressing Ethical Challenges\". New England Journal of Medicine. 378 (11): 981–983. doi:10.1056/nejmp1714229. PMC 5962261. PMID 29539284.\n", "\n", "\n", "Further reading[edit]\n", ".mw-parser-output .refbegin{font-size:90%;margin-bottom:0.5em}.mw-parser-output .refbegin-hanging-indents>ul{list-style-type:none;margin-left:0}.mw-parser-output .refbegin-hanging-indents>ul>li,.mw-parser-output .refbegin-hanging-indents>dl>dd{margin-left:0;padding-left:3.2em;text-indent:-3.2em;list-style:none}.mw-parser-output .refbegin-100{font-size:100%}\n", "Nils J. Nilsson, Introduction to Machine Learning.\n", "Trevor Hastie, Robert Tibshirani and Jerome H. Friedman (2001). The Elements of Statistical Learning, Springer. ISBN 0-387-95284-5.\n", "Pedro Domingos (September 2015), The Master Algorithm, Basic Books, ISBN 978-0-465-06570-7\n", "Ian H. Witten and Eibe Frank (2011). Data Mining: Practical machine learning tools and techniques Morgan Kaufmann, 664pp., ISBN 978-0-12-374856-0.\n", "Ethem Alpaydin (2004). Introduction to Machine Learning, MIT Press, ISBN 978-0-262-01243-0.\n", "David J. C. MacKay. Information Theory, Inference, and Learning Algorithms Cambridge: Cambridge University Press, 2003. ISBN 0-521-64298-1\n", "Richard O. Duda, Peter E. Hart, David G. Stork (2001) Pattern classification (2nd edition), Wiley, New York, ISBN 0-471-05669-3.\n", "Christopher Bishop (1995). Neural Networks for Pattern Recognition, Oxford University Press. ISBN 0-19-853864-2.\n", "Stuart Russell & Peter Norvig, (2009). Artificial Intelligence – A Modern Approach. Pearson, ISBN 9789332543515.\n", "Ray Solomonoff, An Inductive Inference Machine, IRE Convention Record, Section on Information Theory, Part 2, pp., 56–62, 1957.\n", "Ray Solomonoff, An Inductive Inference Machine A privately circulated report from the 1956 Dartmouth Summer Research Conference on AI.\n", "\n", "External links[edit]\n", "\n", "\n", "\n", "Wikimedia Commons has media related to Machine learning.\n", "\n", "International Machine Learning Society\n", "mloss is an academic database of open-source machine learning software.\n", "Machine Learning Crash Course by Google. This is a free course on machine learning through the use of TensorFlow.\n", "vteComputer scienceNote: This template roughly follows the 2012 ACM Computing Classification System.Hardware\n", "Printed circuit board\n", "Peripheral\n", "Integrated circuit\n", "Very Large Scale Integration\n", "Systems on Chip (SoCs)\n", "Energy consumption (Green computing)\n", "Electronic design automation\n", "Hardware acceleration\n", "Computer systemsorganization\n", "Computer architecture\n", "Embedded system\n", "Real-time computing\n", "Dependability\n", "Networks\n", "Network architecture\n", "Network protocol\n", "Network components\n", "Network scheduler\n", "Network performance evaluation\n", "Network service\n", "Software organization\n", "Interpreter\n", "Middleware\n", "Virtual machine\n", "Operating system\n", "Software quality\n", "Software notationsand tools\n", "Programming paradigm\n", "Programming language\n", "Compiler\n", "Domain-specific language\n", "Modeling language\n", "Software framework\n", "Integrated development environment\n", "Software configuration management\n", "Software library\n", "Software repository\n", "Software development\n", "Software development process\n", "Requirements analysis\n", "Software design\n", "Software construction\n", "Software deployment\n", "Software maintenance\n", "Programming team\n", "Open-source model\n", "Theory of computation\n", "Model of computation\n", "Formal language\n", "Automata theory\n", "Computability theory\n", "Computational complexity theory\n", "Logic\n", "Semantics\n", "Algorithms\n", "Algorithm design\n", "Analysis of algorithms\n", "Algorithmic efficiency\n", "Randomized algorithm\n", "Computational geometry\n", "Mathematicsof computing\n", "Discrete mathematics\n", "Probability\n", "Statistics\n", "Mathematical software\n", "Information theory\n", "Mathematical analysis\n", "Numerical analysis\n", "Informationsystems\n", "Database management system\n", "Information storage systems\n", "Enterprise information system\n", "Social information systems\n", "Geographic information system\n", "Decision support system\n", "Process control system\n", "Multimedia information system\n", "Data mining\n", "Digital library\n", "Computing platform\n", "Digital marketing\n", "World Wide Web\n", "Information retrieval\n", "Security\n", "Cryptography\n", "Formal methods\n", "Security services\n", "Intrusion detection system\n", "Hardware security\n", "Network security\n", "Information security\n", "Application security\n", "Human–computerinteraction\n", "Interaction design\n", "Social computing\n", "Ubiquitous computing\n", "Visualization\n", "Accessibility\n", "Concurrency\n", "Concurrent computing\n", "Parallel computing\n", "Distributed computing\n", "Multithreading\n", "Multiprocessing\n", "Artificialintelligence\n", "Natural language processing\n", "Knowledge representation and reasoning\n", "Computer vision\n", "Automated planning and scheduling\n", "Search methodology\n", "Control method\n", "Philosophy of artificial intelligence\n", "Distributed artificial intelligence\n", "Machine learning\n", "Supervised learning\n", "Unsupervised learning\n", "Reinforcement learning\n", "Multi-task learning\n", "Cross-validation\n", "Graphics\n", "Animation\n", "Rendering\n", "Image manipulation\n", "Graphics processing unit\n", "Mixed reality\n", "Virtual reality\n", "Image compression\n", "Solid modeling\n", "Appliedcomputing\n", "E-commerce\n", "Enterprise software\n", "Computational mathematics\n", "Computational physics\n", "Computational chemistry\n", "Computational biology\n", "Computational social science\n", "Computational engineering\n", "Computational healthcare\n", "Digital art\n", "Electronic publishing\n", "Cyberwarfare\n", "Electronic voting\n", "Video games\n", "Word processing\n", "Operations research\n", "Educational technology\n", "Document management\n", "\n", " Book\n", " Category\n", " Outline\n", "WikiProject\n", " Commons\n", "\n", "\n", "\n", "\n", "\n", "Retrieved from \"https://en.wikipedia.org/w/index.php?title=Machine_learning&oldid=936385536\"\n", "Categories: Machine learningCyberneticsLearningHidden categories: Articles with short descriptionArticles with long short descriptionWikipedia articles needing clarification from November 2018Commons category link from Wikidata\n", "\n", "From Wikipedia, the free encyclopedia\n", "\n", "\n", "\n", "\n", "\n", "For the journal, see Machine Learning (journal).\n", "\"Statistical learning\" redirects here. For statistical learning in linguistics, see statistical learning in language acquisition.\n", "Scientific study of algorithms and statistical models that computer systems use to perform tasks without explicit instructions\n", "Machine learning anddata mining\n", "Problems\n", "Classification\n", "Clustering\n", "Regression\n", "Anomaly detection\n", "AutoML\n", "Association rules\n", "Reinforcement learning\n", "Structured prediction\n", "Feature engineering\n", "Feature learning\n", "Online learning\n", "Semi-supervised learning\n", "Unsupervised learning\n", "Learning to rank\n", "Grammar induction\n", "\n", "\n", "Supervised learning.mw-parser-output .nobold{font-weight:normal}(classification • regression) \n", "Decision trees\n", "Ensembles\n", "Bagging\n", "Boosting\n", "Random forest\n", "k-NN\n", "Linear regression\n", "Naive Bayes\n", "Artificial neural networks\n", "Logistic regression\n", "Perceptron\n", "Relevance vector machine (RVM)\n", "Support vector machine (SVM)\n", "\n", "\n", "Clustering\n", "BIRCH\n", "CURE\n", "Hierarchical\n", "k-means\n", "Expectation–maximization (EM)\n", "DBSCAN\n", "OPTICS\n", "Mean-shift\n", "\n", "\n", "Dimensionality reduction\n", "Factor analysis\n", "CCA\n", "ICA\n", "LDA\n", "NMF\n", "PCA\n", "t-SNE\n", "\n", "\n", "Structured prediction\n", "Graphical models\n", "Bayes net\n", "Conditional random field\n", "Hidden Markov\n", "\n", "\n", "Anomaly detection\n", "k-NN\n", "Local outlier factor\n", "\n", "\n", "Artificial neural network\n", "Autoencoder\n", "Deep learning\n", "DeepDream\n", "Multilayer perceptron\n", "RNN\n", "LSTM\n", "GRU\n", "Restricted Boltzmann machine\n", "GAN\n", "SOM\n", "Convolutional neural network\n", "U-Net\n", "\n", "\n", "Reinforcement learning\n", "Q-learning\n", "SARSA\n", "Temporal difference (TD)\n", "\n", "\n", "Theory\n", "Bias–variance dilemma\n", "Computational learning theory\n", "Empirical risk minimization\n", "Occam learning\n", "PAC learning\n", "Statistical learning\n", "VC theory\n", "\n", "\n", "Machine-learning venues\n", "NeurIPS\n", "ICML\n", "ML\n", "JMLR\n", "ArXiv:cs.LG\n", "\n", "\n", "Glossary of artificial intelligence\n", "Glossary of artificial intelligence\n", "\n", "\n", "Related articles\n", "List of datasets for machine-learning research\n", "Outline of machine learning\n", "\n", "vte\n", "Machine learning (ML) is the scientific study of algorithms and statistical models that computer systems use to perform a specific task without using explicit instructions, relying on patterns and inference instead. It is seen as a subset of artificial intelligence. Machine learning algorithms build a mathematical model based on sample data, known as \"training data\", in order to make predictions or decisions without being explicitly programmed to perform the task.[1][2]:2 Machine learning algorithms are used in a wide variety of applications, such as email filtering and computer vision, where it is difficult or infeasible to develop a conventional algorithm for effectively performing the task.\n", "Machine learning is closely related to computational statistics, which focuses on making predictions using computers. The study of mathematical optimization delivers methods, theory and application domains to the field of machine learning. Data mining is a field of study within machine learning, and focuses on exploratory data analysis through unsupervised learning.[3][4] In its application across business problems, machine learning is also referred to as predictive analytics.\n", "\n", "Contents\n", "\n", "1 Overview\n", "\n", "1.1 Machine learning tasks\n", "\n", "\n", "2 History and relationships to other fields\n", "\n", "2.1 Relation to data mining\n", "2.2 Relation to optimization\n", "2.3 Relation to statistics\n", "\n", "\n", "3 Theory\n", "4 Approaches\n", "\n", "4.1 Types of learning algorithms\n", "\n", "4.1.1 Supervised learning\n", "4.1.2 Unsupervised learning\n", "4.1.3 Reinforcement learning\n", "4.1.4 Self learning\n", "4.1.5 Feature learning\n", "4.1.6 Sparse dictionary learning\n", "4.1.7 Anomaly detection\n", "4.1.8 Association rules\n", "\n", "\n", "4.2 Models\n", "\n", "4.2.1 Artificial neural networks\n", "4.2.2 Decision trees\n", "4.2.3 Support vector machines\n", "4.2.4 Regression analysis\n", "4.2.5 Bayesian networks\n", "4.2.6 Genetic algorithms\n", "\n", "\n", "4.3 Training models\n", "\n", "4.3.1 Federated learning\n", "\n", "\n", "\n", "\n", "5 Applications\n", "6 Limitations\n", "\n", "6.1 Bias\n", "\n", "\n", "7 Model assessments\n", "8 Ethics\n", "9 Software\n", "\n", "9.1 Free and open-source software\n", "9.2 Proprietary software with free and open-source editions\n", "9.3 Proprietary software\n", "\n", "\n", "10 Journals\n", "11 Conferences\n", "12 See also\n", "13 References\n", "14 Further reading\n", "15 External links\n", "\n", "\n", "Overview[edit]\n", "The name machine learning was coined in 1959 by Arthur Samuel.[5] 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 experience E with respect to some class of tasks T and performance measure P if its performance at tasks in T, as measured by P, improves with experience E.\"[6] This definition of the tasks in which machine learning is concerned offers a fundamentally operational definition rather than defining the field in cognitive terms. This follows Alan 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?\".[7] In Turing's proposal the various characteristics that could be possessed by a thinking machine and the various implications in constructing one are exposed.\n", "\n", "Machine learning tasks[edit]\n", "\n", "\n", " A support vector machine is a supervised learning model that divides the data into regions separated by a linear boundary. Here, the linear boundary divides the black circles from the white.\n", "Machine learning tasks are classified into several broad categories. In supervised learning, the algorithm builds a mathematical model from a set of data that contains both the inputs and the desired outputs. For example, if the task were determining whether an image contained a certain object, the training data for a supervised learning algorithm would include images with and without that object (the input), and each image would have a label (the output) designating whether it contained the object. In special cases, the input may be only partially available, or restricted to special feedback.[clarification needed] Semi-supervised learning algorithms develop mathematical models from incomplete training data, where a portion of the sample input doesn't have labels.\n", "Classification algorithms and regression algorithms are types of supervised learning. Classification algorithms are used when the outputs are restricted to a limited set of values. For a classification algorithm that filters emails, the input would be an incoming email, and the output would be the name of the folder in which to file the email. For an algorithm that identifies spam emails, the output would be the prediction of either \"spam\" or \"not spam\", represented by the Boolean values true and false. Regression algorithms are named for their continuous outputs, meaning they may have any value within a range. Examples of a continuous value are the temperature, length, or price of an object.\n", "In unsupervised learning, the algorithm builds a mathematical model from a set of data that contains only inputs and no desired output labels. Unsupervised learning algorithms are used to find structure in the data, like grouping or clustering of data points. Unsupervised learning can discover patterns in the data, and can group the inputs into categories, as in feature learning. Dimensionality reduction is the process of reducing the number of \"features\", or inputs, in a set of data.\n", "Active learning algorithms access the desired outputs (training labels) for a limited set of inputs based on a budget and optimize the choice of inputs for which it will acquire training labels. When used interactively, these can be presented to a human user for labeling. Reinforcement learning algorithms are given feedback in the form of positive or negative reinforcement in a dynamic environment and are used in autonomous vehicles or in learning to play a game against a human opponent.[2]:3 Other specialized algorithms in machine learning include topic modeling, where the computer program is given a set of natural language documents and finds other documents that cover similar topics. Machine learning algorithms can be used to find the unobservable probability density function in density estimation problems. Meta learning algorithms learn their own inductive bias based on previous experience. In developmental robotics, robot learning algorithms generate their own sequences of learning experiences, also known as a curriculum, to cumulatively acquire new skills through self-guided exploration and social interaction with humans. These robots use guidance mechanisms such as active learning, maturation, motor synergies, and imitation.[clarification needed]\n", "\n", "History and relationships to other fields[edit]\n", "See also: Timeline of machine learning\n", "Arthur Samuel, an American pioneer in the field of computer gaming and artificial intelligence, coined the term \"Machine Learning\" in 1959 while at IBM.[8] A representative book of the machine learning research during the 1960s was the Nilsson's book on Learning Machines, dealing mostly with machine learning for pattern classification.[9] The interest of machine learning related to pattern recognition continued during the 1970s, as described in the book of Duda and Hart in 1973. [10] In 1981 a report was given on using teaching strategies so that a neural network learns to recognize 40 characters (26 letters, 10 digits, and 4 special symbols) from a computer terminal. [11] \n", "As a scientific endeavor, machine learning grew out of the quest for artificial intelligence. Already in the early days of AI as an academic discipline, some researchers were interested in having machines learn from data. They attempted to approach the problem with various symbolic methods, as well as what were then termed \"neural networks\"; these were mostly perceptrons and other models that were later found to be reinventions of the generalized linear models of statistics.[12] Probabilistic reasoning was also employed, especially in automated medical diagnosis.[13]:488\n", "However, an increasing emphasis on the logical, 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.[13]:488 By 1980, expert systems had come to dominate AI, and statistics was out of favor.[14] Work on symbolic/knowledge-based learning did continue within AI, leading to inductive logic programming, but the more statistical line of research was now outside the field of AI proper, in pattern recognition and information retrieval.[13]:708–710; 755 Neural networks research had been abandoned by AI and computer science around the same time. This line, too, was continued outside the AI/CS field, as \"connectionism\", by researchers from other disciplines including Hopfield, Rumelhart and Hinton. Their main success came in the mid-1980s with the reinvention of backpropagation.[13]:25\n", "Machine learning, reorganized as a separate 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 the symbolic approaches it had inherited from AI, and toward methods and models borrowed from statistics and probability theory.[14] It also benefited from the increasing availability of digitized information, and the ability to distribute it via the Internet.\n", "\n", "Relation to data mining[edit]\n", "Machine learning and data mining often employ the same methods and overlap significantly, but while machine learning focuses on prediction, based on known properties learned from the training data, data mining focuses on the discovery of (previously) unknown properties in the data (this is the analysis step of knowledge 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 to reproduce known knowledge, while in knowledge discovery and data mining (KDD) the key task is the discovery of previously unknown 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.\n", "\n", "Relation to optimization[edit]\n", "Machine learning also has intimate ties to optimization: many learning problems are formulated as minimization of some loss 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 a label to instances, and models are trained to correctly predict the pre-assigned labels of a set of examples). The difference between the two fields arises from the goal of generalization: while optimization algorithms can minimize the loss on a training set, machine learning is concerned with minimizing the loss on unseen samples.[15]\n", "\n", "Relation to statistics[edit]\n", "Machine learning and statistics are closely related fields in terms of methods, but distinct in their principal goal: statistics draws population inferences from a sample, while machine learning finds generalizable predictive patterns.[16] According to Michael I. Jordan, the ideas of machine learning, from methodological principles to theoretical tools, have had a long pre-history in statistics.[17] He also suggested the term data science as a placeholder to call the overall field.[17]\n", "Leo Breiman distinguished two statistical modeling paradigms: data model and algorithmic model,[18] wherein \"algorithmic model\" means more or less the machine learning algorithms like Random forest.\n", "Some statisticians have adopted methods from machine learning, leading to a combined field that they call statistical learning.[19]\n", "\n", " Theory[edit]\n", "Main articles: Computational learning theory and Statistical learning theory\n", "A core objective of a learner is to generalize from its experience.[2][20] 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.\n", "The computational analysis of machine learning algorithms and their performance is a branch of theoretical computer science known as computational learning theory. Because training sets are finite and the future is uncertain, learning theory usually does not yield guarantees of the performance of algorithms. Instead, probabilistic bounds on the performance are quite common. The bias–variance decomposition is one way to quantify generalization error.\n", "For the best performance in the context of generalization, 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 under fitted 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 to overfitting and generalization will be poorer.[21]\n", "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 in polynomial time. There are two kinds of time 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.\n", "\n", "Approaches[edit]\n", "Types of learning algorithms[edit]\n", "The types of machine learning algorithms differ in their approach, the type of data they input and output, and the type of task or problem that they are intended to solve.\n", "\n", "Supervised learning[edit]\n", "Main article: Supervised learning\n", "Supervised learning algorithms build a mathematical model of a set of data that contains both the inputs and the desired outputs.[22] The data is known as training data, and 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 an array or vector, sometimes called a feature vector, and the training data is represented by a matrix. Through iterative optimization of an objective function, supervised learning algorithms learn a function that can be used to predict the output associated with new inputs.[23] An optimal function will allow 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.[6]\n", "Supervised learning algorithms include classification and regression.[24] Classification algorithms are used when the outputs are restricted to a limited set of values, and regression algorithms are used when the outputs may have any numerical value within a range. 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 in ranking, recommendation systems, visual identity tracking, face verification, and speaker verification.\n", "In the case of semi-supervised learning algorithms, some of the training examples are missing training labels, but they can nevertheless be used to improve the quality of a model. In weakly supervised learning, the training labels are noisy, limited, or imprecise; however, these labels are often cheaper to obtain, resulting in larger effective training sets.[25]\n", "\n", "Unsupervised learning[edit]\n", "Main article: Unsupervised learningSee also: Cluster analysis\n", "Unsupervised learning algorithms take a set of data that contains only inputs, and find structure in the data, like grouping or clustering of data points. The algorithms, therefore, learn from test data that has not been labeled, classified or categorized. 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. A central application of unsupervised learning is in the field of density estimation in statistics,[26] though unsupervised learning encompasses other domains involving summarizing and explaining data features.\n", "Cluster analysis is the assignment of a set of observations into subsets (called clusters) 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 some similarity metric and evaluated, for example, by internal compactness, or the similarity between members of the same cluster, and separation, the difference between clusters. Other methods are based on estimated density and graph connectivity.\n", "Semi-supervised learning\n", "\n", "Main article: Semi-supervised learning\n", "Semi-supervised learning falls between unsupervised learning (without any labeled training data) and supervised learning (with completely labeled training data). Many machine-learning researchers have found that unlabeled data, when used in conjunction with a small amount of labeled data, can produce a considerable improvement in learning accuracy.\n", "\n", "Reinforcement learning[edit]\n", "Main article: Reinforcement learning\n", "Reinforcement learning is an area of machine learning concerned with how software agents ought to take actions in an environment so as to maximize some notion of cumulative reward. Due to its generality, the field is studied in many other disciplines, such as game theory, control theory, operations research, information theory, simulation-based optimization, multi-agent systems, swarm intelligence, statistics and genetic algorithms. In machine learning, the environment is typically represented as a Markov Decision Process (MDP). Many reinforcement learning algorithms use dynamic programming techniques.[27] Reinforcement learning algorithms do not assume knowledge of an exact mathematical model of the MDP, and are used when exact models are infeasible. Reinforcement learning algorithms are used in autonomous vehicles or in learning to play a game against a human opponent.\n", "\n", "Self learning[edit]\n", "Self-learning as machine learning paradigm was introduced in 1982 along with a neural network capable of self-learning named Crossbar Adaptive Array (CAA). [28] It is a learning with no external rewards and no external teacher advices. 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. [29]\n", "The self-learning algorithm updates a memory matrix W =||w(a,s)|| such that in each iteration executes the following machine learning routine: \n", "\n", " In situation s perform action a;\n", " Receive consequence situation s’;\n", " Compute emotion of being in consequence situation v(s’);\n", " Update crossbar memory w’(a,s) = w(a,s) + v(s’).\n", "\n", "It is a system with only one input, situation s, and only one output, action (or behavior) 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 behavioral environment where it behaves, and the other is genetic environment, wherefrom it initially and only once receives initial emotions about situations to be encountered in the behavioral environment. After receiving the genome (species) vector from the genetic environment, the CAA learns a goal seeking behavior, in an environment that contains both desirable and undesirable situations. [30]\n", "\n", "Feature learning[edit]\n", "Main article: Feature learning\n", "Several learning algorithms aim at discovering better representations of the inputs provided during training.[31] Classic examples include principal components 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 manual feature engineering, and allows a machine to both learn the features and use them to perform a specific task.\n", "Feature learning can be either supervised or unsupervised. In supervised feature learning, features are learned using labeled input data. Examples include artificial neural networks, multilayer perceptrons, and supervised dictionary learning. In unsupervised feature learning, features are learned with unlabeled input data. Examples include dictionary learning, independent component analysis, autoencoders, matrix factorization[32] and various forms of clustering.[33][34][35]\n", "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 from tensor representations for multidimensional data, without reshaping them into higher-dimensional vectors.[36] 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 is one that learns a representation that disentangles the underlying factors of variation that explain the observed data.[37]\n", "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 has not yielded to attempts to algorithmically define specific features. An alternative is to discover such features or representations through examination, without relying on explicit algorithms.\n", "\n", "Sparse dictionary learning[edit]\n", "Main article: Sparse dictionary learning\n", "Sparse dictionary learning is a feature learning method where a training example is represented as a linear combination of basis functions, and is assumed to be a sparse matrix. The method is strongly NP-hard and difficult to solve approximately.[38] A popular heuristic method for sparse dictionary learning is the K-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 in image de-noising. The key idea is that a clean image patch can be sparsely represented by an image dictionary, but the noise cannot.[39]\n", "\n", "Anomaly detection[edit]\n", "Main article: Anomaly detection\n", "In data mining, anomaly detection, also known as outlier detection, is the identification of rare items, events or observations which raise suspicions by differing significantly from the majority of the data.[40] Typically, the anomalous items represent an issue such as bank fraud, a structural defect, medical problems or errors in a text. Anomalies are referred to as outliers, novelties, noise, deviations and exceptions.[41]\n", "In particular, in the context of abuse and network intrusion detection, the interesting objects are often not rare objects, but unexpected bursts in activity. This pattern does not adhere to the common statistical definition of an outlier as a rare object, and many outlier detection methods (in particular, unsupervised algorithms) will fail on such data, unless it has been aggregated appropriately. Instead, a cluster analysis algorithm may be able to detect the micro-clusters formed by these patterns.[42]\n", "Three broad categories of anomaly detection techniques exist.[43] Unsupervised anomaly detection techniques detect anomalies in an unlabeled 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 least to the remainder of the data set. Supervised anomaly detection techniques require a data set that has been labeled as \"normal\" and \"abnormal\" and involves training a classifier (the key difference to many other statistical classification problems is the inherently unbalanced nature of outlier detection). Semi-supervised anomaly detection techniques construct a model representing normal behavior from a given normal training data set and then test the likelihood of a test instance to be generated by the model.\n", "\n", "Association rules[edit]\n", "Main article: Association rule learningSee also: Inductive logic programming\n", "Association rule learning is a rule-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\".[44]\n", "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 utilization 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.[45] Rule-based machine learning approaches include learning classifier systems, association rule learning, and artificial immune systems.\n", "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 by point-of-sale (POS) systems in supermarkets.[46] For example, the rule \n", "\n", "\n", "\n", "{\n", "\n", "o\n", "n\n", "i\n", "o\n", "n\n", "s\n", ",\n", "p\n", "o\n", "t\n", "a\n", "t\n", "o\n", "e\n", "s\n", "\n", "}\n", "⇒\n", "{\n", "\n", "b\n", "u\n", "r\n", "g\n", "e\n", "r\n", "\n", "}\n", "\n", "\n", "{\\displaystyle \\{\\mathrm {onions,potatoes} \\}\\Rightarrow \\{\\mathrm {burger} \\}}\n", "\n", " 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 promotional pricing or product placements. In addition to market basket analysis, association rules are employed today in application areas including Web usage mining, intrusion detection, continuous production, and bioinformatics. In contrast with sequence mining, association rule learning typically does not consider the order of items either within a transaction or across transactions.\n", "Learning classifier systems (LCS) are a family of rule-based machine learning algorithms that combine a discovery component, typically a genetic algorithm, with a learning component, performing either supervised learning, reinforcement learning, or unsupervised learning. They seek to identify a set of context-dependent rules that collectively store and apply knowledge in a piecewise manner in order to make predictions.[47]\n", "Inductive logic programming (ILP) is an approach to rule-learning using logic 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 that entails all positive and no negative examples. Inductive programming is a related field that considers any kind of programming languages for representing hypotheses (and not only logic programming), such as functional programs.\n", "Inductive logic programming is particularly useful in bioinformatics and natural language processing. Gordon Plotkin and Ehud Shapiro laid the initial theoretical foundation for inductive machine learning in a logical setting.[48][49][50] Shapiro built their first implementation (Model Inference System) in 1981: a Prolog program that inductively inferred logic programs from positive and negative examples.[51] The term inductive here refers to philosophical induction, suggesting a theory to explain observed facts, rather than mathematical induction, proving a property for all members of a well-ordered set.\n", "\n", "Models[edit]\n", "Performing machine learning involves creating a model, which is trained on some training data and then can process additional data to make predictions. Various types of models have been used and researched for machine learning systems.\n", "\n", "Artificial neural networks[edit]\n", "Main article: Artificial neural networkSee also: Deep learning\n", " An artificial neural network is an interconnected group of nodes, akin to the vast network of neurons in a brain. Here, each circular node represents an artificial neuron and an arrow represents a connection from the output of one artificial neuron to the input of another.\n", "Artificial neural networks (ANNs), or connectionist systems, are computing systems vaguely inspired by the biological neural networks that constitute animal brains. Such systems \"learn\" to perform tasks by considering examples, generally without being programmed with any task-specific rules.\n", "An ANN is a model based on a collection of connected units or nodes called \"artificial neurons\", which loosely model the neurons in a biological brain. Each connection, like the synapses 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 a real 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 a weight 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.\n", "The original goal of the ANN approach was to solve problems in the same way that a human brain would. However, over time, attention moved to performing specific tasks, leading to deviations from biology. Artificial neural networks have been used on a variety of tasks, including computer vision, speech recognition, machine translation, social network filtering, playing board and video games and medical diagnosis.\n", "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.[52]\n", "\n", "Decision trees[edit]\n", "Main article: Decision tree learning\n", "Decision tree learning uses a decision tree as a predictive 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 modeling 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 represent conjunctions of features that lead to those class labels. Decision trees where the target variable can take continuous values (typically real numbers) are called regression trees. In decision analysis, a decision tree can be used to visually and explicitly represent decisions and decision making. In data mining, a decision tree describes data, but the resulting classification tree can be an input for decision making.\n", "\n", "Support vector machines[edit]\n", "Main article: Support vector machines\n", "Support vector machines (SVMs), also known as support vector networks, are a set of related supervised 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 or the other.[53] An SVM training algorithm is a non-probabilistic, binary, linear classifier, although methods such as Platt 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 the kernel trick, implicitly mapping their inputs into high-dimensional feature spaces.\n", "\n", " Illustration of linear regression on a data set.\n", "Regression analysis[edit]\n", "Main article: Regression analysis\n", "Regression analysis encompasses a large variety of statistical methods to estimate the relationship between input variables and their associated features. Its most common form is linear regression, where a single line is drawn to best fit the given data according to a mathematical criterion such as ordinary least squares. The latter is oftentimes extended by regularization (mathematics) methods to mitigate overfitting and high bias, as can be seen in ridge regression. When dealing with non-linear problems, go-to models include polynomial regression (e.g. used for trendline fitting in Microsoft Excel [54]), Logistic regression (often used in statistical classification) or even kernel regression, which introduces non-linearity by taking advantage of the kernel trick to implicitly map input variables to higher dimensional space. \n", "\n", "Bayesian networks[edit]\n", "Main article: Bayesian network\n", " A simple Bayesian network. Rain influences whether the sprinkler is activated, and both rain and the sprinkler influence whether the grass is wet.\n", "A Bayesian network, belief network or directed acyclic graphical model is a probabilistic graphical model that represents a set of random variables and their conditional independence with a directed 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 perform inference and learning. Bayesian networks that model sequences of variables, like speech signals or protein sequences, are called dynamic Bayesian networks. Generalizations of Bayesian networks that can represent and solve decision problems under uncertainty are called influence diagrams.\n", "\n", "Genetic algorithms[edit]\n", "Main article: Genetic algorithm\n", "A genetic algorithm (GA) is a search algorithm and heuristic technique that mimics the process of natural selection, using methods such as mutation and crossover to generate new genotypes in the hope of finding good solutions to a given problem. In machine learning, genetic algorithms were used in the 1980s and 1990s.[55][56] Conversely, machine learning techniques have been used to improve the performance of genetic and evolutionary algorithms.[57]\n", "\n", "Training models[edit]\n", "Usually, machine learning models require a lot of data in order for them to perform well. Usually, when training a machine learning model, one needs to collect a large, representative sample of data from a training set. Data from the training set can be as varied as a corpus of text, a collection of images, and data collected from individual users of a service. Overfitting is something to watch out for when training a machine learning model.\n", "\n", "Federated learning[edit]\n", "Main article: Federated learning\n", "Federated learning is a new approach to training machine learning models that decentralizes the training process, allowing for users' privacy to be maintained by not needing to send their data to a centralized server. This also increases efficiency by decentralizing 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 to Google.[58]\n", "\n", "Applications[edit]\n", "There are many applications for machine learning, including:\n", "\n", "\n", "Agriculture\n", "Anatomy\n", "Adaptive websites\n", "Affective computing\n", "Banking\n", "Bioinformatics\n", "Brain–machine interfaces\n", "Cheminformatics\n", "Citizen science\n", "Computer networks\n", "Computer vision\n", "Credit-card fraud detection\n", "Data quality\n", "DNA sequence classification\n", "Economics\n", "Financial market analysis [59]\n", "General game playing\n", "Handwriting recognition\n", "Information retrieval\n", "Insurance\n", "Internet fraud detection\n", "Linguistics\n", "Machine learning control\n", "Machine perception\n", "Machine translation\n", "Marketing\n", "Medical diagnosis\n", "Natural language processing\n", "Natural language understanding\n", "Online advertising\n", "Optimization\n", "Recommender systems\n", "Robot locomotion\n", "Search engines\n", "Sentiment analysis\n", "Sequence mining\n", "Software engineering\n", "Speech recognition\n", "Structural health monitoring\n", "Syntactic pattern recognition\n", "Telecommunication\n", "Theorem proving\n", "Time series forecasting\n", "User behavior analytics\n", "\n", "In 2006, the media-services provider Netflix held the first \"Netflix Prize\" competition to find a program to better predict user preferences and improve the accuracy on its existing Cinematch movie recommendation algorithm by at least 10%. A joint team made up of researchers from AT&T Labs-Research in collaboration with the teams Big Chaos and Pragmatic Theory built an ensemble model to win the Grand Prize in 2009 for $1 million.[60] Shortly after the prize was awarded, Netflix realized that viewers' ratings were not the best indicators of their viewing patterns (\"everything is a recommendation\") and they changed their recommendation engine accordingly.[61] In 2010 The Wall Street Journal wrote about the firm Rebellion Research and their use of machine learning to predict the financial crisis.[62] In 2012, co-founder of Sun 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.[63] 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 unrecognized influences among artists.[64] In 2019 Springer Nature published the first research book created using machine learning.[65]\n", "\n", "Limitations[edit]\n", "Although machine learning has been transformative in some fields, machine-learning programs often fail to deliver expected results.[66][67][68] 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.[69]\n", "In 2018, a self-driving car from Uber failed to detect a pedestrian, who was killed after a collision.[70] Attempts to use machine learning in healthcare with the IBM Watson system failed to deliver even after years of time and billions of investment.[71][72]\n", "\n", "Bias[edit]\n", "Main article: Algorithmic bias\n", "Machine learning approaches in particular can suffer from different data biases. A machine learning system trained on current customers only may not be able to predict the needs of new customer groups that are not represented in the training data. When trained on man-made data, machine learning is likely to pick up the same constitutional and unconscious biases already present in society.[73] Language models learned from data have been shown to contain human-like biases.[74][75] Machine learning systems used for criminal risk assessment have been found to be biased against black people.[76][77] In 2015, Google photos would often tag black people as gorillas,[78] and in 2018 this still was not well resolved, but Google reportedly was still using the workaround to remove all gorillas from the training data, and thus was not able to recognize real gorillas at all.[79] Similar issues with recognizing non-white people have been found in many other systems.[80] In 2016, Microsoft tested a chatbot that learned from Twitter, and it quickly picked up racist and sexist language.[81] Because of such challenges, the effective use of machine learning may take longer to be adopted in other domains.[82] Concern for fairness in machine learning, that is, reducing bias in machine learning and propelling its use for human good is increasingly expressed by artificial intelligence scientists, including Fei-Fei Li, who reminds engineers that \"There’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.”[83]\n", "\n", "Model assessments[edit]\n", "Classification machine learning models can be validated by accuracy estimation techniques like the Holdout method, which splits the data in 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 respectively 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.[84]\n", "In addition to overall accuracy, investigators frequently report sensitivity and specificity meaning True Positive Rate (TPR) and True Negative Rate (TNR) respectively. Similarly, investigators sometimes report the False Positive Rate (FPR) as well as the False Negative Rate (FNR). However, these rates are ratios that fail to reveal their numerators and denominators. The Total Operating Characteristic (TOC) is an effective method to express a model's diagnostic ability. TOC shows the numerators and denominators of the previously mentioned rates, thus TOC provides more information than the commonly used Receiver Operating Characteristic (ROC) and ROC's associated Area Under the Curve (AUC).[85]\n", "\n", "Ethics[edit]\n", "Machine learning poses a host of ethical questions. Systems which are trained on datasets collected with biases may exhibit these biases upon use (algorithmic bias), thus digitizing cultural prejudices.[86] For example, 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 against similarity to previous successful applicants.[87][88] Responsible collection of data and documentation of algorithmic rules used by a system thus is a critical part of machine learning.\n", "Because human languages contain biases, machines trained on language corpora will necessarily also learn these biases.[89][90]\n", "Other forms of ethical challenges, not related to personal biases, are more seen in health care. 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 perpetual ethical dilemma of improving health care, but also increase 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 in. There is huge potential for machine learning in health care to provide professionals a great tool to diagnose, medicate, and even plan recovery paths for patients, but this will not happen until the personal biases mentioned previously, and these \"greed\" biases are addressed.[91]\n", "\n", "Software[edit]\n", "Software suites containing a variety of machine learning algorithms include the following:\n", "\n", "Free and open-source software[edit]\n", "\n", "CNTK\n", "Deeplearning4j\n", "ELKI\n", "Keras\n", "Caffe\n", "ML.NET\n", "Mahout\n", "Mallet\n", "mlpack\n", "MXNet\n", "Neural Lab\n", "GNU Octave\n", "OpenNN\n", "Orange\n", "scikit-learn\n", "Shogun\n", "Spark MLlib\n", "Apache SystemML\n", "TensorFlow\n", "ROOT (TMVA with ROOT)\n", "Torch / PyTorch\n", "Weka / MOA\n", "Yooreeka\n", "R\n", "\n", "Proprietary software with free and open-source editions[edit]\n", "\n", "KNIME\n", "RapidMiner\n", "\n", "Proprietary software[edit]\n", "\n", "Amazon Machine Learning\n", "Angoss KnowledgeSTUDIO\n", "Azure Machine Learning\n", "Ayasdi\n", "IBM Data Science Experience\n", "Google Prediction API\n", "IBM SPSS Modeler\n", "KXEN Modeler\n", "LIONsolver\n", "Mathematica\n", "MATLAB\n", "Microsoft Azure\n", "Neural Designer\n", "NeuroSolutions\n", "Oracle Data Mining\n", "Oracle AI Platform Cloud Service\n", "RCASE\n", "SAS Enterprise Miner\n", "SequenceL\n", "Splunk\n", "STATISTICA Data Miner\n", "\n", "Journals[edit]\n", "Journal of Machine Learning Research\n", "Machine Learning\n", "Nature Machine Intelligence\n", "Neural Computation\n", "Conferences[edit]\n", "Conference on Neural Information Processing Systems\n", "International Conference on Machine Learning\n", "See also[edit]\n", "\n", "Automated machine learning\n", "Big data\n", "Explanation-based learning\n", "Important publications in machine learning\n", "List of datasets for machine learning research\n", "Predictive analytics\n", "Quantum machine learning\n", "Machine-learning applications in bioinformatics\n", "Seq2seq\n", "Fairness (machine learning)\n", "\n", "References[edit]\n", "\n", "\n", "^ The definition \"without being explicitly programmed\" is often attributed to Arthur Samuel, who coined the term \"machine learning\" in 1959, but the phrase is not found verbatim in this publication, and may be a paraphrase that appeared later. Confer \"Paraphrasing Arthur Samuel (1959), the question is: How can computers learn to solve problems without being explicitly programmed?\" in Koza, 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. Springer, Dordrecht. pp. 151–170. doi:10.1007/978-94-009-0279-4_9..mw-parser-output cite.citation{font-style:inherit}.mw-parser-output .citation q{quotes:\"\\\"\"\"\\\"\"\"'\"\"'\"}.mw-parser-output .id-lock-free a,.mw-parser-output .citation .cs1-lock-free a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/6/65/Lock-green.svg/9px-Lock-green.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .id-lock-limited a,.mw-parser-output .id-lock-registration a,.mw-parser-output .citation .cs1-lock-limited a,.mw-parser-output .citation .cs1-lock-registration a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Lock-gray-alt-2.svg/9px-Lock-gray-alt-2.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .id-lock-subscription a,.mw-parser-output .citation .cs1-lock-subscription a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/a/aa/Lock-red-alt-2.svg/9px-Lock-red-alt-2.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration{color:#555}.mw-parser-output .cs1-subscription span,.mw-parser-output .cs1-registration span{border-bottom:1px dotted;cursor:help}.mw-parser-output .cs1-ws-icon a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/4/4c/Wikisource-logo.svg/12px-Wikisource-logo.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output code.cs1-code{color:inherit;background:inherit;border:inherit;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;font-size:100%}.mw-parser-output .cs1-visible-error{font-size:100%}.mw-parser-output .cs1-maint{display:none;color:#33aa33;margin-left:0.3em}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration,.mw-parser-output .cs1-format{font-size:95%}.mw-parser-output .cs1-kern-left,.mw-parser-output .cs1-kern-wl-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right,.mw-parser-output .cs1-kern-wl-right{padding-right:0.2em}\n", "\n", "^ a b c d Bishop, C. M. (2006), Pattern Recognition and Machine Learning, Springer, ISBN 978-0-387-31073-2\n", "\n", "^ Machine learning and pattern recognition \"can be viewed as two facets of the same field.\"[2]:vii\n", "\n", "^ Friedman, Jerome H. (1998). \"Data Mining and Statistics: What's the connection?\". Computing Science and Statistics. 29 (1): 3–9.\n", "\n", "^ Samuel, Arthur (1959). \"Some Studies in Machine Learning Using the Game of Checkers\". IBM Journal of Research and Development. 3 (3): 210–229. CiteSeerX 10.1.1.368.2254. doi:10.1147/rd.33.0210.\n", "\n", "^ a b Mitchell, T. (1997). Machine Learning. McGraw Hill. p. 2. ISBN 978-0-07-042807-2.\n", "\n", "^ Harnad, Stevan (2008), \"The Annotation Game: On Turing (1950) on Computing, Machinery, and Intelligence\", in Epstein, Robert; Peters, Grace (eds.), The Turing Test Sourcebook: Philosophical and Methodological Issues in the Quest for the Thinking Computer, Kluwer, pp. 23–66, ISBN 9781402067082\n", "\n", "^ R. Kohavi and F. Provost, \"Glossary of terms,\" Machine Learning, vol. 30, no. 2–3, pp. 271–274, 1998.\n", "\n", "^ Nilsson N. Learning Machines, McGraw Hill, 1965. \n", "\n", "^ Duda, R., Hart P. Pattern Recognition and Scene Analysis, Wiley Interscience, 1973 \n", "\n", "^ S. Bozinovski \"Teaching space: A representation concept for adaptive pattern classification\" COINS Technical Report No. 81-28, Computer and Information Science Department, University of Massachusetts at Amherst, MA, 1981. https://web.cs.umass.edu/publication/docs/1981/UM-CS-1981-028.pdf \n", "\n", "^ Sarle, Warren (1994). \"Neural Networks and statistical models\". CiteSeerX 10.1.1.27.699.\n", "\n", "^ a b c d Russell, Stuart; Norvig, Peter (2003) [1995]. Artificial Intelligence: A Modern Approach (2nd ed.). Prentice Hall. ISBN 978-0137903955.\n", "\n", "^ a b Langley, Pat (2011). \"The changing science of machine learning\". Machine Learning. 82 (3): 275–279. doi:10.1007/s10994-011-5242-y.\n", "\n", "^ Le Roux, Nicolas; Bengio, Yoshua; Fitzgibbon, Andrew (2012). \"Improving+First+and+Second-Order+Methods+by+Modeling+Uncertainty \"Improving First and Second-Order Methods by Modeling Uncertainty\". In Sra, Suvrit; Nowozin, Sebastian; Wright, Stephen J. (eds.). Optimization for Machine Learning. MIT Press. p. 404. ISBN 9780262016469.\n", "\n", "^ Bzdok, Danilo; Altman, Naomi; Krzywinski, Martin (2018). \"Statistics versus Machine Learning\". Nature Methods. 15 (4): 233–234. doi:10.1038/nmeth.4642. PMC 6082636. PMID 30100822.\n", "\n", "^ a b Michael I. Jordan (2014-09-10). \"statistics and machine learning\". reddit. Retrieved 2014-10-01.\n", "\n", "^ Cornell University Library. \"Breiman: Statistical Modeling: The Two Cultures (with comments and a rejoinder by the author)\". Retrieved 8 August 2015.\n", "\n", "^ Gareth James; Daniela Witten; Trevor Hastie; Robert Tibshirani (2013). An Introduction to Statistical Learning. Springer. p. vii.\n", "\n", "^ Mohri, Mehryar; Rostamizadeh, Afshin; Talwalkar, Ameet (2012). Foundations of Machine Learning. USA, Massachusetts: MIT Press. ISBN 9780262018258.\n", "\n", "^ Alpaydin, Ethem (2010). Introduction to Machine Learning. London: The MIT Press. ISBN 978-0-262-01243-0. Retrieved 4 February 2017.\n", "\n", "^ Russell, Stuart J.; Norvig, Peter (2010). Artificial Intelligence: A Modern Approach (Third ed.). Prentice Hall. ISBN 9780136042594.\n", "\n", "^ Mohri, Mehryar; Rostamizadeh, Afshin; Talwalkar, Ameet (2012). Foundations of Machine Learning. The MIT Press. ISBN 9780262018258.\n", "\n", "^ Alpaydin, Ethem (2010). Introduction to Machine Learning. MIT Press. p. 9. ISBN 978-0-262-01243-0.\n", "\n", "^ Alex Ratner; Stephen Bach; Paroma Varma; Chris. \"Weak Supervision: The New Programming Paradigm for Machine Learning\". hazyresearch.github.io. referencing work by many other members of Hazy Research. Retrieved 2019-06-06.\n", "\n", "^ 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. ISBN 978-1-58488-360-9.\n", "\n", "^ van Otterlo, M.; Wiering, M. (2012). Reinforcement learning and markov decision processes. Reinforcement Learning. Adaptation, Learning, and Optimization. 12. pp. 3–42. doi:10.1007/978-3-642-27645-3_1. ISBN 978-3-642-27644-6.\n", "\n", "^ 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. ISBN 978-0-444-86488-8.\n", "\n", "^ Bozinovski, Stevo (2014) \"Modeling mechanisms of cognition-emotion interaction in artificial neural networks, since 1981.\" Procedia Computer Science p. 255-263 \n", "\n", "^ Bozinovski, S. (2001) \"Self-learning agents: A connectionist theory of emotion based on crossbar value judgment.\" Cybernetics and Systems 32(6) 637-667. \n", "\n", "^ Y. Bengio; A. Courville; P. Vincent (2013). \"Representation Learning: A Review and New Perspectives\". IEEE Transactions on Pattern Analysis and Machine Intelligence. 35 (8): 1798–1828. arXiv:1206.5538. doi:10.1109/tpami.2013.50. PMID 23787338.\n", "\n", "^ Nathan Srebro; Jason D. M. Rennie; Tommi S. Jaakkola (2004). Maximum-Margin Matrix Factorization. NIPS.\n", "\n", "^ Coates, Adam; Lee, Honglak; Ng, Andrew Y. (2011). An analysis of single-layer networks in unsupervised feature learning (PDF). Int'l Conf. on AI and Statistics (AISTATS).\n", "\n", "^ 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.\n", "\n", "^ Daniel Jurafsky; James H. Martin (2009). Speech and Language Processing. Pearson Education International. pp. 145–146.\n", "\n", "^ Lu, Haiping; Plataniotis, K.N.; Venetsanopoulos, A.N. (2011). \"A Survey of Multilinear Subspace Learning for Tensor Data\" (PDF). Pattern Recognition. 44 (7): 1540–1551. doi:10.1016/j.patcog.2011.01.004.\n", "\n", "^ Yoshua Bengio (2009). Learning Deep Architectures for AI. Now Publishers Inc. pp. 1–3. ISBN 978-1-60198-294-0.\n", "\n", "^ Tillmann, A. M. (2015). \"On the Computational Intractability of Exact and Approximate Dictionary Learning\". IEEE Signal Processing Letters. 22 (1): 45–49. arXiv:1405.6664. Bibcode:2015ISPL...22...45T. doi:10.1109/LSP.2014.2345761.\n", "\n", "^ Aharon, M, M Elad, and A Bruckstein. 2006. \"K-SVD: An Algorithm for Designing Overcomplete Dictionaries for Sparse Representation.\" Signal Processing, IEEE Transactions on 54 (11): 4311–4322\n", "\n", "^ Zimek, Arthur; Schubert, Erich (2017), \"Outlier Detection\", Encyclopedia of Database Systems, Springer New York, pp. 1–5, doi:10.1007/978-1-4899-7993-3_80719-1, ISBN 9781489979933\n", "\n", "^ Hodge, V. J.; Austin, J. (2004). \"A Survey of Outlier Detection Methodologies\" (PDF). Artificial Intelligence Review. 22 (2): 85–126. CiteSeerX 10.1.1.318.4023. doi:10.1007/s10462-004-4304-y.\n", "\n", "^ 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.\n", "\n", "^ Chandola, V.; Banerjee, A.; Kumar, V. (2009). \"Anomaly detection: A survey\". ACM Computing Surveys. 41 (3): 1–58. doi:10.1145/1541880.1541882.\n", "\n", "^ 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.\n", "\n", "^ Bassel, George W.; Glaab, Enrico; Marquez, Julietta; Holdsworth, Michael J.; Bacardit, Jaume (2011-09-01). \"Functional Network Construction in Arabidopsis Using Rule-Based Machine Learning on Large-Scale Data Sets\". The Plant Cell. 23 (9): 3101–3116. doi:10.1105/tpc.111.088153. ISSN 1532-298X. PMC 3203449. PMID 21896882.\n", "\n", "^ Agrawal, R.; Imieliński, T.; Swami, A. (1993). \"Mining association rules between sets of items in large databases\". Proceedings of the 1993 ACM SIGMOD international conference on Management of data - SIGMOD '93. p. 207. CiteSeerX 10.1.1.40.6984. doi:10.1145/170035.170072. ISBN 978-0897915922.\n", "\n", "^ Urbanowicz, Ryan J.; Moore, Jason H. (2009-09-22). \"Learning Classifier Systems: A Complete Introduction, Review, and Roadmap\". Journal of Artificial Evolution and Applications. 2009: 1–25. doi:10.1155/2009/736398. ISSN 1687-6229.\n", "\n", "^ Plotkin G.D. Automatic Methods of Inductive Inference, PhD thesis, University of Edinburgh, 1970.\n", "\n", "^ Shapiro, Ehud Y. Inductive inference of theories from facts, 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.\n", "\n", "^ Shapiro, Ehud Y. (1983). Algorithmic program debugging. Cambridge, Mass: MIT Press. ISBN 0-262-19218-7\n", "\n", "^ Shapiro, Ehud Y. \"The model inference system.\" Proceedings of the 7th international joint conference on Artificial intelligence-Volume 2. Morgan Kaufmann Publishers Inc., 1981.\n", "\n", "^ Honglak Lee, Roger Grosse, Rajesh Ranganath, Andrew Y. Ng. \"Convolutional Deep Belief Networks for Scalable Unsupervised Learning of Hierarchical Representations\" Proceedings of the 26th Annual International Conference on Machine Learning, 2009.\n", "\n", "^ Cortes, Corinna; Vapnik, Vladimir N. (1995). \"Support-vector networks\". Machine Learning. 20 (3): 273–297. doi:10.1007/BF00994018.\n", "\n", "^ Stevenson, Christopher. \"Tutorial: Polynomial Regression in Excel\". facultystaff.richmond.edu. Retrieved 22 January 2017.\n", "\n", "^ Goldberg, David E.; Holland, John H. (1988). \"Genetic algorithms and machine learning\" (PDF). Machine Learning. 3 (2): 95–99. doi:10.1007/bf00113892.\n", "\n", "^ 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.\n", "\n", "^ Zhang, Jun; Zhan, Zhi-hui; Lin, Ying; Chen, Ni; Gong, Yue-jiao; Zhong, Jing-hui; Chung, Henry S.H.; Li, Yun; Shi, Yu-hui (2011). \"Evolutionary Computation Meets Machine Learning: A Survey\". Computational Intelligence Magazine. 6 (4): 68–75. doi:10.1109/mci.2011.942584.\n", "\n", "^ \"Federated Learning: Collaborative Machine Learning without Centralized Training Data\". Google AI Blog. Retrieved 2019-06-08.\n", "\n", "^ Machine learning is included in the CFA Curriculum (discussion is top down); see: Kathleen DeRose and Christophe Le Lanno (2020). \"Machine Learning\".\n", "\n", "^ \"BelKor Home Page\" research.att.com\n", "\n", "^ \"The Netflix Tech Blog: Netflix Recommendations: Beyond the 5 stars (Part 1)\". 2012-04-06. Retrieved 8 August 2015.\n", "\n", "^ Scott Patterson (13 July 2010). \"Letting the Machines Decide\". The Wall Street Journal. Retrieved 24 June 2018.\n", "\n", "^ Vinod Khosla (January 10, 2012). \"Do We Need Doctors or Algorithms?\". Tech Crunch.\n", "\n", "^ When A Machine Learning Algorithm Studied Fine Art Paintings, It Saw Things Art Historians Had Never Noticed, The Physics at ArXiv blog\n", "\n", "^ Vincent, James (2019-04-10). \"The first AI-generated textbook shows what robot writers are actually good at\". The Verge. Retrieved 2019-05-05.\n", "\n", "^ \"Why Machine Learning Models Often Fail to Learn: QuickTake Q&A\". Bloomberg.com. 2016-11-10. Retrieved 2017-04-10.\n", "\n", "^ \"The First Wave of Corporate AI Is Doomed to Fail\". Harvard Business Review. 2017-04-18. Retrieved 2018-08-20.\n", "\n", "^ \"Why the A.I. euphoria is doomed to fail\". VentureBeat. 2016-09-18. Retrieved 2018-08-20.\n", "\n", "^ \"9 Reasons why your machine learning project will fail\". www.kdnuggets.com. Retrieved 2018-08-20.\n", "\n", "^ \"Why Uber's self-driving car killed a pedestrian\". The Economist. Retrieved 2018-08-20.\n", "\n", "^ \"IBM's Watson recommended 'unsafe and incorrect' cancer treatments - STAT\". STAT. 2018-07-25. Retrieved 2018-08-21.\n", "\n", "^ Hernandez, Daniela; Greenwald, Ted (2018-08-11). \"IBM Has a Watson Dilemma\". Wall Street Journal. ISSN 0099-9660. Retrieved 2018-08-21.\n", "\n", "^ Garcia, Megan (2016). \"Racist in the Machine\". World Policy Journal. 33 (4): 111–117. doi:10.1215/07402775-3813015. ISSN 0740-2775.\n", "\n", "^ Caliskan, Aylin; Bryson, Joanna J.; Narayanan, Arvind (2017-04-14). \"Semantics derived automatically from language corpora contain human-like biases\". Science. 356 (6334): 183–186. arXiv:1608.07187. Bibcode:2017Sci...356..183C. doi:10.1126/science.aal4230. ISSN 0036-8075. PMID 28408601.\n", "\n", "^ 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, retrieved 2018-08-20\n", "\n", "^ Julia Angwin; Jeff Larson; Lauren Kirchner; Surya Mattu (2016-05-23). \"Machine Bias\". ProPublica. Retrieved 2018-08-20.\n", "\n", "^ \"Opinion | When an Algorithm Helps Send You to Prison\". New York Times. Retrieved 2018-08-20.\n", "\n", "^ \"Google apologises for racist blunder\". BBC News. 2015-07-01. Retrieved 2018-08-20.\n", "\n", "^ \"Google 'fixed' its racist algorithm by removing gorillas from its image-labeling tech\". The Verge. Retrieved 2018-08-20.\n", "\n", "^ \"Opinion | Artificial Intelligence's White Guy Problem\". New York Times. Retrieved 2018-08-20.\n", "\n", "^ Metz, Rachel. \"Why Microsoft's teen chatbot, Tay, said lots of awful things online\". MIT Technology Review. Retrieved 2018-08-20.\n", "\n", "^ Simonite, Tom. \"Microsoft says its racist chatbot illustrates how AI isn't adaptable enough to help most businesses\". MIT Technology Review. Retrieved 2018-08-20.\n", "\n", "^ Hempel, Jessi (2018-11-13). \"Fei-Fei Li's Quest to Make Machines Better for Humanity\". Wired. ISSN 1059-1028. Retrieved 2019-02-17.\n", "\n", "^ Kohavi, Ron (1995). \"A Study of Cross-Validation and Bootstrap for Accuracy Estimation and Model Selection\" (PDF). International Joint Conference on Artificial Intelligence.\n", "\n", "^ Pontius, Robert Gilmore; Si, Kangping (2014). \"The total operating characteristic to measure diagnostic ability for multiple thresholds\". International Journal of Geographical Information Science. 28 (3): 570–583. doi:10.1080/13658816.2013.862623.\n", "\n", "^ Bostrom, Nick (2011). \"The Ethics of Artificial Intelligence\" (PDF). Retrieved 11 April 2016.\n", "\n", "^ Edionwe, Tolulope. \"The fight against racist algorithms\". The Outline. Retrieved 17 November 2017.\n", "\n", "^ Jeffries, Adrianne. \"Machine learning is racist because the internet is racist\". The Outline. Retrieved 17 November 2017.\n", "\n", "^ Prates, Marcelo O. R. (11 Mar 2019). \"Assessing Gender Bias in Machine Translation -- A Case Study with Google Translate\". arXiv:1809.02208 [cs.CY].\n", "\n", "^ Narayanan, Arvind (August 24, 2016). \"Language necessarily contains human biases, and so will machines trained on language corpora\". Freedom to Tinker.\n", "\n", "^ Char, D. S.; Shah, N. H.; Magnus, D. (2018). \"Implementing Machine Learning in Health Care—Addressing Ethical Challenges\". New England Journal of Medicine. 378 (11): 981–983. doi:10.1056/nejmp1714229. PMC 5962261. PMID 29539284.\n", "\n", "\n", "Further reading[edit]\n", ".mw-parser-output .refbegin{font-size:90%;margin-bottom:0.5em}.mw-parser-output .refbegin-hanging-indents>ul{list-style-type:none;margin-left:0}.mw-parser-output .refbegin-hanging-indents>ul>li,.mw-parser-output .refbegin-hanging-indents>dl>dd{margin-left:0;padding-left:3.2em;text-indent:-3.2em;list-style:none}.mw-parser-output .refbegin-100{font-size:100%}\n", "Nils J. Nilsson, Introduction to Machine Learning.\n", "Trevor Hastie, Robert Tibshirani and Jerome H. Friedman (2001). The Elements of Statistical Learning, Springer. ISBN 0-387-95284-5.\n", "Pedro Domingos (September 2015), The Master Algorithm, Basic Books, ISBN 978-0-465-06570-7\n", "Ian H. Witten and Eibe Frank (2011). Data Mining: Practical machine learning tools and techniques Morgan Kaufmann, 664pp., ISBN 978-0-12-374856-0.\n", "Ethem Alpaydin (2004). Introduction to Machine Learning, MIT Press, ISBN 978-0-262-01243-0.\n", "David J. C. MacKay. Information Theory, Inference, and Learning Algorithms Cambridge: Cambridge University Press, 2003. ISBN 0-521-64298-1\n", "Richard O. Duda, Peter E. Hart, David G. Stork (2001) Pattern classification (2nd edition), Wiley, New York, ISBN 0-471-05669-3.\n", "Christopher Bishop (1995). Neural Networks for Pattern Recognition, Oxford University Press. ISBN 0-19-853864-2.\n", "Stuart Russell & Peter Norvig, (2009). Artificial Intelligence – A Modern Approach. Pearson, ISBN 9789332543515.\n", "Ray Solomonoff, An Inductive Inference Machine, IRE Convention Record, Section on Information Theory, Part 2, pp., 56–62, 1957.\n", "Ray Solomonoff, An Inductive Inference Machine A privately circulated report from the 1956 Dartmouth Summer Research Conference on AI.\n", "\n", "External links[edit]\n", "\n", "\n", "\n", "Wikimedia Commons has media related to Machine learning.\n", "\n", "International Machine Learning Society\n", "mloss is an academic database of open-source machine learning software.\n", "Machine Learning Crash Course by Google. This is a free course on machine learning through the use of TensorFlow.\n", "vteComputer scienceNote: This template roughly follows the 2012 ACM Computing Classification System.Hardware\n", "Printed circuit board\n", "Peripheral\n", "Integrated circuit\n", "Very Large Scale Integration\n", "Systems on Chip (SoCs)\n", "Energy consumption (Green computing)\n", "Electronic design automation\n", "Hardware acceleration\n", "Computer systemsorganization\n", "Computer architecture\n", "Embedded system\n", "Real-time computing\n", "Dependability\n", "Networks\n", "Network architecture\n", "Network protocol\n", "Network components\n", "Network scheduler\n", "Network performance evaluation\n", "Network service\n", "Software organization\n", "Interpreter\n", "Middleware\n", "Virtual machine\n", "Operating system\n", "Software quality\n", "Software notationsand tools\n", "Programming paradigm\n", "Programming language\n", "Compiler\n", "Domain-specific language\n", "Modeling language\n", "Software framework\n", "Integrated development environment\n", "Software configuration management\n", "Software library\n", "Software repository\n", "Software development\n", "Software development process\n", "Requirements analysis\n", "Software design\n", "Software construction\n", "Software deployment\n", "Software maintenance\n", "Programming team\n", "Open-source model\n", "Theory of computation\n", "Model of computation\n", "Formal language\n", "Automata theory\n", "Computability theory\n", "Computational complexity theory\n", "Logic\n", "Semantics\n", "Algorithms\n", "Algorithm design\n", "Analysis of algorithms\n", "Algorithmic efficiency\n", "Randomized algorithm\n", "Computational geometry\n", "Mathematicsof computing\n", "Discrete mathematics\n", "Probability\n", "Statistics\n", "Mathematical software\n", "Information theory\n", "Mathematical analysis\n", "Numerical analysis\n", "Informationsystems\n", "Database management system\n", "Information storage systems\n", "Enterprise information system\n", "Social information systems\n", "Geographic information system\n", "Decision support system\n", "Process control system\n", "Multimedia information system\n", "Data mining\n", "Digital library\n", "Computing platform\n", "Digital marketing\n", "World Wide Web\n", "Information retrieval\n", "Security\n", "Cryptography\n", "Formal methods\n", "Security services\n", "Intrusion detection system\n", "Hardware security\n", "Network security\n", "Information security\n", "Application security\n", "Human–computerinteraction\n", "Interaction design\n", "Social computing\n", "Ubiquitous computing\n", "Visualization\n", "Accessibility\n", "Concurrency\n", "Concurrent computing\n", "Parallel computing\n", "Distributed computing\n", "Multithreading\n", "Multiprocessing\n", "Artificialintelligence\n", "Natural language processing\n", "Knowledge representation and reasoning\n", "Computer vision\n", "Automated planning and scheduling\n", "Search methodology\n", "Control method\n", "Philosophy of artificial intelligence\n", "Distributed artificial intelligence\n", "Machine learning\n", "Supervised learning\n", "Unsupervised learning\n", "Reinforcement learning\n", "Multi-task learning\n", "Cross-validation\n", "Graphics\n", "Animation\n", "Rendering\n", "Image manipulation\n", "Graphics processing unit\n", "Mixed reality\n", "Virtual reality\n", "Image compression\n", "Solid modeling\n", "Appliedcomputing\n", "E-commerce\n", "Enterprise software\n", "Computational mathematics\n", "Computational physics\n", "Computational chemistry\n", "Computational biology\n", "Computational social science\n", "Computational engineering\n", "Computational healthcare\n", "Digital art\n", "Electronic publishing\n", "Cyberwarfare\n", "Electronic voting\n", "Video games\n", "Word processing\n", "Operations research\n", "Educational technology\n", "Document management\n", "\n", " Book\n", " Category\n", " Outline\n", "WikiProject\n", " Commons\n", "\n", "For the journal, see Machine Learning (journal).\n", "\"Statistical learning\" redirects here. For statistical learning in linguistics, see statistical learning in language acquisition.\n", "Scientific study of algorithms and statistical models that computer systems use to perform tasks without explicit instructions\n", "Machine learning anddata mining\n", "Problems\n", "Classification\n", "Clustering\n", "Regression\n", "Anomaly detection\n", "AutoML\n", "Association rules\n", "Reinforcement learning\n", "Structured prediction\n", "Feature engineering\n", "Feature learning\n", "Online learning\n", "Semi-supervised learning\n", "Unsupervised learning\n", "Learning to rank\n", "Grammar induction\n", "\n", "\n", "Supervised learning.mw-parser-output .nobold{font-weight:normal}(classification • regression) \n", "Decision trees\n", "Ensembles\n", "Bagging\n", "Boosting\n", "Random forest\n", "k-NN\n", "Linear regression\n", "Naive Bayes\n", "Artificial neural networks\n", "Logistic regression\n", "Perceptron\n", "Relevance vector machine (RVM)\n", "Support vector machine (SVM)\n", "\n", "\n", "Clustering\n", "BIRCH\n", "CURE\n", "Hierarchical\n", "k-means\n", "Expectation–maximization (EM)\n", "DBSCAN\n", "OPTICS\n", "Mean-shift\n", "\n", "\n", "Dimensionality reduction\n", "Factor analysis\n", "CCA\n", "ICA\n", "LDA\n", "NMF\n", "PCA\n", "t-SNE\n", "\n", "\n", "Structured prediction\n", "Graphical models\n", "Bayes net\n", "Conditional random field\n", "Hidden Markov\n", "\n", "\n", "Anomaly detection\n", "k-NN\n", "Local outlier factor\n", "\n", "\n", "Artificial neural network\n", "Autoencoder\n", "Deep learning\n", "DeepDream\n", "Multilayer perceptron\n", "RNN\n", "LSTM\n", "GRU\n", "Restricted Boltzmann machine\n", "GAN\n", "SOM\n", "Convolutional neural network\n", "U-Net\n", "\n", "\n", "Reinforcement learning\n", "Q-learning\n", "SARSA\n", "Temporal difference (TD)\n", "\n", "\n", "Theory\n", "Bias–variance dilemma\n", "Computational learning theory\n", "Empirical risk minimization\n", "Occam learning\n", "PAC learning\n", "Statistical learning\n", "VC theory\n", "\n", "\n", "Machine-learning venues\n", "NeurIPS\n", "ICML\n", "ML\n", "JMLR\n", "ArXiv:cs.LG\n", "\n", "\n", "Glossary of artificial intelligence\n", "Glossary of artificial intelligence\n", "\n", "\n", "Related articles\n", "List of datasets for machine-learning research\n", "Outline of machine learning\n", "\n", "vte\n", "Machine learning (ML) is the scientific study of algorithms and statistical models that computer systems use to perform a specific task without using explicit instructions, relying on patterns and inference instead. It is seen as a subset of artificial intelligence. Machine learning algorithms build a mathematical model based on sample data, known as \"training data\", in order to make predictions or decisions without being explicitly programmed to perform the task.[1][2]:2 Machine learning algorithms are used in a wide variety of applications, such as email filtering and computer vision, where it is difficult or infeasible to develop a conventional algorithm for effectively performing the task.\n", "Machine learning is closely related to computational statistics, which focuses on making predictions using computers. The study of mathematical optimization delivers methods, theory and application domains to the field of machine learning. Data mining is a field of study within machine learning, and focuses on exploratory data analysis through unsupervised learning.[3][4] In its application across business problems, machine learning is also referred to as predictive analytics.\n", "\n", "Contents\n", "\n", "1 Overview\n", "\n", "1.1 Machine learning tasks\n", "\n", "\n", "2 History and relationships to other fields\n", "\n", "2.1 Relation to data mining\n", "2.2 Relation to optimization\n", "2.3 Relation to statistics\n", "\n", "\n", "3 Theory\n", "4 Approaches\n", "\n", "4.1 Types of learning algorithms\n", "\n", "4.1.1 Supervised learning\n", "4.1.2 Unsupervised learning\n", "4.1.3 Reinforcement learning\n", "4.1.4 Self learning\n", "4.1.5 Feature learning\n", "4.1.6 Sparse dictionary learning\n", "4.1.7 Anomaly detection\n", "4.1.8 Association rules\n", "\n", "\n", "4.2 Models\n", "\n", "4.2.1 Artificial neural networks\n", "4.2.2 Decision trees\n", "4.2.3 Support vector machines\n", "4.2.4 Regression analysis\n", "4.2.5 Bayesian networks\n", "4.2.6 Genetic algorithms\n", "\n", "\n", "4.3 Training models\n", "\n", "4.3.1 Federated learning\n", "\n", "\n", "\n", "\n", "5 Applications\n", "6 Limitations\n", "\n", "6.1 Bias\n", "\n", "\n", "7 Model assessments\n", "8 Ethics\n", "9 Software\n", "\n", "9.1 Free and open-source software\n", "9.2 Proprietary software with free and open-source editions\n", "9.3 Proprietary software\n", "\n", "\n", "10 Journals\n", "11 Conferences\n", "12 See also\n", "13 References\n", "14 Further reading\n", "15 External links\n", "\n", "\n", "Overview[edit]\n", "The name machine learning was coined in 1959 by Arthur Samuel.[5] 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 experience E with respect to some class of tasks T and performance measure P if its performance at tasks in T, as measured by P, improves with experience E.\"[6] This definition of the tasks in which machine learning is concerned offers a fundamentally operational definition rather than defining the field in cognitive terms. This follows Alan 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?\".[7] In Turing's proposal the various characteristics that could be possessed by a thinking machine and the various implications in constructing one are exposed.\n", "\n", "Machine learning tasks[edit]\n", "\n", "\n", " A support vector machine is a supervised learning model that divides the data into regions separated by a linear boundary. Here, the linear boundary divides the black circles from the white.\n", "Machine learning tasks are classified into several broad categories. In supervised learning, the algorithm builds a mathematical model from a set of data that contains both the inputs and the desired outputs. For example, if the task were determining whether an image contained a certain object, the training data for a supervised learning algorithm would include images with and without that object (the input), and each image would have a label (the output) designating whether it contained the object. In special cases, the input may be only partially available, or restricted to special feedback.[clarification needed] Semi-supervised learning algorithms develop mathematical models from incomplete training data, where a portion of the sample input doesn't have labels.\n", "Classification algorithms and regression algorithms are types of supervised learning. Classification algorithms are used when the outputs are restricted to a limited set of values. For a classification algorithm that filters emails, the input would be an incoming email, and the output would be the name of the folder in which to file the email. For an algorithm that identifies spam emails, the output would be the prediction of either \"spam\" or \"not spam\", represented by the Boolean values true and false. Regression algorithms are named for their continuous outputs, meaning they may have any value within a range. Examples of a continuous value are the temperature, length, or price of an object.\n", "In unsupervised learning, the algorithm builds a mathematical model from a set of data that contains only inputs and no desired output labels. Unsupervised learning algorithms are used to find structure in the data, like grouping or clustering of data points. Unsupervised learning can discover patterns in the data, and can group the inputs into categories, as in feature learning. Dimensionality reduction is the process of reducing the number of \"features\", or inputs, in a set of data.\n", "Active learning algorithms access the desired outputs (training labels) for a limited set of inputs based on a budget and optimize the choice of inputs for which it will acquire training labels. When used interactively, these can be presented to a human user for labeling. Reinforcement learning algorithms are given feedback in the form of positive or negative reinforcement in a dynamic environment and are used in autonomous vehicles or in learning to play a game against a human opponent.[2]:3 Other specialized algorithms in machine learning include topic modeling, where the computer program is given a set of natural language documents and finds other documents that cover similar topics. Machine learning algorithms can be used to find the unobservable probability density function in density estimation problems. Meta learning algorithms learn their own inductive bias based on previous experience. In developmental robotics, robot learning algorithms generate their own sequences of learning experiences, also known as a curriculum, to cumulatively acquire new skills through self-guided exploration and social interaction with humans. These robots use guidance mechanisms such as active learning, maturation, motor synergies, and imitation.[clarification needed]\n", "\n", "History and relationships to other fields[edit]\n", "See also: Timeline of machine learning\n", "Arthur Samuel, an American pioneer in the field of computer gaming and artificial intelligence, coined the term \"Machine Learning\" in 1959 while at IBM.[8] A representative book of the machine learning research during the 1960s was the Nilsson's book on Learning Machines, dealing mostly with machine learning for pattern classification.[9] The interest of machine learning related to pattern recognition continued during the 1970s, as described in the book of Duda and Hart in 1973. [10] In 1981 a report was given on using teaching strategies so that a neural network learns to recognize 40 characters (26 letters, 10 digits, and 4 special symbols) from a computer terminal. [11] \n", "As a scientific endeavor, machine learning grew out of the quest for artificial intelligence. Already in the early days of AI as an academic discipline, some researchers were interested in having machines learn from data. They attempted to approach the problem with various symbolic methods, as well as what were then termed \"neural networks\"; these were mostly perceptrons and other models that were later found to be reinventions of the generalized linear models of statistics.[12] Probabilistic reasoning was also employed, especially in automated medical diagnosis.[13]:488\n", "However, an increasing emphasis on the logical, 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.[13]:488 By 1980, expert systems had come to dominate AI, and statistics was out of favor.[14] Work on symbolic/knowledge-based learning did continue within AI, leading to inductive logic programming, but the more statistical line of research was now outside the field of AI proper, in pattern recognition and information retrieval.[13]:708–710; 755 Neural networks research had been abandoned by AI and computer science around the same time. This line, too, was continued outside the AI/CS field, as \"connectionism\", by researchers from other disciplines including Hopfield, Rumelhart and Hinton. Their main success came in the mid-1980s with the reinvention of backpropagation.[13]:25\n", "Machine learning, reorganized as a separate 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 the symbolic approaches it had inherited from AI, and toward methods and models borrowed from statistics and probability theory.[14] It also benefited from the increasing availability of digitized information, and the ability to distribute it via the Internet.\n", "\n", "Relation to data mining[edit]\n", "Machine learning and data mining often employ the same methods and overlap significantly, but while machine learning focuses on prediction, based on known properties learned from the training data, data mining focuses on the discovery of (previously) unknown properties in the data (this is the analysis step of knowledge 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 to reproduce known knowledge, while in knowledge discovery and data mining (KDD) the key task is the discovery of previously unknown 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.\n", "\n", "Relation to optimization[edit]\n", "Machine learning also has intimate ties to optimization: many learning problems are formulated as minimization of some loss 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 a label to instances, and models are trained to correctly predict the pre-assigned labels of a set of examples). The difference between the two fields arises from the goal of generalization: while optimization algorithms can minimize the loss on a training set, machine learning is concerned with minimizing the loss on unseen samples.[15]\n", "\n", "Relation to statistics[edit]\n", "Machine learning and statistics are closely related fields in terms of methods, but distinct in their principal goal: statistics draws population inferences from a sample, while machine learning finds generalizable predictive patterns.[16] According to Michael I. Jordan, the ideas of machine learning, from methodological principles to theoretical tools, have had a long pre-history in statistics.[17] He also suggested the term data science as a placeholder to call the overall field.[17]\n", "Leo Breiman distinguished two statistical modeling paradigms: data model and algorithmic model,[18] wherein \"algorithmic model\" means more or less the machine learning algorithms like Random forest.\n", "Some statisticians have adopted methods from machine learning, leading to a combined field that they call statistical learning.[19]\n", "\n", " Theory[edit]\n", "Main articles: Computational learning theory and Statistical learning theory\n", "A core objective of a learner is to generalize from its experience.[2][20] 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.\n", "The computational analysis of machine learning algorithms and their performance is a branch of theoretical computer science known as computational learning theory. Because training sets are finite and the future is uncertain, learning theory usually does not yield guarantees of the performance of algorithms. Instead, probabilistic bounds on the performance are quite common. The bias–variance decomposition is one way to quantify generalization error.\n", "For the best performance in the context of generalization, 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 under fitted 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 to overfitting and generalization will be poorer.[21]\n", "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 in polynomial time. There are two kinds of time 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.\n", "\n", "Approaches[edit]\n", "Types of learning algorithms[edit]\n", "The types of machine learning algorithms differ in their approach, the type of data they input and output, and the type of task or problem that they are intended to solve.\n", "\n", "Supervised learning[edit]\n", "Main article: Supervised learning\n", "Supervised learning algorithms build a mathematical model of a set of data that contains both the inputs and the desired outputs.[22] The data is known as training data, and 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 an array or vector, sometimes called a feature vector, and the training data is represented by a matrix. Through iterative optimization of an objective function, supervised learning algorithms learn a function that can be used to predict the output associated with new inputs.[23] An optimal function will allow 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.[6]\n", "Supervised learning algorithms include classification and regression.[24] Classification algorithms are used when the outputs are restricted to a limited set of values, and regression algorithms are used when the outputs may have any numerical value within a range. 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 in ranking, recommendation systems, visual identity tracking, face verification, and speaker verification.\n", "In the case of semi-supervised learning algorithms, some of the training examples are missing training labels, but they can nevertheless be used to improve the quality of a model. In weakly supervised learning, the training labels are noisy, limited, or imprecise; however, these labels are often cheaper to obtain, resulting in larger effective training sets.[25]\n", "\n", "Unsupervised learning[edit]\n", "Main article: Unsupervised learningSee also: Cluster analysis\n", "Unsupervised learning algorithms take a set of data that contains only inputs, and find structure in the data, like grouping or clustering of data points. The algorithms, therefore, learn from test data that has not been labeled, classified or categorized. 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. A central application of unsupervised learning is in the field of density estimation in statistics,[26] though unsupervised learning encompasses other domains involving summarizing and explaining data features.\n", "Cluster analysis is the assignment of a set of observations into subsets (called clusters) 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 some similarity metric and evaluated, for example, by internal compactness, or the similarity between members of the same cluster, and separation, the difference between clusters. Other methods are based on estimated density and graph connectivity.\n", "Semi-supervised learning\n", "\n", "Main article: Semi-supervised learning\n", "Semi-supervised learning falls between unsupervised learning (without any labeled training data) and supervised learning (with completely labeled training data). Many machine-learning researchers have found that unlabeled data, when used in conjunction with a small amount of labeled data, can produce a considerable improvement in learning accuracy.\n", "\n", "Reinforcement learning[edit]\n", "Main article: Reinforcement learning\n", "Reinforcement learning is an area of machine learning concerned with how software agents ought to take actions in an environment so as to maximize some notion of cumulative reward. Due to its generality, the field is studied in many other disciplines, such as game theory, control theory, operations research, information theory, simulation-based optimization, multi-agent systems, swarm intelligence, statistics and genetic algorithms. In machine learning, the environment is typically represented as a Markov Decision Process (MDP). Many reinforcement learning algorithms use dynamic programming techniques.[27] Reinforcement learning algorithms do not assume knowledge of an exact mathematical model of the MDP, and are used when exact models are infeasible. Reinforcement learning algorithms are used in autonomous vehicles or in learning to play a game against a human opponent.\n", "\n", "Self learning[edit]\n", "Self-learning as machine learning paradigm was introduced in 1982 along with a neural network capable of self-learning named Crossbar Adaptive Array (CAA). [28] It is a learning with no external rewards and no external teacher advices. 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. [29]\n", "The self-learning algorithm updates a memory matrix W =||w(a,s)|| such that in each iteration executes the following machine learning routine: \n", "\n", " In situation s perform action a;\n", " Receive consequence situation s’;\n", " Compute emotion of being in consequence situation v(s’);\n", " Update crossbar memory w’(a,s) = w(a,s) + v(s’).\n", "\n", "It is a system with only one input, situation s, and only one output, action (or behavior) 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 behavioral environment where it behaves, and the other is genetic environment, wherefrom it initially and only once receives initial emotions about situations to be encountered in the behavioral environment. After receiving the genome (species) vector from the genetic environment, the CAA learns a goal seeking behavior, in an environment that contains both desirable and undesirable situations. [30]\n", "\n", "Feature learning[edit]\n", "Main article: Feature learning\n", "Several learning algorithms aim at discovering better representations of the inputs provided during training.[31] Classic examples include principal components 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 manual feature engineering, and allows a machine to both learn the features and use them to perform a specific task.\n", "Feature learning can be either supervised or unsupervised. In supervised feature learning, features are learned using labeled input data. Examples include artificial neural networks, multilayer perceptrons, and supervised dictionary learning. In unsupervised feature learning, features are learned with unlabeled input data. Examples include dictionary learning, independent component analysis, autoencoders, matrix factorization[32] and various forms of clustering.[33][34][35]\n", "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 from tensor representations for multidimensional data, without reshaping them into higher-dimensional vectors.[36] 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 is one that learns a representation that disentangles the underlying factors of variation that explain the observed data.[37]\n", "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 has not yielded to attempts to algorithmically define specific features. An alternative is to discover such features or representations through examination, without relying on explicit algorithms.\n", "\n", "Sparse dictionary learning[edit]\n", "Main article: Sparse dictionary learning\n", "Sparse dictionary learning is a feature learning method where a training example is represented as a linear combination of basis functions, and is assumed to be a sparse matrix. The method is strongly NP-hard and difficult to solve approximately.[38] A popular heuristic method for sparse dictionary learning is the K-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 in image de-noising. The key idea is that a clean image patch can be sparsely represented by an image dictionary, but the noise cannot.[39]\n", "\n", "Anomaly detection[edit]\n", "Main article: Anomaly detection\n", "In data mining, anomaly detection, also known as outlier detection, is the identification of rare items, events or observations which raise suspicions by differing significantly from the majority of the data.[40] Typically, the anomalous items represent an issue such as bank fraud, a structural defect, medical problems or errors in a text. Anomalies are referred to as outliers, novelties, noise, deviations and exceptions.[41]\n", "In particular, in the context of abuse and network intrusion detection, the interesting objects are often not rare objects, but unexpected bursts in activity. This pattern does not adhere to the common statistical definition of an outlier as a rare object, and many outlier detection methods (in particular, unsupervised algorithms) will fail on such data, unless it has been aggregated appropriately. Instead, a cluster analysis algorithm may be able to detect the micro-clusters formed by these patterns.[42]\n", "Three broad categories of anomaly detection techniques exist.[43] Unsupervised anomaly detection techniques detect anomalies in an unlabeled 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 least to the remainder of the data set. Supervised anomaly detection techniques require a data set that has been labeled as \"normal\" and \"abnormal\" and involves training a classifier (the key difference to many other statistical classification problems is the inherently unbalanced nature of outlier detection). Semi-supervised anomaly detection techniques construct a model representing normal behavior from a given normal training data set and then test the likelihood of a test instance to be generated by the model.\n", "\n", "Association rules[edit]\n", "Main article: Association rule learningSee also: Inductive logic programming\n", "Association rule learning is a rule-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\".[44]\n", "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 utilization 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.[45] Rule-based machine learning approaches include learning classifier systems, association rule learning, and artificial immune systems.\n", "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 by point-of-sale (POS) systems in supermarkets.[46] For example, the rule \n", "\n", "\n", "\n", "{\n", "\n", "o\n", "n\n", "i\n", "o\n", "n\n", "s\n", ",\n", "p\n", "o\n", "t\n", "a\n", "t\n", "o\n", "e\n", "s\n", "\n", "}\n", "⇒\n", "{\n", "\n", "b\n", "u\n", "r\n", "g\n", "e\n", "r\n", "\n", "}\n", "\n", "\n", "{\\displaystyle \\{\\mathrm {onions,potatoes} \\}\\Rightarrow \\{\\mathrm {burger} \\}}\n", "\n", " 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 promotional pricing or product placements. In addition to market basket analysis, association rules are employed today in application areas including Web usage mining, intrusion detection, continuous production, and bioinformatics. In contrast with sequence mining, association rule learning typically does not consider the order of items either within a transaction or across transactions.\n", "Learning classifier systems (LCS) are a family of rule-based machine learning algorithms that combine a discovery component, typically a genetic algorithm, with a learning component, performing either supervised learning, reinforcement learning, or unsupervised learning. They seek to identify a set of context-dependent rules that collectively store and apply knowledge in a piecewise manner in order to make predictions.[47]\n", "Inductive logic programming (ILP) is an approach to rule-learning using logic 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 that entails all positive and no negative examples. Inductive programming is a related field that considers any kind of programming languages for representing hypotheses (and not only logic programming), such as functional programs.\n", "Inductive logic programming is particularly useful in bioinformatics and natural language processing. Gordon Plotkin and Ehud Shapiro laid the initial theoretical foundation for inductive machine learning in a logical setting.[48][49][50] Shapiro built their first implementation (Model Inference System) in 1981: a Prolog program that inductively inferred logic programs from positive and negative examples.[51] The term inductive here refers to philosophical induction, suggesting a theory to explain observed facts, rather than mathematical induction, proving a property for all members of a well-ordered set.\n", "\n", "Models[edit]\n", "Performing machine learning involves creating a model, which is trained on some training data and then can process additional data to make predictions. Various types of models have been used and researched for machine learning systems.\n", "\n", "Artificial neural networks[edit]\n", "Main article: Artificial neural networkSee also: Deep learning\n", " An artificial neural network is an interconnected group of nodes, akin to the vast network of neurons in a brain. Here, each circular node represents an artificial neuron and an arrow represents a connection from the output of one artificial neuron to the input of another.\n", "Artificial neural networks (ANNs), or connectionist systems, are computing systems vaguely inspired by the biological neural networks that constitute animal brains. Such systems \"learn\" to perform tasks by considering examples, generally without being programmed with any task-specific rules.\n", "An ANN is a model based on a collection of connected units or nodes called \"artificial neurons\", which loosely model the neurons in a biological brain. Each connection, like the synapses 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 a real 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 a weight 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.\n", "The original goal of the ANN approach was to solve problems in the same way that a human brain would. However, over time, attention moved to performing specific tasks, leading to deviations from biology. Artificial neural networks have been used on a variety of tasks, including computer vision, speech recognition, machine translation, social network filtering, playing board and video games and medical diagnosis.\n", "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.[52]\n", "\n", "Decision trees[edit]\n", "Main article: Decision tree learning\n", "Decision tree learning uses a decision tree as a predictive 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 modeling 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 represent conjunctions of features that lead to those class labels. Decision trees where the target variable can take continuous values (typically real numbers) are called regression trees. In decision analysis, a decision tree can be used to visually and explicitly represent decisions and decision making. In data mining, a decision tree describes data, but the resulting classification tree can be an input for decision making.\n", "\n", "Support vector machines[edit]\n", "Main article: Support vector machines\n", "Support vector machines (SVMs), also known as support vector networks, are a set of related supervised 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 or the other.[53] An SVM training algorithm is a non-probabilistic, binary, linear classifier, although methods such as Platt 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 the kernel trick, implicitly mapping their inputs into high-dimensional feature spaces.\n", "\n", " Illustration of linear regression on a data set.\n", "Regression analysis[edit]\n", "Main article: Regression analysis\n", "Regression analysis encompasses a large variety of statistical methods to estimate the relationship between input variables and their associated features. Its most common form is linear regression, where a single line is drawn to best fit the given data according to a mathematical criterion such as ordinary least squares. The latter is oftentimes extended by regularization (mathematics) methods to mitigate overfitting and high bias, as can be seen in ridge regression. When dealing with non-linear problems, go-to models include polynomial regression (e.g. used for trendline fitting in Microsoft Excel [54]), Logistic regression (often used in statistical classification) or even kernel regression, which introduces non-linearity by taking advantage of the kernel trick to implicitly map input variables to higher dimensional space. \n", "\n", "Bayesian networks[edit]\n", "Main article: Bayesian network\n", " A simple Bayesian network. Rain influences whether the sprinkler is activated, and both rain and the sprinkler influence whether the grass is wet.\n", "A Bayesian network, belief network or directed acyclic graphical model is a probabilistic graphical model that represents a set of random variables and their conditional independence with a directed 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 perform inference and learning. Bayesian networks that model sequences of variables, like speech signals or protein sequences, are called dynamic Bayesian networks. Generalizations of Bayesian networks that can represent and solve decision problems under uncertainty are called influence diagrams.\n", "\n", "Genetic algorithms[edit]\n", "Main article: Genetic algorithm\n", "A genetic algorithm (GA) is a search algorithm and heuristic technique that mimics the process of natural selection, using methods such as mutation and crossover to generate new genotypes in the hope of finding good solutions to a given problem. In machine learning, genetic algorithms were used in the 1980s and 1990s.[55][56] Conversely, machine learning techniques have been used to improve the performance of genetic and evolutionary algorithms.[57]\n", "\n", "Training models[edit]\n", "Usually, machine learning models require a lot of data in order for them to perform well. Usually, when training a machine learning model, one needs to collect a large, representative sample of data from a training set. Data from the training set can be as varied as a corpus of text, a collection of images, and data collected from individual users of a service. Overfitting is something to watch out for when training a machine learning model.\n", "\n", "Federated learning[edit]\n", "Main article: Federated learning\n", "Federated learning is a new approach to training machine learning models that decentralizes the training process, allowing for users' privacy to be maintained by not needing to send their data to a centralized server. This also increases efficiency by decentralizing 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 to Google.[58]\n", "\n", "Applications[edit]\n", "There are many applications for machine learning, including:\n", "\n", "\n", "Agriculture\n", "Anatomy\n", "Adaptive websites\n", "Affective computing\n", "Banking\n", "Bioinformatics\n", "Brain–machine interfaces\n", "Cheminformatics\n", "Citizen science\n", "Computer networks\n", "Computer vision\n", "Credit-card fraud detection\n", "Data quality\n", "DNA sequence classification\n", "Economics\n", "Financial market analysis [59]\n", "General game playing\n", "Handwriting recognition\n", "Information retrieval\n", "Insurance\n", "Internet fraud detection\n", "Linguistics\n", "Machine learning control\n", "Machine perception\n", "Machine translation\n", "Marketing\n", "Medical diagnosis\n", "Natural language processing\n", "Natural language understanding\n", "Online advertising\n", "Optimization\n", "Recommender systems\n", "Robot locomotion\n", "Search engines\n", "Sentiment analysis\n", "Sequence mining\n", "Software engineering\n", "Speech recognition\n", "Structural health monitoring\n", "Syntactic pattern recognition\n", "Telecommunication\n", "Theorem proving\n", "Time series forecasting\n", "User behavior analytics\n", "\n", "In 2006, the media-services provider Netflix held the first \"Netflix Prize\" competition to find a program to better predict user preferences and improve the accuracy on its existing Cinematch movie recommendation algorithm by at least 10%. A joint team made up of researchers from AT&T Labs-Research in collaboration with the teams Big Chaos and Pragmatic Theory built an ensemble model to win the Grand Prize in 2009 for $1 million.[60] Shortly after the prize was awarded, Netflix realized that viewers' ratings were not the best indicators of their viewing patterns (\"everything is a recommendation\") and they changed their recommendation engine accordingly.[61] In 2010 The Wall Street Journal wrote about the firm Rebellion Research and their use of machine learning to predict the financial crisis.[62] In 2012, co-founder of Sun 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.[63] 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 unrecognized influences among artists.[64] In 2019 Springer Nature published the first research book created using machine learning.[65]\n", "\n", "Limitations[edit]\n", "Although machine learning has been transformative in some fields, machine-learning programs often fail to deliver expected results.[66][67][68] 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.[69]\n", "In 2018, a self-driving car from Uber failed to detect a pedestrian, who was killed after a collision.[70] Attempts to use machine learning in healthcare with the IBM Watson system failed to deliver even after years of time and billions of investment.[71][72]\n", "\n", "Bias[edit]\n", "Main article: Algorithmic bias\n", "Machine learning approaches in particular can suffer from different data biases. A machine learning system trained on current customers only may not be able to predict the needs of new customer groups that are not represented in the training data. When trained on man-made data, machine learning is likely to pick up the same constitutional and unconscious biases already present in society.[73] Language models learned from data have been shown to contain human-like biases.[74][75] Machine learning systems used for criminal risk assessment have been found to be biased against black people.[76][77] In 2015, Google photos would often tag black people as gorillas,[78] and in 2018 this still was not well resolved, but Google reportedly was still using the workaround to remove all gorillas from the training data, and thus was not able to recognize real gorillas at all.[79] Similar issues with recognizing non-white people have been found in many other systems.[80] In 2016, Microsoft tested a chatbot that learned from Twitter, and it quickly picked up racist and sexist language.[81] Because of such challenges, the effective use of machine learning may take longer to be adopted in other domains.[82] Concern for fairness in machine learning, that is, reducing bias in machine learning and propelling its use for human good is increasingly expressed by artificial intelligence scientists, including Fei-Fei Li, who reminds engineers that \"There’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.”[83]\n", "\n", "Model assessments[edit]\n", "Classification machine learning models can be validated by accuracy estimation techniques like the Holdout method, which splits the data in 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 respectively 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.[84]\n", "In addition to overall accuracy, investigators frequently report sensitivity and specificity meaning True Positive Rate (TPR) and True Negative Rate (TNR) respectively. Similarly, investigators sometimes report the False Positive Rate (FPR) as well as the False Negative Rate (FNR). However, these rates are ratios that fail to reveal their numerators and denominators. The Total Operating Characteristic (TOC) is an effective method to express a model's diagnostic ability. TOC shows the numerators and denominators of the previously mentioned rates, thus TOC provides more information than the commonly used Receiver Operating Characteristic (ROC) and ROC's associated Area Under the Curve (AUC).[85]\n", "\n", "Ethics[edit]\n", "Machine learning poses a host of ethical questions. Systems which are trained on datasets collected with biases may exhibit these biases upon use (algorithmic bias), thus digitizing cultural prejudices.[86] For example, 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 against similarity to previous successful applicants.[87][88] Responsible collection of data and documentation of algorithmic rules used by a system thus is a critical part of machine learning.\n", "Because human languages contain biases, machines trained on language corpora will necessarily also learn these biases.[89][90]\n", "Other forms of ethical challenges, not related to personal biases, are more seen in health care. 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 perpetual ethical dilemma of improving health care, but also increase 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 in. There is huge potential for machine learning in health care to provide professionals a great tool to diagnose, medicate, and even plan recovery paths for patients, but this will not happen until the personal biases mentioned previously, and these \"greed\" biases are addressed.[91]\n", "\n", "Software[edit]\n", "Software suites containing a variety of machine learning algorithms include the following:\n", "\n", "Free and open-source software[edit]\n", "\n", "CNTK\n", "Deeplearning4j\n", "ELKI\n", "Keras\n", "Caffe\n", "ML.NET\n", "Mahout\n", "Mallet\n", "mlpack\n", "MXNet\n", "Neural Lab\n", "GNU Octave\n", "OpenNN\n", "Orange\n", "scikit-learn\n", "Shogun\n", "Spark MLlib\n", "Apache SystemML\n", "TensorFlow\n", "ROOT (TMVA with ROOT)\n", "Torch / PyTorch\n", "Weka / MOA\n", "Yooreeka\n", "R\n", "\n", "Proprietary software with free and open-source editions[edit]\n", "\n", "KNIME\n", "RapidMiner\n", "\n", "Proprietary software[edit]\n", "\n", "Amazon Machine Learning\n", "Angoss KnowledgeSTUDIO\n", "Azure Machine Learning\n", "Ayasdi\n", "IBM Data Science Experience\n", "Google Prediction API\n", "IBM SPSS Modeler\n", "KXEN Modeler\n", "LIONsolver\n", "Mathematica\n", "MATLAB\n", "Microsoft Azure\n", "Neural Designer\n", "NeuroSolutions\n", "Oracle Data Mining\n", "Oracle AI Platform Cloud Service\n", "RCASE\n", "SAS Enterprise Miner\n", "SequenceL\n", "Splunk\n", "STATISTICA Data Miner\n", "\n", "Journals[edit]\n", "Journal of Machine Learning Research\n", "Machine Learning\n", "Nature Machine Intelligence\n", "Neural Computation\n", "Conferences[edit]\n", "Conference on Neural Information Processing Systems\n", "International Conference on Machine Learning\n", "See also[edit]\n", "\n", "Automated machine learning\n", "Big data\n", "Explanation-based learning\n", "Important publications in machine learning\n", "List of datasets for machine learning research\n", "Predictive analytics\n", "Quantum machine learning\n", "Machine-learning applications in bioinformatics\n", "Seq2seq\n", "Fairness (machine learning)\n", "\n", "References[edit]\n", "\n", "\n", "^ The definition \"without being explicitly programmed\" is often attributed to Arthur Samuel, who coined the term \"machine learning\" in 1959, but the phrase is not found verbatim in this publication, and may be a paraphrase that appeared later. Confer \"Paraphrasing Arthur Samuel (1959), the question is: How can computers learn to solve problems without being explicitly programmed?\" in Koza, 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. Springer, Dordrecht. pp. 151–170. doi:10.1007/978-94-009-0279-4_9..mw-parser-output cite.citation{font-style:inherit}.mw-parser-output .citation q{quotes:\"\\\"\"\"\\\"\"\"'\"\"'\"}.mw-parser-output .id-lock-free a,.mw-parser-output .citation .cs1-lock-free a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/6/65/Lock-green.svg/9px-Lock-green.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .id-lock-limited a,.mw-parser-output .id-lock-registration a,.mw-parser-output .citation .cs1-lock-limited a,.mw-parser-output .citation .cs1-lock-registration a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Lock-gray-alt-2.svg/9px-Lock-gray-alt-2.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .id-lock-subscription a,.mw-parser-output .citation .cs1-lock-subscription a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/a/aa/Lock-red-alt-2.svg/9px-Lock-red-alt-2.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration{color:#555}.mw-parser-output .cs1-subscription span,.mw-parser-output .cs1-registration span{border-bottom:1px dotted;cursor:help}.mw-parser-output .cs1-ws-icon a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/4/4c/Wikisource-logo.svg/12px-Wikisource-logo.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output code.cs1-code{color:inherit;background:inherit;border:inherit;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;font-size:100%}.mw-parser-output .cs1-visible-error{font-size:100%}.mw-parser-output .cs1-maint{display:none;color:#33aa33;margin-left:0.3em}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration,.mw-parser-output .cs1-format{font-size:95%}.mw-parser-output .cs1-kern-left,.mw-parser-output .cs1-kern-wl-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right,.mw-parser-output .cs1-kern-wl-right{padding-right:0.2em}\n", "\n", "^ a b c d Bishop, C. M. (2006), Pattern Recognition and Machine Learning, Springer, ISBN 978-0-387-31073-2\n", "\n", "^ Machine learning and pattern recognition \"can be viewed as two facets of the same field.\"[2]:vii\n", "\n", "^ Friedman, Jerome H. (1998). \"Data Mining and Statistics: What's the connection?\". Computing Science and Statistics. 29 (1): 3–9.\n", "\n", "^ Samuel, Arthur (1959). \"Some Studies in Machine Learning Using the Game of Checkers\". IBM Journal of Research and Development. 3 (3): 210–229. CiteSeerX 10.1.1.368.2254. doi:10.1147/rd.33.0210.\n", "\n", "^ a b Mitchell, T. (1997). Machine Learning. McGraw Hill. p. 2. ISBN 978-0-07-042807-2.\n", "\n", "^ Harnad, Stevan (2008), \"The Annotation Game: On Turing (1950) on Computing, Machinery, and Intelligence\", in Epstein, Robert; Peters, Grace (eds.), The Turing Test Sourcebook: Philosophical and Methodological Issues in the Quest for the Thinking Computer, Kluwer, pp. 23–66, ISBN 9781402067082\n", "\n", "^ R. Kohavi and F. Provost, \"Glossary of terms,\" Machine Learning, vol. 30, no. 2–3, pp. 271–274, 1998.\n", "\n", "^ Nilsson N. Learning Machines, McGraw Hill, 1965. \n", "\n", "^ Duda, R., Hart P. Pattern Recognition and Scene Analysis, Wiley Interscience, 1973 \n", "\n", "^ S. Bozinovski \"Teaching space: A representation concept for adaptive pattern classification\" COINS Technical Report No. 81-28, Computer and Information Science Department, University of Massachusetts at Amherst, MA, 1981. https://web.cs.umass.edu/publication/docs/1981/UM-CS-1981-028.pdf \n", "\n", "^ Sarle, Warren (1994). \"Neural Networks and statistical models\". CiteSeerX 10.1.1.27.699.\n", "\n", "^ a b c d Russell, Stuart; Norvig, Peter (2003) [1995]. Artificial Intelligence: A Modern Approach (2nd ed.). Prentice Hall. ISBN 978-0137903955.\n", "\n", "^ a b Langley, Pat (2011). \"The changing science of machine learning\". Machine Learning. 82 (3): 275–279. doi:10.1007/s10994-011-5242-y.\n", "\n", "^ Le Roux, Nicolas; Bengio, Yoshua; Fitzgibbon, Andrew (2012). \"Improving+First+and+Second-Order+Methods+by+Modeling+Uncertainty \"Improving First and Second-Order Methods by Modeling Uncertainty\". In Sra, Suvrit; Nowozin, Sebastian; Wright, Stephen J. (eds.). Optimization for Machine Learning. MIT Press. p. 404. ISBN 9780262016469.\n", "\n", "^ Bzdok, Danilo; Altman, Naomi; Krzywinski, Martin (2018). \"Statistics versus Machine Learning\". Nature Methods. 15 (4): 233–234. doi:10.1038/nmeth.4642. PMC 6082636. PMID 30100822.\n", "\n", "^ a b Michael I. Jordan (2014-09-10). \"statistics and machine learning\". reddit. Retrieved 2014-10-01.\n", "\n", "^ Cornell University Library. \"Breiman: Statistical Modeling: The Two Cultures (with comments and a rejoinder by the author)\". Retrieved 8 August 2015.\n", "\n", "^ Gareth James; Daniela Witten; Trevor Hastie; Robert Tibshirani (2013). An Introduction to Statistical Learning. Springer. p. vii.\n", "\n", "^ Mohri, Mehryar; Rostamizadeh, Afshin; Talwalkar, Ameet (2012). Foundations of Machine Learning. USA, Massachusetts: MIT Press. ISBN 9780262018258.\n", "\n", "^ Alpaydin, Ethem (2010). Introduction to Machine Learning. London: The MIT Press. ISBN 978-0-262-01243-0. Retrieved 4 February 2017.\n", "\n", "^ Russell, Stuart J.; Norvig, Peter (2010). Artificial Intelligence: A Modern Approach (Third ed.). Prentice Hall. ISBN 9780136042594.\n", "\n", "^ Mohri, Mehryar; Rostamizadeh, Afshin; Talwalkar, Ameet (2012). Foundations of Machine Learning. The MIT Press. ISBN 9780262018258.\n", "\n", "^ Alpaydin, Ethem (2010). Introduction to Machine Learning. MIT Press. p. 9. ISBN 978-0-262-01243-0.\n", "\n", "^ Alex Ratner; Stephen Bach; Paroma Varma; Chris. \"Weak Supervision: The New Programming Paradigm for Machine Learning\". hazyresearch.github.io. referencing work by many other members of Hazy Research. Retrieved 2019-06-06.\n", "\n", "^ 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. ISBN 978-1-58488-360-9.\n", "\n", "^ van Otterlo, M.; Wiering, M. (2012). Reinforcement learning and markov decision processes. Reinforcement Learning. Adaptation, Learning, and Optimization. 12. pp. 3–42. doi:10.1007/978-3-642-27645-3_1. ISBN 978-3-642-27644-6.\n", "\n", "^ 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. ISBN 978-0-444-86488-8.\n", "\n", "^ Bozinovski, Stevo (2014) \"Modeling mechanisms of cognition-emotion interaction in artificial neural networks, since 1981.\" Procedia Computer Science p. 255-263 \n", "\n", "^ Bozinovski, S. (2001) \"Self-learning agents: A connectionist theory of emotion based on crossbar value judgment.\" Cybernetics and Systems 32(6) 637-667. \n", "\n", "^ Y. Bengio; A. Courville; P. Vincent (2013). \"Representation Learning: A Review and New Perspectives\". IEEE Transactions on Pattern Analysis and Machine Intelligence. 35 (8): 1798–1828. arXiv:1206.5538. doi:10.1109/tpami.2013.50. PMID 23787338.\n", "\n", "^ Nathan Srebro; Jason D. M. Rennie; Tommi S. Jaakkola (2004). Maximum-Margin Matrix Factorization. NIPS.\n", "\n", "^ Coates, Adam; Lee, Honglak; Ng, Andrew Y. (2011). An analysis of single-layer networks in unsupervised feature learning (PDF). Int'l Conf. on AI and Statistics (AISTATS).\n", "\n", "^ 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.\n", "\n", "^ Daniel Jurafsky; James H. Martin (2009). Speech and Language Processing. Pearson Education International. pp. 145–146.\n", "\n", "^ Lu, Haiping; Plataniotis, K.N.; Venetsanopoulos, A.N. (2011). \"A Survey of Multilinear Subspace Learning for Tensor Data\" (PDF). Pattern Recognition. 44 (7): 1540–1551. doi:10.1016/j.patcog.2011.01.004.\n", "\n", "^ Yoshua Bengio (2009). Learning Deep Architectures for AI. Now Publishers Inc. pp. 1–3. ISBN 978-1-60198-294-0.\n", "\n", "^ Tillmann, A. M. (2015). \"On the Computational Intractability of Exact and Approximate Dictionary Learning\". IEEE Signal Processing Letters. 22 (1): 45–49. arXiv:1405.6664. Bibcode:2015ISPL...22...45T. doi:10.1109/LSP.2014.2345761.\n", "\n", "^ Aharon, M, M Elad, and A Bruckstein. 2006. \"K-SVD: An Algorithm for Designing Overcomplete Dictionaries for Sparse Representation.\" Signal Processing, IEEE Transactions on 54 (11): 4311–4322\n", "\n", "^ Zimek, Arthur; Schubert, Erich (2017), \"Outlier Detection\", Encyclopedia of Database Systems, Springer New York, pp. 1–5, doi:10.1007/978-1-4899-7993-3_80719-1, ISBN 9781489979933\n", "\n", "^ Hodge, V. J.; Austin, J. (2004). \"A Survey of Outlier Detection Methodologies\" (PDF). Artificial Intelligence Review. 22 (2): 85–126. CiteSeerX 10.1.1.318.4023. doi:10.1007/s10462-004-4304-y.\n", "\n", "^ 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.\n", "\n", "^ Chandola, V.; Banerjee, A.; Kumar, V. (2009). \"Anomaly detection: A survey\". ACM Computing Surveys. 41 (3): 1–58. doi:10.1145/1541880.1541882.\n", "\n", "^ 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.\n", "\n", "^ Bassel, George W.; Glaab, Enrico; Marquez, Julietta; Holdsworth, Michael J.; Bacardit, Jaume (2011-09-01). \"Functional Network Construction in Arabidopsis Using Rule-Based Machine Learning on Large-Scale Data Sets\". The Plant Cell. 23 (9): 3101–3116. doi:10.1105/tpc.111.088153. ISSN 1532-298X. PMC 3203449. PMID 21896882.\n", "\n", "^ Agrawal, R.; Imieliński, T.; Swami, A. (1993). \"Mining association rules between sets of items in large databases\". Proceedings of the 1993 ACM SIGMOD international conference on Management of data - SIGMOD '93. p. 207. CiteSeerX 10.1.1.40.6984. doi:10.1145/170035.170072. ISBN 978-0897915922.\n", "\n", "^ Urbanowicz, Ryan J.; Moore, Jason H. (2009-09-22). \"Learning Classifier Systems: A Complete Introduction, Review, and Roadmap\". Journal of Artificial Evolution and Applications. 2009: 1–25. doi:10.1155/2009/736398. ISSN 1687-6229.\n", "\n", "^ Plotkin G.D. Automatic Methods of Inductive Inference, PhD thesis, University of Edinburgh, 1970.\n", "\n", "^ Shapiro, Ehud Y. Inductive inference of theories from facts, 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.\n", "\n", "^ Shapiro, Ehud Y. (1983). Algorithmic program debugging. Cambridge, Mass: MIT Press. ISBN 0-262-19218-7\n", "\n", "^ Shapiro, Ehud Y. \"The model inference system.\" Proceedings of the 7th international joint conference on Artificial intelligence-Volume 2. Morgan Kaufmann Publishers Inc., 1981.\n", "\n", "^ Honglak Lee, Roger Grosse, Rajesh Ranganath, Andrew Y. Ng. \"Convolutional Deep Belief Networks for Scalable Unsupervised Learning of Hierarchical Representations\" Proceedings of the 26th Annual International Conference on Machine Learning, 2009.\n", "\n", "^ Cortes, Corinna; Vapnik, Vladimir N. (1995). \"Support-vector networks\". Machine Learning. 20 (3): 273–297. doi:10.1007/BF00994018.\n", "\n", "^ Stevenson, Christopher. \"Tutorial: Polynomial Regression in Excel\". facultystaff.richmond.edu. Retrieved 22 January 2017.\n", "\n", "^ Goldberg, David E.; Holland, John H. (1988). \"Genetic algorithms and machine learning\" (PDF). Machine Learning. 3 (2): 95–99. doi:10.1007/bf00113892.\n", "\n", "^ 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.\n", "\n", "^ Zhang, Jun; Zhan, Zhi-hui; Lin, Ying; Chen, Ni; Gong, Yue-jiao; Zhong, Jing-hui; Chung, Henry S.H.; Li, Yun; Shi, Yu-hui (2011). \"Evolutionary Computation Meets Machine Learning: A Survey\". Computational Intelligence Magazine. 6 (4): 68–75. doi:10.1109/mci.2011.942584.\n", "\n", "^ \"Federated Learning: Collaborative Machine Learning without Centralized Training Data\". Google AI Blog. Retrieved 2019-06-08.\n", "\n", "^ Machine learning is included in the CFA Curriculum (discussion is top down); see: Kathleen DeRose and Christophe Le Lanno (2020). \"Machine Learning\".\n", "\n", "^ \"BelKor Home Page\" research.att.com\n", "\n", "^ \"The Netflix Tech Blog: Netflix Recommendations: Beyond the 5 stars (Part 1)\". 2012-04-06. Retrieved 8 August 2015.\n", "\n", "^ Scott Patterson (13 July 2010). \"Letting the Machines Decide\". The Wall Street Journal. Retrieved 24 June 2018.\n", "\n", "^ Vinod Khosla (January 10, 2012). \"Do We Need Doctors or Algorithms?\". Tech Crunch.\n", "\n", "^ When A Machine Learning Algorithm Studied Fine Art Paintings, It Saw Things Art Historians Had Never Noticed, The Physics at ArXiv blog\n", "\n", "^ Vincent, James (2019-04-10). \"The first AI-generated textbook shows what robot writers are actually good at\". The Verge. Retrieved 2019-05-05.\n", "\n", "^ \"Why Machine Learning Models Often Fail to Learn: QuickTake Q&A\". Bloomberg.com. 2016-11-10. Retrieved 2017-04-10.\n", "\n", "^ \"The First Wave of Corporate AI Is Doomed to Fail\". Harvard Business Review. 2017-04-18. Retrieved 2018-08-20.\n", "\n", "^ \"Why the A.I. euphoria is doomed to fail\". VentureBeat. 2016-09-18. Retrieved 2018-08-20.\n", "\n", "^ \"9 Reasons why your machine learning project will fail\". www.kdnuggets.com. Retrieved 2018-08-20.\n", "\n", "^ \"Why Uber's self-driving car killed a pedestrian\". The Economist. Retrieved 2018-08-20.\n", "\n", "^ \"IBM's Watson recommended 'unsafe and incorrect' cancer treatments - STAT\". STAT. 2018-07-25. Retrieved 2018-08-21.\n", "\n", "^ Hernandez, Daniela; Greenwald, Ted (2018-08-11). \"IBM Has a Watson Dilemma\". Wall Street Journal. ISSN 0099-9660. Retrieved 2018-08-21.\n", "\n", "^ Garcia, Megan (2016). \"Racist in the Machine\". World Policy Journal. 33 (4): 111–117. doi:10.1215/07402775-3813015. ISSN 0740-2775.\n", "\n", "^ Caliskan, Aylin; Bryson, Joanna J.; Narayanan, Arvind (2017-04-14). \"Semantics derived automatically from language corpora contain human-like biases\". Science. 356 (6334): 183–186. arXiv:1608.07187. Bibcode:2017Sci...356..183C. doi:10.1126/science.aal4230. ISSN 0036-8075. PMID 28408601.\n", "\n", "^ 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, retrieved 2018-08-20\n", "\n", "^ Julia Angwin; Jeff Larson; Lauren Kirchner; Surya Mattu (2016-05-23). \"Machine Bias\". ProPublica. Retrieved 2018-08-20.\n", "\n", "^ \"Opinion | When an Algorithm Helps Send You to Prison\". New York Times. Retrieved 2018-08-20.\n", "\n", "^ \"Google apologises for racist blunder\". BBC News. 2015-07-01. Retrieved 2018-08-20.\n", "\n", "^ \"Google 'fixed' its racist algorithm by removing gorillas from its image-labeling tech\". The Verge. Retrieved 2018-08-20.\n", "\n", "^ \"Opinion | Artificial Intelligence's White Guy Problem\". New York Times. Retrieved 2018-08-20.\n", "\n", "^ Metz, Rachel. \"Why Microsoft's teen chatbot, Tay, said lots of awful things online\". MIT Technology Review. Retrieved 2018-08-20.\n", "\n", "^ Simonite, Tom. \"Microsoft says its racist chatbot illustrates how AI isn't adaptable enough to help most businesses\". MIT Technology Review. Retrieved 2018-08-20.\n", "\n", "^ Hempel, Jessi (2018-11-13). \"Fei-Fei Li's Quest to Make Machines Better for Humanity\". Wired. ISSN 1059-1028. Retrieved 2019-02-17.\n", "\n", "^ Kohavi, Ron (1995). \"A Study of Cross-Validation and Bootstrap for Accuracy Estimation and Model Selection\" (PDF). International Joint Conference on Artificial Intelligence.\n", "\n", "^ Pontius, Robert Gilmore; Si, Kangping (2014). \"The total operating characteristic to measure diagnostic ability for multiple thresholds\". International Journal of Geographical Information Science. 28 (3): 570–583. doi:10.1080/13658816.2013.862623.\n", "\n", "^ Bostrom, Nick (2011). \"The Ethics of Artificial Intelligence\" (PDF). Retrieved 11 April 2016.\n", "\n", "^ Edionwe, Tolulope. \"The fight against racist algorithms\". The Outline. Retrieved 17 November 2017.\n", "\n", "^ Jeffries, Adrianne. \"Machine learning is racist because the internet is racist\". The Outline. Retrieved 17 November 2017.\n", "\n", "^ Prates, Marcelo O. R. (11 Mar 2019). \"Assessing Gender Bias in Machine Translation -- A Case Study with Google Translate\". arXiv:1809.02208 [cs.CY].\n", "\n", "^ Narayanan, Arvind (August 24, 2016). \"Language necessarily contains human biases, and so will machines trained on language corpora\". Freedom to Tinker.\n", "\n", "^ Char, D. S.; Shah, N. H.; Magnus, D. (2018). \"Implementing Machine Learning in Health Care—Addressing Ethical Challenges\". New England Journal of Medicine. 378 (11): 981–983. doi:10.1056/nejmp1714229. PMC 5962261. PMID 29539284.\n", "\n", "\n", "Further reading[edit]\n", ".mw-parser-output .refbegin{font-size:90%;margin-bottom:0.5em}.mw-parser-output .refbegin-hanging-indents>ul{list-style-type:none;margin-left:0}.mw-parser-output .refbegin-hanging-indents>ul>li,.mw-parser-output .refbegin-hanging-indents>dl>dd{margin-left:0;padding-left:3.2em;text-indent:-3.2em;list-style:none}.mw-parser-output .refbegin-100{font-size:100%}\n", "Nils J. Nilsson, Introduction to Machine Learning.\n", "Trevor Hastie, Robert Tibshirani and Jerome H. Friedman (2001). The Elements of Statistical Learning, Springer. ISBN 0-387-95284-5.\n", "Pedro Domingos (September 2015), The Master Algorithm, Basic Books, ISBN 978-0-465-06570-7\n", "Ian H. Witten and Eibe Frank (2011). Data Mining: Practical machine learning tools and techniques Morgan Kaufmann, 664pp., ISBN 978-0-12-374856-0.\n", "Ethem Alpaydin (2004). Introduction to Machine Learning, MIT Press, ISBN 978-0-262-01243-0.\n", "David J. C. MacKay. Information Theory, Inference, and Learning Algorithms Cambridge: Cambridge University Press, 2003. ISBN 0-521-64298-1\n", "Richard O. Duda, Peter E. Hart, David G. Stork (2001) Pattern classification (2nd edition), Wiley, New York, ISBN 0-471-05669-3.\n", "Christopher Bishop (1995). Neural Networks for Pattern Recognition, Oxford University Press. ISBN 0-19-853864-2.\n", "Stuart Russell & Peter Norvig, (2009). Artificial Intelligence – A Modern Approach. Pearson, ISBN 9789332543515.\n", "Ray Solomonoff, An Inductive Inference Machine, IRE Convention Record, Section on Information Theory, Part 2, pp., 56–62, 1957.\n", "Ray Solomonoff, An Inductive Inference Machine A privately circulated report from the 1956 Dartmouth Summer Research Conference on AI.\n", "\n", "External links[edit]\n", "\n", "\n", "\n", "Wikimedia Commons has media related to Machine learning.\n", "\n", "International Machine Learning Society\n", "mloss is an academic database of open-source machine learning software.\n", "Machine Learning Crash Course by Google. This is a free course on machine learning through the use of TensorFlow.\n", "vteComputer scienceNote: This template roughly follows the 2012 ACM Computing Classification System.Hardware\n", "Printed circuit board\n", "Peripheral\n", "Integrated circuit\n", "Very Large Scale Integration\n", "Systems on Chip (SoCs)\n", "Energy consumption (Green computing)\n", "Electronic design automation\n", "Hardware acceleration\n", "Computer systemsorganization\n", "Computer architecture\n", "Embedded system\n", "Real-time computing\n", "Dependability\n", "Networks\n", "Network architecture\n", "Network protocol\n", "Network components\n", "Network scheduler\n", "Network performance evaluation\n", "Network service\n", "Software organization\n", "Interpreter\n", "Middleware\n", "Virtual machine\n", "Operating system\n", "Software quality\n", "Software notationsand tools\n", "Programming paradigm\n", "Programming language\n", "Compiler\n", "Domain-specific language\n", "Modeling language\n", "Software framework\n", "Integrated development environment\n", "Software configuration management\n", "Software library\n", "Software repository\n", "Software development\n", "Software development process\n", "Requirements analysis\n", "Software design\n", "Software construction\n", "Software deployment\n", "Software maintenance\n", "Programming team\n", "Open-source model\n", "Theory of computation\n", "Model of computation\n", "Formal language\n", "Automata theory\n", "Computability theory\n", "Computational complexity theory\n", "Logic\n", "Semantics\n", "Algorithms\n", "Algorithm design\n", "Analysis of algorithms\n", "Algorithmic efficiency\n", "Randomized algorithm\n", "Computational geometry\n", "Mathematicsof computing\n", "Discrete mathematics\n", "Probability\n", "Statistics\n", "Mathematical software\n", "Information theory\n", "Mathematical analysis\n", "Numerical analysis\n", "Informationsystems\n", "Database management system\n", "Information storage systems\n", "Enterprise information system\n", "Social information systems\n", "Geographic information system\n", "Decision support system\n", "Process control system\n", "Multimedia information system\n", "Data mining\n", "Digital library\n", "Computing platform\n", "Digital marketing\n", "World Wide Web\n", "Information retrieval\n", "Security\n", "Cryptography\n", "Formal methods\n", "Security services\n", "Intrusion detection system\n", "Hardware security\n", "Network security\n", "Information security\n", "Application security\n", "Human–computerinteraction\n", "Interaction design\n", "Social computing\n", "Ubiquitous computing\n", "Visualization\n", "Accessibility\n", "Concurrency\n", "Concurrent computing\n", "Parallel computing\n", "Distributed computing\n", "Multithreading\n", "Multiprocessing\n", "Artificialintelligence\n", "Natural language processing\n", "Knowledge representation and reasoning\n", "Computer vision\n", "Automated planning and scheduling\n", "Search methodology\n", "Control method\n", "Philosophy of artificial intelligence\n", "Distributed artificial intelligence\n", "Machine learning\n", "Supervised learning\n", "Unsupervised learning\n", "Reinforcement learning\n", "Multi-task learning\n", "Cross-validation\n", "Graphics\n", "Animation\n", "Rendering\n", "Image manipulation\n", "Graphics processing unit\n", "Mixed reality\n", "Virtual reality\n", "Image compression\n", "Solid modeling\n", "Appliedcomputing\n", "E-commerce\n", "Enterprise software\n", "Computational mathematics\n", "Computational physics\n", "Computational chemistry\n", "Computational biology\n", "Computational social science\n", "Computational engineering\n", "Computational healthcare\n", "Digital art\n", "Electronic publishing\n", "Cyberwarfare\n", "Electronic voting\n", "Video games\n", "Word processing\n", "Operations research\n", "Educational technology\n", "Document management\n", "\n", " Book\n", " Category\n", " Outline\n", "WikiProject\n", " Commons\n", "\n", "For the journal, see Machine Learning (journal).\n", "\n", "\"Statistical learning\" redirects here. For statistical learning in linguistics, see statistical learning in language acquisition.\n", "\n", "Scientific study of algorithms and statistical models that computer systems use to perform tasks without explicit instructions\n", "\n", "Problems\n", "Classification\n", "Clustering\n", "Regression\n", "Anomaly detection\n", "AutoML\n", "Association rules\n", "Reinforcement learning\n", "Structured prediction\n", "Feature engineering\n", "Feature learning\n", "Online learning\n", "Semi-supervised learning\n", "Unsupervised learning\n", "Learning to rank\n", "Grammar induction\n", "\n", "Problems\n", "\n", "Classification\n", "Clustering\n", "Regression\n", "Anomaly detection\n", "AutoML\n", "Association rules\n", "Reinforcement learning\n", "Structured prediction\n", "Feature engineering\n", "Feature learning\n", "Online learning\n", "Semi-supervised learning\n", "Unsupervised learning\n", "Learning to rank\n", "Grammar induction\n", "\n", "Classification\n", "Clustering\n", "Regression\n", "Anomaly detection\n", "AutoML\n", "Association rules\n", "Reinforcement learning\n", "Structured prediction\n", "Feature engineering\n", "Feature learning\n", "Online learning\n", "Semi-supervised learning\n", "Unsupervised learning\n", "Learning to rank\n", "Grammar induction\n", "\n", "Supervised learning.mw-parser-output .nobold{font-weight:normal}(classification • regression) \n", "Decision trees\n", "Ensembles\n", "Bagging\n", "Boosting\n", "Random forest\n", "k-NN\n", "Linear regression\n", "Naive Bayes\n", "Artificial neural networks\n", "Logistic regression\n", "Perceptron\n", "Relevance vector machine (RVM)\n", "Support vector machine (SVM)\n", "\n", "Supervised learning.mw-parser-output .nobold{font-weight:normal}(classification • regression)\n", "\n", "Supervised learning.mw-parser-output .nobold{font-weight:normal}(classification • regression)\n", "\n", "Decision trees\n", "Ensembles\n", "Bagging\n", "Boosting\n", "Random forest\n", "k-NN\n", "Linear regression\n", "Naive Bayes\n", "Artificial neural networks\n", "Logistic regression\n", "Perceptron\n", "Relevance vector machine (RVM)\n", "Support vector machine (SVM)\n", "\n", "Decision trees\n", "Ensembles\n", "Bagging\n", "Boosting\n", "Random forest\n", "k-NN\n", "Linear regression\n", "Naive Bayes\n", "Artificial neural networks\n", "Logistic regression\n", "Perceptron\n", "Relevance vector machine (RVM)\n", "Support vector machine (SVM)\n", "\n", "Clustering\n", "BIRCH\n", "CURE\n", "Hierarchical\n", "k-means\n", "Expectation–maximization (EM)\n", "DBSCAN\n", "OPTICS\n", "Mean-shift\n", "\n", "Clustering\n", "\n", "BIRCH\n", "CURE\n", "Hierarchical\n", "k-means\n", "Expectation–maximization (EM)\n", "DBSCAN\n", "OPTICS\n", "Mean-shift\n", "\n", "BIRCH\n", "CURE\n", "Hierarchical\n", "k-means\n", "Expectation–maximization (EM)\n", "DBSCAN\n", "OPTICS\n", "Mean-shift\n", "\n", "Dimensionality reduction\n", "Factor analysis\n", "CCA\n", "ICA\n", "LDA\n", "NMF\n", "PCA\n", "t-SNE\n", "\n", "Dimensionality reduction\n", "\n", "Factor analysis\n", "CCA\n", "ICA\n", "LDA\n", "NMF\n", "PCA\n", "t-SNE\n", "\n", "Factor analysis\n", "CCA\n", "ICA\n", "LDA\n", "NMF\n", "PCA\n", "t-SNE\n", "\n", "Structured prediction\n", "Graphical models\n", "Bayes net\n", "Conditional random field\n", "Hidden Markov\n", "\n", "Structured prediction\n", "\n", "Graphical models\n", "Bayes net\n", "Conditional random field\n", "Hidden Markov\n", "\n", "Graphical models\n", "Bayes net\n", "Conditional random field\n", "Hidden Markov\n", "\n", "Anomaly detection\n", "k-NN\n", "Local outlier factor\n", "\n", "Anomaly detection\n", "\n", "k-NN\n", "Local outlier factor\n", "\n", "k-NN\n", "Local outlier factor\n", "\n", "Artificial neural network\n", "Autoencoder\n", "Deep learning\n", "DeepDream\n", "Multilayer perceptron\n", "RNN\n", "LSTM\n", "GRU\n", "Restricted Boltzmann machine\n", "GAN\n", "SOM\n", "Convolutional neural network\n", "U-Net\n", "\n", "Artificial neural network\n", "\n", "Autoencoder\n", "Deep learning\n", "DeepDream\n", "Multilayer perceptron\n", "RNN\n", "LSTM\n", "GRU\n", "Restricted Boltzmann machine\n", "GAN\n", "SOM\n", "Convolutional neural network\n", "U-Net\n", "\n", "Autoencoder\n", "Deep learning\n", "DeepDream\n", "Multilayer perceptron\n", "RNN\n", "LSTM\n", "GRU\n", "Restricted Boltzmann machine\n", "GAN\n", "SOM\n", "Convolutional neural network\n", "U-Net\n", "\n", "Reinforcement learning\n", "Q-learning\n", "SARSA\n", "Temporal difference (TD)\n", "\n", "Reinforcement learning\n", "\n", "Q-learning\n", "SARSA\n", "Temporal difference (TD)\n", "\n", "Q-learning\n", "SARSA\n", "Temporal difference (TD)\n", "\n", "Theory\n", "Bias–variance dilemma\n", "Computational learning theory\n", "Empirical risk minimization\n", "Occam learning\n", "PAC learning\n", "Statistical learning\n", "VC theory\n", "\n", "Theory\n", "\n", "Bias–variance dilemma\n", "Computational learning theory\n", "Empirical risk minimization\n", "Occam learning\n", "PAC learning\n", "Statistical learning\n", "VC theory\n", "\n", "Bias–variance dilemma\n", "Computational learning theory\n", "Empirical risk minimization\n", "Occam learning\n", "PAC learning\n", "Statistical learning\n", "VC theory\n", "\n", "Machine-learning venues\n", "NeurIPS\n", "ICML\n", "ML\n", "JMLR\n", "ArXiv:cs.LG\n", "\n", "Machine-learning venues\n", "\n", "NeurIPS\n", "ICML\n", "ML\n", "JMLR\n", "ArXiv:cs.LG\n", "\n", "NeurIPS\n", "ICML\n", "ML\n", "JMLR\n", "ArXiv:cs.LG\n", "\n", "Glossary of artificial intelligence\n", "Glossary of artificial intelligence\n", "\n", "Glossary of artificial intelligence\n", "\n", "Glossary of artificial intelligence\n", "\n", "Glossary of artificial intelligence\n", "\n", "Related articles\n", "List of datasets for machine-learning research\n", "Outline of machine learning\n", "\n", "Related articles\n", "\n", "List of datasets for machine-learning research\n", "Outline of machine learning\n", "\n", "List of datasets for machine-learning research\n", "Outline of machine learning\n", "\n", "vte\n", "\n", "Contents\n", "\n", "1 Overview\n", "\n", "1.1 Machine learning tasks\n", "\n", "\n", "2 History and relationships to other fields\n", "\n", "2.1 Relation to data mining\n", "2.2 Relation to optimization\n", "2.3 Relation to statistics\n", "\n", "\n", "3 Theory\n", "4 Approaches\n", "\n", "4.1 Types of learning algorithms\n", "\n", "4.1.1 Supervised learning\n", "4.1.2 Unsupervised learning\n", "4.1.3 Reinforcement learning\n", "4.1.4 Self learning\n", "4.1.5 Feature learning\n", "4.1.6 Sparse dictionary learning\n", "4.1.7 Anomaly detection\n", "4.1.8 Association rules\n", "\n", "\n", "4.2 Models\n", "\n", "4.2.1 Artificial neural networks\n", "4.2.2 Decision trees\n", "4.2.3 Support vector machines\n", "4.2.4 Regression analysis\n", "4.2.5 Bayesian networks\n", "4.2.6 Genetic algorithms\n", "\n", "\n", "4.3 Training models\n", "\n", "4.3.1 Federated learning\n", "\n", "\n", "\n", "\n", "5 Applications\n", "6 Limitations\n", "\n", "6.1 Bias\n", "\n", "\n", "7 Model assessments\n", "8 Ethics\n", "9 Software\n", "\n", "9.1 Free and open-source software\n", "9.2 Proprietary software with free and open-source editions\n", "9.3 Proprietary software\n", "\n", "\n", "10 Journals\n", "11 Conferences\n", "12 See also\n", "13 References\n", "14 Further reading\n", "15 External links\n", "\n", "Contents\n", "\n", "A support vector machine is a supervised learning model that divides the data into regions separated by a linear boundary. Here, the linear boundary divides the black circles from the white.\n", "\n", "A support vector machine is a supervised learning model that divides the data into regions separated by a linear boundary. Here, the linear boundary divides the black circles from the white.\n", "\n", "A support vector machine is a supervised learning model that divides the data into regions separated by a linear boundary. Here, the linear boundary divides the black circles from the white.\n", "\n", "\n", "\n", "See also: Timeline of machine learning\n", "\n", "Main articles: Computational learning theory and Statistical learning theory\n", "\n", "Main article: Supervised learning\n", "\n", "Main article: Unsupervised learning\n", "\n", "See also: Cluster analysis\n", "\n", "Main article: Semi-supervised learning\n", "\n", "Main article: Reinforcement learning\n", "\n", "Main article: Feature learning\n", "\n", "Main article: Sparse dictionary learning\n", "\n", "Main article: Anomaly detection\n", "\n", "Main article: Association rule learning\n", "\n", "See also: Inductive logic programming\n", "\n", "Main article: Artificial neural network\n", "\n", "See also: Deep learning\n", "\n", "An artificial neural network is an interconnected group of nodes, akin to the vast network of neurons in a brain. Here, each circular node represents an artificial neuron and an arrow represents a connection from the output of one artificial neuron to the input of another.\n", "\n", "An artificial neural network is an interconnected group of nodes, akin to the vast network of neurons in a brain. Here, each circular node represents an artificial neuron and an arrow represents a connection from the output of one artificial neuron to the input of another.\n", "\n", "An artificial neural network is an interconnected group of nodes, akin to the vast network of neurons in a brain. Here, each circular node represents an artificial neuron and an arrow represents a connection from the output of one artificial neuron to the input of another.\n", "\n", "\n", "\n", "Main article: Decision tree learning\n", "\n", "Main article: Support vector machines\n", "\n", "Illustration of linear regression on a data set.\n", "\n", "Illustration of linear regression on a data set.\n", "\n", "Illustration of linear regression on a data set.\n", "\n", "\n", "\n", "Main article: Regression analysis\n", "\n", "Main article: Bayesian network\n", "\n", "A simple Bayesian network. Rain influences whether the sprinkler is activated, and both rain and the sprinkler influence whether the grass is wet.\n", "\n", "A simple Bayesian network. Rain influences whether the sprinkler is activated, and both rain and the sprinkler influence whether the grass is wet.\n", "\n", "A simple Bayesian network. Rain influences whether the sprinkler is activated, and both rain and the sprinkler influence whether the grass is wet.\n", "\n", "\n", "\n", "Main article: Genetic algorithm\n", "\n", "Main article: Federated learning\n", "\n", "Agriculture\n", "Anatomy\n", "Adaptive websites\n", "Affective computing\n", "Banking\n", "Bioinformatics\n", "Brain–machine interfaces\n", "Cheminformatics\n", "Citizen science\n", "Computer networks\n", "Computer vision\n", "Credit-card fraud detection\n", "Data quality\n", "DNA sequence classification\n", "Economics\n", "Financial market analysis [59]\n", "General game playing\n", "Handwriting recognition\n", "Information retrieval\n", "Insurance\n", "Internet fraud detection\n", "Linguistics\n", "Machine learning control\n", "Machine perception\n", "Machine translation\n", "Marketing\n", "Medical diagnosis\n", "Natural language processing\n", "Natural language understanding\n", "Online advertising\n", "Optimization\n", "Recommender systems\n", "Robot locomotion\n", "Search engines\n", "Sentiment analysis\n", "Sequence mining\n", "Software engineering\n", "Speech recognition\n", "Structural health monitoring\n", "Syntactic pattern recognition\n", "Telecommunication\n", "Theorem proving\n", "Time series forecasting\n", "User behavior analytics\n", "\n", "Main article: Algorithmic bias\n", "\n", "CNTK\n", "Deeplearning4j\n", "ELKI\n", "Keras\n", "Caffe\n", "ML.NET\n", "Mahout\n", "Mallet\n", "mlpack\n", "MXNet\n", "Neural Lab\n", "GNU Octave\n", "OpenNN\n", "Orange\n", "scikit-learn\n", "Shogun\n", "Spark MLlib\n", "Apache SystemML\n", "TensorFlow\n", "ROOT (TMVA with ROOT)\n", "Torch / PyTorch\n", "Weka / MOA\n", "Yooreeka\n", "R\n", "\n", "KNIME\n", "RapidMiner\n", "\n", "Amazon Machine Learning\n", "Angoss KnowledgeSTUDIO\n", "Azure Machine Learning\n", "Ayasdi\n", "IBM Data Science Experience\n", "Google Prediction API\n", "IBM SPSS Modeler\n", "KXEN Modeler\n", "LIONsolver\n", "Mathematica\n", "MATLAB\n", "Microsoft Azure\n", "Neural Designer\n", "NeuroSolutions\n", "Oracle Data Mining\n", "Oracle AI Platform Cloud Service\n", "RCASE\n", "SAS Enterprise Miner\n", "SequenceL\n", "Splunk\n", "STATISTICA Data Miner\n", "\n", "Automated machine learning\n", "Big data\n", "Explanation-based learning\n", "Important publications in machine learning\n", "List of datasets for machine learning research\n", "Predictive analytics\n", "Quantum machine learning\n", "Machine-learning applications in bioinformatics\n", "Seq2seq\n", "Fairness (machine learning)\n", "\n", "^ The definition \"without being explicitly programmed\" is often attributed to Arthur Samuel, who coined the term \"machine learning\" in 1959, but the phrase is not found verbatim in this publication, and may be a paraphrase that appeared later. Confer \"Paraphrasing Arthur Samuel (1959), the question is: How can computers learn to solve problems without being explicitly programmed?\" in Koza, 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. Springer, Dordrecht. pp. 151–170. doi:10.1007/978-94-009-0279-4_9..mw-parser-output cite.citation{font-style:inherit}.mw-parser-output .citation q{quotes:\"\\\"\"\"\\\"\"\"'\"\"'\"}.mw-parser-output .id-lock-free a,.mw-parser-output .citation .cs1-lock-free a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/6/65/Lock-green.svg/9px-Lock-green.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .id-lock-limited a,.mw-parser-output .id-lock-registration a,.mw-parser-output .citation .cs1-lock-limited a,.mw-parser-output .citation .cs1-lock-registration a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Lock-gray-alt-2.svg/9px-Lock-gray-alt-2.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .id-lock-subscription a,.mw-parser-output .citation .cs1-lock-subscription a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/a/aa/Lock-red-alt-2.svg/9px-Lock-red-alt-2.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration{color:#555}.mw-parser-output .cs1-subscription span,.mw-parser-output .cs1-registration span{border-bottom:1px dotted;cursor:help}.mw-parser-output .cs1-ws-icon a{background:url(\"//upload.wikimedia.org/wikipedia/commons/thumb/4/4c/Wikisource-logo.svg/12px-Wikisource-logo.svg.png\")no-repeat;background-position:right .1em center}.mw-parser-output code.cs1-code{color:inherit;background:inherit;border:inherit;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;font-size:100%}.mw-parser-output .cs1-visible-error{font-size:100%}.mw-parser-output .cs1-maint{display:none;color:#33aa33;margin-left:0.3em}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration,.mw-parser-output .cs1-format{font-size:95%}.mw-parser-output .cs1-kern-left,.mw-parser-output .cs1-kern-wl-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right,.mw-parser-output .cs1-kern-wl-right{padding-right:0.2em}\n", "\n", "^ a b c d Bishop, C. M. (2006), Pattern Recognition and Machine Learning, Springer, ISBN 978-0-387-31073-2\n", "\n", "^ Machine learning and pattern recognition \"can be viewed as two facets of the same field.\"[2]:vii\n", "\n", "^ Friedman, Jerome H. (1998). \"Data Mining and Statistics: What's the connection?\". Computing Science and Statistics. 29 (1): 3–9.\n", "\n", "^ Samuel, Arthur (1959). \"Some Studies in Machine Learning Using the Game of Checkers\". IBM Journal of Research and Development. 3 (3): 210–229. CiteSeerX 10.1.1.368.2254. doi:10.1147/rd.33.0210.\n", "\n", "^ a b Mitchell, T. (1997). Machine Learning. McGraw Hill. p. 2. ISBN 978-0-07-042807-2.\n", "\n", "^ Harnad, Stevan (2008), \"The Annotation Game: On Turing (1950) on Computing, Machinery, and Intelligence\", in Epstein, Robert; Peters, Grace (eds.), The Turing Test Sourcebook: Philosophical and Methodological Issues in the Quest for the Thinking Computer, Kluwer, pp. 23–66, ISBN 9781402067082\n", "\n", "^ R. Kohavi and F. Provost, \"Glossary of terms,\" Machine Learning, vol. 30, no. 2–3, pp. 271–274, 1998.\n", "\n", "^ Nilsson N. Learning Machines, McGraw Hill, 1965. \n", "\n", "^ Duda, R., Hart P. Pattern Recognition and Scene Analysis, Wiley Interscience, 1973 \n", "\n", "^ S. Bozinovski \"Teaching space: A representation concept for adaptive pattern classification\" COINS Technical Report No. 81-28, Computer and Information Science Department, University of Massachusetts at Amherst, MA, 1981. https://web.cs.umass.edu/publication/docs/1981/UM-CS-1981-028.pdf \n", "\n", "^ Sarle, Warren (1994). \"Neural Networks and statistical models\". CiteSeerX 10.1.1.27.699.\n", "\n", "^ a b c d Russell, Stuart; Norvig, Peter (2003) [1995]. Artificial Intelligence: A Modern Approach (2nd ed.). Prentice Hall. ISBN 978-0137903955.\n", "\n", "^ a b Langley, Pat (2011). \"The changing science of machine learning\". Machine Learning. 82 (3): 275–279. doi:10.1007/s10994-011-5242-y.\n", "\n", "^ Le Roux, Nicolas; Bengio, Yoshua; Fitzgibbon, Andrew (2012). \"Improving+First+and+Second-Order+Methods+by+Modeling+Uncertainty \"Improving First and Second-Order Methods by Modeling Uncertainty\". In Sra, Suvrit; Nowozin, Sebastian; Wright, Stephen J. (eds.). Optimization for Machine Learning. MIT Press. p. 404. ISBN 9780262016469.\n", "\n", "^ Bzdok, Danilo; Altman, Naomi; Krzywinski, Martin (2018). \"Statistics versus Machine Learning\". Nature Methods. 15 (4): 233–234. doi:10.1038/nmeth.4642. PMC 6082636. PMID 30100822.\n", "\n", "^ a b Michael I. Jordan (2014-09-10). \"statistics and machine learning\". reddit. Retrieved 2014-10-01.\n", "\n", "^ Cornell University Library. \"Breiman: Statistical Modeling: The Two Cultures (with comments and a rejoinder by the author)\". Retrieved 8 August 2015.\n", "\n", "^ Gareth James; Daniela Witten; Trevor Hastie; Robert Tibshirani (2013). An Introduction to Statistical Learning. Springer. p. vii.\n", "\n", "^ Mohri, Mehryar; Rostamizadeh, Afshin; Talwalkar, Ameet (2012). Foundations of Machine Learning. USA, Massachusetts: MIT Press. ISBN 9780262018258.\n", "\n", "^ Alpaydin, Ethem (2010). Introduction to Machine Learning. London: The MIT Press. ISBN 978-0-262-01243-0. Retrieved 4 February 2017.\n", "\n", "^ Russell, Stuart J.; Norvig, Peter (2010). Artificial Intelligence: A Modern Approach (Third ed.). Prentice Hall. ISBN 9780136042594.\n", "\n", "^ Mohri, Mehryar; Rostamizadeh, Afshin; Talwalkar, Ameet (2012). Foundations of Machine Learning. The MIT Press. ISBN 9780262018258.\n", "\n", "^ Alpaydin, Ethem (2010). Introduction to Machine Learning. MIT Press. p. 9. ISBN 978-0-262-01243-0.\n", "\n", "^ Alex Ratner; Stephen Bach; Paroma Varma; Chris. \"Weak Supervision: The New Programming Paradigm for Machine Learning\". hazyresearch.github.io. referencing work by many other members of Hazy Research. Retrieved 2019-06-06.\n", "\n", "^ 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. ISBN 978-1-58488-360-9.\n", "\n", "^ van Otterlo, M.; Wiering, M. (2012). Reinforcement learning and markov decision processes. Reinforcement Learning. Adaptation, Learning, and Optimization. 12. pp. 3–42. doi:10.1007/978-3-642-27645-3_1. ISBN 978-3-642-27644-6.\n", "\n", "^ 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. ISBN 978-0-444-86488-8.\n", "\n", "^ Bozinovski, Stevo (2014) \"Modeling mechanisms of cognition-emotion interaction in artificial neural networks, since 1981.\" Procedia Computer Science p. 255-263 \n", "\n", "^ Bozinovski, S. (2001) \"Self-learning agents: A connectionist theory of emotion based on crossbar value judgment.\" Cybernetics and Systems 32(6) 637-667. \n", "\n", "^ Y. Bengio; A. Courville; P. Vincent (2013). \"Representation Learning: A Review and New Perspectives\". IEEE Transactions on Pattern Analysis and Machine Intelligence. 35 (8): 1798–1828. arXiv:1206.5538. doi:10.1109/tpami.2013.50. PMID 23787338.\n", "\n", "^ Nathan Srebro; Jason D. M. Rennie; Tommi S. Jaakkola (2004). Maximum-Margin Matrix Factorization. NIPS.\n", "\n", "^ Coates, Adam; Lee, Honglak; Ng, Andrew Y. (2011). An analysis of single-layer networks in unsupervised feature learning (PDF). Int'l Conf. on AI and Statistics (AISTATS).\n", "\n", "^ 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.\n", "\n", "^ Daniel Jurafsky; James H. Martin (2009). Speech and Language Processing. Pearson Education International. pp. 145–146.\n", "\n", "^ Lu, Haiping; Plataniotis, K.N.; Venetsanopoulos, A.N. (2011). \"A Survey of Multilinear Subspace Learning for Tensor Data\" (PDF). Pattern Recognition. 44 (7): 1540–1551. doi:10.1016/j.patcog.2011.01.004.\n", "\n", "^ Yoshua Bengio (2009). Learning Deep Architectures for AI. Now Publishers Inc. pp. 1–3. ISBN 978-1-60198-294-0.\n", "\n", "^ Tillmann, A. M. (2015). \"On the Computational Intractability of Exact and Approximate Dictionary Learning\". IEEE Signal Processing Letters. 22 (1): 45–49. arXiv:1405.6664. Bibcode:2015ISPL...22...45T. doi:10.1109/LSP.2014.2345761.\n", "\n", "^ Aharon, M, M Elad, and A Bruckstein. 2006. \"K-SVD: An Algorithm for Designing Overcomplete Dictionaries for Sparse Representation.\" Signal Processing, IEEE Transactions on 54 (11): 4311–4322\n", "\n", "^ Zimek, Arthur; Schubert, Erich (2017), \"Outlier Detection\", Encyclopedia of Database Systems, Springer New York, pp. 1–5, doi:10.1007/978-1-4899-7993-3_80719-1, ISBN 9781489979933\n", "\n", "^ Hodge, V. J.; Austin, J. (2004). \"A Survey of Outlier Detection Methodologies\" (PDF). Artificial Intelligence Review. 22 (2): 85–126. CiteSeerX 10.1.1.318.4023. doi:10.1007/s10462-004-4304-y.\n", "\n", "^ 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.\n", "\n", "^ Chandola, V.; Banerjee, A.; Kumar, V. (2009). \"Anomaly detection: A survey\". ACM Computing Surveys. 41 (3): 1–58. doi:10.1145/1541880.1541882.\n", "\n", "^ 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.\n", "\n", "^ Bassel, George W.; Glaab, Enrico; Marquez, Julietta; Holdsworth, Michael J.; Bacardit, Jaume (2011-09-01). \"Functional Network Construction in Arabidopsis Using Rule-Based Machine Learning on Large-Scale Data Sets\". The Plant Cell. 23 (9): 3101–3116. doi:10.1105/tpc.111.088153. ISSN 1532-298X. PMC 3203449. PMID 21896882.\n", "\n", "^ Agrawal, R.; Imieliński, T.; Swami, A. (1993). \"Mining association rules between sets of items in large databases\". Proceedings of the 1993 ACM SIGMOD international conference on Management of data - SIGMOD '93. p. 207. CiteSeerX 10.1.1.40.6984. doi:10.1145/170035.170072. ISBN 978-0897915922.\n", "\n", "^ Urbanowicz, Ryan J.; Moore, Jason H. (2009-09-22). \"Learning Classifier Systems: A Complete Introduction, Review, and Roadmap\". Journal of Artificial Evolution and Applications. 2009: 1–25. doi:10.1155/2009/736398. ISSN 1687-6229.\n", "\n", "^ Plotkin G.D. Automatic Methods of Inductive Inference, PhD thesis, University of Edinburgh, 1970.\n", "\n", "^ Shapiro, Ehud Y. Inductive inference of theories from facts, 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.\n", "\n", "^ Shapiro, Ehud Y. (1983). Algorithmic program debugging. Cambridge, Mass: MIT Press. ISBN 0-262-19218-7\n", "\n", "^ Shapiro, Ehud Y. \"The model inference system.\" Proceedings of the 7th international joint conference on Artificial intelligence-Volume 2. Morgan Kaufmann Publishers Inc., 1981.\n", "\n", "^ Honglak Lee, Roger Grosse, Rajesh Ranganath, Andrew Y. Ng. \"Convolutional Deep Belief Networks for Scalable Unsupervised Learning of Hierarchical Representations\" Proceedings of the 26th Annual International Conference on Machine Learning, 2009.\n", "\n", "^ Cortes, Corinna; Vapnik, Vladimir N. (1995). \"Support-vector networks\". Machine Learning. 20 (3): 273–297. doi:10.1007/BF00994018.\n", "\n", "^ Stevenson, Christopher. \"Tutorial: Polynomial Regression in Excel\". facultystaff.richmond.edu. Retrieved 22 January 2017.\n", "\n", "^ Goldberg, David E.; Holland, John H. (1988). \"Genetic algorithms and machine learning\" (PDF). Machine Learning. 3 (2): 95–99. doi:10.1007/bf00113892.\n", "\n", "^ 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.\n", "\n", "^ Zhang, Jun; Zhan, Zhi-hui; Lin, Ying; Chen, Ni; Gong, Yue-jiao; Zhong, Jing-hui; Chung, Henry S.H.; Li, Yun; Shi, Yu-hui (2011). \"Evolutionary Computation Meets Machine Learning: A Survey\". Computational Intelligence Magazine. 6 (4): 68–75. doi:10.1109/mci.2011.942584.\n", "\n", "^ \"Federated Learning: Collaborative Machine Learning without Centralized Training Data\". Google AI Blog. Retrieved 2019-06-08.\n", "\n", "^ Machine learning is included in the CFA Curriculum (discussion is top down); see: Kathleen DeRose and Christophe Le Lanno (2020). \"Machine Learning\".\n", "\n", "^ \"BelKor Home Page\" research.att.com\n", "\n", "^ \"The Netflix Tech Blog: Netflix Recommendations: Beyond the 5 stars (Part 1)\". 2012-04-06. Retrieved 8 August 2015.\n", "\n", "^ Scott Patterson (13 July 2010). \"Letting the Machines Decide\". The Wall Street Journal. Retrieved 24 June 2018.\n", "\n", "^ Vinod Khosla (January 10, 2012). \"Do We Need Doctors or Algorithms?\". Tech Crunch.\n", "\n", "^ When A Machine Learning Algorithm Studied Fine Art Paintings, It Saw Things Art Historians Had Never Noticed, The Physics at ArXiv blog\n", "\n", "^ Vincent, James (2019-04-10). \"The first AI-generated textbook shows what robot writers are actually good at\". The Verge. Retrieved 2019-05-05.\n", "\n", "^ \"Why Machine Learning Models Often Fail to Learn: QuickTake Q&A\". Bloomberg.com. 2016-11-10. Retrieved 2017-04-10.\n", "\n", "^ \"The First Wave of Corporate AI Is Doomed to Fail\". Harvard Business Review. 2017-04-18. Retrieved 2018-08-20.\n", "\n", "^ \"Why the A.I. euphoria is doomed to fail\". VentureBeat. 2016-09-18. Retrieved 2018-08-20.\n", "\n", "^ \"9 Reasons why your machine learning project will fail\". www.kdnuggets.com. Retrieved 2018-08-20.\n", "\n", "^ \"Why Uber's self-driving car killed a pedestrian\". The Economist. Retrieved 2018-08-20.\n", "\n", "^ \"IBM's Watson recommended 'unsafe and incorrect' cancer treatments - STAT\". STAT. 2018-07-25. Retrieved 2018-08-21.\n", "\n", "^ Hernandez, Daniela; Greenwald, Ted (2018-08-11). \"IBM Has a Watson Dilemma\". Wall Street Journal. ISSN 0099-9660. Retrieved 2018-08-21.\n", "\n", "^ Garcia, Megan (2016). \"Racist in the Machine\". World Policy Journal. 33 (4): 111–117. doi:10.1215/07402775-3813015. ISSN 0740-2775.\n", "\n", "^ Caliskan, Aylin; Bryson, Joanna J.; Narayanan, Arvind (2017-04-14). \"Semantics derived automatically from language corpora contain human-like biases\". Science. 356 (6334): 183–186. arXiv:1608.07187. Bibcode:2017Sci...356..183C. doi:10.1126/science.aal4230. ISSN 0036-8075. PMID 28408601.\n", "\n", "^ 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, retrieved 2018-08-20\n", "\n", "^ Julia Angwin; Jeff Larson; Lauren Kirchner; Surya Mattu (2016-05-23). \"Machine Bias\". ProPublica. Retrieved 2018-08-20.\n", "\n", "^ \"Opinion | When an Algorithm Helps Send You to Prison\". New York Times. Retrieved 2018-08-20.\n", "\n", "^ \"Google apologises for racist blunder\". BBC News. 2015-07-01. Retrieved 2018-08-20.\n", "\n", "^ \"Google 'fixed' its racist algorithm by removing gorillas from its image-labeling tech\". The Verge. Retrieved 2018-08-20.\n", "\n", "^ \"Opinion | Artificial Intelligence's White Guy Problem\". New York Times. Retrieved 2018-08-20.\n", "\n", "^ Metz, Rachel. \"Why Microsoft's teen chatbot, Tay, said lots of awful things online\". MIT Technology Review. Retrieved 2018-08-20.\n", "\n", "^ Simonite, Tom. \"Microsoft says its racist chatbot illustrates how AI isn't adaptable enough to help most businesses\". MIT Technology Review. Retrieved 2018-08-20.\n", "\n", "^ Hempel, Jessi (2018-11-13). \"Fei-Fei Li's Quest to Make Machines Better for Humanity\". Wired. ISSN 1059-1028. Retrieved 2019-02-17.\n", "\n", "^ Kohavi, Ron (1995). \"A Study of Cross-Validation and Bootstrap for Accuracy Estimation and Model Selection\" (PDF). International Joint Conference on Artificial Intelligence.\n", "\n", "^ Pontius, Robert Gilmore; Si, Kangping (2014). \"The total operating characteristic to measure diagnostic ability for multiple thresholds\". International Journal of Geographical Information Science. 28 (3): 570–583. doi:10.1080/13658816.2013.862623.\n", "\n", "^ Bostrom, Nick (2011). \"The Ethics of Artificial Intelligence\" (PDF). Retrieved 11 April 2016.\n", "\n", "^ Edionwe, Tolulope. \"The fight against racist algorithms\". The Outline. Retrieved 17 November 2017.\n", "\n", "^ Jeffries, Adrianne. \"Machine learning is racist because the internet is racist\". The Outline. Retrieved 17 November 2017.\n", "\n", "^ Prates, Marcelo O. R. (11 Mar 2019). \"Assessing Gender Bias in Machine Translation -- A Case Study with Google Translate\". arXiv:1809.02208 [cs.CY].\n", "\n", "^ Narayanan, Arvind (August 24, 2016). \"Language necessarily contains human biases, and so will machines trained on language corpora\". Freedom to Tinker.\n", "\n", "^ Char, D. S.; Shah, N. H.; Magnus, D. (2018). \"Implementing Machine Learning in Health Care—Addressing Ethical Challenges\". New England Journal of Medicine. 378 (11): 981–983. doi:10.1056/nejmp1714229. PMC 5962261. PMID 29539284.\n", "\n", "Nils J. Nilsson, Introduction to Machine Learning.\n", "Trevor Hastie, Robert Tibshirani and Jerome H. Friedman (2001). The Elements of Statistical Learning, Springer. ISBN 0-387-95284-5.\n", "Pedro Domingos (September 2015), The Master Algorithm, Basic Books, ISBN 978-0-465-06570-7\n", "Ian H. Witten and Eibe Frank (2011). Data Mining: Practical machine learning tools and techniques Morgan Kaufmann, 664pp., ISBN 978-0-12-374856-0.\n", "Ethem Alpaydin (2004). Introduction to Machine Learning, MIT Press, ISBN 978-0-262-01243-0.\n", "David J. C. MacKay. Information Theory, Inference, and Learning Algorithms Cambridge: Cambridge University Press, 2003. ISBN 0-521-64298-1\n", "Richard O. Duda, Peter E. Hart, David G. Stork (2001) Pattern classification (2nd edition), Wiley, New York, ISBN 0-471-05669-3.\n", "Christopher Bishop (1995). Neural Networks for Pattern Recognition, Oxford University Press. ISBN 0-19-853864-2.\n", "Stuart Russell & Peter Norvig, (2009). Artificial Intelligence – A Modern Approach. Pearson, ISBN 9789332543515.\n", "Ray Solomonoff, An Inductive Inference Machine, IRE Convention Record, Section on Information Theory, Part 2, pp., 56–62, 1957.\n", "Ray Solomonoff, An Inductive Inference Machine A privately circulated report from the 1956 Dartmouth Summer Research Conference on AI.\n", "\n", "vteComputer scienceNote: This template roughly follows the 2012 ACM Computing Classification System.Hardware\n", "Printed circuit board\n", "Peripheral\n", "Integrated circuit\n", "Very Large Scale Integration\n", "Systems on Chip (SoCs)\n", "Energy consumption (Green computing)\n", "Electronic design automation\n", "Hardware acceleration\n", "Computer systemsorganization\n", "Computer architecture\n", "Embedded system\n", "Real-time computing\n", "Dependability\n", "Networks\n", "Network architecture\n", "Network protocol\n", "Network components\n", "Network scheduler\n", "Network performance evaluation\n", "Network service\n", "Software organization\n", "Interpreter\n", "Middleware\n", "Virtual machine\n", "Operating system\n", "Software quality\n", "Software notationsand tools\n", "Programming paradigm\n", "Programming language\n", "Compiler\n", "Domain-specific language\n", "Modeling language\n", "Software framework\n", "Integrated development environment\n", "Software configuration management\n", "Software library\n", "Software repository\n", "Software development\n", "Software development process\n", "Requirements analysis\n", "Software design\n", "Software construction\n", "Software deployment\n", "Software maintenance\n", "Programming team\n", "Open-source model\n", "Theory of computation\n", "Model of computation\n", "Formal language\n", "Automata theory\n", "Computability theory\n", "Computational complexity theory\n", "Logic\n", "Semantics\n", "Algorithms\n", "Algorithm design\n", "Analysis of algorithms\n", "Algorithmic efficiency\n", "Randomized algorithm\n", "Computational geometry\n", "Mathematicsof computing\n", "Discrete mathematics\n", "Probability\n", "Statistics\n", "Mathematical software\n", "Information theory\n", "Mathematical analysis\n", "Numerical analysis\n", "Informationsystems\n", "Database management system\n", "Information storage systems\n", "Enterprise information system\n", "Social information systems\n", "Geographic information system\n", "Decision support system\n", "Process control system\n", "Multimedia information system\n", "Data mining\n", "Digital library\n", "Computing platform\n", "Digital marketing\n", "World Wide Web\n", "Information retrieval\n", "Security\n", "Cryptography\n", "Formal methods\n", "Security services\n", "Intrusion detection system\n", "Hardware security\n", "Network security\n", "Information security\n", "Application security\n", "Human–computerinteraction\n", "Interaction design\n", "Social computing\n", "Ubiquitous computing\n", "Visualization\n", "Accessibility\n", "Concurrency\n", "Concurrent computing\n", "Parallel computing\n", "Distributed computing\n", "Multithreading\n", "Multiprocessing\n", "Artificialintelligence\n", "Natural language processing\n", "Knowledge representation and reasoning\n", "Computer vision\n", "Automated planning and scheduling\n", "Search methodology\n", "Control method\n", "Philosophy of artificial intelligence\n", "Distributed artificial intelligence\n", "Machine learning\n", "Supervised learning\n", "Unsupervised learning\n", "Reinforcement learning\n", "Multi-task learning\n", "Cross-validation\n", "Graphics\n", "Animation\n", "Rendering\n", "Image manipulation\n", "Graphics processing unit\n", "Mixed reality\n", "Virtual reality\n", "Image compression\n", "Solid modeling\n", "Appliedcomputing\n", "E-commerce\n", "Enterprise software\n", "Computational mathematics\n", "Computational physics\n", "Computational chemistry\n", "Computational biology\n", "Computational social science\n", "Computational engineering\n", "Computational healthcare\n", "Digital art\n", "Electronic publishing\n", "Cyberwarfare\n", "Electronic voting\n", "Video games\n", "Word processing\n", "Operations research\n", "Educational technology\n", "Document management\n", "\n", " Book\n", " Category\n", " Outline\n", "WikiProject\n", " Commons\n", "\n", "vte\n", "\n", "Computer science\n", "\n", "Note: This template roughly follows the 2012 ACM Computing Classification System.\n", "\n", "Printed circuit board\n", "Peripheral\n", "Integrated circuit\n", "Very Large Scale Integration\n", "Systems on Chip (SoCs)\n", "Energy consumption (Green computing)\n", "Electronic design automation\n", "Hardware acceleration\n", "\n", "Computer architecture\n", "Embedded system\n", "Real-time computing\n", "Dependability\n", "\n", "Network architecture\n", "Network protocol\n", "Network components\n", "Network scheduler\n", "Network performance evaluation\n", "Network service\n", "\n", "Interpreter\n", "Middleware\n", "Virtual machine\n", "Operating system\n", "Software quality\n", "\n", "Programming paradigm\n", "Programming language\n", "Compiler\n", "Domain-specific language\n", "Modeling language\n", "Software framework\n", "Integrated development environment\n", "Software configuration management\n", "Software library\n", "Software repository\n", "\n", "Software development process\n", "Requirements analysis\n", "Software design\n", "Software construction\n", "Software deployment\n", "Software maintenance\n", "Programming team\n", "Open-source model\n", "\n", "Model of computation\n", "Formal language\n", "Automata theory\n", "Computability theory\n", "Computational complexity theory\n", "Logic\n", "Semantics\n", "\n", "Algorithm design\n", "Analysis of algorithms\n", "Algorithmic efficiency\n", "Randomized algorithm\n", "Computational geometry\n", "\n", "Discrete mathematics\n", "Probability\n", "Statistics\n", "Mathematical software\n", "Information theory\n", "Mathematical analysis\n", "Numerical analysis\n", "\n", "Database management system\n", "Information storage systems\n", "Enterprise information system\n", "Social information systems\n", "Geographic information system\n", "Decision support system\n", "Process control system\n", "Multimedia information system\n", "Data mining\n", "Digital library\n", "Computing platform\n", "Digital marketing\n", "World Wide Web\n", "Information retrieval\n", "\n", "Cryptography\n", "Formal methods\n", "Security services\n", "Intrusion detection system\n", "Hardware security\n", "Network security\n", "Information security\n", "Application security\n", "\n", "Interaction design\n", "Social computing\n", "Ubiquitous computing\n", "Visualization\n", "Accessibility\n", "\n", "Concurrent computing\n", "Parallel computing\n", "Distributed computing\n", "Multithreading\n", "Multiprocessing\n", "\n", "Natural language processing\n", "Knowledge representation and reasoning\n", "Computer vision\n", "Automated planning and scheduling\n", "Search methodology\n", "Control method\n", "Philosophy of artificial intelligence\n", "Distributed artificial intelligence\n", "\n", "Supervised learning\n", "Unsupervised learning\n", "Reinforcement learning\n", "Multi-task learning\n", "Cross-validation\n", "\n", "Animation\n", "Rendering\n", "Image manipulation\n", "Graphics processing unit\n", "Mixed reality\n", "Virtual reality\n", "Image compression\n", "Solid modeling\n", "\n", "E-commerce\n", "Enterprise software\n", "Computational mathematics\n", "Computational physics\n", "Computational chemistry\n", "Computational biology\n", "Computational social science\n", "Computational engineering\n", "Computational healthcare\n", "Digital art\n", "Electronic publishing\n", "Cyberwarfare\n", "Electronic voting\n", "Video games\n", "Word processing\n", "Operations research\n", "Educational technology\n", "Document management\n", "\n", "Book\n", " Category\n", " Outline\n", "WikiProject\n", " Commons\n", "\n", "Retrieved from \"https://en.wikipedia.org/w/index.php?title=Machine_learning&oldid=936385536\"\n", "\n", "Categories: Machine learningCyberneticsLearningHidden categories: Articles with short descriptionArticles with long short descriptionWikipedia articles needing clarification from November 2018Commons category link from Wikidata\n", "\n", "Categories: Machine learningCyberneticsLearning\n", "\n", "Hidden categories: Articles with short descriptionArticles with long short descriptionWikipedia articles needing clarification from November 2018Commons category link from Wikidata\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "Navigation menu\n", "\n", "\n", "Personal tools\n", "\n", "Not logged in\n", "TalkContributionsCreate accountLog in\n", "\n", "\n", "\n", "\n", "Namespaces\n", "\n", "ArticleTalk\n", "\n", "\n", "\n", "\n", "\n", "Variants\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "Views\n", "\n", "ReadEditView history\n", "\n", "\n", "\n", "\n", "More\n", "\n", "\n", "\n", "\n", "\n", "Search\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "Navigation\n", "\n", "\n", "Main pageContentsFeatured contentCurrent eventsRandom articleDonate to WikipediaWikipedia store \n", "\n", "\n", "\n", "Interaction\n", "\n", "\n", "HelpAbout WikipediaCommunity portalRecent changesContact page \n", "\n", "\n", "\n", "Tools\n", "\n", "\n", "What links hereRelated changesUpload fileSpecial pagesPermanent linkPage informationWikidata itemCite this page \n", "\n", "\n", "\n", "In other projects\n", "\n", "\n", "Wikimedia CommonsWikiversity \n", "\n", "\n", "\n", "Print/export\n", "\n", "\n", "Create a bookDownload as PDFPrintable version \n", "\n", "\n", "\n", "Languages\n", "\n", "\n", "العربيةঅসমীয়াAzərbaycancaবাংলাBân-lâm-gúБългарскиCatalàČeštinaCymraegDanskDeutschEestiΕλληνικάEspañolEuskaraفارسیFrançais한국어Հայերենहिन्दीBahasa IndonesiaÍslenskaItalianoעבריתಕನ್ನಡLatviešuLietuviųMagyarМакедонскиമലയാളംमराठीBahasa MelayuМонголNederlands日本語Norsk bokmålNorsk nynorskOccitanଓଡ଼ିଆPolskiPortuguêsRomânăРусскийᱥᱟᱱᱛᱟᱲᱤShqipSimple EnglishSlovenščinaСрпски / srpskiSrpskohrvatski / српскохрватскиSuomiSvenskaTagalogதமிழ்తెలుగుไทยTürkçeУкраїнськаئۇيغۇرچە / UyghurcheTiếng ViệtVõro粵語中文 \n", "Edit links\n", "\n", "Personal tools\n", "\n", "Not logged in\n", "TalkContributionsCreate accountLog in\n", "\n", "\n", "\n", "\n", "Namespaces\n", "\n", "ArticleTalk\n", "\n", "\n", "\n", "\n", "\n", "Variants\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "Views\n", "\n", "ReadEditView history\n", "\n", "\n", "\n", "\n", "More\n", "\n", "\n", "\n", "\n", "\n", "Search\n", "\n", "Personal tools\n", "\n", "Not logged in\n", "TalkContributionsCreate accountLog in\n", "\n", "Namespaces\n", "\n", "ArticleTalk\n", "\n", "\n", "\n", "\n", "\n", "Variants\n", "\n", "Namespaces\n", "\n", "ArticleTalk\n", "\n", "Variants\n", "\n", "Views\n", "\n", "ReadEditView history\n", "\n", "\n", "\n", "\n", "More\n", "\n", "\n", "\n", "\n", "\n", "Search\n", "\n", "Views\n", "\n", "ReadEditView history\n", "\n", "More\n", "\n", "Search\n", "\n", "\n", "\n", "Navigation\n", "\n", "\n", "Main pageContentsFeatured contentCurrent eventsRandom articleDonate to WikipediaWikipedia store \n", "\n", "\n", "\n", "Interaction\n", "\n", "\n", "HelpAbout WikipediaCommunity portalRecent changesContact page \n", "\n", "\n", "\n", "Tools\n", "\n", "\n", "What links hereRelated changesUpload fileSpecial pagesPermanent linkPage informationWikidata itemCite this page \n", "\n", "\n", "\n", "In other projects\n", "\n", "\n", "Wikimedia CommonsWikiversity \n", "\n", "\n", "\n", "Print/export\n", "\n", "\n", "Create a bookDownload as PDFPrintable version \n", "\n", "\n", "\n", "Languages\n", "\n", "\n", "العربيةঅসমীয়াAzərbaycancaবাংলাBân-lâm-gúБългарскиCatalàČeštinaCymraegDanskDeutschEestiΕλληνικάEspañolEuskaraفارسیFrançais한국어Հայերենहिन्दीBahasa IndonesiaÍslenskaItalianoעבריתಕನ್ನಡLatviešuLietuviųMagyarМакедонскиമലയാളംमराठीBahasa MelayuМонголNederlands日本語Norsk bokmålNorsk nynorskOccitanଓଡ଼ିଆPolskiPortuguêsRomânăРусскийᱥᱟᱱᱛᱟᱲᱤShqipSimple EnglishSlovenščinaСрпски / srpskiSrpskohrvatski / српскохрватскиSuomiSvenskaTagalogதமிழ்తెలుగుไทยTürkçeУкраїнськаئۇيغۇرچە / UyghurcheTiếng ViệtVõro粵語中文 \n", "Edit links\n", "\n", "\n", "\n", "Navigation\n", "\n", "\n", "Main pageContentsFeatured contentCurrent eventsRandom articleDonate to WikipediaWikipedia store\n", "\n", "Main pageContentsFeatured contentCurrent eventsRandom articleDonate to WikipediaWikipedia store\n", "\n", "Interaction\n", "\n", "\n", "HelpAbout WikipediaCommunity portalRecent changesContact page\n", "\n", "HelpAbout WikipediaCommunity portalRecent changesContact page\n", "\n", "Tools\n", "\n", "\n", "What links hereRelated changesUpload fileSpecial pagesPermanent linkPage informationWikidata itemCite this page\n", "\n", "What links hereRelated changesUpload fileSpecial pagesPermanent linkPage informationWikidata itemCite this page\n", "\n", "In other projects\n", "\n", "\n", "Wikimedia CommonsWikiversity\n", "\n", "Wikimedia CommonsWikiversity\n", "\n", "Print/export\n", "\n", "\n", "Create a bookDownload as PDFPrintable version\n", "\n", "Create a bookDownload as PDFPrintable version\n", "\n", "Languages\n", "\n", "\n", "العربيةঅসমীয়াAzərbaycancaবাংলাBân-lâm-gúБългарскиCatalàČeštinaCymraegDanskDeutschEestiΕλληνικάEspañolEuskaraفارسیFrançais한국어Հայերենहिन्दीBahasa IndonesiaÍslenskaItalianoעבריתಕನ್ನಡLatviešuLietuviųMagyarМакедонскиമലയാളംमराठीBahasa MelayuМонголNederlands日本語Norsk bokmålNorsk nynorskOccitanଓଡ଼ିଆPolskiPortuguêsRomânăРусскийᱥᱟᱱᱛᱟᱲᱤShqipSimple EnglishSlovenščinaСрпски / srpskiSrpskohrvatski / српскохрватскиSuomiSvenskaTagalogதமிழ்తెలుగుไทยTürkçeУкраїнськаئۇيغۇرچە / UyghurcheTiếng ViệtVõro粵語中文 \n", "Edit links\n", "\n", "العربيةঅসমীয়াAzərbaycancaবাংলাBân-lâm-gúБългарскиCatalàČeštinaCymraegDanskDeutschEestiΕλληνικάEspañolEuskaraفارسیFrançais한국어Հայերենहिन्दीBahasa IndonesiaÍslenskaItalianoעבריתಕನ್ನಡLatviešuLietuviųMagyarМакедонскиമലയാളംमराठीBahasa MelayuМонголNederlands日本語Norsk bokmålNorsk nynorskOccitanଓଡ଼ିଆPolskiPortuguêsRomânăРусскийᱥᱟᱱᱛᱟᱲᱤShqipSimple EnglishSlovenščinaСрпски / srpskiSrpskohrvatski / српскохрватскиSuomiSvenskaTagalogதமிழ்తెలుగుไทยTürkçeУкраїнськаئۇيغۇرچە / UyghurcheTiếng ViệtVõro粵語中文 \n", "Edit links\n", "\n", "Edit links\n", "\n", "This page was last edited on 18 January 2020, at 14:31 (UTC).\n", "Text is available under the Creative Commons Attribution-ShareAlike License;\n", "additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.\n", "\n", "\n", "Privacy policy\n", "About Wikipedia\n", "Disclaimers\n", "Contact Wikipedia\n", "Developers\n", "Statistics\n", "Cookie statement\n", "Mobile view\n", "\n", "\n", "\n", "\n" ] } ], "source": [ "# 모든