逻辑回归

简介: 逻辑回归

逻辑回归是用来解决二分类问题的


什么是分类问题


image.png

这是多种不同的动物以及它们不同的特征

每种动物属于不同的种类

有一条新的数据 知道它的特征 这些特征都属于特征列 预测这个是哪个种类的动物

种类那列是属于目标列

这种判断每条数据所属类别的问题属于分类问题


二分类问题


当分类问题的目标列只有两种情况时属于二分类问题

image.png

比如把动物类别修改为是否为哺乳类


回归和分类的区别


不要被逻辑回归的回归二字所欺骗

逻辑回归其实是解决的分类问题

回归模型的输出是连续的

分类模型的输出是离散的

举例说明:

image.png

左图:

x轴表示每小时卖出咖啡的数量

y轴代表通过卖咖啡所赚的钱

y值是连续的值

x值都对应一个y值

当预测值y值是一个连续的值 称这类问题为回归问题

右图:

红色部分表示除去成本之后依然不能盈利

蓝色部分表示除去成本之后开始盈利

这个图表示是否盈利 两种情况

所以是一个二分类问题


逻辑回归是什么



逻辑回归=线性回归+sigmoid函数

什么是线性回归

image.png

用一条直线简单的拟合下自变量和因变量之间的关系

怎么把回归变成分类呢

比如当这家咖啡店y小于130的时候是亏钱的

大于130是盈利的

image.png

映射到x轴 大于14表示盈利 小于14表示亏钱

通过这样一个划分 就把回归问题变成了一个分类问题

什么是sigmoid函数呢

解决的是怎么把回归问题转换成分类问题的转换函数

image.png

当输入值趋向于无穷小的时候函数值越逼近于0

当输入值趋向于无穷大的时候函数值越逼近于1

当输入值是0的时候 函数值为0.5

image.png

线性回归的预测结果y值可能是从负无穷到正无穷的任意的数

将结果作为sigmoid函数的输入

当y值很小的时候对应的sigmoid函数的值是逼近0的值

当y为0的时候作为sigmoid的输入 对应的sigmoid函数值是0.5

当y值非常大的时候 对应的sigmoid函数输出值是逼近1的数

经过sigmoid函数将回归函数得出的结果变成从0到1之间的某一个数

当sigmoid函数小于0.5的时候 会预测为0

当sigmoid函数大于0.5的是时候 会预测为1

这样就得到了一个二分类的结果

公式

线性回归: z=w*x+b

sigmoid函数:


image.png

通过损失函数

求预测值跟实际值相似程度的一个函数

损失函数越小,模型越好


代码


引入依赖包

image.png

image.png

这是libsvm格式的

第一列是label列

这是一个是二分类问题 目标列只有0/1

后面是特征列

每一个值的:前面是第几个特征

:后面表示这个特征的值是多少

image.png

1、先引入数据

2、再对数据进行训练集和测试集的划分

训练集和测试集都是已知的数据

测试集虽然是已知的 拿它和预测结果做对比来评估模型的好坏

3、数据划分完之后 进行训练数据

4、训练完之后把特征和预测处理的值打印出来了

5、打印算法模型的评价结果

运行结果

image.png

SparseVector(4,{0:4.8,1:3.0,2:1.4,3:0.1},0.0)

这个数据的意思 这4个特征预测出来的结果是0

逻辑回归很重要

image.png

这是一个神经网络的图 其中的每一个节点都是一个逻辑回归


相关文章
|
7月前
|
机器学习/深度学习 算法 数据挖掘
逻辑回归算法
逻辑回归(Logistic Regression)是一种广义的线性回归分析模型,常用于数据挖掘、疾病自动诊断、经济预测等领域。它根据给定的自变量数据集来估计事件的发生概率。变量的范围在0和1之间,通常用于二分类问题,最终输出的预测是一个非线性的S型函数,称为logistic function, g()。 逻辑递归(Recursive Logic)是一种在逻辑学中使用的推理方法,它基于递归定义和递归推理规则,用于描述和推导关于递归结构的命题。用于研究自指的悖论和不完全性定理。它是基于自我引用和递归定义的思想,将逻辑和计算理论相结合,形成了一种强有力的推理工具。
WK
|
3月前
|
机器学习/深度学习 算法 数据挖掘
什么是逻辑回归分类器
逻辑回归分类器是一种广泛应用于二分类问题的统计方法,它基于线性组合并通过Sigmoid函数将输出映射为概率值进行分类。核心原理包括:线性组合假设函数、Sigmoid函数转换及基于概率阈值的预测。该模型计算高效、解释性强且鲁棒性好,适用于信用评估、医疗诊断、舆情分析和电商推荐等多种场景。利用现有机器学习库如scikit-learn可简化其实现过程。
WK
49 1
|
4月前
|
机器学习/深度学习 数据挖掘 C#
用C#实现简单的线性回归
用C#实现简单的线性回归
57 1
|
5月前
|
机器学习/深度学习
逻辑回归
【7月更文挑战第22天】逻辑回归
46 5
|
5月前
|
数据可视化 Python
数学方法解决线性回归问题
【7月更文挑战第21天】数学方法解决线性回归问题
49 2
|
5月前
什么是线性回归
【7月更文挑战第21天】什么是线性回归。
82 2
|
5月前
|
机器学习/深度学习 算法 数据挖掘
线性回归
【7月更文挑战第21天】线性回归。
63 1
|
6月前
|
机器学习/深度学习 存储 自然语言处理
逻辑回归的介绍和应用
**逻辑回归简介** 逻辑回归是一种分类模型,尽管名字含“回归”,实际上是用于二分类问题的。它简单易懂,计算高效,适用于许多领域,如医学、社会科学、市场营销等。优点是模型简单,易于实现,具有强解释性。然而,它易受多重共线性影响,可能欠拟合,分类精度有限,尤其对非线性问题和数据不平衡问题处理不佳。在实践中,逻辑回归常作为其他复杂算法的基线,如用于信用卡欺诈检测和点击率预测。通过调整和与其他技术结合,如GBDT,可以提升其性能。
|
7月前
|
机器学习/深度学习 算法 数据挖掘
逻辑回归算法是什么?
逻辑回归(Logistic Regression)是一种广义的线性回归分析模型,常用于数据挖掘、疾病自动诊断、经济预测等领域。它根据给定的自变量数据集来估计事件的发生概率。变量的范围在0和1之间,通常用于二分类问题,最终输出的预测是一个非线性的S型函数,称为logistic function, g()。 逻辑递归(Recursive Logic)是一种在逻辑学中使用的推理方法,它基于递归定义和递归推理规则,用于描述和推导关于递归结构的命题。用于研究自指的悖论和不完全性定理。它是基于自我引用和递归定义的思想,将逻辑和计算理论相结合,形成了一种强有力的推理工具。
|
机器学习/深度学习 存储 算法
逻辑回归模型
逻辑回归模型
143 0