Neural Network: Do you dig deep into the principle, or just use it?

Hello everyone, I am Dong Dongcan.

Yesterday I answered a question on Zhihu and received 200+ likes, which was a little pleasant. Look, happiness is so simple, 200 likes can make you happy for a day.

Many people may have similar problems. So I plan to continue to talk about my views on this issue.

For neural networks, do you know how to use them, or do you need to understand the principles?

Let me tell you about my personal experience

I remember when I first got a driver's license, the coach asked me, you are a college student, what major do you major in? I said I majored in mechanics.

The coach looked relaxed and said, then you should be able to learn it soon.

I asked why?

The coach said, you must know the principle of clutch, as well as the concepts of bearings, gears, and acceleration ratios.

In this way, you will definitely feel how much you step on the clutch and put in gear, when to accelerate, how much to add, and how many gears you put in.

I was: . . .

Later, learning to drive taught me that the principles of gear meshing learned in school did help, but not nearly as much as the coaches boasted.

So what is the principle of neural network?

If we understand a certain convolution algorithm and a certain activation function, it means that we have learned the knowledge about gears.

If we understand how to adjust parameters and how to set the learning rate to make the network converge faster, it is equivalent to learning how to put gears, step on the accelerator, and step on the brakes.

Obviously, knowing these is enough to drive the neural network car.

Going deeper, if you want to really understand why the neural network can achieve image classification, or why the parameters learned by the neural network can be particularly eye-catching in the segmentation task. It is equivalent to figuring out why the car can run extremely fast when you step on the accelerator? 

It is equivalent to clarifying the relationship equation F=ma between the acceleration of the car, the friction force on the wheels and the mass of the car.

It is equivalent to clarifying that the car does not fly into the sky as soon as it accelerates, but runs on the road because of the existence of the law of universal gravitation.

It is equivalent to clarifying that when gasoline is burned, heat energy is converted into kinetic energy, which drives the rotor of the engine to rotate, and then the bearing drives the wheel to rotate, and the friction between the wheel and the ground makes the car rush forward.

It must also be made clear that when the car is running, it is also subjected to air resistance, so the actual speed at which it can run needs to consider wind resistance.

....

blah blah blah the basics.

And almost every one of these basic knowledge was discovered by a great man like Newton. Why the neural network can complete image segmentation, I believe many scientists have not really figured it out.

At present, the working principle of the neural network is still a black box. Even though there are many ways to visualize the neural network, we still cannot fully see the principle inside.

It's as if the three laws of gravity and force have always been there, we just haven't discovered it yet.

But it doesn't affect our driving at all.

So, for the question " Do you know how to use neural networks, or do you need to understand the principles? ", what I want to say is.

If you want to be a great man like Newton, you need to really understand the basic principles of neural networks.

If you just want to drive a car, learning the basic algorithms of neural networks is basically enough.

Interpretability of Neural Networks

In fact, what this question wants to ask should be the interpretability of neural networks. The so-called interpretability refers to explaining in principle why a certain neural network is feasible.

Interpretability is sometimes very important in the industrial and medical circles. For example, if you want to promote an AI product to a hospital, you must convince the doctor of the AI's decision-making and evaluation basis, otherwise it will be difficult to convince experts and adopt the product. (via Vincentius)

The interpretability of AI has always been the focus of people's research, such as using visualization methods to view the features learned by some CNN networks, etc., but I personally feel that there is still some distance from a real major breakthrough.

Regarding interpretability, it can be understood that artificial intelligence simulates the human brain. Scientists have been trying to explain the memory of the human brain, but they have been unable to break through.

If one day, scientists really figure out the explainability of AI, then AI will no longer be AI, but a bunch of computer programs. Even today's AI is the product of big data + big computing power + computer programs.

Guess you like

Origin blog.csdn.net/dongtuoc/article/details/127488107