SDCC 2015算法专场札记:知名互联网公司的算法实践

发表于4小时前|526次阅读| 来源作者投稿|0 条评论| 作者张俊林

SDCC算法架构大数据京东腾讯
摘要:11月21日,为期三天的SDCC2015中国软件开发者大会成功闭幕,我们特邀请了业内专家、与会者分享他们的听课感受及他们眼中的算法专场。本文是来自畅捷通公共服务部总监张俊林的参加算法专场的听课札记,以飨读者。

【编者按】11月21日,为期三天的SDCC2015中国软件开发者大会成功闭幕,主办方总计邀请了95余位演讲嘉宾,为参会者奉献了10个主题演讲,9大技术专场论坛(80余场技术演讲),另外还有5场特色活动。另外,据官方统计参会人数高达1067名(不含工作人员)。其中21日的算法专场,现场听讲人数一度爆满,而没有机会亲临现场的童鞋们,我们特邀请了业内专家、与会者分享他们的听课感受及他们眼中的算法专场。以下是来自畅捷通公共服务部总监张俊林的参加算法专场的听课札记,以飨读者。日前,笔者也采访了算法大牛张俊林,内容详实,文章:《专访张俊林:十年程序员的感悟与算法之路》。

另外,我们在算法专场举办的当天也做了直播,大家也不妨一看我们的视角:【SDCC 2015现场】算法实践论坛(上):网易、京东、腾讯的算法优化实践、【SDCC 2015现场】算法实践论坛(下):解读大数据创新与个性化算法系统。

以下为张俊林的听课札记:

2015年11月19-21日,由CSDN重磅打造的2015中国软件开发者大会在西山附近的朗丽姿西山花园酒店举行,尽管当天下着小雨,气候阴冷,但是会场内气氛十分热烈。

来自阿里巴巴、腾讯、京东、爱奇艺、美团等互联网公司的算法专家在算法实践分论坛分享了各自的技术经验。

网易技术副总监鞠奇:Query优化实践

来自网易的鞠奇分享了之前在电子商务网站当当工作时有关搜索引擎查询优化的一些工作。搜索引擎有些查询会搜不到结果,为了改善搜索体验,此时搜索引擎会对用户查询进行智能改写,对无搜索结果的查询进行形式上的变换来改善搜索体验。

对于高频的无搜索结果查询来说,因为有大量的用户查询日志可以用以挖掘,所以一般可以将查询改写看作一个排序问题。首先根据一定手段找出与无搜索结果查询语义相近的候选查询集合,一般通过对搜索引擎用户搜索日志进行“Session切分”,找出和无搜索结果查询共献高的其它查询来构造这个候选集。第二步就是如何对这些候选集内的查询串进行排序的问题。鞠奇介绍了两种排序机制,一种是无监督的基于特征对候选查询进行投票的方式,另外一种是采用有监督的机器学习排序(Learning to Rank)。而最典型的特征包括无搜索结果查询和候选查询之间的字面相似性、两者在Session中的距离、候选查询的热门程度等。

对于长尾的无搜索结果查询来说,因为搜索的用户少,所以可以直接利用的用户行为数据很有限。对于这种情况,鞠奇介绍了他们提出的“最大权重,最小距离”的查询改写思路。基本思想是首先把无搜索结果查询中的单词根据类似于TFIDF的思路进行赋权,保留高权值单词,然后根据这些保留特征词找到其它语义相近的查询集合,计算这些查询和无搜索结果查询的语义距离,选择语义距离最近的作为改写后的查询。

京东商城搜索推荐部总监刘思喆:京东商城推荐系统应用实践

