一、基本信息

  • 试验思路
  • 试验简介
  • 使用工具
  • 使用方法

二、项目介绍

(一)研究背景
  • 赛事情况见下图
(二)研究数据
【数据内容】
  • 表1:dim_fashion_match_sets
列名 类型 含义 示例说明
coll_id bigint 搭配套餐ID 1
item_list string 搭配套餐中的商品ID列表(分号分隔,每个分号下可能会有不只一个商品,后面为可替换商品,逗号分隔) 1002,1003,1004;439201;1569773,234303;19836
  • 表2:dim_items
列名 类型 含义 示例说明
item_id bigint 商品ID 1
cat_id bigint 商品所属类目 1
terms string 商品标题分词被打乱的结果,顺序被打乱 5263,2541,2876263
  • 表3:user_bought_history
列名 类型 含义 示例说明
user_id bigint 用户ID 62378843278
item_id bigint 商品ID 439201
create_at string 行为日期(购买) 20140911
  • 表4:预测表
列名 类型 含义 示例说明
item_id bigint 商品ID 90832747
  • 表格中的用户ID,商品ID,类目ID 均经过脱敏处理;
【评价函数】

(三)思路简介
【思路一:直接搭配】
  • 方法一:基于“用户同一天购买的不同类商品可能为搭配商品”的假设

用户当天购买的不同类的商品可能存在可搭配的服装

  • 方法二:通过TFIDF文本相似度

遍历item,寻找与待测商品相似度高且所属类不同的商品

【思路二:间接搭配】
  • 方法:基于达人搭配表

基于已有的达人搭配表,通过寻找与达人套餐中商品相似的商品,来寻找与该商品搭配的商品

三、算法描述

(一)通过用户同一天购买的“不同类”商品
(1)对给定的搭配表进行处理
  1. 对表dim_fashion_match_sets进行遍历;
  2. 获取字段‘item_list’中的item_id
  3. 将item_id与表item进行索引,获取商品所属的类名cat_id
  4. 建立新表
  5. 对item表中的cat_id进行遍历;
  6. 将cat_id与新表进行索引,若查找到当前cat_id,则将视为可搭配
  7. 否则视为不可搭配
(2)对购买历史记录表进行处理
  1. 输入一个商品A,在用户购买记录表中搜索出所有购买过该商品A的用户与购买时间
  2. 通过用户ID和购买时间在用户购买记录表中找该用户在该天购买的其他商品B,C,D…
  3. 注意在进行遍历的时候,过滤与A相同和与A同类的商品
  4. 注意在进行遍历的时候,计算并记录商品对(同时购买的商品,如A&B)的同天购买次数fpm
  5. 注意在进行遍历的时候,计算并记录商品对的类间搭配频数fcm
    注意:计算频数要通过商品所属类别(cat_id),用所属类别遍历类间搭配表 查找A和B类的搭配频数fcm
(3)设计评价函数S
  1. 设计评价函数:S = fmp * ln(1 + fcm)
  2. 对S进行分析,可以发现S越大,说明fcm/fmp越大,则两个商品的搭配程度越高
  3. 对S进行分析,可以发现S==0,说明两个商品不搭配
(4)操作过程
  1. 对搭配表进行处理,将搭配商品item_id集合替换为搭配类别cat_id集合,并生成新表;
  2. 对购买历史记录表进行处理,搜索出每个商品对应的同一天购买的不同类的商品集合;
  3. 根据2获取的商品集合,计算fpm;
  4. 对商品信息表进行处理,搜索两两商品之间的搭配信息,计算对应的频数fcm;
  5. 计算得到fpm和fcm,求得两两商品的相似度情况,并通过相似度大小进行排序;
(二)通过计算TFIDF文本相似度,搜索相似服装

一、TFIDF文本处理 + 余弦相似度

TFIDF = TF * IDF
主要思想:如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。
IDF(逆向文件频率):log(文档总数/包含词条w的文档数+1)
TF(词频):在某一类词条w出现的次数/该类中所有的词条数目

二、余弦相似度
主要思想:将商品特征向量化后,对两个向量来说,之间的夹角越小,计算的余弦值越接近1,相似度越高

相似度较高的商品存在的情况

情况一:同类商品(同为短裤、短袖等)
情况二:可搭配的不同类商品
情况三:同一家店铺的不同类商品(同为uniqlo店铺的衣服)

(1)余弦值的设置
  • 通过实验和参数的控制来调整…
(2)评价函数S
  • 可以设置为求余弦余弦相似度的变量
(三)基于相似商品搭配表推荐,进行匹配推荐

主要思路:

  1. 已知与服装A相似的商品B,C,D;
  2. B,C,D(中的1个或n个)在商品搭配推荐表中出现过,且存在各自搭配的服装集合
  3. 可以认为A能与B/C/D的搭配列表所搭配

四、试验内容

五、试验结果

