Artificial Neural Networks: verschil tussen versies

Uit Wina Examenwiki
Naar navigatie springen Naar zoeken springen
Tias (overleg | bijdragen)
Vragen: nuancering
Spid3r (overleg | bijdragen)
Geen bewerkingssamenvatting
Regel 5: Regel 5:
We hebben 50 voorbeeldvragen gekregen waaruit we er 2 gesteld gaan krijgen.
We hebben 50 voorbeeldvragen gekregen waaruit we er 2 gesteld gaan krijgen.


=== Lecture 1 ===
=== Lecture 1 ===
==== Explain differences between digital computers, neural networks and the human brain. ====
==== Explain differences between digital computers, neural networks and the human brain. ====
====  Explain the difference between learning, memorization and generalization. ====
Literally in text, p 3-4
====  Explain the operating principle of the neuron and the perceptron and the adaptation of the weights ====
{| align=center border=1
==== In which areas is it useful to apply neural networks and where is it not useful? ====
| style="width:33%" | '''Digital Computer'''
| style="width:33%" | '''Artificial Neural Network'''
| style="width:33%" | '''Human Brain'''
|-
| Process bits as described by a program (software)
Correctness based on mathematical logic and Boolean Algebra
| Process patterns (examples in the data set).
Mathematical non-linear functions with several variables
| Process patterns
|-
| Process data sequentially (in general) (disadvantage!)
| Processes data parallel (advantage!)
Neurons of one layer can process data in parallel
| Process data parallel (advantage!)
|-
| Needs software to operate properly
| Needs training to operate properly. Training is crucial.
| Needs training to operate properly
|-
| Rigidity, not-robust. Works with strict rules, algorithms, so a change in one single number an have major consequences (disadvantage!)
| Robust against errors & noise in data (advantage!)
Even error-correcting capabilities!
| Robust against errors & noise in data (advantage!)
|}
 
(See 4) for applicability of either ANN's or computers)
There seems to be a high analogy between neural networks and the human brain (biological neural networks). Watch your step though, this analogy is NOT strong enough to convince engineers and computer engineers f the correctness of an artificial neural network, when it's correct in a biological neural network. The correctness of an artificial network MUST follow from mathematical analysis of non-linear functions or dynamical systems and computer simulations. Another comparison between the ANN and the human brain:
 
{| align=center border=1
| style="width=50%" | '''Artificial Neural Network'''
| style="width=50%" | '''Human Brain'''
|-
| Low complexity (max ±100.000 neurons)
| High complexity (±100.000.000000 neurons)
|-
| High processing speed (30-200 million operations per second)
| Low processing speed (reaction time ±1-2ms)
|-
| Energetic efficiency poor: min. (10^-6) Joule / (operation / second)
| Energetic efficiency good: min. (10^-16) Joule / (operation / second)
|}
 
 
Conclusion: Artificial Neural Networks must stay modest with respect to the human brain.
* The gap between neurons won't be bridged in a few decennia.
* The energetic efficiency of ANN's is much worse than for the human brain.
* The only advantage of ANN's is their capability of fast processing.
 
==== Explain the difference between learning, memorization and generalization. ====
===== Learning =====
Learning is het automatisch proces om regels uit een dataset te ontdekken. Dit leren gebeurt door voorbeelden voor te schotelen aan de entiteit (een neuraal netwerk, het menselijke brein). In artificiële neurale netwerken wordt informatie opgeslagen in de gewichten van de connecties in het netwerk.
 
Er bestaat supervised en unsupervised learning. Bij supervised learning is er een "leraar" aanwezig die het leerproces begeleidt. Deze geeft feedback aan het netwerk over de beslissing die het neemt voor een bepaald voorbeeld. Unsupervised learning is een leerproces zonder aanwezigheid van een leraar.
 
Het grote voordeel van learning is dat er geen expert nodig is om de regels uit het probleemdomein af te leiden. Dit kan immers automatisch gebeuren door het leerproces van een neuraal netwerk.
 
===== Generalization =====
Generalization is de mogelijkheid van een netwerk om ongekende voorbeelden juist te classificeren. Dit zijn dus voorbeelden die niet voorkomen in een training set.
 