推荐系统在电子商务网站的广泛使用是个常态,京东商城也不例外,目前京东已有80多款推荐产品,遍布用户网购的各个环节都存在相应的推荐服务。京东搜索推荐部总监刘思喆介绍了京东商城推荐系统的使用状况,其整体体系结构如图1所示,这是一个非常典型的工业界推荐系统架构。由以HDFS作为基础存储平台的离线挖掘系统、用户行为实时收集并处理的近线系统及在线推荐服务构成,推荐平台提供了K近邻、矩阵分解、图模型等常见的推荐模型。刘思喆重点介绍了在将商品放入购物车后推荐相关商品这一场景下如何使用CTR预估的方式进行推荐功能的开发。

图1 京东商城推荐系统架构

腾讯广点通核心工程师严浩:Peacock:大规模主题模型及其在腾讯业务中的应用

以LDA为代表的主题模型(图2)在实际应用中有很广泛的用途,可以用来对文档的隐含语义进行建模,从而用来推导文档所属语义类别概率分布。但是LDA存在计算速度慢、很难处理大规模数据、Topic数量受限等若干实际使用中的问题。学术界和工业界也一直致力于对这些问题进行改进,典型的例子比如SparseLDA/LightLDA等。Peacock是腾讯在主题模型方面改进的技术方案,腾讯广点通核心工程师严浩介绍了主题模型的基本推导思路以及Peacock是如何对LDA面临的问题进行改进的,并介绍了Peacock在腾讯的广告相关性计算、QQ群推荐及文本语义分析等应用的实际使用。

为了提升LDA的Gibbs采样计算效率,Peacock采用SparseLDA来进行采样,速度比常规LDA提升30倍。对于大规模文档处理,则联合采用了数据并行及模型并行思路,采用大规模并行处理机制,能够支持亿维级别的超大规模矩阵分解,且能计算百万级别的不同主题。通过这些改进,切实改进了传统LDA的实际可使用性。

图2 LDA主题模型

TalkingData首席数据科学家张夏天:随机非参数学习算法简介

随机决策树方法是由Wei Fan等人提出的一种不包含属性选择过程的决策树方法,也被称作随机树集成方法。随机决策树作为一种不含有任何属性选择的决策树构建方法,不仅可以作为一种分类和回归方法使用,还可以作为集成学习中的基学习器使用。相对随机决策树,随机决策森林是一种实践中更经常使用的常用集成学习算法,两者特性对比可参考图3。TalkingData首席数据科学家张夏天在讲座中重点根据自身经验讲解了使用哈希函数确定特征的方式来对随机决策树及随机决策哈希函数算法进行高速并行改造,来快速提升算法效率。

图3 算法比较

阿里巴巴搜索事业部算法专家严强:个性化算法IN双11

2015年双11天猫成交量高达912亿,移动端占比68.67%,其中各个平台的个性化推荐功能对于促进成交量起了非常重要的作用。来自阿里巴巴的算法专家严强介绍了支持阿里集团1000多个应用场景的电商个性化平台TPP(参考图4),该平台具备易用且开发效率高、算法迭代效率高、及时反馈等优点。

严强重点介绍了其中的个性化推荐框架eTREC和实时排序框架Olive。eTREC是一个通用的协同过滤开发框架,封装了基于用户和基于商品的KNN算法以及基于内容的推荐算法,并对相似性计算等常用计算函数做了抽象,这使得该框架既具有快速开发推荐算法的优势,比如可以一行代码实现协同过滤算法;又具有根据用户需求定制算法的可能;同时通过优化底层的MapReduce算法,使得框架运算效率更高。Olive是一个融合了实时流计算和在线学习的近实时机器学习系统,采用了典型的参数服务器架构,与MPI方案比,Olive无论在计算资源的节省方面还是训练速度方面都有大幅提升。

图4 阿里个性化算法系统

美团网数据组技术专家付晴川:机器学习在用户画像上的应用

利用用户的各种行为数据来对用户进行画像,通过用户画像深入了解用户的各方面特点,并使用用户画像来给用户推荐更加个性化和精准的产品和服务,这也是目前的一个产品发展潮流。来自美团的数据技术专家付晴川介绍了在O2O应用场景下如何利用机器学习技术来对用户进行画像(图5)。