六、总结

【阿里淘宝天池Baseline服装搭配比赛】尝试一相关推荐

  1. 阿里淘宝新势力造型合伙人P8、年薪百万的欧阳娜娜也躲不过的魔鬼面试,看的我心服口服

    阿里淘宝新势力造型合伙人P8.年薪百万的欧阳娜娜跳槽了,这不是关键. 她参加了网易有道明星语音录音员/代言人的面试,这也不是关键. 关键是她教科书式的面试过程,狠狠地给我们上了一课. 我是无意间刷到的 ...

  2. 为什么佛系青蛙住进了阿里淘宝——访《旅行青蛙》制作人

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 眼下,年初曾火爆一时的佛系手游<旅行青蛙>以新的方式与中国的玩家打了声招呼. 其 ...

  3. 阿里淘宝:“杀死”拼多多!

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 当滴滴.美团激战正酣之时,他们的"爸爸"阿里.腾讯也在各挖墙角.这一次, ...

  4. 大型系统架构设计-阿里淘宝天猫双十一数据库核心技术介绍

    目录 零.双十一是什么? 一.2013 双十一数据库指导思想 1.知己知彼,百战不殆 (1)如何做到知己 (2)如何做到知彼 2.平时多流汗,战时少流血 (1)真实环境压测之缓存穿透 (2)MetaQ ...

  5. 阿里淘宝高层变动 马云卸任

    今天网络上面比较热议的就是关于马云卸任这个阿里集团CEO了,那么现在是谁接任呢?据了解,陆兆禧担任阿里集团CEO,这个无疑是一个重大的新闻,很多的业界人士都是在猜测其中有什么变动.但是多数的人都是说这 ...

  6. 阿里 - 淘宝 - 精排模型发展趋势

    一.DIN网络 2018年7月19日 ,提出attention结构用在用户序列特征上,这种attention不是self-attention,而是预估item用来当做query,用户序列中的每个ite ...

  7. 阿里三面+技术面试+两轮交叉面试+HR面试,终于艰难啃下了这份阿里淘宝的Offer

    背景介绍:项目是管理系统,本科211(非科班),硕士985(非科班). 我面试的岗位:java工程师 部门:新零售事业群-业务平台事业部-交易流程组 非常感谢阿里给的机会,感谢遇到的每一位面试官,面试 ...

  8. 阿里淘宝天猫单点登录项目实战(附源码)

    文章目录 一.简介 二.单点登录常见方案 三.技术架构与实战 四.github地址 一.简介 背景 在企业发展初期,企业使用的系统很少,通常有一个或者两个,每个系统都有自己的登录模块,运营人员每天用自 ...

  9. thinkphp接收阿里淘宝客数据

    坑在于淘宝客api返回的数据对象是SimpleXMLElement Object类型,不转为php的json array类型数据直接扔到thinkphp循环输出中会达不到要的效果,奇奇怪怪的数组,一度 ...

最新文章

  1. 人工智能能否跨越意识鸿沟?
  2. Debian 8 直接升级到 Debian 9
  3. Python高阶函数和eval函数
  4. Problem G: 部分复制字符串
  5. Hadoop Hive创建外部表及多表join操作
  6. 【第二组】项目冲刺(Beta版本)第一次每日例会 2017/7/18
  7. valgrind 常见错误提示信息
  8. [转]关于sizeof()的一些思考
  9. Windows临界区简单实现
  10. Android 消息处理源代码分析(1)
  11. dbscan论文_重点关注!我校论文被CCF A类人工智能国际顶级学术会议IJCAI录用
  12. python开发好吗_用Python开发应用好用吗?
  13. PHP中常见的面试题3(附答案)
  14. 国外字体设计师也是蛮重视数学的
  15. 学习Java心得体会
  16. SPSS Modeler 入门(一)
  17. 计算机专业软件工程专业学科排名2015,软件工程专业排名
  18. MyBatis动态SQL
  19. 数仓建模—元数据管理
  20. 普罗米修斯?古希腊泰坦之神?异形?不,新一代企业级监控组件—Prometheus

热门文章

  1. Understanding Antenna’s Radiation Pattern
  2. 信息学奥赛一本通 1407:笨小猴 | 1851:【08NOIP提高组】笨小猴 | OpenJudge NOI 1.9 06 | 洛谷 P1125 [NOIP2008 提高组] 笨小猴
  3. VSCode中一款超级强大的Markdown插件(可修改Markdown预览主题)--MPE
  4. layui点击某列打开并跳转指定tab
  5. NC报销单流程如何重新修改
  6. 【嵌入式Linux系统开发】网络编程
  7. Android.bp学习
  8. iOS动画一点也不神秘————你是喜欢看幻灯片?还是看高清电影?
  9. 创成汇丨中国创新创业赛事活动都有哪些?
  10. 解决引用MICROSOFT.OFFICE.CORE