Começar. É Gratuito
ou inscrever-se com seu endereço de e-mail
Data Science por Mind Map: Data Science

1. Escolha do valor de K:

1.1. Quando sabe - se as possíveis respostas (mesmo não tendo uma variável target).

1.2. Utilizando Método Elbow

1.3. Procura-se um cotovelo

2. KNN

2.1. Baseado em Exemplo

2.2. Pode ser usado para classificação ou Regressão

2.3. Hipótese: "Dados Similares ficam concentrados próximos. "

2.4. Pontos no espaço euclidiano R^n;

2.5. Pode se usar várias formas de calcular a distância entre os pontos

2.5.1. Distância Euclidiana

2.5.1.1. Pode ser utilizado para:

2.5.1.1.1. Variáveis discretas : Classificação

2.5.1.1.2. KNN - Ponderado pela distância

2.5.1.1.3. Variáveis continuas: Regressão

2.6. Pode-se trabalhar com atributos nominais:

2.6.1. Utilizando o procedimento chamado de Simple Matching ( similaridade de strings)

2.6.1.1. Ex: (Flavio != Antonio >> 1) tem distância, (João = João >>0) n]ao tem distância.

2.7. Pontos de análise do KNN:

2.7.1. Diferentes tamanhos de conjuntos de dados

2.7.1.1. Caso a base seja fiel, e represente as classes a ser trabalhadas com precisão, o tamanho da base não influencia no comportamento do algoritmo.

2.7.2. Valor do K

2.7.2.1. Quando K é pequeno (Ex. K=1) aumenta a sensibilidade a ruídos.

2.7.2.1.1. Suscetível a erros pois dado uma instância , e essa podendo ser um outlier, quando o K é pequeno o numero de amostras para se calcular a distância pode gerar um resultado errado classificando um outlier pertencente a uma classe X ou a nova instancia como pertencente a um outlier

2.7.2.2. Quando K é muito grande ou do tamanho da base, peca-se pela observação da classe majoritária

2.7.2.2.1. Classe majoritaria é aquela que quando observados os

2.7.2.3. A inicialização do K pode ser:

2.7.2.3.1. Colocando um K arbitrário

2.7.2.3.2. Usando o algoritimo Kmeans ++

2.7.3. Escala e tipos de atributos

2.7.3.1. Deve-se normalizar para não obter discrepância dos dados

3. Não Supervisionados

3.1. Agrupamentos

3.1.1. Oque é: Tecnicas computacionais para separar elementos em grupos baseados nas suas características

3.1.2. Principio básico: colocar no mesmo grupo, conjuntos de itens que se assemelham dada as suas características;

3.1.3. Objetivo:

3.1.3.1. Separar objetivamente grupos homogêneos

3.1.3.2. Maximizar a similaridade de objetos dentro de um mesmo grupo(quanto mais similar mais próximos)

3.1.3.2.1. Distância intra cluster: é a distância entre um ponto e outro do mesmo cluster. Quanto menor a distancia maior é a similaridade entre esses pontos.

3.1.3.3. Minimizar a similaridade de objetos entre grupos distintos(quanto menor a similaridade mais esse elemento pertence a um outro grupo)

3.1.3.3.1. Distância inter cluster: é a distância entre o centroide de um ponto e outro. Quanto maior é essa distância menos similares são os pontos e mais separados os clusters estão.

3.1.3.4. Atribuir uma descrição para os grupos formados(informar/dar uma classe a qual aquele item pertence)

3.1.4. Tipos de Algoritimos

3.1.4.1. K -Means

3.1.4.1.1. O que é? Tipo de algoritimo de clusterização/agrupamento, do grupo de algoritmos de aprendizado não supervisionado

3.1.4.1.2. Objetivo: Encontrar similaridade entre os dados e agrupá-los de acordo com K clusters.

3.1.4.1.3. Escopo de funcionamento: Particiona objetos de dados em K-Grupos, onde cada item pertence ao grupo mais próximo da média entre os seus.

3.1.4.1.4. Etapas de funcionamento:

3.1.4.1.5. Vantagens e Desvantagens:

3.1.4.2. K - Medians

3.1.4.2.1. Uma variação do Algoritmo K-menas, entretanto aqui utiliza-se a mediana e não a média para calculo do centroide.

3.1.4.2.2. Vantagem: Tende a resolver o problema de outlier existente no K-means

3.1.4.3. K - medoids

3.1.4.3.1. A ideia do agrupamento K-Medoids é fazer dos centroides finais como pontos de dados reais. Este resultado torna os centroides interpretáveis.

3.1.4.3.2. Diferença apenas na atualização do centroide: Se houver um ponto m em um cluster, troque o centroide anterior por todos os outros (m-1) pontos do cluster e finalize o ponto como um novo centroide que tem uma perda mínima.

3.1.4.4. Bisecting Kmeans

3.1.4.4.1. Combinação de K-menas com clusterização hierárquica.

3.1.4.4.2. Funcionamento macro: A cada iteração, seleciona um grupo(baseado em regra de distância) e divide-o, de forma a gerar uma hierarquia.

3.1.4.4.3. Etapas de Funcionamento:

3.1.4.4.4. Vantagens:

