What is machine learning?

  • What is machine learning ?
  • What does machine learning code do?
  • When we say that the machine finds out, it modifies the code or changes the history (database) that will contain the code experience for a given set of inputs?
+71
definition machine-learning
Apr 12 2018-10-12T00:
source share
9 answers

What is machine learning?

In essence, it is a method of teaching computers to make and improve forecasts or behavior based on some data. What is this “data"? Well, that depends entirely on the problem. This may be indications from the sensors of the robot when it learns to walk, or the correct output of the program for a specific input.

Another way to think about mechanical learning is that it is "pattern recognition" - the act of teaching a program to respond or recognize patterns.

What does machine learning code do?

Depending on the type of machine learning you are talking about. Machine learning is a huge field, with hundreds of different algorithms to solve many different problems - see Wikipedia for more information; in particular, see Types of Algorithms .

When we say that a machine finds out, does it modify the code itself or changes the history (database), which will contain the code experience for a given set of inputs?

And again it depends.

One example of modifiable code: Genetic programming , where you essentially develop a program to accomplish a task (of course, the program doesn't change itself, but it modifies another computer program).

Neural networks , on the other hand, automatically change their parameters in response to prepared stimuli and the expected response. This allows them to create many models of behavior (theoretically they can produce any behavior, because they can bring any function closer to arbitrary accuracy, given enough time).




It should be noted that the use of the term “database” means that machine learning algorithms work by “storing” information, events, or events. This is not a necessary (or even often!) Case.

Neural networks, which I already mentioned, support only the current “state” of approximation, which is updated as it is trained. Instead of remembering what happened and how to react to it, neural networks create a kind of “model” of their “world”. The model tells them how to respond to certain inputs, even if the inputs are something that he has never seen before.

This last ability - the ability to respond to inputs that have never been seen before - is one of the basic principles of many machine learning algorithms. Imagine that you are trying to teach a computer driver to navigate traffic roads. Using the "database" metaphor, you must teach the computer exactly what to do in millions of possible situations. An effective machine learning algorithm (hopefully!) Can recognize the similarities between different states and respond to them in a similar way.

The similarity between the states can be anything - even those things that we could consider “ordinary” can really outshine the computer! For example, let's say that the computer driver found out that when the car in front of him slowed down, he had to slow down. For a person, replacing a car with a motorcycle does not change anything - we recognize that a motorcycle is also a vehicle. For a machine learning algorithm, this can really be surprisingly difficult! The database should store information separately about when the car is in front and where the motorcycle is in front. On the other hand, the machine learning algorithm “learned” from the example of a car and could automatically generalize the example of a motorcycle.

+113
Apr 12 '10 at 7:19
source share

Machine learning is the field of computer science, probability theory and optimization theory, which allows solving complex problems for which a logical / procedural approach would be impossible or feasible.

There are several different categories of machine learning, including (but not limited to):

  • Supervised Learning
  • reinforcement learning

Supervisory training
In supervised learning, you have a very complex function (matching) from inputs to outputs, you have many examples of input / output pairs, but you do not know what this complex function is. The controlled learning algorithm allows, given the large data set of input / output pairs, to predict the output value for some new input value that you may not have seen before. The main method is that you break the data set into a training set and a test set. You have a model with an associated error function that you are trying to minimize compared to a set of training materials, and then make sure that your solution works on a test set. Once you repeat this using various machine learning algorithms and / or parameters, until the model works well enough on the test suite, you can try to use the result on new inputs. Please note that in this case the program does not change, only the model (data) changes. Although theoretically it would be possible to get another program, but this is not done in practice, as far as I know. An example of supervised learning would be the number recognition system used by the post office, where it matches pixels to tags in set 0 ... 9, using a large set of image numbers that were manually marked as being in 0 ... 9.

Strengthening Learning
In reinforcement training, the program is responsible for making decisions, and it periodically receives some kind of reward / utility for its actions. However, unlike the observed case of training, the results are not immediate; an algorithm can prescribe a large sequence of actions and receive only feedback at the very end. In reinforcement training, the goal is to create a good model, so that the algorithm will generate a sequence of decisions that lead to the highest long-term utility / reward. A good example of gain training is teaching the robot how to move, giving a negative penalty when its shock sensor detects that it has stumbled upon an object. If correctly encoded, the robot can ultimately correct the rangefinder sensor data with its bumper sensor data and directions that are sent to the wheels, and ultimately choose a form of navigation that will cause it to not collide with objects.

Additional Information
If you are interested in learning more, I highly recommend that you read Christopher M. Bishop's Pattern Recognition and Machine Learning or take a machine learning course. You may also be interested in free lectures from the CIS 520: Machine Learning at Penn .

+18
Apr 12 2018-10-12T00:
source share
  • Machine learning is a scientific discipline that designs and develops algorithms that allow computers to develop behavior based on empirical data, such as sensor data or databases. More on Wikipedia

  • Machine science code records "facts" or approximations in some kind of storage, and with the help of algorithms it calculates different probabilities.

  • The code will not be changed when the machine finds out, only the database that "he knows".

+9
Apr 12 '10 at 7:01
source share

Machine learning is a methodology for creating a model based on sample data and using the model for forecasting or strategy. This applies to artificial intelligence.

+8
Apr 12 2018-10-12T00:
source share

Machine science is simply a generic term for defining a variety of learning algorithms that provide quasi-educational learning from examples (unmarked / labeled). Actual accuracy / error is completely determined by the quality of the training / testing data that you provide to your training algorithm. This can be measured using convergence rate. The reason you give examples is because you want the learning algorithm of your choice to be an informative way of generalizing. Algorithms can be classified into two main areas of supervised learning (classification) and uncontrolled learning methods (clustering). It is imperative that you make an informed decision about how you plan to separate your training and test data sets, as well as the quality that you provide to your learning algorithm. When you provide data sets, you should also be aware of things such as the setting and maintaining a healthy bias in your examples. The algorithm then basically teaches you to write by writing on the basis of the generalization that it extracts from the data that you provided for both training and testing in the process, you try to get your learning algorithm to create new examples based on your target training. There is very little informative guidance in clustering, which the algorithm basically tries to produce through measures of patterns between data to build related sets of clusters, for example, kmeans / knearest neighbor.

some good books: Introduction to ML (Nilsson / Stanford), Gaussian process for ML, Introduction to ML (Alpaydin), Algorithms for information output and training (a very useful book), Machine Learning (Mitchell), Pattern recognition and machine learning (standard book) ML in Edinburgh and various Unis, but relatively difficult readings with mathematics), Data Mining and practical machine learning with Weka (working through theory using weka and practice in Java)

