花式玩逻辑回归之不是只能做二分类

2020/09/28 08:30

花式玩逻辑回归之不是只能做二分类

最近忙了一些,懒也有啦,就没怎么看书,发现一些新的东西,所以更新慢了,之前有个朋友叫我写避免过拟合,但是这个题目真的好广泛,我还没看透,所以这个可能后续再写,今天我们来写个关于逻辑回归的话题。

其实大部分的时候,使用逻辑回归都是处理二分类的问题,那是因为在信用评分卡中,都是认好客户和坏客户,但是在其他的建模场景中还是存在多分类的情况的,例如你想建立一些用户标签,区分使用你在库客户的一些行为特征或者给他们加个标签,更好的建立模型,那么建模中的多分类的话,可能会用神经网络去区分多分类,但是除了神经网络,我们万能的逻辑回归也可以。

介绍两种把逻辑回归变成多分类算法的思路,绝对不是那个多分类的逻辑回归那个算法,底层还是那个二分类的逻辑回归。

1

哑变量式法

平时如果逻辑回归不转化woe的话,字符变量就是以哑变量的形式进入模型的,那么现在我们也可以把我们的多分类变成哑变量的形式建立多个模型。

步骤一:

假设现在是有4个分类,A-B-C-D,现在建立四个模型,这四个模型的Y值是这么设置的:

A 为Y值等于1

B C D 为Y值等于0

F1(X)

B 为Y值等于1

A C D 为Y值等于0

F2(X)

C 为Y值等于1

A B D 为Y值等于0

F3(X)

D 为Y值等于1

A B C 为Y值等于0

F4(X)

分别建立了四个模型,这里你可以用全部的数据分成四份,分别建立四个模型,但是如果你数据少的话,其实我觉得你用同个全样本数据做四个模型。

步骤二:这四个模型分别拟合建立模型,生成这四个模型的标准卡

步骤三:部署应用的就是,客户的全部维度跑四个模型,取预测概率最高的那个即为是哪一类,即max(p(f1(x)), p(f2(x)), p(f3(x)), p(f4(x)))。

2

投票式

还是例如是四个标签,A-B-C-D,这个方法的思路是:

步骤一:

取标签A,C的数据,分别为1,0

F1(X)

取标签A,B的数据,分别为1,0

F2(X)

取标签A,D的数据,分别为1,0

F3(X)

取标签B,C的数据,分别为1,0

F4(X)

取标签C,D的数据,分别为1,0

F5(X)

取标签B,D的数据,分别为1,0

F6(X)

这时候你需要建立是6个模型,每个模型选取的数据是样本中对应标签的数据。

步骤二:分别拟合建立6个模型,并生成6个模型的标准评分卡。

步骤三:部署应用是这样子的:

当一个客户进来的时候:跑第一个模型,预设一个阈值,如果超过阈值则为A,小于阈值就是C,依次算出6个模型的预测标签,预测标签就是这6个模型的最高票。

3

空间距离法

这个方法在西瓜书的65页有详细的介绍,如果你看不懂我写的,你可以去看一下西瓜书的65页-67页的内容。这个方法我是自己看了之后,按照自己的理解再加点一个改动。

这个方法有点麻烦哈,就是你建立多少个模型都可以。

步骤一:你的Y值中的1可以是A 也可以是AB 0是CD ,然后你随机的让一个或者几个标签作为y值中的1,剩下的一个标签作为y值的0,那么你就可以得到以下的矩阵。F1(X),就是A标签为目标标签,剩下则为非目标标签,以此类推


F1(X)

F2(X)

F3(X)

F4(X)

F5(X)

F6(X)

F7(X)

A

1

1

1

1

1

0

0

B

0

1

1

0

0

1

0

C

0

0

1

1

0

0

1

D

0

0

0

0

1

0

0

步骤二:就是你根据的y值取目标标签为1,然后进行建模,分别建立7个模型。这个我建立的模型对D不太公平,正常的话应该是每个标签的做目标标签的次数应该是跟非目标的次数是一样的,但是这个没那么宽,我就列举了一下。

步骤三:部署的时候就是这样子,你的客户维度跑了全部的模型,模型会有一个阈值,那么大于这个阈值就是目标标签,小于阈值就是非目标标签。那么如果想F2(X)这种,大于阈值,那他可能是A标签也可能是B标签,这时候就不好判断了,所以这之后按照空间距离的公司,算出客户预测标签组成一个向量,与A B C D的各个模型的作为目标变量组成的向量,计算预测标签向量与标签向量之间的欧式距离,距离最小的,即预测标签为其标签,我举个例子:

例如有个客户数据是(1,0,0,0,1,0,1),那么他与A B C D欧式距离就是分别是:

那么这个客户的预测标签就是4。我这欧式距离是手算,要是有错的告诉我一下哈。

免费直播

    精选课程 更多

    注册电脑版

    版权所有 2003-2020 广州环球青藤科技发展有限公司