3.1.4.4.5. Desvantagens:

3.1.5. Características:

3.1.5.1. Capacidade de lidar com alta dimensionalidade;

3.1.5.2. Trabalha com diferentes tipos de formatos de dados;

3.1.5.3. Pode definir grupos de diferentes tamanhos e formas

3.1.5.4. Ser robusto a interferência de ruído;

3.1.5.5. Usa medidas de similaridade para o calculo da distância como:

3.1.5.5.1. Distância Manhattan

3.1.5.5.2. Distância Euclidiana

3.1.5.5.3. Distância Euclidiana Quadrática

4. Supervisionados

4.1. Predição

4.1.1. Oque são: são mecanismos de apresndizado de máquina que lida com a cariação de uma função que se aproxime daquela descrita pelos dados.

4.1.2. Tipos de Algoritimos

4.1.2.1. Regressões

4.1.2.1.1. Regressões Lineares

4.1.2.1.2. Regressoes Logisticas

4.1.3. Overtfitting e Underfitting

4.1.3.1. construir uma função que se aproxima dos dados, super ajustada a cada ponto possível temos um Overfitting, e o contrário disso é um Underfitting. O ideal é criar modelos que sejam generalistas

4.1.4. Bias/Viés e Variância/Tradeoff

4.1.4.1. bias (viés), é a diferença entre a predição média do nosso modelo e o valor correto esperado

4.1.4.1.1. Quanto maior mais o modelo aprendera relações erradas e gera previsões longe do esperado

4.1.4.1.2. Alto bias é cenário para a ocorrência para possivel underfitting

4.1.4.2. variance é a capacidade do modelo de se adaptar à base de treino e ao ruído

4.1.4.2.1. alta variance focam excessivamente se ajustar aos dados, cenário para overfitting. se adaptam tão bem ao dataset que não conseguem generalizar

4.1.4.3. Para diminuir um, aumenta-se o outro. O ganho aqui é encontrar um valor ideal para ambos em um determinado cenário.

4.1.5. Houldout

4.1.5.1. método de dividir o dataset em base de treino e base de teste para validar seu modelo

4.1.5.2. Validação

4.1.5.2.1. amostra dos dados tem como objetivo avaliar o desempenho do modelo durante a fase de otimização dos hiperparâmetros

4.1.5.2.2. A base de teste fica então reservada para o teste final, quando o modelo já estiver otimizado

4.1.6. Validação Cruzada

4.1.6.1. maneira de verificar a performance e capacidade de generalização do seu modelo

4.1.6.2. semelhante ao holdout no sentido em que também treina e testa o modelo em partes diferentes do dataset. Porém, a validação cruzada consiste na utilização de várias divisões do dataset

4.1.6.3. o método mais indicado quando possuímos poucos dados

4.1.6.4. K-fold

4.1.6.4.1. dividir o dataset em k grupos, selecionando um para ser o grupo de validação e os outros k-1 grupos para serem grupos de treino para o modelo

4.1.6.4.2. O modelo é treinado e avaliado. Depois dessa primeira iteração, um dos grupos que anteriormente era de treino torna-se o grupo de validação e o antigo grupo de validação passa a ser um grupo de teste.

4.1.6.4.3. repete até que todos os k grupos tenham sido utilizados como grupo de validação. No final, a performance do modelo é calculada como a média de sua performance em cada iteração.

4.1.7. Avaliação do Modelo

4.1.7.1. Acurácia, MSE,ASE,Acurácia, precisão e recall, F1,Curva ROC e AUC ... depende do algoritmo

5. Analise dos dados

5.1. Arrumando os dados

5.1.1. Entender o dominio dos dados

5.1.1.1. A razão da existencia dos dados, origem e em qual contexto são gerados

5.1.2. Entender o significado de cada feature/coluna

5.1.2.1. Importante para analisar os tipos de dados e qual a informação que cada coluna carrega sobre a base

5.1.3. Verificar padõres das colunas

5.1.3.1. Analisar range dos dados nas colunas, tipo de variável, colaborando pro entendimento do significado da feature e o dominio da base

5.1.4. Tratamento inicial da base

5.1.4.1. Validar valores faltanes

5.1.4.2. Validar valores discrepantes do range

5.1.4.3. Verificar sequenciamento de dados e logica geral de cada feature se não possui valores diferentes do esperado

5.2. Exploração dos dados

5.2.1. Técnicas para interpretar os dados de forma exploratória, apenas mostrando situações/informações presentes na base.

5.2.2. Fazer o entendimento de formas separadas para variáveis categóricas, numericas e depois correlacionando as duas

5.2.3. Tipos de Exploração:

5.2.3.1. Exploração gráfica

5.2.3.1.1. Count de Valores

5.2.3.1.2. Agrupamentos tavbelares

5.2.3.1.3. Frequencias de ocorrências das features(categorias/numericas)

5.2.3.1.4. Visualização tabeladas das informações

5.2.3.2. Exploração por Resumos Estatísticos

5.2.3.2.1. Count de Valores

5.2.3.2.2. Agrupamento tabelares

5.2.3.2.3. Frequencias de ocorrências das features(categoricas/numericas)

5.2.3.2.4. Visualização de graficos de barras, bloxpots