- O que é regressão logística?
- Matemática envolvida na regressão logística
- Medição de desempenho usando matrizes de confusão
- Demonstração de regressão logística com código Python
A regressão logística é um dos algoritmos de aprendizado de máquina mais populares, que é usado no caso de prever vários conjuntos de dados categóricos.. Os conjuntos de dados categóricos têm apenas dois resultados, 0/1 ou sim / Não
Tabela de conteúdo
1 O que é regressão logística?
2 Por que aplicar regressão logística?
3 Matemática envolvida na regressão logística
4 Implementação de regressão logística ao fazer previsões
5 Medição de desempenho
6 principais características da regressão logística
7 tipos de regressão logística
8 Implementação de código Python
1. O que é regressão logística?
É um tipo de algoritmo de aprendizado de máquina de regressão que é implementado para resolver problemas de classificação / categórico,
Problemas com resultados binários, como se / Não, 0/1, Verdade / Falso, são o que chamamos de problemas de classificação.
2. Por que aplicar regressão logística?
A regressão linear não fornece uma boa linha de ajuste para problemas que têm apenas dois valores (como se muestra en la figura"Figura" é um termo usado em vários contextos, Da arte à anatomia. No campo artístico, refere-se à representação de formas humanas ou animais em esculturas e pinturas. Em anatomia, designa a forma e a estrutura do corpo. O que mais, em matemática, "figura" está relacionado a formas geométricas. Sua versatilidade o torna um conceito fundamental em várias disciplinas....). Isso dará menos precisão durante a previsão porque não cobrirá os conjuntos de dados, sendo linear por natureza.
Para o melhor ajuste de conjuntos de dados categóricos, é necessária uma curva que seja possível com a ajuda de regressão logística, uma vez que usa uma função sigmóide para fazer previsões.
3. Matemática envolvida na regressão logística
A principal razão por trás da curvatura da curva de regressão logística é que ela é calculada usando uma função sigmóide. (também conhecido como função logística porque é usado em regressão logística) listado abaixo
Esta é a função matemática que a 'curva em forma de S' tem. O valor da função sigmóide está sempre entre 0 e 1, portanto, é implementado para resolver problemas categóricos que têm dois valores possíveis.
4. Implementação de regressão logística ao fazer previsões
A regressão logística implementa a função sigmóide para fazer previsões no caso de valores categóricos..
Define um valor de ponto de corte, que é principalmente definido em 0.5, naquela, quando é excedido pelo desvio previsto da curva logística, dá a respectiva saída esperada na forma da categoria à qual o conjunto de dados pertence.
Por exemplo,
No caso do modelo de predição de diabetes, se a saída exceder o ponto de corte, o resultado da previsão será dado como Sim para diabetes; pelo contrário, Não, se o valor estiver abaixo do ponto de corte.
5. Medição de desempenho
Para medir el rendimiento del modelo en la resoluçãoo "resolução" refere-se à capacidade de tomar decisões firmes e atingir metas estabelecidas. Em contextos pessoais e profissionais, Envolve a definição de metas claras e o desenvolvimento de um plano de ação para alcançá-las. A resolução é fundamental para o crescimento pessoal e o sucesso em várias áreas da vida, pois permite superar obstáculos e manter o foco no que realmente importa.... de problemas de clasificación, matriz de confusão está sendo usada., Abaixo está a implementação da Matriz de confusão.
Termos chave:
- – TN significa verdadeiros negativos (O valor previsto (negativo) corresponde ao valor real (negativo))
- – FP significa falsos positivos (O valor real era negativo, mas o modelo previu um valor positivo.)
- – FN significa falso negativo(O valor real era positivo, mas o modelo previu um valor negativo)
- – TP significa verdadeiros positivos (O valor previsto (positivo) correspondeu ao valor real (positivo))
Para um bom modelo, não se deve ter muitos falsos positivos ou falsos negativos
6. Principais Características da Regressão Logística
1. A regressão logística é um dos algoritmos de aprendizado de máquina mais populares, usado na técnica de aprendizado de máquina supervisionado. Se utiliza para predecir la variávelEm estatística e matemática, uma "variável" é um símbolo que representa um valor que pode mudar ou variar. Existem diferentes tipos de variáveis, e qualitativo, que descrevem características não numéricas, e quantitativo, representando quantidades numéricas. Variáveis são fundamentais em experimentos e estudos, uma vez que permitem a análise de relações e padrões entre diferentes elementos, facilitando a compreensão de fenômenos complexos.... dependiente categórica, usando um determinado conjunto de variáveis independentes.
2. Preveja a saída de uma variável categórica, que é discreto por natureza. Pode ser sim ou não, 0 o 1, verdadeiro ou falso, etc. mas em vez de dar o valor exato como 0 e 1, dá o resultado como a probabilidade do conjunto de dados que se encontra entre 0 e 1.
3. É semelhante à regressão linear. A única diferença é que a regressão linear é usada para resolver problemas de regressão, enquanto a regressão logística é usada para resolver problemas de classificação / problemas categóricos.
4 Na regressão logística, a função de logística (sigmoidea) A forma de S é usada como a curva de ajuste, o que dá uma saída entre 0 e 1.
7. Tipos de regressão logística
Existem três tipos:
uma combinação
b Ordinal
c Multinomial
uma combinação
A regressão logística binomial lida com problemas com variáveis de destino que têm apenas dois valores possíveis, 0 o 1.
O que pode significar sim / Não, Verdade / Falso, Morto / Valores ao vivo e outros valores categóricos.
b Ordinal
Regressão logística ordinal Lida com aqueles problemas cujas variáveis-alvo podem ter 3 ou mais que 3 valores, bagunçado por natureza. Esses valores não têm significado quantitativo
Por exemplo, tipo de casa 1, tipo de casa 3, tipo de casa 3, etc.
c Multinomial
A regressão logística multinomial, regressão logística simplesmente ordinal, lida com problemas que têm valores de destino maiores ou iguais a 3. A principal diferença é que, ao contrário do Ordinal, esses valores são bem ordenados. Valores têm importância quantitativa
Por exemplo, avaliação de habilidade tão baixa, meios de comunicação, especialista
6. Implementação de código Python
[ Observação: Os conjuntos de dados que estão sendo obtidos são o conjunto de dados do Titanic]
Importação de bibliotecas
importar pandas O que pd
importar entorpecido O que notário público
importar matplotlib.pyplot O que plt
%matplotlib online
importar marinheiro O que sns
sns, definir ()
Importar o conjunto de dados
titanic_data = pd.read_csv(‘Titanic_train.csv’)
Execução de análise exploratória de dados:
1. Verificando várias entradas nulas no conjunto de dados, com a ajuda do mapa de caloruma "mapa de calor" es una representación gráfica que utiliza colores para mostrar la densidad de datos en un área específica. Comúnmente utilizado en análisis de datos, marketing y estudios de comportamiento, este tipo de visualización permite identificar patrones y tendencias rápidamente. A través de variaciones cromáticas, los mapas de calor facilitan la interpretación de grandes volúmenes de información, ayudando a la toma de decisiones informadas....
2.Visualização de várias relações entre variáveis
3. Uso de Box PlotUm box plot, o "box plot", es una herramienta gráfica que resume la distribución de un conjunto de datos a través de sus cuartiles. Este tipo de gráfico muestra la mediana, los cuartiles inferior y superior, así como los valores atípicos. Es útil para visualizar la variabilidad y detectar diferencias entre varios grupos de datos, facilitando la comparación de distribuciones. Su simplicidad lo convierte en un recurso valioso en... para obtener detalles sobre la distribución
sns.mapa de calor(titanic_data.É nulo(), cbar=Falso)
sns.plotagem(X=‘Sobreviveu’, dados=titanic_data)
sns.plotagem(X=‘Sobreviveu’, matiz=‘Sexo’, dados=titanic_data)
sns.plotagem(X=‘Sobreviveu’, matiz=‘Pclass’, dados=titanic_data)
mapa de calor
Idade e cabine têm entradas nulas
sns.enredo de caixa(titanic_data[‘Pclass’], titanic_data['Era'])
Usando a função para substituir entradas nulas
def input_missing_age(colunas):
idade = colunas[0]
passageiro_classe = colunas[1]
e pd.É nulo(idade):
e(passageiro_classe == 1):
Retornar titanic_data[titanic_data[‘Pclass’] == 1]['Era'].significar()
elifpassageiro_classe == 2):
Retornar titanic_data[titanic_data[‘Pclass’] == 2]['Era'].significar()
elifpassageiro_classe == 3):
Retornar titanic_data[titanic_data[‘Pclass’] == 3]['Era'].significar()
o resto:
Retornar idade
Preencha os dados de idade que faltam
titanic_data['Era'] = titanic_data[['Era', ‘Pclass’]].solicitar(input_missing_age, eixo = 1)
Remover dados nulos
titanic_data.soltar('Cabine’, eixo=1, em seu lugar = Certo)
titanic_data.derrubar(em seu lugar = Certo)
Crie variáveis fictícias para a coluna Sexo e Remessas
sex_data = pd.get_dummies(titanic_data['Sexo'], drop_first = Certo)
embarked_data = pd.get_dummies(titanic_data[‘Embarcado’], drop_first = Certo)
Adicionar variáveis fictícias ao DataFrame e remover dados não numéricos
titanic_data = pd.concat([titanic_data, sex_data, embarked_data], eixo = 1)
titanic_data.soltar(['Nome', ‘PassengerId’, 'Bilhete', 'Sexo', ‘Embarcado’], eixo = 1, em seu lugar = Certo)
Imprima o conjunto de dados finalizado
titanic_data.cabeça()
Divida o conjunto de dados em dados x e y
y_data = titanic_data[‘Sobreviveu’]
x_data = titanic_data.soltar(‘Sobreviveu’, eixo = 1)
Divida el conjunto de datos en datos de TreinamentoO treinamento é um processo sistemático projetado para melhorar as habilidades, Conhecimento ou habilidades físicas. É aplicado em várias áreas, como esporte, Educação e desenvolvimento profissional. Um programa de treinamento eficaz inclui planejamento de metas, prática regular e avaliação do progresso. A adaptação às necessidades individuais e a motivação são fatores-chave para alcançar resultados bem-sucedidos e sustentáveis em qualquer disciplina.... y datos de prueba
a partir de Claro.model_selection importar train_test_split
x_training_data, x_test_data, y_training_data, y_test_data = train_test_split(x_data, y_data, test_size = 0,3)
Crie o modelo
a partir de Claro.Modelo linear importar Regressão logística
modelo = Regressão logística()
Treine o modelo e crie previsões
modelo.encaixar(x_training_data, y_training_data)
previsões = modelo.prever(x_test_data)
Calcular métricas de desempenho
a partir de Claro.Métricas importar classificação_report
Imprimir(classificação_report(y_test_data, previsões))
precision recall f1-score support
0 0.83 0.87 0.85 169
1 0.75 0.68 0.72 98
accuracy 0.80 267
macro avg 0.79 0.78 0.78 267
weighted avg 0.80 0.80 0.80 267
Gere uma matriz de confusão
a partir de Claro.Métricas importar matriz de confusão
Imprimir(matriz de confusão(y_test_data,
previsões)
[[145 22]
[ 30 70]]
Com isso eu termino este blog.
Olá a todos, Namaste
Chamo-me Pranshu Sharma e eu sou um entusiasta da ciência de dados
Muito obrigado por dedicar seu valioso tempo para ler este blog.. Sinta-se à vontade para apontar quaisquer erros (depois de tudo, eu sou um aprendiz) e fornecer os comentários correspondentes ou deixar um comentário.
Dhanyvaad !!
Comentários:
Correio eletrônico: [e-mail protegido]
A mídia mostrada neste artigo não é propriedade da DataPeaker e é usada a critério do autor.