Een neuraal netwerk leert via een training set. De algemeenheid van de aangeleerde regels moet echter in het oog gehouden worden via een testset. Op een bepaald punt in het trainingsproces wordt enkel het resultaat voor de training set nog beter en verslechtert het resultaat voor de test set. Dit noemt men overtraining of overfitting en hierdoor gaat de algemeenheid van de aangeleerde regels achteruit. Daarom wordt een stopregel geïntroduceerd die ervoor zorgt dat het netwerk slechts wordt getraind zolang de fout op de test set nog vermindert.
 
De mogelijkheid tot veralgemening van een neuraal net zorgt ervoor dat er geen grote hoeveelheid inputdata moet worden opgeslagen. Een netwerk kan via training met een beperkt aantal voorbeelden toch goede beslissingen nemen wanneer een ongekend voorbeeld aan de invoer wordt gepresenteerd.
 
===== Memorization =====
Memorization is het "van buiten" leren van details in de training data. Een neuraal netwerk dat enkel memoriseert zal falen in het generaliseren en zal geen ongekende data kunnen verwerken.
 
==== Explain the operating principle of the neuron and the perceptron and the adaptation of the weights ====
===== Neuron =====
* 1 unit in neutraal netwerk
* input & output van een neuron verbindt deze met andere in het netwerk
* propageert signaal dat binnenkomt als het sterk genoeg is
* weighted input
* non-linear activation function F
 
===== perceptron =====
* simuleert 1 neuron
* propageert signaal indien som van het product van de weights groter is dan een treshold T
* output: de output van de non-linear activation function van de gewogen som van de inputs
 
Learning in ANN: het leren associëren van inputs met outputs aan de hand van het aanpassen van de verschillende weights van de inputs van de perceptrons (bv. via het back propagation algoritme)
 
De taak van het perceptron in het leerproces is dus het aanpassen van z'n weights om een zo goed mogelijke output te associëren met z'n inputs.
 
==== In which areas is it useful to apply neural networks and where is it not useful? ====
===== 3 gebieden waar ANN goed bruikbaar zijn (zie p. 21 & 22): =====
====== Klassificatie ======
* Voorbeelden uit grote dataset klassificeren ' data mining
* Vooral expert systems en pattern recognition
* Fraudedetectie, medische diagnoses, OCR, herkennen van getallen, letters, gezichten, spraakherkenning, speaker recognition, quality control
====== Neural prediction (lange en korte termijn) ======
* bv. Santa Fe
* voorspellen van bv. gasverbruik, aandelen, klantengedrag
* simulatie van een dynamisch model (space shuttle)
* MAAR: inzicht nodig en analyses en PC simulaties
====== Mechanische, chemische en biochemische processen optimaliseren en controleren ======
* traditioneel: lineaire controllers
* ANN niet lineair ' veel beter
* vb. pendulum
 
===== ANN is niét geschikt voor: =====
* vaste, exacte berekeningen
* systemen waarvan het gedrag perfect is vastgelegd (vb. Office)
 
Soms zijn alle fysische regels gekend en zou men exact kunnen werken, maar zijn de regels zo complex dat ANN toch geschikter is.
 
ANN kan vele taken, maar vraag niet waarom het iets doet! Moeilijk hetgeen het ANN geleerd heeft precies te extraheren door de omzetting naar numerische waarden waarmee het werkt: input, output en weights.


=== Lecture 2  ===
=== Lecture 2  ===

Versie van 8 okt 2005 13:39

Tips

Er worden ook bijvragen gesteld, zorg dat je dus iets meer weet dan het antwoord op de vraag zelf.

Vragen

We hebben 50 voorbeeldvragen gekregen waaruit we er 2 gesteld gaan krijgen.

Lecture 1

Explain differences between digital computers, neural networks and the human brain.

Literally in text, p 3-4

Digital Computer Artificial Neural Network Human Brain
Process bits as described by a program (software)

Correctness based on mathematical logic and Boolean Algebra

Process patterns (examples in the data set).

Mathematical non-linear functions with several variables

Process patterns
Process data sequentially (in general) (disadvantage!) Processes data parallel (advantage!)

Neurons of one layer can process data in parallel

Process data parallel (advantage!)
Needs software to operate properly Needs training to operate properly. Training is crucial. Needs training to operate properly
Rigidity, not-robust. Works with strict rules, algorithms, so a change in one single number an have major consequences (disadvantage!) Robust against errors & noise in data (advantage!)

Even error-correcting capabilities!

