Discussion in 'General Artificial Intelligence Discussions' started by blob, Jul 29, 2006.
How does ANN differ from Genetic Algorithms
Both attempt to produce coefficients for attributes about stocks which, this will create a group of stocks which should gain, and a group of stocks which should drop. Both are in the area of Artificial Intelligence and have a counterpart in nature. Computationally, they're quite different.
Genetic algorithms mimic evolution. They start with a number of instances of trial coefficients and apply them to a population of observations having known results. The most accurate instances (stronger) are then used to produce the next "generation" of instances, by mimicking natural mutation patterns some of these coefficients vary from the parent generation. Those instances that don't correlate well (weaker) don't participate in subsequent generations. The theory is that "natural selection" will converge on the best solution to the problem.
An Artificial Neural Network (ANN) takes a more direct computational approach. It is patterned like a group of neurons in a living nervous system. The researcher sets up a "network topology", which determines how many neurons there will be and how will they be interconnected. There can be several layers of "neurons". The coefficients are called weights and apply to the connections between the "neurons". Somewhat like linear programming, the software adjusts the weights with each epoch, attempting to minimize the error between predicted and actual, the weights can also be applied to GA.
Neural Networks, Genetic Algorithms: Compare and Contrast
Neural networks and genetic algorithms ("GA"s) perform fundamentally different functions.
By far, the most common neural networks are used for modeling, meaning that they are trained to mimick some process by observing examples of past behavior and adapting output to match. Generally, this process involves: 1. the analyst collecting and organizing a series of input-output pairs of observations from the past, 2. these input-output examples are fed to the neural networks, 3. some learning algorithm adjusts the neural network to predict the output from the input.
As an example, consider a medical diagnostic problem. We might have a set of past case histories, which include various medical measurements or observations, such as blood pressure, blood sugar level, patient temperature and the outcome, "sick" vs. "well". By presenting many such patient histories to a neural network, it (hopefully!) will come to be able to predict the patient's health, given only the input data.
Genetic algorithms, on the other hand, are optimizers, meaning that they adjust parameters of candidate solutions to problems in an effort to optimize (minimize or maximize) some feedback measure.
While the parameters that a GA manipulates might be coefficients in a model, and the feedback measure might be an error metric, GAs can optimize all sorts of other things as well. For instance, the literature records a number of instances in which GAs have been used to optimize physical or mechanical designs. In designing a roof, for example, the GA might adjust the number, size and material of structural members like rafters and joists, and the measure being optimize might be roof strength (as calculated via a physical simulation).
In addition to what's already been said, I believe that GA systems typically learn through a "feed-forward" process whereas Neural Nets use something called "Back-propagation". These basically refer to the direction of the flow of information so in other words GA's learn through mutation and ANN's learn by experience.
wow, this really is very informative forum about AI. Has anyone tried to enhance the performance of neural network by integrating GA into it?
Yes, with mixed results. Direct application of genetic algorithms to the training of neural networks can work, but most neural architectures involve features which can make blind searching for optimal parameters difficult.
I have built special genetic algorithms for feature selection with great success. Though most of my work along these lines has been with logistic regression, there is no reason that genetic algorithms could not be used to select features for any other learning algorithm.
When you say that GA systems learn through a "feed-forward" process you mean that they can predict for example the price of the stock? How do they do it?
I want to develop a software that will optimize your portfolio. For a specific budget it will select a number of stocks and bonds. To find which portfolio will have the maximum possible return and the lowest risk it should predict the price of each stock? And how do I measure the risk?
Artificial Neural Networks are powerful tools to simulate complex processes under the condition that input and output data sets are available. In ydrology Artificial Neural Networks (ANNs) prove to be good alternatives for traditional modelling approaches.
Genetic Algorithms are one of the most successful optimisation techniques of a new generation of soft computing which includes fuzzy-logic, ANN and support-vector machines. From biological sciences, evolutionary processes have been translated to efficient search and design strategies. Genetic Algorithms use these strategies to find an optimum solution for any multi-dimensional problem.
Separate names with a comma.