PopularScience: Neural Networks. How Does It Work?.. and my appeal to Steemians

in #popularscience8 years ago (edited)

Hello Steemers! Today we will touch on the topic of Neural Networks. Without a doubt Neural Networks today are a striker in computer science. The rapid growth of this knowledge provided by the need to solve non-trivial tasks and increasing computational power. As in any other science, simple and beautiful ideas form basis of the difficult things. Today we will get acquainted with the basic ideas of neural networks.

logo

Biological Origin

Like many, the man stole the principle of operation of the human brain. It lies in the fact that a group of neurons connected in a network. Each neuron receives electrical signals from a few others. After that, it processes the total incoming signal. After that, it processes the total incoming signal, generates a signal according to some rule and passes it on. If the result was bad (you felt the pain), the rule of signal processing is changed. After a number of attempts, each neuron will choose this rule of signal processing in which the risk of a bad outcome is minimal.

Neuron

Here you can see how the input signal passes through a neuron: first, it accumulates in the cells of the body, then the neural impulse is processed in the Axons and it goes to the output through the axon terminals.

NeuralNetwork

Neurons, Architecture of Neural Networks

For constructing neural networks it's necessary to get theoretical implementation of neuron. Let's consider simplest model. Instead of electronic signals we will use real numbers. Each neuron will have to calculate the weighted sum of incoming signals. After that, the amount shall be converted according to some rule (activation function). Output signal is the value of activation function.

Neuron Model
During the training process selecting the optimal weights.

Each neuron is a linear classifier. In simple words, it can divide the space into two, above and below a plane/line. For example, consider a neuron with two inputs. As activation function we will take sign(x) (=1 if x>0 and 0 if x<0).

Example

This simple classifier is able to solve the following problem: to distinguish the red and blue dots. In fact, it answers the question "the point lies above or below the line?".
Line

Note:
with a larger number of inputs separating line becomes a separating hyperplane (look through this article on wiki).

Together these simple classifiers are able to solve more complex problems:

Complex Line

The most popular architecture of neural networks is the perceptron. The perceptron consists of layers (each layer is a set of neurons), layers are organized in a chain. Two adjacent layers form a bigraph. It's mean that each neuron from first layer is connected with each from second layer. All layers except input and output are called hidden layers.

Hidden Layers

At the same time, the perceptron is not the only kind of neural networks. There are also convolution neural networks which consist of neurons which compute the convolution operation. They are used extensively in image processing. Great detail on such networks work wrote @krishtopa in her article. I'm afraid I have nothing to add)

I found a great website where you can design your own perceptron and try to solve the offered tasks. You have the ability to change almost all parameters: ranging from the number of neurons to the training algorithm. You have to play with it.

TensorFlow Playground

Examples of projects which actively use Neural Networks

Prisma

Prisma

  • App that turns your photos into creature of famous artists. There was a lot of hype around Prisma app. This is the epitome of breakthrough in the future. Here are used a convolutional neural network (as elsewhere in the work with images).

Reveal spoiler

howOldNet: it's me

  • How-Old.Net produced by Microsoft. It determines a person's age by analyzing person's face on photo. However, results of analysis are trending to be false (I'm 22 years old on photo).

appleMusic

appleMusic

  • Apple Music uses neural networks at its recommendation system. Apple never reveals his secrets, but I'm pretty sure.

  • Google Deep Mind is the most interesting project of Google - startup that was bought for large amount of moneys. They are investigate a machine learning from different sides. For example, they algorithm "AlphaGo" won world champion at the game of Go.

  • IBM Watson - supercomputer that includes QA System. This System can answer questions which was formulated in terms of natural language. The groundwork for future AI.

By the way... My suggestion to Steemit Community

Steemit is growing very fast and attracting more and more interesting people who write a lot of very good content. Everyone is doing their best and, surprisingly, the result is very good. Of course, there are those who completely copy someone else's work and submit it as his own. We can't get rid of these people. But also a lot of those who stiffened and told the people what nobody knows. But in the flow of discussions and news it's very difficult to find such material. Unfortunately, the built-in google search engine is not enough.

What we have at the moment:

 1. Very fast growing social network;
 2. A huge amount of content;
 3. The built-in google search engine (missing sorting by number of upvotes and by payouts);
 4. Lists "trending", "hot", "new", "active" and others;
 5. Category defined by the author;

Sadly, all of this are not enough even if you want to find interesting information. Therefore I ask the community add a recommendation system that will be for each individual news feed. Thus, each story will be in the hands of people who are interested in this subject and that it is qualit atively rate this post. Thus, quality content will not be lost. And that's what counts.

Imagine that the Steemit or dedicated website advises you posts and articles just as Apple Music advises you music! Cool? I think so too! Maybe there are developers who can develop such a system? I'll be glad to help however I can.

My previous articles:

Sort:  

Hey! Want to work with me on designing a NN curation bot for Steem? There is a ton of low-hanging fruit here.

I can. I have a background in AI techniques and predictive analytics

It's seems like something very helpful tool. If you want you may contact with me in steemit.chat: @puhoshville

I searched long and hard for a cool image. chosen such that it looked cool on the preview. but unfortunately, for unknown reasons, the logo is now different picture. I'm sorry guys)

Absolutely love machine learning algorithms. It seems that you're specialized in this area.
Keep sharing it!

Thank you! I will try to surprise you next time!)

I love your suggestion about the quality rating! (and also your post about NN of course) :)

Thank you! I'm glad to see like-minders!)

A website where you can design your own perceptron? How cool is that? Thanks for sharing this information.

I've spent a couple of hours to play this "game") Stay tuned!

Congratulations @puhoshville! You have received a personal award!

2 Years on Steemit
Click on the badge to view your Board of Honor.

Do not miss the last post from @steemitboard:
SteemitBoard World Cup Contest - The results, the winners and the prizes

Do you like SteemitBoard's project? Then Vote for its witness and get one more award!

Congratulations @puhoshville! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 3 years!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!