04 - MACHINE LEARNING COM PYTHON - UND I e II - DT Flashcards
1) Quais os Algoritmos, estudados na UND-I, que são algoritmos somente regressão linear?
1- make_regression (criar massa de dados)
2 - LinearRegression
3 - Ridge
4 - Lasso
5 - ElasticNet
2) Quais são os algoritmos de validação cruzada Quais são seus tipos?
É para plicar a Validação Cruzada.
- KFold (Regressão linear).
- StratifiedKFold (regressão logística).
3) Quais os algoritmos que fazem a calibração automática dos parâmetros?
1 - RandomizedSearchCV e GridSearchCV
4) Quais dos algoritmos que fazem a calibração automática dos parâmetros são randomizados e totais?
1 - RandomizedSearchCV (de forma aleatória e randomizada, não pega todos os dados).
2 - GridSearchCV (colocando em testes todos os dados para os parâmetros).
Aplica-se para problemas de classificação e regressão.
5) Quais os Algoritmos, estudados na UND-I, que são para resolver somente problema de regressão Logística (Classificação)?
1 - LogisticRegression
2 - *** confusion_matrix (roc_curve e roc_auc_score) (para análise de resultado)
3 - KNeighborsClassifier - KNN
4 - TEOREMA DE NAIVE BAYES - NB )
4.1 - MultinomialNB –> Quando os dados das variáveis preditoras (features) SÃO DISCRETOS (nº inteiros)
4.2 - BernoulliNB —> Quando os dados das variáveis preditoras SÃO DISCRETOS E BINÁRIOS (0 ou 1, são as features que tem este valor, não confunda com os valores das classes do target).
4.3 - GaussianNB —> Quando os dados das variáveis preditoras SÃO CONTÍNUOS (nº reais), devemos utilizar a função GaussianNB.
6) Qual é o algoritmo da árvore de decisão? E para a sua exibição gráfica?
1 - DecisionTreeClassifier (para classificação)
2 - graphviz (gráfico)
3 - DecisionTreeRegressor (para regressão)
7) Qual algoritmo você obrigatoriamente necessita normalizar os dados?
1 - KNN
2 - KMeans (clusterização)
3 - Redução de Dimensionalidade PCA
4 - SVM - Support Vector Machine.
5 - Sistema de Recomendação
8) Quais os algoritmos para se fazer a normalização?
1 - MinMaxScaler
2 - StandardScaler
3 - MaxAbsScaler
4 - normalize
9) Quais as técnicas para Feature Selection?
1 - Correlação (df = nome do dataset) –> print (df.corr(method = ‘pearson’))
2 - SelectKBest + chi2 (Qui-Quadrado) para a regressão logística de nº só positivos.
3 - SelectKBest + f-classif para a regressão logística de nº positivos e negativos.
4 - RFE para a regressão linear.
10) Qual o algoritmo que serve para equalizar os valores dos algoritmos entre o professor e o aluno?
random_state=10 (escolhe número qualquer)
11 - Em ML, qual é o valor ideal para “bias” (ou viés em português) e “variância” em diferente data sets?
O que você busca no ML é ter uma baixa bias e uma baixa variância em diferente data sets
12 - Existem três métodos comumente utilizados que auxiliam na baixa bias e uma baixa variância. Quais são?
1 – Regularização –> (Ridge, Lasso e ElasticNet - lição 03 a 24)
2 – AdaBoostClassifier / AdaBoostRegressor –> (ADABOOST - lição 94 a 98)
3 – BaggingClassifier / BaggingRegressor –> ( BAGGING - lição104-107)
13 - Desenhe um gráfico representando as curva de treino e teste da:
h3 –> overfitting (superajuste)
h2 –> underfitting (subajuste)
h1 –> valor médio de bias e variância.
Lição 02 - 2 – VIÉS (BIAS) E VARIANÇA
14 - Desenhe um gráfico que explique que modelos muitos simples têm alto erro na predição, tanto para os dados de teste e de treino. A medida que você vai deixando complexo o seu modelo, para se ajustar aos dados de treino, tem possibilidade de ir se aproximando do overfitting. Informe no gráfico o seu ponto de equilíbrio, Bias e Variancia.
O segredo é o meio termo entre acerto e complexidade.
15 - Desenhe um gráfico que explique a Bias X a Variância
16 - O que é “Bias” e “Variância”? Qual sua relação?
O conceito de viés (bias) e variância são os dois componentes do erro de um modelo de Machine Learning.
1 - Bias (se lê /baias/, ou viés em português):
O bias pode ser descrito como a diferença entre as previsões do modelo e os valores verdadeiros, ou seja, é uma medida de quão bem o modelo se ajusta aos dados. Um modelo com alto bias tende a fazer previsões incorretas ou simplistas, enquanto um modelo com baixo bias tende a fazer previsões mais precisas e complexas.
O bias está relacionado à capacidade do modelo de capturar a relação verdadeira entre as variáveis. Um modelo com alto bias pode ser muito simples para capturar a complexidade dos dados e, portanto, subestimar ou superestimar a relação entre as variáveis. Por outro lado, um modelo com baixo bias pode ser muito complexo para os dados, levando a overfitting.
2 - Variância:
Um modelo com alta variância pode ser muito complexo para os dados de treinamento, levando a overfitting, ou seja, o modelo se ajusta muito bem aos dados de treinamento, mas tem uma performance ruim em dados novos. Isso significa que o modelo não generaliza bem, ou seja, não é capaz de fazer previsões precisas em dados que não foram usados para treiná-lo.
Por outro lado, um modelo com baixa variância pode ser muito simples para os dados de treinamento, levando a underfitting, ou seja, o modelo não se ajusta bem aos dados de treinamento e, portanto, tem um desempenho ruim tanto em dados de treinamento quanto em dados novos.
3 - Relação entre Bias e Variância:
A relação entre bias e variância pode ser descrita como um trade-off. Um modelo com alta complexidade tende a ter baixa bias e alta variância, enquanto um modelo com baixa complexidade tende a ter alta bias e baixa variância. O objetivo é encontrar um equilíbrio entre bias e variância para obter o melhor desempenho do modelo.
Portanto, a variância não é a diferença entre a bias de treino e a bias de teste, mas sim uma medida da sensibilidade do modelo às variações nos dados de treinamento. E é importante notar que a variância pode afetar tanto o desempenho do modelo em dados de treinamento quanto em dados de teste.
17 - Através de um gráfico, explique como se calcula a variância, para comparação de desempenho entre dois modelos
- No gráfico: pontos verdes dados de treino, pontos azuis dados de teste. A variância também pode ser feita da seguinte forma. Calcula a distância dos pontos azuis da reta de cadamodelo (modelo 1 e 2) e depois eleve os valores das distâncias de cada ponto ao quadrado e soma-se todos os valores de cada reta. Aquele que tiver a menor variância é o melhor modelo (1 ou 2).
- Na reta do modelo 1, nos pontos azuis, dados de teste, dá para perceber que se aproximam mais da reta do modelo 1. Logo o modelo 1 tem uma menor variança em comaparação com o modelo 2.
18 - No geral, quais as recomendações para a quantidade de NaN em um dataset? Onde se deve focar sua atenção com referência aos dados faltantes? Comente.
Os dados faltantes devem ser analisados por cada coluna. Não verifique os dados faltantes nas linhas e sim foque os dados faltante por cada coluna.
1 - 5%, no máximo –> você tem liberdade de aplicar qualquer das técnicas de lidar com os dados faltantes. Poderá ser excluída as linhas (observações) dos dados faltantes, substituir pela média, pela mediana. O percentual de 5% não vai alterar, de forma significante, o resultado de seu modelo.
2 - 10% a 15% –> Na prática, quando há 10% ou 15% de dados faltantes, costuma substituir os dados pela média ou mediana
3 - 30% para mais –> considerado uma quantidade alta de dados faltantes, podendo causar uma alteração relevante para teu modelo.
4 - 60% para mais –> Acima de 60%, é considerado uma coisa anômalo, devendo ser considerado, a remoção (delete) total desta variável (coluna).
** Acima temos as recomendações padrões, mas não são uma regra fixa, pois tudo vai depender do caso prático em que se está trabalhando.
** O problema maior será quando a variável é importante e existe muitos dados faltantes nele.
** Portanto, antes de decidir qual técnica será aplicada nos dados faltantes, deve-se investigar antes, a importância, o peso, da variável em seu modelo.
** Quando estiver 10% a 15% deve ser testado com a mediana, com a média, rodando o modelo e ver qual atinge melhor performance.
*** Existe também casos em que a quantidade de dados são astronômicas, com mais de 1 milhão. Neste caso, os subconjuntos que sobram, quando se exclui linhas, já são o suficiente para alimentar o modelo para ele aprender. Também, neste caso, é outra análise que deve ser feita.
19 - O que é correlação?
- Correlação é uma medida de quanto as coisas andam juntas ou andam separadas. Se as duas coisas andam juntas (subindo ou descendo), a correlação é positiva. Se as duas coisas andam em sentidos opostos, a correlação é negativa.
02. Estas medidas de correlação podem ser normalizadas, ou seja, deixar esta medida entre o intervalo dos números 1 e 0.
20 - O que é Variáveis Discretas e Variáveis Contínuas? Quais distribuições de probabilidades são usadas para cada variável?
-
** VARIÁVEIS DISCRETAS: quando o conjunto de resultados possíveis é finito ou enumerável. Exemplo: número de filhos, alunos numa escola etc. Usadas nas distribuições de Probabilidades de Bernoulli, Poisson e Binomial.
** VARIÁVEIS CONTÍNUAS: quando os valores são expressos como intervalo ou união de números reais. Exemplo: peso, massa, altura, pressão sistólica, idade, nível de açúcar no sangue etc. Usadas nas distribuições de Probabilidades de Uniforme, Normal de Probabilidade, Normal de Padrão.
21 - Que tipo de variável se é usado para o Coeficiente da Correlação de Pearson? qual sua relação com o Coeficiente de Determinação R2?
*** O COEFICIENTE DA CORRELAÇÃO DE PEARSON é para as variáveis quantitativas. É a medida de associação linear. O coeficiente da correlação de Pearson é representado pela letra “r” em minúsculo (também representado pelo símbolo p ). Quando se eleva o “r” ao quadrado (R2) nasce o coeficiente de determinação R2.
22 - Como se deve interpretar os valores do Coeficiente da Correlação de Pearson?
23 - Quais análises temos que fazer sobre os pontos fora da curva? Como pode identificar os pontos outliers?
1 – Primeira análise. Seria bom excluir todos os valores outliers? Isso depende de cada caso.
A - Depende do algoritmo que estamos usando.
Se for um algoritmo do tipo regressão linear, ou outro qualquer, que vai multiplicar pesos vezes as variáveis (análise combinatória), os pontos outliers podem influência muito para pior o nosso modelo ML. Portanto, para os algoritmos que se utilizam de um método de cálculo semelhante ao de regressão linear, é interessante considerar o contexto destes outlier para o modelo de negócio de seu cliente e verificar se tem a possibilidade de excluir, sem prejudicar a predição de seu objetivo. Sempre devemos usar o bom senso para verificar se excluímos ou não os outliers. É muito importante pensar e entender cada variável do seu dataset. Para os algoritmos, semelhante ao da Árvore de Decisão (DT), neste caso, este algoritmo é muito robusto em relação aos pontos outliers, ou seja, ele não vai influenciar no resultado, porque a DT somente vai dividir os valores em classes, e os outliers está em um grupo destas classes. Mesmo fazendo as análises, você deve testar seu mole com os outliers e sem os outliers, para verificar qual deles se aproximam mais da realidade, de seus dados de teste. Estes testes fazem parte da fase do pré-processamento.
Para a análises dos pontos outliers podemos rodar o gráfico boxplot importado do pacote matplotlib.
24 - Para os valores de chi2 abaixo (Qui-Quadrado) seleciona a melhor Feature?
Para χ2a = 18,96
Para X2b = 0,023
Para X2c = 4,348
1 - Com os valores calculados, a interpretação correta é que a variável X2a é a mais relevante para calcular sua variável target. Já a variável X2b é a menos relevante para calcular sua variável target, quase que insignificante. Assim, as duas mais relevantes são: X2a e X2c