Artificial Intelligence

Histórias, conceitos e tecnologias usadas no ramo da Inteligência artificial

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
Artificial Intelligence por Mind Map: Artificial Intelligence

1. Areas, fields and phases

1.1. Áreas de atuação

1.1.1. Visão computacional

1.1.1.1. Atendimento online

1.1.1.2. Autenticação facial

1.1.1.3. Análise de ações

1.1.1.4. Gerenciamento de álbuns

1.1.1.5. Busca de imagens

1.1.2. Processamento de fala

1.1.2.1. Navegação por voz

1.1.2.2. Perguntas com bots

1.1.2.3. Conferências em tempo real

1.1.2.4. Conversões para texto

1.1.3. Processamento de linguagem natural

1.1.3.1. Análise de opniões públicas

1.1.3.2. Análise de sentimentos

1.1.3.3. Classificações de texto

1.2. Campos de Aplicação

1.2.1. Saúde inteligente

1.2.1.1. Construções/análises de imagens

1.2.1.2. Diagnósticos

1.2.1.3. Exames

1.2.2. Segurança

1.2.2.1. Análise de veículos

1.2.2.2. Identificação de suspeitos

1.2.3. Casa inteligentes

1.2.3.1. Controle de dispositivos

1.2.3.2. IoT

1.2.4. Cidades inteligentes

1.2.4.1. Gerenciamentos sociais

1.2.4.1.1. Segurança

1.2.4.1.2. Energia

1.2.4.1.3. Transportação

1.2.4.2. Serviços públicos

1.2.4.2.1. Saúde

1.2.4.2.2. Governamentação

1.2.4.2.3. Robos

1.2.4.3. Operação de industrias

1.2.4.3.1. Construções

1.2.4.3.2. Agricultura

1.2.4.4. Aplicações individuais

1.2.4.4.1. Educação

1.2.4.4.2. Entretenimento

1.2.5. Varejo

1.2.5.1. Épocas de insumo

1.2.5.2. Aquisição/Venda

1.2.5.3. Operações sem interferência humana

1.2.6. Carros autônomos

1.2.6.1. Reconhecimento de vias/velocidades

1.3. Fases da IA

1.3.1. Inteligencia Computacional

1.3.1.1. Máquinas podem computar e transferir informações como os seres humanos

1.3.2. Inteligência Perceptual

1.3.2.1. Máquinas podem ouvir e ver, fazer julgamentos e tomar ações simples

1.3.3. Inteligência Cognitiva

1.3.3.1. Máquinas podem entender, pensar e tomar decisões como seres humanos.

2. Projections of the future

2.1. Algoritmos

2.2. Poder de computação

2.3. Dados

2.4. Cenário

2.5. Framework

2.5.1. TensorFlow

2.5.1.1. Integração com o Keras

2.5.1.2. Google

2.5.2. Pytorch

2.5.2.1. Reconhecimento da academia

2.5.2.2. Google

2.5.3. MindSpore

2.5.3.1. Framework da Huawei

2.5.3.2. Huawei

2.6. Visão computacional

2.6.1. GAN

2.6.1.1. Redes contraditórias generaticas

2.6.1.1.1. Discriminador e Gerador

2.6.1.2. Gerar imagens de alta qualidades

2.6.2. PNL

2.6.2.1. BERT

2.6.2.2. GPT

2.6.2.3. XLNet

2.6.3. Reinforcement learning

2.6.3.1. Simular comportamento humano

2.6.3.2. AlphaStar - AlphaGo

2.6.3.3. Aplicação em jogos

2.7. Aplicações

2.7.1. Mitigação de problemas psicológicos

2.7.1.1. Chatbots

2.7.2. Seguros de veículos

2.7.2.1. Fotos para detectar danos em veículos

2.7.3. Automação de tarefas de escritórios

2.7.3.1. Produção de relatórios/planilhas

2.8. Crescimento na demanda para IA

2.9. Crescimento na segurança do compartilhamento de dados

3. Python

3.1. Teoria

3.1.1. História

3.1.1.1. Guido van Rossum 1989

3.1.1.2. Código livre sobre licença GPL

3.1.2. Aplicações

3.1.2.1. Data science

3.1.2.2. Writing system tools

3.1.2.3. Developing applications with graphical UIs

3.1.2.4. Writing network-based software

3.1.2.5. Iteracting with database

3.1.2.6. IoT

3.1.3. Other

3.1.3.1. Gerenciamento de memória pelo interpretador e não pelo desenvolvedor

3.1.3.2. Não pode ser usado para escrever um kernel

3.1.3.3. Reutilização de códigos e transplantável

3.1.3.4. Dinâmico

3.1.3.5. POO e funções

3.1.3.6. Prototipação rápida

3.1.3.7. Python 3 não é compatível com Python 2

3.2. Prática (code)

3.2.1. Tipos de dados

3.2.1.1. Integer

3.2.1.2. Float

3.2.1.3. Complex number

3.2.1.3.1. Composto de números complexos

3.2.1.4. Boolean

3.2.1.4.1. True or False

3.2.1.5. String

3.2.1.5.1. Sequência de caracteres

3.2.1.6. List

3.2.1.6.1. [colchetes]

3.2.1.6.2. Acesso

3.2.1.6.3. Atualização

3.2.1.6.4. Deletar

3.2.1.6.5. Operações

3.2.1.6.6. Intercecção

3.2.1.6.7. Mutáveis

3.2.1.7. Tuplas

3.2.1.7.1. (parenteses)

3.2.1.7.2. Acesso

3.2.1.7.3. Modificação

3.2.1.7.4. Deletar

3.2.1.7.5. Operações

3.2.1.7.6. Acesso por índice

3.2.1.7.7. Imutáveis

3.2.1.8. Dictionary

3.2.1.8.1. {chave: valor}

3.2.1.8.2. Acesso

3.2.1.8.3. Modificação

3.2.1.8.4. Remoção

3.2.2. Condicionais e laços

3.2.2.1. if

3.2.2.1.1. elif

3.2.2.1.2. else

3.2.2.2. while

3.2.2.3. for

3.2.2.3.1. Varreduras em vários tipos de variáveis

3.2.2.4. break

3.2.2.5. continue

3.2.2.6. functions

3.2.2.6.1. reutilização de códigos

3.2.2.6.2. def "nome da função" (parametros):

3.2.2.7. Variáveis (local/global)

3.2.2.7.1. Local: dentro de um escopo

3.2.2.7.2. Global: escopo de todo o código

3.3. POO / OOD

3.3.1. Objetos

3.3.1.1. Class

3.3.1.1.1. Conjunto de funções (métodos) e dados (atributos)

3.3.1.1.2. Attributes

3.3.1.1.3. Methods

3.3.2. Herança

3.3.2.1. Superclass

3.3.2.1.1. Classe original

3.3.2.2. Subclass

3.3.2.2.1. Permite que passemos os atributos durante a instância do objeto

3.3.2.2.2. Criada por herança

3.3.2.2.3. Podemos incluir, modificar...

3.3.2.2.4. Herda atributos de uma classe superior

3.3.3. Composição

