前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【SPA大赛】LR模型的简单使用教程

【SPA大赛】LR模型的简单使用教程

原创
作者头像
李润凯
修改2017-06-19 17:55:49
2.3K0
修改2017-06-19 17:55:49
举报
文章被收录于专栏:李润凯的专栏李润凯的专栏

1、 什么是 LR 模型

LR ( Logistic Regression ) 是在线性回归的基础上,套用了一个逻辑函数。 而回归是一种及其简单的模型,我们一个普通的二元函数 y=f(x),就属于回归的一种。它虽然简单,但是它有一个极其致命的缺点:线性回归的鲁棒性很差。这使回归模型在机器学习领域上表现很一般。但是套用了逻辑函数之后,逻辑回归模型在克服了线性回归鲁棒性差这个缺点,使得它在机器学习上面有了一席之地。像腾讯算法大赛这类二分类问题,就可以用逻辑回归来实现。

2、 LR 模型的代码实现

首先导入必要的工具包:

[1496983807308_8307_1496983813234.png]
[1496983807308_8307_1496983813234.png]

接着用pandas工具包里面的read_csv()函数把训练集和测试集导入:

[1496983850368_5727_1496983856058.png]
[1496983850368_5727_1496983856058.png]

分离出特征值和label,在下面的代码中,column_name是特征值名字的列表,如‘age’,’ positionID’,…..:

[1496983902747_1250_1496983905788.png]
[1496983902747_1250_1496983905788.png]

从sklearn.linear_model里导入LogisticRegression。

在Python中提供了LR模型,我们直接引入相应的包就可以使用LR模型:

[1496983976947_2596_1496983979903.png]
[1496983976947_2596_1496983979903.png]

引入相应的模型后,我们就可以调用LogisticRegression中的fit函数用来训练模型参数:

[1496983998488_1421_1496984001426.png]
[1496983998488_1421_1496984001426.png]

模型训练好了之后,接下来就是进行结果的预测了。

[1496984018708_508_1496984021657.png]
[1496984018708_508_1496984021657.png]

其中result是predict_proba产生的一个预测概率,由此我们得到了腾讯算法大赛要求的概率将其输出既可得到所要的zip文件,具体实现在官方的baseline中有相应的代码实现,在此不再赘述,附上官方baseline的链接,有需要的同学可以参考:腾讯社交广告算法大赛 Baseline

3、 LR模型对维度过大的特征值的处理

为了使得预测结果不会被某些维度过大的特征值而主导。Python中提供了标准化数据相应的函数,保证每个维度的特征数据方差为1,均值为0。由此让我们的LR模型对此次算法大赛中一些离散度较高的特征有了应对之策,例如下图的positionID,数据大小相差较大,会导致结果受到影响,使用标准化处理可以避免这个问题,使得我们可以得到一个更好的成绩。

[1496984089226_9136_1496984092505.png]
[1496984089226_9136_1496984092505.png]

以上即为LR模型结合本次腾讯算法大赛的简单使用教程,如有错误,欢迎大家指出!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、 什么是 LR 模型
  • 2、 LR 模型的代码实现
  • 3、 LR模型对维度过大的特征值的处理
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档