逻辑回归

2019-07-22  本文已影响0人  Bounty_Hunter

逻辑回归说的是数据的分类,估计的是一个离散值

线性回归用来估计某个连续值,如果用线性回归来归类,预测值是0.1 0.2 而不是1 和 0。

根据:

如果我们可以计算属于每个类的观察概率,我们可以将它分配给具有最高概率的类。

我们需要一个函数可以将 feature 的 Series 作为输入​,返回概率值域为[0,1]

Logit函数

比值比(odds ratio) ,它可以被写成 ​ ,其中的 ​ 代表正事件(positive event)的概率.

正事件代表我们想要预测的事件。比如:病人患有某种疾病的概率。

我们把正事件的类标签设置为1。比值比的对数称为Logit函数,它可以写成如下形式:

可以证明 ​ 的定义域为 [0,1],值域为​

image

logit函数输入0到1的值并把它们转换为整个实数范围内的值,则

输入的是 特征向量x的条件下,类别y=1的概率, 输出的是输出范围是整个实数。

模型的线性分量包含设计矩阵和要估计的参数矢量。 自变量X的设计矩阵由N行和K + 1列组成,其中K是模型中指定的独立变量的数量。 对于设计矩阵的每一行,第一个元素xi0 = 1.这是截距或“alpha”。参数矢量β是长度为K + 1的列向量。有一个参数对应于每个 X列中的K列自变量设置加上一个β0,用于截距。

因此如果我们想得到特征向量x的条件下,类别y=1的概率的话,就是取 Logit() 的反函数

Sigmoid 函数

Sigmoid 图像:

定义域​ ,值域[ 0 , 1]

image

(1)式对应的反函数如果我们只取截距 ​ 和1 列数据,得到

这就是简单Logistic回归模型

numpy.ndarray.astype( dtype )

将 array 里的数据强制转换类型

numpy.reshape(a, newshape, order='C')

将矩阵换个形状

上一篇下一篇

猜你喜欢

热点阅读