Artificial intelligence handouts [hodgepodge] (continuously updated)

Foreword:

This article is mainly for but not limited to professional practitioners of non-artificial intelligence. I just hope that I can say a few words when talking about AI. Topics that can be discussed include but are not limited to "the development status of AI technology", "what are the classifications of AI technology", "what is neural network", etc.

Current status of artificial intelligence development

The status quo of artificial intelligence is: strong artificial intelligence is weak, and weak artificial intelligence is very strong . Weak artificial intelligence is already powerful enough to replace many jobs. And the most advanced strong artificial intelligence of human beings is far inferior to the intelligence of a three-year-old child.

  • Strong artificial intelligence: Refers to intelligent machines that can truly reason and solve problems. For example, "Astro Boy" in Japanese anime and "Jarvis", the AI ​​butler of Iron Man, can be said to be a strong artificial intelligence.
  • Weak artificial intelligence: It is only used to solve problems in certain specific fields , such as AlphaGo, which can only play Go.

 

 One reason why strong artificial intelligence is weak: machines can't understand human language very well.

One of the reasons why strong artificial intelligence is weak: Machines have not been able to understand human language and thinking well.

How to solve it in engineering (strong artificial intelligence is weak)?

The answer is "Human-Machine Collaboration Platform" - different from the platform that provides AI computing power (we will mention it later), the Human-Machine Collaboration Platform aims to improve the efficiency of industry experts participating in AI product development and operation and maintenance.

>> Take a chestnut: intelligent customer service platform

artificial intelligence classification

Artificial intelligence classification system_chenxy02's blog-CSDN blog_Artificial intelligence classification

What is deep learning and neural network

Artificial intelligence lecture notes (basic concept explanation)_chenxy02's blog-CSDN blog_artificial intelligence explanation

 What is deep learning?


Neural Network Experience Site

Why Neural Networks

Why Neural Network & Deep Learning_chenxy02's Blog-CSDN Blog_Neural Network Scale

How to train a neural network

Try in the right direction with a high probability (imagine that we play "Angry Birds", if you try a lot, you will probably know how far you can bounce the bird with a certain set of angles and strength), this is the so-called Learning, the so-called training. Two steps are essential:

  • Define Loss Function (cost/loss function, determine the gap with reality, the goal of machine learning is to find the minimum value of the loss function )
  • Define Optimizer (optimizer, which determines the change of neural network weight parameters)

How to get the correct direction with high probability?

What does gradient descent mean?

The most classic and commonly used method in solving the minimum value of the loss function is to use the gradient descent method for iterative solution.

Gradient Descent (Gradient Descent GD) is simply a method of finding the minimization of the objective function. It uses gradient information to find a suitable target value by continuously iteratively adjusting parameters.

If you want to understand the principle of gradient descent in detail, please refer to: What is gradient descent?

What are the neural networks

1. Fully connected network

 Disadvantages of fully connected networks: large amount of calculation , use of global information, unable to extract local features

2. Convolutional neural network

Legend has it that in the 1990s, Jan LeCun was inspired by the visual cortex of the human brain and invented the convolutional neural network. After continuous optimization, it began to shine in image recognition

  • In the CNN convolutional neural network structure, the role of the convolutional layer is to extract the features of the image. And the parameters of the convolutional layer can be learned, and the high-level convolutional layer can extract the features you want according to your goal.
  • "Local Perception, Parameter Sharing". To greatly reduce the network parameters, ensure the sparsity of the network, and prevent over-fitting.

The classification of neural networks currently used in the industry is roughly as follows:

Application Scenarios of Artificial Intelligence

CV (Computer Vision, computer vision) common noun analysis

Face detection: Detect whether the picture contains a human face and the coordinates of the position of the face and the coordinates of 5 key points. (frame the face)

Face recognition: Given a picture, the user searches the registered faces in the face database and returns the face information. (recognize who is who)

Witness comparison: judging whether a face and ID photo are the same person

 

 (NLP——Natural Language Processing)

Why "vectorization" is needed:

Answer: calculations are required! Unstructured data such as pictures, texts, and sounds cannot be well calculated for "similarity", and need to be converted into corresponding values ​​first.

eg: In the "face recognition" scene, face registration is to convert the corresponding face photo into a fixed-dimensional vector (such as 128 dimensions) and save it in the face base database, and face recognition is retrieved by calculating the degree of vector calculation Most similar faces.

Applications of artificial intelligence in various industries

smart transportation

 Smart medical

 smart retail

 "God created the world in seven days, the Internet on the eighth day, and artificial intelligence on the ninth day"

The above list is just the tip of the iceberg of industries where artificial intelligence is applied. I believe that artificial intelligence technology will penetrate more and more into all aspects of our lives in the future.

What tools are needed for AI development

Artificial Intelligence Lectures (Tools)_chenxy02's Blog-CSDN Blog

What role can cloud service providers play in the AI ​​era

Review the entire process of AI product development

At present, there are many AI open platforms (with different names) on the market. Let’s take Alibaba Cloud’s machine learning PAI as an example to see the general architecture of the AI ​​platform:

AI algorithm model development can also be simply divided into three stages: data preparation, model training, and model deployment . In the large-scale AI product development process, these three stages all require a lot of computing, resources, network and other resources. Cloud service providers can provide corresponding products for the three stages to improve the efficiency and quality of AI product development and deployment.

data preparation

There are already many general-purpose platforms on the market that support the model training and deployment stages, but since 2019, various manufacturers have successively launched feature platforms to support the data preparation stage. The specific things that the feature platform does can be found in: Feature Platform (Feature Store): Preface-Knowledge

Many manufacturers have integrated data labeling functions in their AI open platforms (data labeling is indeed a particularly heavy workload). As shown below:

model training

1. Provide AI computing power

Currently, the mainstream AI computing power platforms generally support on-demand allocation of GPU, CPU, memory and other resources.

2. Interactive modeling

 The current mainstream interactive modeling tools generally support Notebook interactive programming development, support open source deep learning frameworks such as Tensorflow, and support CPU/GPU hybrid scheduling.

3. Visual modeling

That is, it provides zero/low-code tools, provides classic machine learning algorithm components, supports the adjustment of component parameters, the arrangement and combination of components, and generally supports customizing new components.

4. Support distributed training

For example, the Kubeflow machine learning toolkit (a set of technology stacks running on k8s) used in the author's current project provides very good distributed training support for deep frameworks such as Tensorflow. It enables developers to quickly configure and create distributed training clusters on K8S using declarative APIs.

For details, please refer to: Kubeflow--TFJob Implementation Mechanism Analysis_chenxy02's Blog-CSDN Blog

model deployment

 Generally, it supports one-click deployment of models, supports update, stop, start, expand and shrink model services, and supports model online debugging.

 AI learning website

DeepLearning.AI China official website - the world's leading online AI education and practice platform

Guess you like

Origin blog.csdn.net/chenxy02/article/details/124255123