Machine Learning
Machine Learning
ability to "learn" (e.g., progressively improve performance on a specific task) with data, without being
explicitly programmed.
• Supervised learning: The computer is presented with example inputs and their desired outputs, given by a
"teacher", and the goal is to learn a general rule that maps inputs to outputs. As special cases, the input
signal can be only partially available, or restricted to special feedback:
• Semi-supervised learning: the computer is given only an incomplete training signal: a training set with
some (often many) of the target outputs missing.
• Active learning: the computer can only obtain training labels for a limited set of instances (based on a
budget), and also has to optimize its choice of objects to acquire labels for. When used interactively,
these can be presented to the user for labeling.
• Reinforcement learning: training data (in form of rewards and punishments) is given only as feedback
to the program's actions in a dynamic environment, such as driving a vehicle or playing a game against
an opponent.
• Unsupervised learning: No labels are given to the learning algorithm, leaving it on its own to find structure
in its input. Unsupervised learning can be a goal in itself (discovering hidden patterns in data) or a means
towards an end (feature learning).
Applications
• Agriculture
• Automated theorem proving
• Adaptive websites
• Affective computing
• Bioinformatics
• Brain–machine interfaces
• Cheminformatics
• Classifying DNA sequences
• Computational anatomy
• Computer Networks
• Telecommunication
• Computer vision, including object recognition
• Detecting credit-card fraud
• General game playing
• Information retrieval
• Internet fraud detection
• Linguistics
• Marketing
• Machine learning control
• Machine perception
• Medical diagnosis
• Economics
• Insurance
• Natural language processing
• Natural language understanding
• Optimization and metaheuristic
• Online advertising
• Recommender systems
• Robot locomotion
• Search engines
• Sentiment analysis (or opinion mining)
• Sequence mining
• Software engineering
• Speech and handwriting recognition
• Financial market analysis
• Structural health monitoring
• Syntactic pattern recognition
• Time series forecasting
• User behavior analytics
• Translation
Software
Software suites containing a variety of machine learning algorithms include the following :
Free and open-source software
• CNTK
• Deeplearning4j
• ELKI
• H2O
• Mahout
• Mallet
• MLPACK
• MXNet
• OpenNN
• Orange
• scikit-learn
• Shogun
• Spark MLlib
• TensorFlow
• Torch / PyTorch
• Weka / MOA
• Yooreeka
Proprietary software with free and open-source editions
• KNIME
• RapidMiner
Proprietary software