3.3.3.1. Uma classe possui objetos de uma outra classe

3.3.4. def __init__

3.3.4.1. Construtor da classe

3.4. Expressões Regulares (regex)

3.4.1. MiniLinguagem para definir padrões em strings

3.4.2. Exemplos

3.4.2.1. Manipular Strings

3.4.2.2. Remover pontuações

3.4.2.3. Pré-processamento

3.4.3. Code

3.4.3.1. ^ $ -> delimitam o início e o fim de um padrão (opcionais)

3.4.3.2. ^ -> nega o grupo na expressão

3.4.3.3. \( -> significa que será o usado o ( literalmente

3.5. Módulo RE

3.5.1. Processo de combinação (matching)

3.5.1.1. 1. String de entrada

3.5.1.2. 2. Compilador

3.5.1.3. 3. Expressão Regular

3.5.1.4. 4. Matching

3.5.1.5. 5. Matching Result

3.6. Manipulação de arquivos

3.6.1. Processo

3.6.1.1. 1. Abrir

3.6.1.2. 2. Leitura / Escrita

3.6.1.3. 3. Fechar (desalocar)

3.6.2. Modos de acesso

3.6.2.1. 'w' - Criar

3.6.2.2. 'w+' - Criar para leitura e escrita

3.6.2.3. 'r' - Leitura

3.6.2.4. 'r+' - Abrir para leitura e escrita

3.6.2.5. 'a' - Abrir um arquivo já existente

3.6.2.6. 'a+' - Abrir um já existente para leitura e escrita

3.6.2.7. 'wb' 'rb' 'ab' 'wb+' 'rb+' 'ab+' para arquivos binários

3.6.3. Exemplos

3.6.3.1. Escrita

3.6.3.2. Leitura

4. Huawei

4.1. MindSpore

4.1.1. Framework

4.1.2. Computação paralela

4.1.3. Suporta GPUs, CPUs e Ascend

4.2. ModelArts

4.2.1. Desenvolvedores de IA

4.2.2. Framework para os dados

4.2.3. Algoritmos de desenvolvimento

4.2.4. Treinamento

4.2.5. Aplicação

4.2.6. Soluções de mercado

4.3. CANN

4.3.1. Interface de camada de habilitação de chip

4.3.2. Otimizar a transferência de memória

4.4. Ascend 310

4.4.1. Processador com 8W energia necessária

4.5. Ascende 910

4.5.1. Maior poder de processamento

5. Math in ML

5.1. Álgebra Linear

5.1.1. Linear Transformation

5.1.1.1. Transformações no espaço vetorial

5.1.1.2. Funções com vetores de entrada e saída

5.1.2. Composition

5.1.2.1. Múltiplas transformações nas combinações

5.1.2.2. Não são Comutativas (não é possível alterar a ordem e obter o mesmo valor)

5.1.2.3. São Associativas (é possível agrupar)

5.1.2.4. Ex.: Multiplicação

5.1.3. Linear Operations

5.1.3.1. Multiplicação

5.1.3.1.1. Número de colunas da primeira igual ao número de linhas da segunda

5.1.3.2. Determinante

5.1.3.2.1. Quanto que o espaço vetorial foi modificado por uma transformação

5.1.3.2.2. Det>1 - Aumenta a área Det<1 - Diminui a área Det=0 - Comprime o espaço vetorial em uma dimensão menor

5.1.3.3. Produto Escalar

5.1.3.3.1. Comprimento da projeção de um vetor sobre o outro

5.1.3.3.2. Possui "regras" de acordo com seu resultado

5.1.3.3.3. Comutativo

5.1.3.4. Produto Vetorial

5.1.3.4.1. Vetor ortogonal à dois vetores linearmente independentes

5.1.3.4.2. Resultados diferentes para 2D e 3D

5.1.3.5. Matriz Transposta

5.1.3.5.1. Colunas transformando em linhas

5.1.3.6. Matriz Inversa

5.1.3.6.1. Matriz única que representa a transformação inversa

5.1.3.6.2. Se multiplicar as duas matrizes, original e inversa, obterá a Identidade

5.1.4. System of Linear Equations

5.1.4.1. A solução de um sistema linear soluciona todas as equações

5.1.4.2. Compartilham as variáveis entre si

5.1.4.3. Métodos de caixa preta em forma matricial

5.1.5. Eigenvalues and Eigenvectors

5.1.5.1. Pares de vetores e escalares que quando a transformação de uma matriz é aplicada sobre eles, não mudam a direção, são apenas escalados

5.1.6. Decomposição de Matrizes

5.1.6.1. Otimizar o processo de solução de sistemas lineares e encontrar os autovalores e autovetores

5.1.6.2. Tipos

5.1.6.2.1. Decomposição LU

5.1.6.2.2. Decomposição QR

5.1.6.3. Usos

5.1.6.3.1. LLS - Linerar Least Square

5.1.6.3.2. PCA - Principal Component Analysis

5.2. NumPy

5.2.1. Suporte para matriz e arrays e funções matemáticas

5.2.2. pip3 install numpy

5.2.2.1. pip -> programa para as bibliotecas

5.2.3. Tipos de dados

5.2.3.1. bool

5.2.3.2. int_

5.2.3.3. float_

5.2.3.4. complex_

5.2.4. Code

5.2.4.1. Creating vector int

5.2.4.2. Creating vector float

5.2.4.3. Creating matrix

5.2.4.4. Identity

5.2.4.5. Multiplicação de matrizes

5.2.4.5.1. * - interage com cada elemento da matriz

5.2.4.5.2. @ || np.vdot() - multiplicação de matriz padrão

5.2.4.5.3. np.cross() - produto vetorial

5.3. Probabilidade e Estatística

5.3.1. Random tests

5.3.1.1. Stochastic

5.3.1.1.1. Utiliza números aleatórios para resolução de problemas

5.3.2. Sample and Events

5.3.2.1. Sample point

5.3.2.1.1. Cada possibilidade de um teste aleatório

5.3.2.2. Sample Space

5.3.2.2.1. Coleção de possibilidades de um teste aleatório

5.3.2.3. Event

5.3.2.3.1. Subconjunto de um espaço aleatório

5.3.2.4. Mutually Exclusive Events

5.3.2.4.1. Eventos que não podem acontecer ao mesmo tempo

5.3.2.4.2. A probabilidade de acontecerem é a soma de suas probabilidades

5.3.2.5. Independent Events

5.3.2.5.1. Um evento que não influencia no outro

5.3.2.5.2. A probabilidade dos dois eventos é o produto de suas probabilidades

5.3.3. Random Variable

5.3.3.1. Função que mapeia cada amostra possível para um valor numérico real

5.3.4. Distribution Function

5.3.4.1. Como a probabilidade varia entre os elementos

5.3.5. PDF - Probability Density Function

5.3.5.1. Probabilidade de acontecer em um ponto específico

5.3.5.2. Distribuição cumulativa é a área de baixo de uma curva gerada pela PDF

5.3.6. Expectation

5.3.6.1. Soma ponderada dos valores

5.3.7. Variance

5.3.7.1. Número de dispersão dos dados

5.3.7.2. Desvio padrão é a raiz da variancia

5.3.8. Covariance

5.3.8.1. Relação entre duas variáveis diferentes

5.3.9. Distribuições de Probabilidade

5.3.9.1. Uniform Distribution

5.3.9.1.1. Probabilidade constante

5.3.9.2. Normal Distribution || Gaussian

5.3.9.2.1. Formato de sino

5.3.9.2.2. A soma de variáveis aleatórias tende a uma variável gaussiana

5.3.9.3. Exponential Distribution

5.3.9.3.1. Representar intervalos que vão decaindo

5.3.9.4. Laplace Distribution

5.3.9.4.1. "Exponencial duplicada" - Espelhada no meio

5.3.9.5. Discret Random Variables

5.3.9.6. Bernoulli Distribution

5.3.9.6.1. Dois valores - Acontece ou não

5.3.9.7. Bionomial Distribution

5.3.9.7.1. Numero X de sucessos

5.3.9.8. Poisson Distribution

5.3.9.8.1. Chance de chegada de elementos aleatórios

5.3.9.8.2. Aproxima a distribuição binomial

5.3.9.9. Two-Dimensional Random Variable

5.3.9.9.1. Chance de ter as variaveis limitadas a àqueles valores

5.3.9.10. Joint Distribution Law

5.3.9.11. Conditional probability

5.3.9.11.1. Probabilidade de um evento acontecer dado que outro já aconteceu

5.3.9.11.2. P (A | B)

5.3.9.12. Bayes Formula

5.3.9.12.1. Relação a priori e posteriori

5.3.9.13. Information Theory

5.3.9.13.1. Maneira científica e quantitativa de descrever a informação

5.3.9.13.2. Entropia

5.4. Análise numérica

5.4.1. Processo

5.4.1.1. 1- Análise do problema

5.4.1.2. 2- Modelagem matemática

5.4.1.3. 3- Método de cálculo numérico

5.4.1.4. 4- Programar o algoritmo

5.4.1.5. 5- Reolução do cálculo

5.4.2. Round-off errors

5.4.2.1. Aproximação

5.4.3. Tipos de erro

5.4.3.1. Modeling errors

5.4.3.2. Input errors

5.4.3.2.1. Sensor impreciso ou entrada inprecisa

5.4.3.3. Storage errors

5.4.3.3.1. Perca de informação

5.4.3.4. Change of base (10, 2)

5.4.3.5. Propagação de erro

5.4.3.6. Overflow and underflow

5.4.3.6.1. Problemas de escala

5.4.4. Linar systems

5.4.4.1. Ax = b

5.4.4.2. Solution

5.4.4.2.1. Possible and determined

5.4.4.2.2. Possible and undetermined

5.4.4.2.3. Impossible

5.4.5. Iterative Methods

5.4.5.1. Direct methods

5.4.5.1.1. Gaussian Elimination

5.4.5.1.2. LU decomposition

5.4.5.1.3. Para cálculos manuais

5.4.5.1.4. Computationally inefficient

5.4.5.1.5. Unsuitable for larger number of variables

5.4.5.2. Methods

5.4.5.2.1. Jacobi Method

5.4.5.2.2. Gauss-Seidel Method

5.4.5.3. Function zeros

5.4.5.3.1. Metodos de divisão de intervalos

5.4.5.3.2. Methods

5.4.5.4. Interpolation

5.4.5.4.1. Descobrir novos pontos de uma função por aproximação

5.4.5.4.2. Funções polinomiais são as mais usadas

5.4.5.4.3. Methods

5.4.5.5. Regression

5.4.5.5.1. Encontrar uma curva aproximada que passa pelos pontos dados

5.4.5.5.2. Método dos mínimos quadrados

5.5. Optimization Problem

5.5.1. Derivada = 0 nos pontos de máximo e mínimo

5.5.2. Restrições de igualdade

5.5.2.1. Método de Lagrange

5.5.3. Restrições de desigualdade

5.5.3.1. Generalizações Lagrangianas

5.5.4. Funções convexas

5.5.4.1. Dentre dois pontos, a função está sempre abaixo de uma reta que liga estes dois pontos

5.5.5. Encontrar mínimo de funções

5.5.5.1. Método de gradiente

5.5.5.1.1. A derivada determina a inclinação da reta e nos movemos para o lado mais baixo da reta

5.5.5.1.2. Para casos de mais de uma função -> variável multidimensional

5.5.5.1.3. A iteração se move para o lado oposto do gradiente

6. MachineLearning

6.1. Concepts

6.1.1. Common types of tasks

6.1.1.1. Classification

6.1.1.1.1. Categorizar dados através da entrada

6.1.1.1.2. Saídas discretas (definidas)

6.1.1.1.3. Ex.: rostos em fotos

6.1.1.2. Regression

6.1.1.2.1. Prever uma saída contínua

6.1.1.2.2. Ex.: possibilidade de chuva através de dados de entrada

6.1.1.2.3. Ex.: valores de casas, imóveis

6.1.1.3. Clustering

6.1.1.3.1. Agrupar dados

6.1.1.3.2. Separar através de similaridade

6.1.2. Classification of Learning Algorithms

6.1.2.1. Supervised learning

6.1.2.1.1. Conhece os dados e usa para gerar um modelo para atuar em dados em que não temos a informação

6.1.2.1.2. Dados rotulados

6.1.2.2. Unsupervised learning

6.1.2.2.1. Sem informações dos dados

6.1.2.2.2. Ex.: Clustering

6.1.2.3. Semi-supervised

6.1.2.3.1. Informação de parte dos dados

6.1.2.3.2. Usar os dados com informação para produzir informação sobre os não rotulados

6.1.2.4. Reinforcement learning

6.1.2.4.1. O modelo é um sinal/retorno do ambiente

6.1.2.4.2. Treinamento a partir do sinal / reforço

6.1.3. Basic Concepts

6.1.3.1. Dataset

6.1.3.1.1. Coleção/conjunto dos dados

6.1.3.1.2. Sample

6.1.3.1.3. Training set

6.1.3.1.4. Test (or Validation) set

6.1.3.2. Generalization capability

6.1.3.2.1. Inferir coisas que não estão nos dados de teste

6.1.3.3. Underfitting

6.1.3.3.1. Modelo não treinado o suficiente

6.1.3.4. Overfitting

6.1.3.4.1. Modelo adaptado aos dados de teste

6.1.3.5. Error

6.1.3.5.1. Diferença entre o resultado entre o resultado previsto e o real

6.1.3.5.2. Training error

6.1.3.5.3. Generalization (Testing) error

6.2. Process

6.2.1. Data Collection

6.2.1.1. Número de amostras apropriados

6.2.1.2. Anotações dos dados

6.2.1.3. Qualidade, sem ruídos

6.2.2. Data Processing

6.2.2.1. Data cleaning

6.2.2.1.1. Deixar os dados apenas relevantes

6.2.2.2. Data Dimension Reduction

6.2.2.2.1. Simplify data attributes

6.2.2.2.2. Feature selection

6.2.2.2.3. Maldição da dimensionalidade

6.2.2.3. Data Normalization

6.2.2.3.1. Normalize data to reduce noise

6.2.3. Model Building

6.2.3.1. Data Splitting

6.2.3.1.1. Dividir dados de treino, teste/validação

6.2.3.2. Model training

6.2.3.2.1. Rodar o algoritmo de aprendizado em cima dos dados

6.2.3.3. Model verification

6.2.3.3.1. Validação do modelo com os dados de teste/validação

6.2.3.4. Model test

6.2.3.4.1. Teste com dados reais fora do df

6.2.3.5. Model deployment

6.2.3.5.1. Colocar em produção no cenário real

6.2.3.6. Model fine-tuning

6.2.3.6.1. "remodelação" com os dados do atual cenário

6.2.4. Cross Validation

6.2.4.1. Método para fazer a separação dos dados de treino e os dados de teste

6.2.4.2. k-fold

6.2.4.2.1. Iteração do dataset utilizando sempre novas porcentagens para dados de validações

6.2.4.3. K-Nearest Neighbors

6.2.4.4. Random Forest

6.2.5. Confusion matrix

6.2.5.1. Noção do que acertou e o que errou de acordo com o Cross Validation

6.2.5.2. Verdadeiros positivos e negativos e Falso positivo e negativo

6.2.5.3. Accuracy

6.2.5.4. Error

6.2.5.5. Precision

6.2.5.6. Score

6.2.5.7. Métricas

6.2.5.7.1. Mean Albsolute Error (MAE)

6.2.5.7.2. Mean Square Error (MSE)

6.2.5.7.3. R²

6.3. Algorithms

6.3.1. K-Means

6.3.1.1. Criar k clusters, separando os grupos

6.3.1.2. Não supervisionados

6.3.1.3. Passos

6.3.1.3.1. 1. Estimar k médias iniciais (centroids)

6.3.1.3.2. 2. a- Calcular a distância entre as amostras e as médias

6.3.1.3.3. 2. b- Associar a amostra ao cluster

6.3.1.3.4. 3. Recalcular a média dentro de cada cluster

6.3.1.3.5. 4. Repete o 2 e o 3 até não haver mais mudanças na média

6.3.2. Hierarchical Clustering

6.3.2.1. Divisões sucessivas

6.3.3. Linear Regression

6.3.3.1. Método estatístico para tentar estimar uma curva que melhor se adequa aos dados

6.3.3.2. Loss Function

6.3.3.2.1. Utiliza algoritmo descida de gradiente para tentar minimizar o erro

6.3.4. Logistic Regression

6.3.4.1. Curva que separa as classes

6.3.4.2. Softmax

6.3.4.2.1. Probabilidade da amostra pertencer à uma certa classe

6.3.4.2.2. Retorma o maior número em um conjunto

6.3.5. Decision Tree

6.3.5.1. Estrutura binária que separa o conjunto

6.3.5.2. Cria modelos de regressão ou classificação

6.3.6. SVM - Suport Vector Machine

6.3.6.1. Achar pontos que servem de fronteiras

6.3.6.2. Função que separa os dados através de pontos de suporte

6.3.7. Naive Bayes

6.3.7.1. Probabilidades condicionais

6.3.7.2. Classificar as amostras assumindo que as features são independentes

6.3.8. KNN - K-Nearest Neighbors

6.3.8.1. Não precisa de treinamento

6.3.8.2. Comparar amostras novas com as que já tem na base

6.3.8.3. Verifica através da vizinhança

6.3.8.4. Requer muito cálculo

6.3.9. Classification

6.3.9.1. O objetivo é prever valores discretos

6.3.9.2. Associar dados a classes determinadas

6.3.9.3. Algoritmos

6.3.9.3.1. Nearest Neighbor

6.3.9.3.2. Naive Bayes

6.3.9.3.3. Decision Trees

6.3.9.3.4. Linear Regression

6.3.9.3.5. Support Vector Machines (SVM)

6.3.9.3.6. Neural Networks

6.3.10. Regression

6.3.10.1. O objetivo é prever valores contínuos, através de clusters, com regras de associação

6.3.10.2. Algoritmos

6.3.10.2.1. K-Means

6.4. Neural Network

6.4.1. Artificial

6.4.1.1. An information processing system

6.4.1.2. Baseado na simulação do cérebro humano

6.4.1.3. Compostos de neurônios artificiais

6.4.1.4. Basic features

6.4.1.4.1. Parallel information processing

6.4.1.4.2. Learning

6.4.1.4.3. Association

6.4.1.4.4. Patter classification

6.4.1.4.5. Memory

6.4.2. Artificial neuron

6.4.2.1. Multiple inputs and a single output which can be sent to multiple other neurons

6.4.2.2. The weighted sum of all the inputs

6.4.2.3. Add a bias term to this sum

6.4.2.3.1. Parametro constante para regular além dos pesos

6.4.2.4. A soma é passada por uma função de ativação com um valor mínimo é máximo que vai ativar a saída

6.4.3. Perceptron

6.4.3.1. Classificador

6.4.3.2. Classificação binária

6.4.4. Layers

6.4.4.1. Rede é dividida em várias camadas

6.4.4.2. Especialmente Deep Learning

6.4.4.3. Input -> Hidden -> Output

6.4.5. Activation functions

6.4.5.1. Define qual vai ser a saída do neurônio

6.4.5.2. Não linear

6.4.5.3. Se for linear, só vai ser representada uma função na rede

6.4.5.4. Contínua e diferenciável para usar métodos de otimização (gradiente)

6.4.5.5. Intervalo da função finito

6.4.5.6. Múltiplas camadas com uma função de ativação linear são equivalentes a uma única camada

6.4.5.7. Monótona

6.4.5.7.1. Permitir que cada camada seja convexa

6.4.5.8. Suave

6.4.5.8.1. Generalizar melhor

6.4.5.9. Próxima da origem

6.4.6. Types

6.4.6.1. Single Perceptron

6.4.6.1.1. Um neurônio

6.4.6.1.2. Decisão binária

6.4.6.1.3. Classifica apenas 2 grupos

6.4.6.2. Multi-Layer Fully Connected

6.4.6.2.1. Vários perceptrons

6.4.6.2.2. Parecida com o cérebro humano

6.4.6.2.3. Não linear

6.4.6.2.4. Feedforward

6.4.6.2.5. Convolutional

6.4.6.2.6. Recurrent

6.5. Parameter Setting

6.5.1. Evolutive algorithms

6.5.1.1. Algoritimos genéticos

6.5.1.2. Mapear os pesos otimizando para representar um cromossomo

6.5.1.3. Cruzar a população para gerar novas soluções

6.5.1.4. Cada número do vetor é um gene

6.5.1.5. Cada vetor é um cromossomo

6.5.1.6. Conjunto dos vetores/cromossomos é uma população

6.5.1.7. Usada o erro da rede para o fitness

6.5.1.8. Não é tão usada por ser mais lenta

6.5.1.9. Vantagem por ser menos complexa e menos sucetível a mínimos locais

6.5.2. Backpropagation

6.5.2.1. Propagação do erro para outras camadas da rede

6.5.2.2. Estimar o erro na camada de saída

6.5.3. Stop criteria

6.5.3.1. Fixar um número de iterações

6.5.3.2. Norma do gradiente do erro

6.5.3.3. Variação do erro quadrático

6.5.3.3.1. Quando o erro começar a ficar fixo

6.5.3.4. Erro quadrático médio

6.5.3.4.1. Quando a média estabilizar

7. Deep Learning

7.1. Método para reconhecimento de padrões

7.2. Maior quantidade de dados

7.3. Neural Network

7.3.1. Sistema computacional composto com várias parcelas de processamento conectadas entre si

7.4. Perceptron

7.4.1. Single-Layer Perceptron

7.4.2. Valores de entrada

7.4.2.1. Variáveis que correspondem à números reais

7.4.3. Pesos

7.4.3.1. Ponderação por pesos

7.4.4. Produto interno entre o vetor de entrada e o vetor de peso

7.4.4.1. Classificar as entradas de acordo com a superfície de decisão

7.4.5. Função de ativação

7.4.6. XOR

7.4.6.1. Problema para separar dados que ficam apresentados em 3 camadas que não podem ser separados por uma reta ou um plano

7.4.6.2. Ideia da rede neural com mais de uma camada

7.4.6.3. Resolvido por Marvin Minsky

7.5. Feedforward

7.5.1. Rede com mais de uma camada

7.5.2. Propagação para a camada posterior, sem volta

7.5.3. Sem cálculo de representação

7.5.4. Receber a camada anterior e repassar a saída para a camada posterior

7.6. Types of Neural Network

7.6.1. CNN - Convolutional

7.6.1.1. Sem realimentação

7.6.1.2. Usada com o mínimo de pré processamento

7.6.1.3. Fluem diretamente entre as camadas

7.6.1.4. Utilizada em processamento de imagens, áudio, vídeos, texto...

7.6.1.5. Layers

7.6.1.5.1. Convolutional

7.6.1.5.2. Pooling (Agrupamento)

7.6.1.5.3. Fully connected

7.6.1.6. Main Concepts

7.6.1.6.1. Local receptive field

7.6.1.6.2. Parameter sharing

7.6.2. RNN - Recurrent

7.6.2.1. Captura informações dinâmicas

7.6.2.2. Ideia de realimentação de informação

7.6.2.3. Classificação de dados sequenciais

7.6.2.4. Utilizada em vídeos (sequência de imagens), áudios, frases (sequencia de palavras)

7.6.2.5. Architecture

7.6.2.5.1. Recorrencia em torno de um nó

7.6.2.6. Types

7.6.2.6.1. one to one

7.6.2.6.2. one to many

7.6.2.6.3. many to one

7.6.2.6.4. many to many²

7.6.2.7. BPTT - Backpropagation Through Time

7.6.2.7.1. Mais rápido para treinar redes recorrentes

7.6.2.7.2. Dificuldade para encontrar ótimos locais

7.6.2.8. LSTM - Long Short-term Memory

7.6.2.8.1. Aplicadas em cenários com lacunas entre informações relevantes

7.6.2.8.2. Tratação de séries temporais, reconhecimento de voz

7.6.2.8.3. Maior capacidade de assimilar aspectos de sequência

7.6.2.8.4. Modelagem de linguagem, chatbot, geração de textos, tradução de idiomas, legenda de imagens

7.6.2.9. GRU - Gated Recurrent Unit

7.6.2.10. GAN - Generative Adversarial Network

7.6.2.10.1. Treina um gerador G e um discriminador D por meio de um processo adversário

7.6.2.10.2. Através dele, o D diz se a amostra do G é real ou falsa

7.6.2.10.3. Generator G

7.6.2.10.4. Discriminator D

7.6.2.10.5. Geração de imagens, geração de texto, aprimoramento de voz, superresolução de imagens

7.7. Training in Neural Network

7.7.1. O processo inicial já possui pesos aleatórios para cada neurônio

7.7.2. O treinamento é o processo de atualização dos pesos de acordo com a função custo

7.7.3. Gradient Descent

7.7.3.1. É um dos principais métodos para auxiliar no treinamento

7.7.3.2. Utiliza o conceito de gradiente

7.7.3.3. Derivada parcial de uma função com n variáveis

7.7.3.4. Vetor de relação com as derivadas parciais e as coordenadas de um sistema

7.7.3.5. Vetor este que indica uma direção (maior crescimento da função)

7.7.3.6. Vetor aplicado numa função custo quadrática, comparando o valor esperado com a saída, gerando um erro que precisa ir para 0

7.7.3.7. Gera pesos para minimizar a função

7.7.4. Quadratic cost function

7.7.4.1. Diferença entre a saída esperada com a saída real, ao quadrado

7.7.4.2. Usada para problemas de regressão

7.7.5. Cross entropy

7.7.5.1. Analisar a distância entre duas distribuições de probabilidade

7.7.5.2. Usada para problemas de classificação

7.7.6. Métodos para minimizar o erro do gradiente

7.7.6.1. BGD - Batch Gradient Descent

7.7.6.1.1. Agrupamento das amostras com a direção dos pesos

7.7.6.2. SGD - Stochastic Gradient Descent

7.7.6.2.1. Componente aleatória para dizer a direção do gradiente com uma função aleatória

7.7.6.2.2. Atualização depois de percorrer todas as amostras

7.7.6.2.3. Online Gradient Descent

7.7.6.3. MBGD - Mini-Batch Gradient Descent

7.7.6.3.1. Quantidade mais reduzida de amostras

7.7.6.3.2. Sem influência do outlier

7.7.7. Backpropagation

7.7.7.1. Utilizado para atualização de pesos

7.7.7.2. Utilizar o output para modificar os pesos e diminuir o erro

7.7.7.3. Utiliza gradiente descendente

7.7.7.4. Atualiza os pesos das entradas com uma taxa de aprendizagem e a diferença da função custo em relação aos pesos naquela iteração

7.7.7.5. Wc - Hidden Wb - Input

7.8. Optimization

7.8.1. Objetivos

7.8.1.1. Acelerar a convergência

7.8.1.1.1. Melhorar a busca pelos pesos corretos

7.8.1.2. Prevenir/Saltar um valor extremo local

7.8.1.3. Simplificar configuração manual de parâmetros

7.8.1.4. Encontrar o ponto mínimo de uma função através de métodos interativos

7.8.2. Atualização com a mesma taxa de adaptação

7.8.3. Momentum Optimizer

7.8.3.1. Em vez usar o gradiente atual, ele acumula o gradiente das etapas anteriores para determinar a melhor direção a ser seguida

7.8.4. AdaGrad Optimizer

7.8.4.1. Diferentes taxas são definidas para diferentes parâmetros

7.8.4.2. Baixa taxa de aprendizado para recursos mais frequentes

7.8.4.3. Convergência mais rápida e confiável

7.8.4.4. Lenta na otimização

7.8.5. RMSProp Optimizer

7.8.5.1. Root Mean Square Propagation

7.8.5.2. Amortecer oscilações do gradiente

7.8.5.3. Taxa de aprendizagem diferente para cada parâmetro

7.8.6. Adam Optimizer

7.8.6.1. Combinação do RMSProp e Momentum com o SGD (Stocastic Gradient Descendent)

7.8.6.2. Calcula taxa adaptativa para cada um dos parâmetros

7.9. Loss Functions

7.9.1. Regulada pelos otimizadores para que se torne cada vez menor e seja convergida mais rápida

7.9.2. Mean Square Error (MSE)

7.9.3. Learning Rate

7.9.3.1. Presente na loss function

7.9.3.2. O qual rápido ou lento é a busca pela convergencia

7.9.3.3. Valor alto diverge

7.9.3.4. Valor baixo demora para convergir

7.10. Activation Function

7.10.1. Tradução da saída de cada neurônio para funções não lineares

7.10.2. Sem elas, teria uma complexidade limitada, dificultando a classificação de dados complexos

7.10.3. Functions (non-linar)

7.10.3.1. Usadas para saídas de redes neurais

7.10.3.1.1. Sigmoid

7.10.3.1.2. Softmax

7.10.3.2. Tanh

7.10.3.2.1. Centrada em 0, varia de -1 a 1

7.10.3.2.2. Eixo negativo e positivo

7.10.3.2.3. Não pode resolver vanish gradient

7.10.3.3. ReLU - Rectified Linear Unit

7.10.3.3.1. Permite rápida convergência

7.10.3.3.2. Não possui exponencial nem log

7.10.3.3.3. Implementação mais fácil

7.10.3.3.4. Não possui upper bound, limite superior

7.10.3.3.5. Não é diferenciável em x=0

7.10.3.3.6. Superfície no ponto 0 não é suave para que seja utilizável em problemas de regressão

7.10.3.3.7. Retorna um valor se for maior que 0

7.10.3.4. Softsign

7.10.3.4.1. Saturação mais lenta comparada com a tanh

7.10.3.4.2. Problema do vanishing gradient

7.10.3.4.3. Derivada não linear, com ponto nao derivável

7.10.3.5. Softplus

7.10.3.5.1. Diferenciável em x=0

7.10.3.5.2. Função contínua com derivada em todos os pontos

7.10.3.5.3. Requer log e exp

7.11. Regularization

7.11.1. Overfitting

7.11.1.1. Não são bons para generalizar dados de entrada

7.11.1.2. Acostumado apenas com os dados de treino

7.11.2. Intuito de reduzir erros de generalização

7.11.3. Adição de parametros de restrição, como L1 e L2

7.11.4. Expansão do conjunto de treinamentos

7.11.5. Penalty Parameters

7.11.5.1. Fator de penalidade associado à função objetivo

7.11.6. L1

7.11.6.1. Restrição de norma

7.11.6.2. Método laço

7.11.6.3. Usada para seleção de atributos

7.11.6.4. Distribuição laplaciana

7.11.7. L2

7.11.7.1. Adicionada uma penalidade de norma quadrática

7.11.7.2. Ridge

7.11.7.3. Distribuição gaussiana

7.11.8. L1 vs L2

7.11.8.1. L1 gera um modelo mais esparço, devido ao módulo

7.11.8.2. L2 gera um modelo mais suave devido ser quadrática

7.11.9. Dataset Expansion

7.11.9.1. Adiciona um ruído para não aprender demasiadamente alguns parâmetros

7.11.9.2. Usada em separação de caracteres (6 e 9)

7.11.9.3. Ruídos aleatórios para reconhecimentos de voz

7.11.9.4. Adição de ruído em alguma camada oculta

7.11.10. Dropout

7.11.10.1. Retira/desativa alguns dados/neurônios durante o processo de treinamento

7.11.10.2. Encontrar hiperparâmetros melhores

7.11.10.3. Tirar atributos insignificantes

7.11.11. Early Stopping

7.11.11.1. Não tem uma melhora na rede durante um certo tempo do treinamento

7.11.11.2. Encontrar o ponto baixo do Bias e da Variância

7.12. Common Problems in Deep Learning

7.12.1. Data Imbalance

7.12.1.1. Número de amostras variando de uma categoria para outra

7.12.1.2. Não é possível obter o resultado em tempo real com poucos objetos de informação

7.12.1.3. Soluções

7.12.1.3.1. Deletar observações insuficientes

7.12.1.3.2. Classes não balanceadas, aumentar as amostras existentes

7.12.1.3.3. Observações nas classes não balanceadas Criando amostras sintéticas

7.12.2. Vanish Gradient and Exploding Gradient

7.12.2.1. Em camadas mais profundas, grandes problemas matemáticos com o gradiente

7.12.2.2. Derivadas grandes ou pequenas demais

7.12.2.3. Aumento muito rápido da evolução

7.12.2.4. Possíveis soluções

7.12.2.4.1. Reduzir a quantidade de camadas seria uma solução

7.12.2.4.2. Limitar o tamanho dos gradientes

7.12.2.4.3. Inicialização de pesos

7.12.2.5. Vanish

7.12.2.5.1. Gradiente nas bordas das funções de ativação, como sigmoid e tanh

7.12.3. Overfitting

7.12.3.1. Bom desempenho nos dados de treinamento e um desempenho ruim nos dados de teste

7.12.3.2. Root causes

7.12.3.2.1. Muitos ruidos

7.12.3.2.2. Muitas dimensões

7.12.3.2.3. Poucos dados de treinamento

7.12.3.2.4. Grande complexidade

7.12.3.3. Solution

7.12.3.3.1. Aumentar os dados

7.12.3.3.2. Regularização dos dados

7.12.3.3.3. Reduzir camadas

7.12.3.3.4. Parada Antecipada

7.12.4. Underfitting

7.12.4.1. Capacidade de generalização fraca

7.12.4.2. Pouco aprendizado

8. Frameworks

8.1. PyTorch

8.1.1. Reescrita baseada em Torch, que foi escrita em Lua

8.1.2. Features

8.1.2.1. Escrita em python

8.1.2.2. Gerenciamento automático

8.2. TensorFlow

8.2.1. Usado para ML, DL e outros

8.2.2. Baseado na 2° geração do DistBelief do Google Brain

8.2.3. Utiliza API's do Keras

8.2.4. Instalação

8.2.4.1. pip install tensorflow

8.2.4.2. Colaboratory

8.2.5. TensorFlow 2.x Features

8.2.5.1. Scalability

8.2.5.2. Multi-lingual

8.2.5.3. Multi-platform

8.2.5.4. Powerful computing

8.2.5.5. Distributed

8.2.5.6. GPU NVIDIA

8.2.6. Diferenças 1.0 e 2.0

8.2.6.1. 1.0 basic concepts

8.2.6.1.1. Tensors

8.2.6.1.2. Graph

8.2.6.1.3. Operations

8.2.6.1.4. Sessions

8.2.6.1.5. Variables

8.2.6.1.6. PyTorch se torna mais fácil por causa do graph e session

8.2.6.2. 2.0 basic concepts

8.2.6.2.1. Utilização da API do Keras

8.2.6.2.2. Visualizar o grafo independente da seção

8.2.6.2.3. Execução instantânea

8.2.6.2.4. suporte para novas linguagens

8.2.6.2.5. maior quantidade de padronização

8.2.7. Modelo computacional que descrevem o fluxo dos grafos de dados

8.2.8. Graphs são usados para representar uma função com os nodes representando operações/controles de fluxo

8.2.9. Tensors

8.2.9.1. Tensores são os dados e suas dependências

8.2.9.2. Possui nome, tipo de dado, shape e rank

8.2.9.3. Shape - dimensões limitadas pelo rank

8.2.9.3.1. Rank

8.2.9.4. 2.x - Tensor are classified into Constants and Variables

8.2.9.4.1. Constantes inicialização imediata

8.2.10. Basic Operations in TF 2.x

8.2.10.1. Methods for creating constant and variables

8.2.10.2. Slice and indexing

8.2.10.3. Dimension changes

8.2.10.3.1. reshape - redimensionamento

8.2.10.4. Arithmetic operations

8.2.10.5. Concatenation and splitting

8.2.10.6. Sorting

8.2.10.6.1. Ordenação

8.2.11. 2.x - Eager Execution Mode

8.2.11.1. Baseado em comandos, programação imperativa

8.2.11.2. Avalia operações imediatamente

8.2.11.3. Depuração mais fácil

8.2.12. AutoGraph

8.2.12.1. Marcar funções para montar grafos

8.2.12.2. @tf.function

8.2.12.2.1. decorador

8.2.13. Common Modules

8.2.13.1. tf

8.2.13.1.1. operações aritméticas e básicas

8.2.13.2. tf.errors

8.2.13.2.1. tipos de erros

8.2.13.3. tf.data

8.2.13.3.1. treinamento para datasets

8.2.13.3.2. para avaliação ou treinamento

8.2.13.4. tf.distributions

8.2.13.4.1. distribuições estatísticas

8.2.13.5. tf.io.gfile

8.2.13.5.1. opera sobre arquivos

8.2.13.6. tf.image

8.2.13.6.1. ajustar parâmetros sobre imagens

8.2.13.6.2. pré-processamentos, manipulações

8.2.13.7. tf.keras

8.2.13.7.1. API do python para ferramenta Keras

8.2.13.7.2. Operações em redes, camadas...

8.2.14. Keras Interface

8.2.14.1. tf.keras.layers

8.2.14.2. Usabilidade

8.2.14.2.1. prototipagem rápida

8.2.14.2.2. poucas restrições

8.2.14.2.3. fácil extensão

8.2.14.3. Dataset processing

8.2.14.4. Criação de modelos

8.2.14.5. Configuração dos parâmetros de otmização

8.2.14.5.1. Métricas

8.2.14.5.2. funções de perca

8.2.14.5.3. compiladores

8.2.14.5.4. épocas

8.2.14.6. treinamento e avaliação

8.2.15. Development Process

8.2.15.1. Model definition (identificar para o melhor resultado)

8.2.15.1.1. Model training

8.2.15.2. Data preparation (uniformização)

8.2.16. Defining the Model

8.2.16.1. Sequential models

8.2.16.1.1. tf.keras.Sequential

8.2.16.2. Functional models

8.2.16.2.1. tf.keras.Model

8.2.17. Training the Model

8.2.17.1. tf.keras.Model.compile()

8.2.17.1.1. loss function

8.2.17.1.2. optimizer

8.2.17.1.3. evaluation metrics

8.2.17.1.4. other

8.2.17.2. fit do modelo

8.2.18. Saving and Loading the Model

8.2.18.1. tf.keras.Model.save()

8.2.18.2. tf.keras.Model.load_model()

8.2.18.3. reaproveitar o modelo para não precisar novamente fazer o treinamento que pode ser um processo demorado

8.2.19. Testing the Model

8.2.19.1. tf.keras.evaluate()

8.2.19.1.1. Retorna métricas como loss, acurácia, erros...

8.2.19.1.2. Verificar generalização e overfitting

8.2.20. Using the Model

8.2.20.1. tf.keras.predict()

8.2.20.1.1. softmax

8.3. MNIST Digt Recognition

8.3.1. Reconhecimentos de dígitos manuscritos

8.4. MindSpore

8.4.1. Usada em mobile, edge e cloud

8.4.2. Eficiência em execução com processadores da Huawei

8.4.3. Architecture

8.4.3.1. Modelos de frontend que no final serão executados em processadores da Huawei

8.4.4. Usability Goals

8.4.4.1. Diferenciação automática

8.4.4.1.1. Operadores diferenciais

8.4.4.2. Paralelismo automático

8.4.4.3. Uso de tensores automáticos

8.4.4.4. Rotulagem semi-automática

8.4.5. Layers

8.4.5.1. Frontend Expression

8.4.5.1.1. Python API

8.4.5.1.2. MindSpore IR

8.4.5.1.3. GHLO (Graph High Level Optimization)

8.4.5.2. Grapg Engine

8.4.5.2.1. GLLO (Graph Low Level Optimization)

8.4.5.2.2. Graph Execution

8.4.5.3. Backend Runtime

8.4.5.3.1. Ambiente de execução no hardware

8.4.6. Auto Differ

8.4.6.1. Melhor otimização e melhor performance

8.4.7. Automatic Parallel

8.4.7.1. Treinamento em larga escala

8.4.8. Challenges

8.4.8.1. Desvantagens

8.4.8.1.1. Custo de execução

8.4.8.1.2. Longo deployment

8.4.8.2. Vantagens

8.4.8.2.1. Novos modos de execução

8.4.8.2.2. Modo de colaboração

8.4.8.3. Paradigma

8.4.8.3.1. Menos código com paralelismo, diferenciação e depuração

8.4.9. Instalação

8.4.9.1. pip

8.4.9.2. Miniconda

8.4.10. Desenvolvimento e Aplicações

8.4.10.1. Comandos para os tensores

8.4.10.2. Principais Modules Expression

8.4.10.3. Operação

8.4.10.3.1. Conceito de célula

8.4.11. Uso extensivo do JIT (Just in Time)

9. Lab Guide 04

9.1. Tensores

9.1.1. Propriedades

9.1.2. Tipos

9.1.2.1. Constantes

9.1.2.1.1. Dimensões fixas

9.1.2.1.2. Usados para hiperparâmetros

9.1.2.2. Variáveis

9.1.2.2.1. Dimensoes fixas mas os valores podem ser alterados

9.1.2.2.2. Armazenar pesos

9.1.3. Funções

9.1.4. Cortes e indexações

9.1.5. Redimensionamento

9.1.6. Operações Aritméticas

9.1.7. Concatenação e particionamento

9.1.8. Módulos

9.1.8.1. data

9.1.8.2. image

9.1.8.3. gfile

9.1.8.4. keras

10. Atlas AI

10.1. Ascend Chips

10.1.1. Classifications of AI Chips

10.1.1.1. CPU

10.1.1.1.1. Processador

10.1.1.2. GPU

10.1.1.2.1. Processador visual, paralelismo

10.1.1.3. ASIC

10.1.1.3.1. Circuitos específicos para determinadas tarefas

10.1.1.4. FPGA

10.1.1.4.1. Chip em branco para criar o circuito desejado

10.1.2. Hardware Architecture of Ascend Chips

10.1.2.1. Control CPU

10.1.2.2. AI Core and AI CPU

10.1.2.2.1. Paralelismo

10.1.2.2.2. Da Vinci Architecture

10.1.2.2.3. Hardware operações mais comuns

10.1.2.3. SoC

10.1.2.3.1. Multi-layer system-on-chip (caches or buffers)

10.1.2.4. DVPP

10.1.2.4.1. Digital vision pre-processing

10.1.3. Software Architecture of Ascend Chips

10.1.3.1. Logic

10.1.3.1.1. L3

10.1.3.1.2. L2

10.1.3.1.3. L1

10.1.3.1.4. L0

10.1.3.2. Neural Network Software Flow

10.1.3.2.1. Ponte entre os framworks e os hardware

10.1.3.2.2. DVPP

10.1.3.2.3. TBE

10.1.3.2.4. Process orchestrator

10.1.3.2.5. Framework manager

10.1.3.2.6. Runtime manager

10.1.3.2.7. Taks scheduler

10.1.3.3. Dara Flowchart

10.2. Computing Plataform

10.2.1. Application enabling

10.2.1.1. Funções para aplicações como visão computacional, reconhecimento de texto...

10.2.2. AI framework

10.2.2.1. TensorFlow, PyTorch, MindSpore

10.2.2.2. Gerar o modelo

10.2.3. CANN

10.2.3.1. Computação das redes neurais

10.2.3.2. Bibliotecas de otimização

10.2.4. Chips & Hardware

10.2.4.1. Hardware

10.3. Hardware

10.3.1. Acende 310

10.3.1.1. Atlas 200DK

10.3.1.1.1. Usado para aprendizado e criação inicial de um elemento de rede neural

10.3.1.1.2. Até 200 faces em um algoritmo de reconhecimento de face em um único frame

10.3.1.2. Atlas 300

10.3.1.2.1. Alta frequência em análise de vídeos e imagens

10.3.1.3. Atlas 500

10.3.1.3.1. Estação de borda

10.3.1.3.2. Baixo footprint

10.3.1.4. Atlas 800

10.3.1.4.1. Servidor

10.3.1.4.2. Centralizar a análise de rede neural

10.3.2. Ascend 910

10.3.2.1. Atlas 800

10.3.2.1.1. Maior poder

10.3.2.2. Atlas 900

10.3.2.2.1. Mais rápido cluster para treinamento de rede neural do mundo

11. HiAI Plataform

11.1. Architecture

11.1.1. Infrastructure

11.1.1.1. Internet, sensor, IoT

11.1.1.2. Server

11.1.2. Basic Tecnology

11.1.2.1. Big Data, Cloud Computing

11.1.3. AI Elements

11.1.3.1. Data, Algorithm, Computing Power

11.1.4. Technical Direction

11.1.4.1. CV, Speech Proceesing...

11.1.5. AI Aplication

11.1.5.1. Finances, healthcare, security, entertainment, education

11.2. Challenges

11.2.1. High thresholds

11.2.2. Low efficiency

11.2.3. Diverse requests

11.2.4. Slow iteration

11.2.5. Slow iteration

11.3. HiAI 3.0

11.3.1. Dispositivos distribuídos

11.3.2. HiAI Engine

11.3.2.1. Handwriting recognition and dynamic gesture

11.3.2.2. CV and speech recognition

11.3.3. HiAI Service

11.3.3.1. Ultilizar o serviço em vários dispositivos

11.3.4. Benefit

11.3.4.1. Real time

11.3.4.2. Ready to use

11.3.4.3. Stabilitu

11.3.4.4. Security

11.3.4.5. Lower cost

11.3.5. Usos

11.3.5.1. Short video

11.3.5.2. Social media

11.3.5.3. AR

11.3.5.4. Photo taking and retoutching

11.3.5.5. Shopping

11.3.5.6. Translation and text processing

11.4. Developing Apps

11.4.1. Aplicações para pessoas surdas e mudas

11.4.2. Tornar uma vida melhor

12. Cloud EI

12.1. Serviço de nuvem da Huawei

12.2. Início em 2017 para soluções empresariais

12.3. Services

12.3.1. Data Processing

12.3.2. Data Storage

12.3.3. Cloud Search

12.3.4. Graph Engine

12.3.4.1. Internet

12.3.4.1.1. Controles financeiros, indústria urbana, tecnologia industrial

12.3.4.1.2. Mineração de dados

12.3.4.1.3. Análise de comportamento

12.3.4.1.4. Influencias sobre os produtos e seus impactos

12.3.4.2. Knowledge Graph

12.3.4.2.1. Problemas de classificação

12.3.4.3. Financial Risk Control

12.3.4.3.1. Detectar fraudes em tempo real

12.3.4.3.2. Rastreamento de pessoas baseado em suas relações

12.3.4.4. Urban Industry

12.3.4.4.1. Análise de tráfego

12.3.4.5. Enterprise IT

12.3.4.5.1. Planos de redes de empresas

12.4. Applied Intelligence Scenarios

12.4.1. Transportation

12.4.1.1. Otimização do tráfego

12.4.1.2. Análise do comportamento dos motoristas

12.4.2. Industrial

12.4.2.1. Conservação/Controle de energia

12.4.2.2. Melhorar produção e prever demandas

12.4.2.3. Manutenção preventiva

12.4.3. Campus

12.4.3.1. Reconhecimento de imagens

12.4.3.2. Contabilizar alunos/funcionários em salas

12.4.4. Vehicle

12.4.4.1. Detecção do comportamento

12.4.4.2. Rastreamento

12.5. Example Cases

12.5.1. Ges

12.5.1.1. Serviço de infraestrutura

12.5.2. CBS

12.5.2.1. Chat bot para atendimento ao consumidor

12.5.3. Processing natural language

12.5.4. Interaction Voice

12.5.5. Video analytics

12.5.6. Image Recognition

12.5.7. Content Moderation

12.5.7.1. Identificação de conteúdos

12.5.8. Experience Center

12.5.8.1. Editores de imagens

12.5.8.2. Retoutching

12.5.9. Crowd Statistics and Heat Map

12.5.10. Vehicle Recognition

12.5.11. Intrusion Detection

13. Extra

13.1. Questions

13.1.1. 1

13.1.2. 2

13.1.3. 3

13.1.4. 4

13.1.5. 5

13.1.6. 6

13.1.6.1. 6.1

13.1.6.1.1. a (bdc) (bd) d

13.1.6.2. 6.4

13.1.6.2.1. (bcde) a

13.1.7. 7

13.1.7.1. 7.1

13.1.7.1.1. a a

13.1.7.2. 7.2

13.1.7.2.1. (bcd) x

13.1.8. 8

13.1.9. 9

13.1.10. 10

13.2. Resumo dos principais algoritmos de Machine Learning

13.3. Conceitos e Cálculos utilizados em Machine Learning

13.4. Introdução ao TensorFlow

13.5. Material Machine Learning