Robust against errors & noise in data (advantage!)

(See 4) for applicability of either ANN's or computers) There seems to be a high analogy between neural networks and the human brain (biological neural networks). Watch your step though, this analogy is NOT strong enough to convince engineers and computer engineers f the correctness of an artificial neural network, when it's correct in a biological neural network. The correctness of an artificial network MUST follow from mathematical analysis of non-linear functions or dynamical systems and computer simulations. Another comparison between the ANN and the human brain:

Artificial Neural Network Human Brain
Low complexity (max ±100.000 neurons) High complexity (±100.000.000000 neurons)
High processing speed (30-200 million operations per second) Low processing speed (reaction time ±1-2ms)
Energetic efficiency poor: min. (10^-6) Joule / (operation / second) Energetic efficiency good: min. (10^-16) Joule / (operation / second)


Conclusion: Artificial Neural Networks must stay modest with respect to the human brain.

  • The gap between neurons won't be bridged in a few decennia.
  • The energetic efficiency of ANN's is much worse than for the human brain.
  • The only advantage of ANN's is their capability of fast processing.

Explain the difference between learning, memorization and generalization.

Learning

Learning is het automatisch proces om regels uit een dataset te ontdekken. Dit leren gebeurt door voorbeelden voor te schotelen aan de entiteit (een neuraal netwerk, het menselijke brein). In artificiële neurale netwerken wordt informatie opgeslagen in de gewichten van de connecties in het netwerk.

Er bestaat supervised en unsupervised learning. Bij supervised learning is er een "leraar" aanwezig die het leerproces begeleidt. Deze geeft feedback aan het netwerk over de beslissing die het neemt voor een bepaald voorbeeld. Unsupervised learning is een leerproces zonder aanwezigheid van een leraar.

Het grote voordeel van learning is dat er geen expert nodig is om de regels uit het probleemdomein af te leiden. Dit kan immers automatisch gebeuren door het leerproces van een neuraal netwerk.

Generalization

Generalization is de mogelijkheid van een netwerk om ongekende voorbeelden juist te classificeren. Dit zijn dus voorbeelden die niet voorkomen in een training set.

Een neuraal netwerk leert via een training set. De algemeenheid van de aangeleerde regels moet echter in het oog gehouden worden via een testset. Op een bepaald punt in het trainingsproces wordt enkel het resultaat voor de training set nog beter en verslechtert het resultaat voor de test set. Dit noemt men overtraining of overfitting en hierdoor gaat de algemeenheid van de aangeleerde regels achteruit. Daarom wordt een stopregel geïntroduceerd die ervoor zorgt dat het netwerk slechts wordt getraind zolang de fout op de test set nog vermindert.

De mogelijkheid tot veralgemening van een neuraal net zorgt ervoor dat er geen grote hoeveelheid inputdata moet worden opgeslagen. Een netwerk kan via training met een beperkt aantal voorbeelden toch goede beslissingen nemen wanneer een ongekend voorbeeld aan de invoer wordt gepresenteerd.

Memorization

Memorization is het "van buiten" leren van details in de training data. Een neuraal netwerk dat enkel memoriseert zal falen in het generaliseren en zal geen ongekende data kunnen verwerken.

Explain the operating principle of the neuron and the perceptron and the adaptation of the weights

Neuron
  • 1 unit in neutraal netwerk
  • input & output van een neuron verbindt deze met andere in het netwerk
  • propageert signaal dat binnenkomt als het sterk genoeg is
  • weighted input
  • non-linear activation function F
perceptron
  • simuleert 1 neuron
  • propageert signaal indien som van het product van de weights groter is dan een treshold T
  • output: de output van de non-linear activation function van de gewogen som van de inputs

Learning in ANN: het leren associëren van inputs met outputs aan de hand van het aanpassen van de verschillende weights van de inputs van de perceptrons (bv. via het back propagation algoritme)

De taak van het perceptron in het leerproces is dus het aanpassen van z'n weights om een zo goed mogelijke output te associëren met z'n inputs.

In which areas is it useful to apply neural networks and where is it not useful?

3 gebieden waar ANN goed bruikbaar zijn (zie p. 21 & 22):
Klassificatie
  • Voorbeelden uit grote dataset klassificeren ' data mining
  • Vooral expert systems en pattern recognition
  • Fraudedetectie, medische diagnoses, OCR, herkennen van getallen, letters, gezichten, spraakherkenning, speaker recognition, quality control
