小白PythonPandasTensorflow实现-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

小白PythonPandasTensorflow实现

2018-05-15 09:52:06 3271 1
0. 结果
F1:1.65 Accuracy: 0.01



代码请见github:github.com/jady3356/MachineLearning/tree/master/Tianchi/fresh_offline
(注:几乎每行都有注释,但是不能直接跑,注释掉了很多特征提取的代码)
这样的结果几乎可以用excel过滤来得到,由于我是ML,数据挖掘,python都是业余小白,仅仅是做练习用,请轻拍~


1. 动机


看了Ng老师的视频,做了练习拿了证书,看了看Tensorflow的基础,玩了玩阿里的PI,也拿别人的代码跑了一些预测。总感觉没有属于自己的入手的实际的toy project。突然看到有个天池大赛,里面有新人离线赛。感觉可以练练手。

2. 初探


第一感觉挺简单的,这种推荐系统都是ML人不屑于搞的东东,推荐算法也算是ML的一个应用奇葩吧。但是,我拿到这个题目的时候根本没想清楚是解决一个什么问题,应该如何建模,只知道应该是一个逻辑回归的问题。然后一股脑的把user_id, item_id, geo_hash, time, item_cat,都作为特征,把behaviro_type作为label. 当然还花了大力气把time和geo_hash数字化,做到最后却不知道怎么预测。。。渐渐发现自己根本没有入门,要学的东西太多了。如何处理csv, 如何做特征工程,倒是是要解决什么问题,怎么建立模型...统统都是小白。

3. 入门


(1) Pandas
pd貌似是ML特征处理比较流行的工具,看到大师貌似都用spark, sql. 完全不懂, 感觉pd比较容易上手。主要用到的功能有,读写csv, 数据类型转换,去重, 统计,过滤,groupby, merge, join...要提前的特征并不复杂,但是基本上要用到pd常用的功能。我没有专门去学习每一个方法,都是每要实现一点就去百度,很多方法用的很多遍都还是不理解。不过最后各个问题都有解决办法了。过程是艰难的,曾经几度想放弃。
(2)模型构建
刚开始,自己一直想不明白怎么建模。百度了一圈,主要参考三个大神的帖子:
oilbeater.com/%E9%98%BF%E9%87%8C%E5%A4%A7%E6%95%B0%E6%8D%AE%E6%AF%94%E8%B5%9B/2014/04/04/the-bigdata-race-3.html
blog.csdn.net/wy250229163/article/details/53046006
blog.csdn.net/Snoopy_Yuan/article/details/75105724
首先,用1216-1217的特征和1218是否购买(label)构成了一个训练模型。然后把1217-1218的相同的特征代入训练好的模型(各种feature的weight)来预测1219是否购买。一种简单的建模就是:
index                     features        label
user_id, item_id     feature          1/0
index可以理解为总的输入数据的index, 类似与图像识别的每张图片的index, 不能算作特征。
feature就是购买行为,时间与user_id, item_id之前的对应的数据中提取出来的列。简单理解就是通过大量的用户-商品与特征的关系的模型。
比如,用户在1216和1217点击了且加了购物车,那么1218购买的概率就很大。表现在逻辑回归的角度来看就是点击和加购物车的weight就会很大,其他收藏,购买的weight很小,甚至为负的,因为买过的人就很可能不会再买了。

4. 总结


(1) 特征还可以扩充到100维,成绩应该还可以提高,有时间再研究;
(2) 特征工程占80%的工作量一点都不假;
(3) 最后提交结果一直是0,百度了一下用notepad++打开对比了样列,发现user_id和item_id保存成了float, 弄了好几天还以为是模型或者格式不对,超囧~
(4) 大神貌似都用spark+sklearn,有空应该再学习。
(5)tensorflow建的模型或者参数初始化有点问题,貌似有梯度消失的问题,训练到30次左右,accuracy就不变了,而且不稳定,有时候很差;
取消 提交回答
全部回答(1)
相关问答

4

回答

Spark 【问答合集】

社区小助手 2019-05-29 14:13:40 127195浏览量 回答数 4

10

回答

【精品问答合集】Hbase热门问答

hbase小能手 2019-05-29 14:37:26 120840浏览量 回答数 10

38

回答

干货分享:DBA专家门诊一期:索引与sql优化问题汇总

xiaofanqie 2014-12-25 15:13:38 92099浏览量 回答数 38

22

回答

爬虫数据管理【问答合集】

我是管理员 2018-08-10 16:37:41 147255浏览量 回答数 22

5

回答

java.lang.UnsupportedOperationException: This is supposed to be overridden by subclasses.

迷茫君 2019-07-16 09:26:11 118890浏览量 回答数 5

7

回答

机器学习PAI中数据视图组件怎么查看100条以后的数据

拼夕夕小马 2019-06-22 22:01:34 116808浏览量 回答数 7

42

回答

【精品问答集锦】Python热门问题

小六码奴 2019-05-30 15:27:34 137070浏览量 回答数 42

249

回答

阿里云LNAMP(Linux + Nginx + Apache + MySQL + PHP)环境一键安装脚本

云代维 2014-02-14 15:26:06 305658浏览量 回答数 249

24

回答

【精品问答】python技术1000问(1)

问问小秘 2019-11-15 13:25:00 475759浏览量 回答数 24

13

回答

游戏云精彩帖汇总

nono20011908 2014-08-22 11:00:12 203984浏览量 回答数 13
+关注
0
文章
1
问答
问答排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载