Neuronové sítě (NN)

Neuronové sítě jsou jedním z nejvýznamnějších objevů v historii.

Neuronové sítě mohou řešit problémy, které nelze vyřešit pomocí algoritmů:

  • Lékařská diagnóza
  • Detekce obličeje
  • Hlasové rozpoznávání

Neuronové sítě jsou podstatou hlubokého učení .

Revoluce hlubokého učení

Revoluce hlubokého učení je tady!

Revoluce hlubokého učení začala kolem roku 2010. Od té doby Deep Learning vyřešil mnoho „neřešitelných“ problémů.

Revoluci hlubokého učení nezačal jediný objev. Víceméně se to stalo, když bylo připraveno několik potřebných faktorů:

  • Počítače byly dostatečně rychlé
  • Počítačové úložiště bylo dostatečně velké
  • Byly vynalezeny lepší tréninkové metody
  • Byly vynalezeny lepší metody ladění

Neurony

Vědci se shodují, že náš mozek má kolem 100 miliard neuronů.

Tyto neurony mají mezi sebou stovky miliard spojení.

Neurony

Obrazový kredit: Univerzita v Basileji, Biozentrum.

Neurons (aka Nerve Cells) are the fundamental units of our brain and nervous system.

The neurons are responsible for receiving input from the external world, for sending output (commands to our muscles), and for transforming the electrical signals in between.


Neural Networks

Artificial Neural Networks are normally called Neural Networks (NN).

Neural networks are in fact multi-layer Perceptrons.

The perceptron defines the first step into multi-layered neural networks.

Learn More ...


The Neural Network Model

Input data (Yellow) are processed against a hidden layer (Blue) and modified against another hidden layer (Green) to produce the final output (Red).

Neuronové sítě

Neural Networks with JavaScript

Artificial Intelligence can be math-heavy. The nature of neural networks is highly technical, and the jargon that goes along with it tends to scare people away.

This is were JavaScript can come to help. We need easy to understand software APIs to simplifying the process of creating and training neural networks.


JavaScript Libraries

Brain.js

Brain.js is a JavaScript library that makes it easy to understand Neural Networks because it hides the complexity of the mathematics.

Building a neural network with Brain.js.


Introduction to ml5.js

ml5.js is trying to make machine learning more accessible to a wider audience.

The ml5 team is working to wrap machine learning functionality in friendlier ways.

The example below uses only three lines of code to classify an image:

<img id="image" src="pic1.jpg" width="100%">

<script>
const classifier = ml5.imageClassifier('MobileNet');
classifier.classify(document.getElementById("image"), gotResult);
function gotResult(error, results) { ... }
</script>

Try substitute "pic1.jpg" with "pic2.jpg" and "pic3.jpg".


TensorFlow Playground

TensorFlow Playground is a web application written in d3.js.

With TensorFlow Playground you can learn about Neural Networks (NN) without math.

In your own Web Browser you can create a Neural Network and see the result.

TensorFlow.js was previously called Tf.js and Deeplearn.js.


Tom Mitchell

Tom Michael Mitchell (born 1951) is an American computer scientist and University Professor at the Carnegie Mellon University (CMU).

He is a former Chair of the Machine Learning Department at CMU.

"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."

Tom Mitchell (1999)

E: Experience (the number of times).
T: The Task (driving a car).
P: The Performance (good or bad).


Stories


Giraffe

In 2015, Matthew Lai, a student at Imperial College in London created a neural network called Giraffe.

Giraffe could be trained in 72 hours to play chess at the same level as an international master.

Computers playing chess are not new, but the way this program was created was new.

Smart chess playing programs take years to build, while Giraffe was built in 72 hours with a neural network.