Strengthening Learning is a free online book that you can read: http://www.cs.ualberta.ca/~sutton/book/ebook/the-book.html

IR, IE, Recommendations, and Text / Data / Web Mining generally use many machine learning principles. You can also use metaheuristic / global optimization methods to further automate learning processes. for example, apply an evolutionary method such as GA (genetic algorithm) to optimize a neural network approach (which may use some learning algorithm). You can approach it exclusively in the form of a probabilistic approach to computer training, for example, Bayesian learning. Most of these algorithms make heavy use of statistics. The concepts of convergence and generalization are important for many of these learning algorithms.

+8
May 30 '11 at 8:34 a.m.
source share

Machine learning is a study in the field of computational science about creating algorithms that can classify information that they have not seen before by studying learning models using such information. In this sense, there are all kinds of "disciples." An example is neural networks, Bayesian networks, decision trees, k-clustering algorithms, hidden Markov models, and reference vector machines.

Based on the student, each of them learns differently. Some students create human-readable frameworks (for example, decision trees), and some tend to be unused (for example, neural networks).

Pupils are essentially data, so they retain their state because the data will be reused later. They are not self-modifying as such, at least in general.

+7
Apr 12 '10 at 7:17
source share

I think one of the coolest machine learning definitions I've read is from this book by Tom Mitchell. Easy to remember and intuitive.

It is said that a computer program learns from experience E with respect to a certain class of problems T and a performance indicator P, if its productivity for tasks in T, measured by P, improves with experience E

+6
Sep 11 '11 at 7:26
source share
  • Shamelessly torn from Wikipedia: machine learning is a scientific discipline that designs and develops algorithms that allow computers to develop behavior based on empirical data, such as sensor data or databases.

  • Simply put, machine learning code performs the task of machine learning. This may be due to the interpretation of sensor data by the genetic algorithm.

  • I would say it depends. No, changing the code is not normal, but not beyond the scope of the feature. I would also not say that machine learning always changes history. Sometimes we don’t have a story to build. Once we just want to respond to the environment, but we don’t really learn from our past experiences.

Basically, machine learning is a very wide open discipline that contains many methods and algorithms that make it impossible for 1 answer to your third question.

+5
Apr 12 2018-10-12T00:
source share

Machine learning is a term that is taken from the real world of a person and applies to something that is impossible to learn - a machine.

To add to the other answers, machine learning will not (as a rule) change the code, but it can change its execution path and decision based on previous data or new collected data and, therefore, the “learning” effect.

There are many ways to “teach” a machine - you give weights for many parameters of the algorithm, and then allow the machine for many cases, each time you give it feedback about the answer, and the machine adjusts the scales depending on how close the machine’s response was to your answer either in accordance with the assessment you gave him, or in accordance with some algorithms for testing results.

This is one way of learning, and there are many more ...

+4
Apr 12 '10 at 7:10
source share



All Articles