Neural prediction (lange en korte termijn)
  • bv. Santa Fe
  • voorspellen van bv. gasverbruik, aandelen, klantengedrag
  • simulatie van een dynamisch model (space shuttle)
  • MAAR: inzicht nodig en analyses en PC simulaties
Mechanische, chemische en biochemische processen optimaliseren en controleren
  • traditioneel: lineaire controllers
  • ANN niet lineair ' veel beter
  • vb. pendulum
ANN is niét geschikt voor:
  • vaste, exacte berekeningen
  • systemen waarvan het gedrag perfect is vastgelegd (vb. Office)

Soms zijn alle fysische regels gekend en zou men exact kunnen werken, maar zijn de regels zo complex dat ANN toch geschikter is.

ANN kan vele taken, maar vraag niet waarom het iets doet! Moeilijk hetgeen het ANN geleerd heeft precies te extraheren door de omzetting naar numerische waarden waarmee het werkt: input, output en weights.

Lecture 2

Which kind of activation functions can one use for neural networks? What are advantages and disadvantages with respect to learning?

Explain the difference between feedforward and recurrent nets. Give some examples.

What is the difference between supervised and unsupervised learning? Give examples.

Explain the discrete and continuous perceptron and delta learning rule. What is the difference and why?

Explain the difference between linearly separable and linearly nonseparable tasks. Which tasks can be handled by a single layer neural network or by a multilayer neural network ?

Explain the backpropagation algorithm and the choice of the parameters and early stopping rule.

Lecture 3

What is an attractor neural network and how does it work? Give an example.

Does the Hebb learning rule guarantee pattern stability in the Hopfield model? Explain.

Is the loading capacity of the Hopfield model bounded? Explain.

Explain the concept of energy function in neural networks?

Explain the projection method.

Can one describe a temporal sequence of patterns with the Hopfield model? Explain.

Lecture 4

How can one solve optimization problems using the Hopfield model? Give an example.

Explain the energy function of the travelling salesman problem.

Design a network for the weighted matching problem.

What is reinforcement learning? Give some examples.

Explain the recurrent back-propagation algorithm.

Explain the associative reward-penalty algorithm.

Explain learning with a critic. Can it be applied for the control of a plant?

Lecture 5

What sort of general tasks can one perform with unsupervised learning?

Explain the standard competitive learning rule.

Explain vector quantization and learning vector quantization. What is the difference?

Explain the adaptive resonance theory algorithm.

What is a self-organizing map? Give an example.

Are hybrid learning schemes useful? Explain with an example.

Lecture 6

Explain Oja's rule in the framework of unsupervised Hebbian learning.

Give the connection between Sanger's rule and principal component analysis.

Discuss the relevance of input representation and the number of hidden units in a network construction.

What is the aim of pruning and construction algorithms? Give an example.

Explain the tiling algorithm.

Lecture 7

What is the relation between the Bayesian and maximum likelihood approach?

Explain: Bayesian learning treats the issue of model complexity differently than cross-validation does.

Why does one favour small values in Bayesian learning of network weights? Explain.

What are the basic ideas implemented by support vector machines? Explain.

What are the motivations for fuzzifying the perceptron rule? How can one do this?

Lecture 8

Explain the problem of echo cancellation and the use of adaline networks to overcome it.

What is a cellular neural network and how does it work ?

What are typical application areas of cellular neural networks?

What is a CNN template?

Lecture 9

What are strong points and drawbacks for applications of neural networks to time-series prediction?

Discuss time-series prediction competitions and results obtained by neural networks.

Discuss the use of neural networks in the alvinn vehicle control system.

Explain the use of backpropagation in control applications and what is backpropagation through the plant ?

Explain the difference between feedforward and feedback neural control.

Lecture 10

Discuss different neural control strategies for controlling an inverted pendulum.

Discuss the design of a neural network for controlling a truck backer-upper.

Discuss neural networks for use in ovarian cancer classification and prediction.

Discuss the use of neural networks in fraud detection applications.

Explain the receiver operating curve, its use and its role in comparing classification systems.

Bijvragen

(Algemene bijvragen kan je hierzetten, indien ze een uitbreiding op een andere vraag is zet je ze best daarbij.)