Processo de Machine Learning

Processos de Planejamento de Machine Learning utilizando bibliotecas do python

Laten we beginnen. Het is Gratis
of registreren met je e-mailadres
Processo de Machine Learning Door Mind Map: Processo de Machine Learning

1. 1. Pré-Processamento

1.1. Adquirir Dados

1.1.1. Bibliotecas

1.1.1.1. 1. numpy

1.1.1.2. 2. pandas

1.1.1.3. 3 StringIO

1.1.1.4. 4. sklearn.preprocessing (Imputer)

1.1.1.5. 5. sklearn.preprocessing (LabelEncoder)

1.1.2. Conjunto de dados

1.1.2.1. Entendimento dos dados

1.1.2.2. Entendimento do problema

1.1.2.3. Tipo de aprendizagem que irei empregar

1.1.2.3.1. Características e saídas conhecidas

1.1.2.3.2. Características e saídas não conhecidas

1.1.2.4. Onde meus dados estão localizados?

1.1.2.5. Meus dados estão completos?

1.1.2.6. Modelo holdout

1.1.2.6.1. Dividir conjunto de Teste

1.1.2.6.2. Dividir conjunto Treinamento

1.2. Normalizar os Dados

1.2.1. Bibliotecas

1.2.1.1. 1. numpy

1.2.1.2. 2. pandas

1.2.1.3. 3. sklearn.preprocessing (MinMaxScaler)

1.2.1.4. 4. sklearn.preprocessing (StandardScaler)

1.3. Selecionar Características

1.3.1. Recomendada quando modelo não convergir por conta de redundância ou muitas características

2. 2. Aprendizagem

2.1. Dividir Conjunto ou Validação Cruzada

2.1.1. Maximizar o conjunto de dados

2.1.2. Não desperdiçar dados como em Treinamento/Teste

2.1.3. Nem sempre precisamos usar, exemplo em problemas de Big Data e Deep Learning, não é recomendado.

2.1.4. Objetivo quando usado é obter modelo sem overfitting

2.1.5. Modelo k-fold

2.1.5.1. Bibliotecas

2.1.5.1.1. 1. numpy

2.1.5.1.2. 2. pandas

2.1.5.1.3. 3. sklearn.preprocessing (StandardScaler)

2.1.5.1.4. 4. sklearn.model_selection (train_test_split)

2.1.5.1.5. 5. sklearn.linear_model (LogisticRegression)

2.1.5.1.6. 6. sklearn.metrics (accuracy_score)

2.1.5.1.7. 7. sklearn.model_selection (StratifiedKFold)

2.1.5.2. Validação

2.1.5.2.1. Modelo dividido em k-partes

2.2. Otimização de Hiperparâmetros

2.2.1. Default

2.2.1.1. Abordagem ruim, sem garantia de hiperparâmetros ótimos

2.2.2. Aleatórios

2.2.3. Grid Search

2.2.3.1. Bibliotecas

2.2.3.1.1. 1. numpy

2.2.3.1.2. 2. pandas

2.2.3.1.3. 3. sklearn.preprocessing (StandardScaler)

2.2.3.1.4. 4. sklearn.model_selection (train_test_split)

2.2.3.1.5. 5. sklearn.linear_model (LogisticRegression)

2.2.3.1.6. 6. sklearn.metrics (accuracy_score)

2.2.3.1.7. 7. sklearn.model_selection (GridSearchCV)

2.2.3.2. Busca Bruta

2.2.3.2.1. Para cada hiperparâmetro

2.2.3.2.2. Controlar tamanho e número de cada conjunto de hiperparâmetros

2.2.3.3. Maximizar acertos (acurácia) ou minimizar erros

2.2.3.4. Menor probabilidade de overfitting

2.2.3.5. Se não usado, não é possível saber se o modelo estava com com melhores hiperparâmetros ou não

2.2.4. Grid Search com Validação Cruzada

2.2.4.1. nested cross-validation

2.3. Algoritimo de Aprendizagem

3. 3. Avaliação

3.1. Métricas de Avaliação

3.1.1. Classificação binária

3.1.1.1. Matriz de Confusão TP, FN, FP, TN

3.1.1.1.1. Acurácia (ACC) (TP+TN) / (FP+FN+TP+TN)

3.1.1.1.2. Taxa de Verdadeiros Positivos (TPR) (TP) / (FN + TP)

3.1.1.1.3. Taxa de Falsos Positivos (FPR) (FP) / (FP + TN)

3.1.1.1.4. Medida de Precisão (PRE) (TP) / (TP + FP)

3.1.2. Classificação Multiclasse - OVA (One vs All)

3.1.2.1. micro-average

3.1.2.2. maro-average

3.1.3. Erro Médio Quadrático (MSE)

3.1.3.1. Problemas de regressão

3.1.4. R² (Usado na Estatística)

3.2. Modelo Final

4. 4. Predição

4.1. Slot de dados pelo Modelo

4.2. Novos Dados

4.3. Função hipótese

4.3.1. Parâmetros do modelo

4.3.1.1. Aplicações

4.3.1.1.1. Vetor de pesos

4.3.1.1.2. bias

4.3.1.1.3. Parâmetros de kernels

4.3.1.1.4. Arquitetura de RNA

4.3.1.2. Embarcado

4.3.1.2.1. Vetor de pesos

4.3.1.2.2. bias

4.3.1.2.3. Parâmetros de kernels

4.3.1.2.4. Arquitetura de RNA

4.3.2. Novas Predições