同样的,美团用户画像挖掘系统也采用了大量的Hadoop生态系统产品,比如Flume/kafka等数据收集与分发系统,使用Spark和MR等计算系统来进行特征挖掘,使用Spark MLLib/SKLearn/LibSVM等机器学习工具来进行算法开发等。通过挖掘出的用户画像标签,在实际O2O产品中发挥了重要作用,比如“用户是否有车”这一标签应用在具体产品中使得下单率提升了5倍。

图5 美团用户画像的应用场景

爱奇艺视频推荐系统专家王敏:爱奇艺推荐系统架构与实践

推荐系统目前已经在爱奇艺中发挥了非常重要的作用,覆盖了各种终端的数十种应用场景,日均贡献3.5亿点击量,占爱奇艺所有流量的30%。来自爱奇艺的推荐系统专家王敏分享了爱奇艺视频推荐系统的技术架构以及一些典型应用场景。

爱奇艺推荐系统也采用了典型工业推荐系统的技术架构(图6),由离线数据处理系统、近线准实时计算系统以及在线实时推荐三个部分构成。同时,他们也大量采用了Hadoop生态系统的开源系统,比如使用Flume进行日志收集、Kafka用于数据分发、HDFS和HBase存储不同类型的数据、使用Storm和Spark进行推荐逻辑计算等。

图6 爱奇艺推荐系统技术架构

时趣首席科学家王绪刚:如何利用“图计算”实现大规模实时预测分析

社交挖掘也是目前比较火的一个研发方向,来自时趣的首席科学家王绪刚介绍了如何通过社交分析准确刻画用户特征,并应用在精准营销等商业场景(图7)。他重点介绍了自主研发的对消费者行为数据处理的实时图计算引擎CrowdGraph的技术发展历程,及其如何在社交场景下使用CrowdGraph挖掘用户影响力、用户亲密度、用户相似度等应用实例。

图7 社交挖掘商业应用场景

(责编/钱曙光,关注架构和算法领域,寻求报道或者投稿请发邮件qianshg@csdn.net,交流探讨可加微信qshuguang2008,备注姓名+公司+职位)


「CSDN 算法学习交流群」,内有SDCC 2015算法专场的讲师等诸多算法大牛,如果你想进群交流,请加微信qshuguang2008申请入群,备注姓名+公司+职位。


作者简介:张俊林,畅捷通公共服务部总监,曾经在阿里巴巴搜索技术中心、百度商务搜索部凤巢广告平台以及新浪微博搜索部及数据系统部担任资深技术专家,新浪微博技术委员会成员,负责算法策略方向。他还曾是智能信息聚合网站“玩聚网”的联合创始人之一。

本文为CSDN原创文章,未经允许不得转载,如需转载请联系market#csdn.net(#换成@)

