$$ Este é um exercicio baseado no link https://datascienceplus.com/r-markdown-how-to-number-and-reference-tables/
As técnicas de regressão são uma das técnicas estatísticas mais populares usadas para modelagem preditiva e tarefas de mineração de dados. Existem mais de 10 tipos de algoritmos de regressão projetados para vários tipos de análise. Cada técnica de regressão tem algumas suposições anexadas a ela que precisamos cumprir antes de executar a análise. Estas técnicas diferem em termos de tipo de variáveis dependentes e independentes e independentes e distribuição.
É a forma mais simples de regressão. É uma técnica na qual a variável dependente é contínua na natureza. A relação entre a variável dependente e as variáveis independentes é assumida como linear por natureza. Quando você tem apenas 1 variável independente e 1 variável dependente, ela é chamada de regressão linear simples. Quando você tem mais de uma variável independente e uma variável dependente, ela é chamada de regressão linear múltipla.
A Equação de Regressão Múltipla é descrita como sendo: Y = β1 + β2X2 + β3X3 + ... + βiXi + ε
onde ‘Y’ é a variável dependente a ser estimada, e X são as variáveis independentes e ε é o termo de erro. βi são os coeficientes de regressão.
Suposições de regressão linear: 1. Deve haver uma relação linear entre variáveis independentes e dependentes. 2.Não deve haver nenhum outliers presente. 3.Sem heterocedasticidade. 4.As observações da amostra devem ser independentes. 5.Os termos de erro devem ser normalmente distribuídos com média 0 e variância constante. 6.Ausência de multicolinearidade e autocorrelação.
Estimando os parâmetros Para estimar os coeficientes de regressão βi, usamos o princípio dos mínimos quadrados, que é minimizar a soma dos quadrados devido aos termos de erro.
Consideramos o conjunto de dados suíços para realizar a regressão linear em R. Usamos a função lm () no pacote base. Tentamos estimar a fertilidade com a ajuda de outras variáveis.
library(datasets) model = lm(Fertility ~ .,data = swiss) lm_coeff = model$coefficients lm_coeff summary(model)
É uma técnica para ajustar uma equação não linear tomando funções polinomiais de variável independente.
Na regressão logística, a variável dependente é de natureza binária (tendo duas categorias). Variáveis independentes podem ser contínuas ou binárias. Na regressão logística multinomial, você pode ter mais de duas categorias em sua variável dependente.
Por que não usamos regressão linear neste caso? A suposição de homocedasticidade é violada. Erros não são normalmente distribuídos y segue a distribuição binomial e, portanto, não é normal.
Exemplos Análise de RH: As empresas de TI recrutam um grande número de pessoas, mas um dos problemas que encontram é depois de aceitar a oferta de emprego na qual muitos candidatos não participam. Então, isso resulta em excesso de custos porque eles precisam repetir todo o processo novamente. Agora, quando você recebe um aplicativo, você pode realmente prever se o candidato provavelmente ingressará na organização (Resultado Binário - Ingressar / Não Participar).
Eleições: Suponha que estamos interessados nos fatores que influenciam se um candidato político vence uma eleição. A variável de resultado (resposta) é binária (0/1); ganhar ou perder. As variáveis de previsão de interesse são a quantidade de dinheiro gasto na campanha e a quantidade de tempo gasto fazendo campanha negativamente.
Previsão da categoria de variável dependente para um determinado vetor X de variáveis independentes Através da regressão logística nós temos - P (Y = 1) = exp (a + BₙX) / (1+ exp (a + BₙX))
Assim, escolhemos um corte de probabilidade, digamos ‘p’ e se P (Yi = 1)> p, então podemos dizer que Yi pertence à classe 1, caso contrário, 0.
Interpretando os coeficientes de regressão logística (Conceito de Odds Ratio) Se tomarmos exponenciais de coeficientes, então obteremos odds ratio com a variável explicativa. Suponha que odds ratio seja igual a dois, então a probabilidade de evento é 2 vezes maior que a probabilidade de não-evento. Suponha que a variável dependente seja o desgaste do cliente (se o cliente fechará relação com a empresa) e a variável independente é o status de cidadania (nacional / expatriado). A probabilidade de expatriação é 3 vezes maior do que as chances de um atributo nacional.
A regressão quantílica é a extensão da regressão linear e geralmente a usamos quando outliers, alta skeweness e heterocedasticidade existem nos dados.
Na regressão linear, predizemos a média da variável dependente para determinadas variáveis independentes. Como a média não descreve toda a distribuição, a modelagem da média não é uma descrição completa de uma relação entre variáveis dependentes e independentes. Assim, podemos usar a regressão quantílica, que prevê um quantil (ou percentil) para determinadas variáveis independentes. O termo "quantile" é o mesmo que "percentile"
Idéia básica de regressão quantílica: Na regressão quantílica, tentamos estimar o quantil da variável dependente dados os valores de X’s. Observe que a variável dependente deve ser contínua.
Interpretando os coeficientes em regressão quantílica: Suponha que a equação de regressão para o 25º quantil de regressão seja: y = 5,2333 + 700,823 x
Isso significa que, para um aumento unitário em x, o aumento estimado no 25º quantil de y em 700.823 unidades. Vantagens do Quantile sobre Regressão Linear Bastante benéfico quando a heteroscedasticidade está presente nos dados. Robusto para outliers A distribuição da variável dependente pode ser descrita através de vários quantis. É mais útil do que a regressão linear quando os dados são distorcidos.
Disclaimer em usar a regressão quantile! Deve-se ter em mente que os coeficientes que obtemos na regressão quantílica para um quantil particular devem diferir significativamente daqueles obtidos a partir da regressão linear. Se não é assim, então o nosso uso da regressão quantílica não é justificável. Isso pode ser feito observando-se os intervalos de confiança dos coeficientes de regressão das estimativas obtidas a partir de ambas as regressões.
Quantile Regression in R We need to install quantreg package in order to carry out quantile regression. Using rq function we try to predict the estimate the 25th quantile of Fertility Rate in Swiss data. For this we set tau = 0.25. Setting tau = 0.5 we run the median regression.
É importante entender o conceito de regularização antes de saltar para a regressão de rebordo.
A regularização geralmente é útil nas seguintes situações: 1. Grande número de variáveis 2. Relação baixa de observações numéricas para número de variáveis 3. Alta Multi-Colinearidade
Função L1 Loss ou Regularização L1 Na regularização de L1, tentamos minimizar a função objetivo adicionando um termo de penalidade à soma dos valores absolutos dos coeficientes. Isso também é conhecido como o método de menor desvio absoluto. Lasso Regression faz uso da regularização L1.
L2 Loss function ou L2 Regularization Na regularização de L2, tentamos minimizar a função objetivo adicionando um termo de penalidade à soma dos quadrados dos coeficientes. Regressão de Ridge ou regressão de encolhimento faz uso da regularização de L2.
Em geral, L2 tem melhor desempenho que a regularização L1. L2 é eficiente em termos de computação. Existe uma área onde L1 é considerada como uma opção preferida sobre L2. L1 possui seleção de recursos incorporados para espaços de recursos esparsos. Por exemplo, você está prevendo se uma pessoa está tendo um tumor cerebral usando mais de 20.000 marcadores genéticos (características). Sabe-se que a grande maioria dos genes tem pouco ou nenhum efeito sobre a presença ou gravidade da maioria das doenças.
Na função objetivo de regressão linear, tentamos minimizar a soma dos quadrados dos erros. Na regressão de rebordo (também conhecida como regressão de contração) adicionamos uma restrição na soma dos quadrados dos coeficientes de regressão. Aqui λ é o parâmetro de regularização que é um número não negativo. Aqui não assumimos normalidade nos termos de erro.
Nota muito importante: Nós não regularizamos o termo de interceptação. A restrição é apenas a soma dos quadrados dos coeficientes de regressão dos X's.
Podemos ver que a regressão de cumeeira faz uso da regularização de L2.
Como podemos escolher o parâmetro de regularização λ?
Se escolhermos lambda = 0, retornamos às estimativas usuais de OLS. Se lambda for escolhido para ser muito grande, isso levará ao underfitting. Assim, é altamente importante determinar um valor desejável de lambda. Para resolver esse problema, plotamos as estimativas dos parâmetros em relação a diferentes valores de lambda e selecionamos o valor mínimo de λ após o qual os parâmetros tendem a se estabilizar.
Laço significa Operador de Encolhimento e Seleção Menos Absoluto. Faz uso da técnica de regularização L1 na função objetivo.
λ é o parâmetro de regularização e o termo de interceptação não é regularizado. Não assumimos que os termos de erro sejam normalmente distribuídos. Para as estimativas, não temos nenhuma fórmula matemática específica, mas podemos obter as estimativas usando algum software estatístico.
Observe que a regressão de laço também precisa de padronização.
Vantagem do laço sobre a regressão de rebordo: A regressão de laço pode executar a seleção de variáveis incorporadas, bem como o encolhimento de parâmetros. Ao usar a regressão de rebentamento, pode-se acabar obtendo todas as variáveis, mas com os Paramaters encolhidos.
Qual deles é melhor - Regressão de Ridge ou Regressão de Laço? Tanto a regressão da crista como a regressão do laço são endereçadas para lidar com a multicolinearidade. A regressão de Ridge é computacionalmente mais eficiente em relação à regressão de laço. Qualquer um deles pode ter um melhor desempenho. Portanto, a melhor abordagem é selecionar esse modelo de regressão que se ajusta bem aos dados do conjunto de testes.
A regressão da Rede Elástica é preferida tanto na regressão do arco quanto no laço quando se está lidando com variáveis independentes altamente correlacionadas.
PCR é uma técnica de regressão que é amplamente utilizada quando você tem muitas variáveis independentes OU multicolinearidade existe em seus dados. Está dividido em 2 etapas: 1. Obtendo os componentes principais 2. Executar análise de regressão nos componentes principais
As características mais comuns da PCR são: 1. Redução de dimensionalidade 2. Remoção de multicolinearidade
Obtendo os componentes principais A análise de componentes principais é um método estatístico para extrair novos recursos quando os recursos originais são altamente correlacionados. Criamos novos recursos com a ajuda de recursos originais, de modo que os novos recursos não sejam correlacionados.
O primeiro PC está tendo a variação máxima. Da mesma forma, podemos encontrar o segundo PC U2 de tal modo que ele não seja correlacionado com U1 e tenha a segunda maior variância. De maneira similar para recursos ‘p’, podemos ter um máximo de PCs ‘p’ de tal forma que todos os PCs não sejam correlacionados entre si e o primeiro PC tenha a variância máxima, então o segundo PC tem a variância máxima e assim por diante.
Desvantagens: Deve ser mencionado que o PCR não é uma técnica de seleção de recursos, mas sim uma técnica de extração de características. Cada componente principal que obtemos é uma função de todos os recursos. Portanto, ao se usar componentes principais, seria impossível explicar qual fator está afetando a variável dependente em qual extensão.
É uma técnica alternativa de regressão de componentes principais quando você tem variáveis independentes altamente correlacionadas. Também é útil quando há um grande número de variáveis independentes.
Diferença entre PLS e PCR Ambas as técnicas criam novas variáveis independentes chamadas componentes que são combinações lineares das variáveis preditoras originais, mas a PCR cria componentes para explicar a variabilidade observada nas variáveis preditoras, sem considerar a variável resposta. Enquanto o PLS considera a variável dependente e, portanto, muitas vezes leva a modelos que são capazes de ajustar a variável dependente com menos componentes.
Regressão PLS em R dados da biblioteca (plsdepot) (veículos) pls.model = plsreg1 (veículos [, c (1: 12,14: 16)], veículos [, 13], composições = 3) # R-Square pls.model $ R2
suporte A regressão vetorial de suporte pode resolver modelos lineares e não lineares. O SVM usa funções de kernel não lineares (como polinômios) para encontrar a solução ideal para modelos não lineares.
A ideia principal do SVR é minimizar o erro, individualizando o hiperplano que maximiza a margem.
library (e1071) svr.model <- svm (Y ~ X, data) pred <- predizer (svr.model, data) pontos (dados $ X, pred, col = “red”, pch = 4)
Ordinal é usada para prever valores ordenados . Em palavras simples, esse tipo de regressão é adequado quando a variável dependente é ordinal por natureza. Exemplo de variáveis ordinais - Respostas da pesquisa (escala de 1 a 6), reação do paciente à dose da droga (nenhuma, leve, grave).
Por que não podemos usar a regressão linear ao lidar com a variável alvo ordinal?
Na regressão linear, a variável dependente assume que as mudanças no nível da variável dependente são equivalentes em todo o intervalo da variável. Por exemplo, a diferença de peso entre uma pessoa com 100 kg e uma pessoa com 120 kg é de 20 kg, o que tem o mesmo significado que a diferença de peso entre uma pessoa que tem 150 kg e uma pessoa com 170 kg. Essas relações não são necessariamente válidas para variáveis ordinais. biblioteca (ordinal) o.model <- clm (classificação ~., dados = vinho) resumo (o.modelo)
A regressão de Poisson é usada quando a variável dependente possui dados de contagem .
Aplicação da Regressão de Poisson - 1. Prever o número de chamadas no atendimento ao cliente relacionadas a um produto específico 2. Estimando o número de chamadas de serviço de emergência durante um evento
A variável dependente deve atender às seguintes condições 1. A variável dependente possui uma distribuição de Poisson. 2. Contagens não podem ser negativas. 3. Este método não é adequado em números não inteiros
No código abaixo, estamos usando conjuntos de dados chamados warpbreaks, que mostram o número de quebras no Yarn durante a tecelagem. Neste caso, o modelo inclui termos para o tipo de lã, a tensão da lã e a interação entre os dois.
pos.model <-glm (quebra ~ lã * tensão, dados = warpbreaks, família = poisson)
resumo (pos.model)
Como a Regressão de Poisson, também lida com dados de contagem. A questão surge “como é diferente da regressão de poisson”. A resposta é negativa. Regressão binomial não assume distribuição de contagem tendo variância igual à sua média. Enquanto a regressão de poisson assume a variância igual à sua média.
Quando a variância dos dados de contagem é maior que a contagem média, é um caso de superdispersão . O oposto da afirmação anterior é um caso de sub-dispersão.
biblioteca (MASS)
nb.model <- glm.nb (Dias ~ Sexo / (Idade + Eth * Lrn), dados = quine)
resumo (nb.model)
É uma alternativa à regressão binomial negativa. Também pode ser usado para dados de contagem superdispersos. Ambos os algoritmos dão resultados semelhantes, existem diferenças na estimativa dos efeitos das covariáveis. A variância de um modelo quase-Poisson é uma função linear da média, enquanto a variância de um modelo binomial negativo é uma função quadrática da média.
qs.pos.model <- glm (Dias ~ Sexo / (Idade + Eth * Lrn), dados = quine, familia = "quasipoisson")
A regressão quasi-Poisson pode lidar com superdispersão e sub-dispersão.
A regressão Cox é adequada para dados de tempo até o evento. Veja os exemplos abaixo - 1. O tempo do cliente abriu a conta até o atrito. 2. Tempo após o tratamento do câncer até a morte. 3. Tempo do primeiro ataque cardíaco ao segundo.
A regressão logística usa uma variável dependente binária, mas ignora o tempo dos eventos.
Além de estimar o tempo necessário para alcançar um determinado evento, a análise de sobrevivência também pode ser usada para comparar o tempo até o evento para vários grupos. Alvos duplos são definidos para o modelo de sobrevivência 1. Uma variável contínua representando o tempo para o evento. 2. Uma variável binária que representa o status se um evento ocorreu ou não.
biblioteca (sobrevivência)
# Câncer de Pulmão Data
# status: 2 =
pulmão da morte $ SurvObj <- com (pulmão, Surv (tempo, estado == 2))
cox.reg <- coxph (SurvObj ~ idade + sexo + ph.karno + perda de peso, dados = pulmão)
cox.reg
$$