Code Monkey home page Code Monkey logo

smpcup2016's Introduction

2nd Place Solution for SMP CUP 2016

竞赛链接:https://biendata.com/competition/smpcup2016/

队伍成员:Yumeng Li, Peng Fei, Hengchao Li

任务介绍:

参赛队伍利用给定的新浪微博数据(包括用户个人信息、用户微博文本以及用户粉丝列表,详见数据描述部分),进行微博用户画像,具体包括以下三个任务: 任务1:推断用户的年龄(共3个标签:-1979/1980-1989/1990+) 任务2:推断用户的性别(共2个标签:男/女) 任务3:推断用户的地域(共8个标签:东北/华北/华中/华东/西北/西南/华南/境外)

1. 文件配置

程序依赖python3及以下程序包

anaconda3
theano 0.9.0
keras(使用theano作为backend)
xgboost
gensim
jieba

程序运行需要下载原始语料及训练好的word2vec的模型文件,已上传百度云,共1.3GB。

原始语料下载链接:http://pan.baidu.com/s/1o8lV37s 密码:wyk8

word2vec模型文件下载链接:http://pan.baidu.com/s/1ciWjpk 密码:cvlo

文件说明如下:

原始数据放于下面目录中

data/raw_data
    train
    valid

word2vec词向量文件放在下面目录中

data/word2vec/
    smp.w2v.300d     gensim使用的word2vec模型文件
    smp.w2v.300d.syn0.npy    gensim使用的word2vec模型文件

其余目录文件的作用

data/user_data/
    short_prov.dict  省份简称
    location.txt     省份与地域的对应表
    latitude.dict    省份与经纬度的对应表
    keywords.txt     整理出的关键词表
    enum_list.txt    三个任务的label值
    emoji.txt        整理出的表情文件
    city_prov.dict   城市与省份的对应表
    city_loca.dict   城市与地域的对应表
    stopwords.txt    停用词表
data/feature_data/ 用于存放程序运行过程中输出的各类临时文件
data/models/  用于存放程序运行中产生的模型权重参数

2. 运行

程序运行较为耗时,建议使用带有GPU的服务器运行 在Arch Linux, CPU i7-6700HQ, GPU GTX960M, 内存 16G, 固态硬盘 配置的笔记本上运行需要90分钟,占用硬盘空间10GB

#首先运行 run.sh 将使用data/models中保存的模型参数进行运行
./run.sh
#------------------------------------
#如果想从头开始运行,请依次运行
./clean.sh
./run.sh
#随机数种子设置不同,也会输出略微不同的结果

3. 输出文件说明

程序输出的文件将保存在以下两个文件夹中

data/feature_data/
    features.v1.pkl  初次处理后的特征文件,主要是按人进行了划分
    features.v2.pkl  将特征全部转变为numpy array保存
    f_letter_svd.300.cache  将微博原文按字符划分后,取tfidf特征并svd降维至300维
    f_word_svd.300.cache  将微博原文按词划分后,取tfidf特征并svd降维至300维
    f_source_svd.300.cache  将微博来源文本按字符划分后,取count特征并svd降维到300维
    f_w2v_tfidf.300.cache  用句子中每个单词的词向量经tfidf加权的结果作为300维句子向量
    loca.empty.pkl  程序输出的用于补全训练集中location标签缺失的部分
    loca.source.feature  将微博来源文本中出现地名的取出来计算count特征
    yuml.age.feature  由stack_age.py程序输出的经过xgb,mcnn,mcnn2模型输出的概率形式的结果
    
data/models/
    fp.age.feature        main.py在训练过程中产生的权重文件
    fp.gender.feature     main.py在训练过程中产生的权重文件
    loca.em_nn.weight     BP神经网络模型经Stack训练出的权重文件
    loca.em_knn.weight    KNN模型经Stack训练出的权重文件
    loca.em_mcnn.weight   MCNN模型经Stack训练出的权重文件
    loca.em_mcnn3.weight  MCNN3模型经Stack训练出的权重文件
    yuml.age.feature      stack_age.py训练出的权重文件

4. 其他

如果觉得不错的话,欢迎大家点击右上角star,谢谢!

ppt下载

我们参加的其他竞赛:

final winner solution for 2016CCF大数据精准营销中搜狗用户画像挖掘

1st Place Solution for 2016CCF大数据竞赛客户画像赛题(用户画像)

Tsinghua Data Science Winter School 2017 Link Prediction

smpcup2016's People

Contributors

feidapeng avatar hengchao0248 avatar liyumeng avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

smpcup2016's Issues

数据集问题

您好,能麻烦发我一下更新后的数据集链接吗,之前的被百度云屏蔽了,万分感谢!!!

版本问题无法运行

实际上因为keras,sklearn版本更新等问题,根本跑不起来,能提供当时代码的包版本吗,谢谢

数据集没了

百度云把README里面的共享链接封了。

能不能再发一份啊?感谢

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.