SDCC 2015算法专场札记:知名互联网公司的算法实践相关推荐

  1. SDCC 2015架构专场札记:一线互联网公司的架构实践

    SDCC 2015架构专场札记:一线互联网公司的架构实践 发表于8小时前| 835次阅读| 来源CSDN| 1 条评论| 作者么刚 SDCC架构数据库互联网性能优化架构师 width="22 ...

  2. SDCC 2015前端专场札记:Facebook、百度、腾讯、美团、饿了么等互联网公司的前端实战

    SDCC 2015前端专场札记:Facebook.百度.腾讯.美团.饿了么等互联网公司的前端实战 发表于2015-11-27 14:14| 682次阅读| 来源AdMaster| 1 条评论| 作者刘 ...

  3. SDCC 2015中国软件开发者大会盛大开幕

    SDCC 2015中国软件开发者大会盛大开幕 2015-11-19 15:56 共计429次阅读 来源:DoNews赞 1我有话说小中 分享 2015年11月19-21日,由CSDN重磅打造的&quo ...

  4. 知名互联网公司都在使用哪些数据库

    大数据已经成为国家战略,而大数据首先所面临的问题就是大数据的存储问题,这就绕不开数据库,因为数据库就是用来存储数据的应用软件.任何数据库,都有其优缺点, 无论是传统关系型数据库还是NoSQL数据库又或 ...

  5. 知名互联网公司 Java 开发岗面试知识点解析

    GitBook.cn 天之道, 损有余而补不足, 是故虚胜实, 不足胜有余. 如背景中介绍,作者在一年之内参加过多场面试,应聘岗位均为 Java 开发方向. 在不断的面试中,分类总结了 Java 开发 ...

  6. [ZZ]知名互联网公司Python的16道经典面试题及答案

    知名互联网公司Python的16道经典面试题及答案 https://mp.weixin.qq.com/s/To0kYQk6ivYL1Lr8aGlEUw 知名互联网公司Python的16道经典面试题及答 ...

  7. 国内知名互联网公司的开源项目

    国内知名互联网公司的开源项目 时间:2014-09-05 10:24:03  来源:  作者: 这里列出的开源内容由网络整理而来. 阿里 阿里的开源项目很多,这也跟@淘宝正明的开源态度密不可分.有很多 ...

  8. 【计算机就业-算法工程师】校招想去互联网公司担任算法工程师该怎么准备

    前言 hello大家好,我本次分享的主题是计算机专业校招想去互联网公司担任算法工程师该怎么准备,例如笔试和面试需要准备写什么,实习,项目以及论文中会问些什么问题.我将结合自己以及身边小伙伴们的秋招经历 ...

  9. 知名互联网公司需要什么样的人才

    如题,静儿总结,简而言之:对自己有要求,对未来有规划,技术扎实深厚,有亮点. 静儿最近在面试一些同学,所以想总结归纳一下.今天谈谈对上面总述的理解并论证一下为什么用人标准是这样. 对自己有要求 最近经 ...

最新文章

  1. 树莓派4B Ubuntu18 vnc开机自启动
  2. 【Google Play】IARC 年龄分级 ( IARC 国际年龄分级联盟 | Google Play 设置应用年龄分级 )
  3. 有关转换流中涉及的【乱码问题】
  4. html语言文本框的符号,如何将文本框中的值作为HTML字符串提交?
  5. “编程能力差,90%输在了数学上!”CTO:多数程序员都是瞎努力!
  6. 5月20日,GaussDB将有大事发生
  7. Java 嵌入 SPL 轻松实现数据分组
  8. gawk Notes(2)
  9. oppo手机维语字体_OPPO手机中字体设置在哪里 OPPO手机中字体设置方法
  10. PCL XL error Subsystem:KERNEL
  11. Document/View/Frame三口组深入探讨
  12. 对接海康设备-vue
  13. Model Inversion Attacks that Exploit Confidence Informati on and Basic Countermeasures 阅读心得
  14. 如何通过“云之讯”平台,完成短信的发送
  15. python画图y轴在右侧_python画图怎么添加汉字的坐标轴
  16. 基于android的航班船票机票预订查询系统app
  17. 4000字带你深入掌握字符串
  18. ATMega328P-PU芯片Arduino最小系统实验
  19. Execution failed for task ':app:mergeDebugResources'
  20. 2022年7月1日-7月5日linux基本语句

热门文章

  1. mysql如何查看事务日记_MySQL日志查看详解
  2. 笔记本电脑怎么清理灰尘_笔记本电脑维修|笔记本电脑CPU故障
  3. Windows注册表修改实例完全手册(上)
  4. qt-designer使用教程2--调用退出
  5. Microsoft Azure Site Recovery (1) 安装VMM服务器代理
  6. Osmocom-BB 相关资源、知识分享
  7. gulp实现打包js/css/img/html文件,并对js/css/img文件加上版本号
  8. C#中调用python方法
  9. Ubuntu 12.04 64bit 安装编译GCC 4.1.2 绝对原创
  10. Android系统Recovery工作原理之使用update.zip升级过程分析(五)