Kaggle 上一个用户分类问题
来源:互联网 发布:西安软件服务业产值 编辑:程序博客网 时间:2024/06/05 20:27
Kaggle 地址
参考模型
其实这个项目的关键点在与存在大量的离散的特征,对于离散的维度的处理方法一般就是把每个离散维度的每个特征水平都像SQL行列装换那样转成一个维度,这个维度下的值只有0或1。但这样势必会导致维度暴增。这个项目就是典型,用merge函数把用户表和活动表链接后,存在大量的离散维度。这时候就要用到一种处理维度太多的方法,就是所谓“Hash Trick” 。
假设你的离散维度是用户的学历,每个特征水平拆成单个维度后,有了如下几个维度:
研究生以上,大学本科,大专,高中,初中,小学
有一个hash函数,hash函数的size是5:
hash(研究生以上)=2hash(大学本科)=3hash(大专)=4hash(高中)=2hash(初中)=0hash(小学)=0
因为hash函数的size是5,所以所有的结果都不可能大于等于5(0-4)
那么降维以后原本“研究生以上,大学本科,大专,高中,初中,小学”这6个特征就变成了5个特征,每个特征上的值是这个hash的结果值出现的次数:
[2,0,2,1,1]
0出现了两次,1出现了0次,2出现了两次以此类推。
参考模型里出现了这样一个formula:
f <- ~ . - people_id - activity_id - date.x - date.y - 1
这里解释下,对于hashed.model.matrix这个函数,因为是用来降维的,不关心因变量所有tide符号左边没有值,减号表示剔除一些维度,最后“-1”是因为hashed.model.matrix会在第一列产生一些不明用途的数据,参考这篇链接:点击打开链接
param <- list(objective = "binary:logistic", eval_metric = "auc", booster = "gblinear", eta = 0.03)
上面的Param就是最后boost用到的参数,可以看到著名的逻辑回归,eta表示boost调整权重时的尺度,
booster参数可以选gblinear或gbtree,有待介绍
0 0
- Kaggle 上一个用户分类问题
- 【Kaggle】用随机森林分类算法解决Biologial Response问题
- Kaggle旧金山犯罪分类预测----非数值型特征问题
- 分类-kaggle-titanic
- 非数值型多分类问题——Kaggle旧金山犯罪类型分类问题
- kaggle 各种评价指标之二 :Error Metrics for Classification Problems 分类问题错误度量
- kaggle冰山船只分类竞赛中遇到的Python列表推导式问题
- 解决上一个问题
- kaggle 激活问题
- kaggle之电影文本情感分类
- kaggle 电影评论情感分析 贝叶斯分类
- kaggle MovieSentiment 情感分类的简单套路
- 核心java上一个小问题
- 关于上一个问题的解释
- 盒子上一个问题的解决方法
- kaggle Code :树叶分类 sklearn分类器应用
- 一个框架解决kaggle问题
- 用户分类
- 粒子群算法
- spark的数据存储
- 浅谈路径规划算法之SPFA算法
- POJ
- 合并两个排序的链表
- Kaggle 上一个用户分类问题
- 数据库基础概念
- SOCKET类型定义及应用。
- 伪类和伪元素区分
- Qt中可停靠窗体
- 惰性求值的简单介绍
- MySQl数据类型
- ACM 奇偶数分离
- day23_i18nProject