精读&解析 Entire Space Multi-Task Model(ESMM) 阿里2018年CVR预测
本文链接:https://blog.csdn.net/sinat_15443203/article/details/83713802
近期公司在CTR模型的基础上准备重写CVR模型,目前处于调研阶段,读了阿里的处理方法,特意记录下来,温故而知新。下面按照个人理解介绍这篇文章内容,主要思想借鉴一篇博客,文字寻源参考原paper
<Entire Space Multi-Task Model: An Effective Approach for Estimating Post-Click Conversion Rate>
初识:
传统的CVR方法存在两个方面的缺陷:sample selection bias和data sparsity problom。阿里这篇文章利用的用户的行为序列模式(the sequential pattern of user actions)建模,即:impression->click->conversion 数据集保留用户行为过程顺序(阿里把商品曝光记做impression)。目前还没有这种形式的数据集可用,所以阿里自己公开了一个包含用户序列行为的数据集。
提出的ESMM(完整空间多任务)模型能够在完整的样本数据空间(即曝光的样本空间,下图最外层圈)同时学习点击率(post-view click-through rate, CTR)和转化率(post-click conversion rate, CVR)。
用户在购物时都遵循一个顺序:impression → click → conversion。CVR模型旨在预估用户在观察到曝光商品进而点击到商品详情页之后购买此商品的概率,即条件概率 pCVR = p(conversion|click, impression)。传统的CVR建模方法基本照搬CTR模型,数据取自发生曝光+点击的样本空间,即上图中圈。但是,有别于CTR预估任务,CVR预估有三方面的挑战:1) 样本选择偏差;2) 训练数据稀疏;3) 延迟反馈等。下面依次介绍。
在CVR预估任务中,x 是高维稀疏的特征向量, 通常是Multi-fields的,如user特征,item特征等。y 和 z 的取值为0或1,分别表示是否点击和是否购买。CVR模型的目标是预估条件概率pCVR ,与其相关的两个概率为点击率pCTR 和点击且转换率 pCTCVR ,它们之间的关系如下【公式1】:可以通过条件概率公式消掉p(x,y,z)得到。
样本选择偏差(SSB)
如上所述,传统的CVR训练数据是曝光+点击的数据,然而预测时又要在整个样本空间。点击事件只是整个曝光样本空间的一个子集,在子集中提取的特征在完整集中使用是有偏的,且数据分布也不一致,违背了机器学习算法有效训练的前提(iid),减弱模型的泛化能力。
训练数据稀疏(DS)
曝光的商品数肯定是远大于被用户点击的商品数,通常大1~3个数量级。正负样本极度不均衡。在淘宝的数据集上,有点击的样本空间仅占整体样本空间的4%,这就是DS问题,高度稀疏的训练数据使得模型的学习变得相当困难。
延迟反馈
意思是点击后的conversion很可能延时发生,比如看过一个商品,但并没有马上去买,过了几天才去购买(Delayed Feedback),给建模带来困难。文中并没有说,有兴趣可以参考paper <Modeling Delayed Feedback in Display Advertising>
模型介绍
阿里借鉴了多任务学习(迁移学习)的思想,引入两个辅助任务,分别拟合pCTR和pCTCVR,把pCVR当做一个中间变量,从而减弱上述两个传统弊端。模型结构如下:
左边CVR,右边CTR模型。都是基于一个相似的BASE Model构建的网络。两个子网络的输出结果相乘之后即得到pCTCVR,并作为整个任务的输出。上图的左侧就是Base model,是Embedding&MLP的网络结构(由于最近基于DL的CVR模型都是使用这种类似的网络结构,阿里在论文中为了简单起见,也用了这个结构,但是实际应用中肯定不止这么简单,可以借鉴)。
ESMM模型的亮点,区别于其他模型的地方
在整个样本空间建模
【公式1】可以转化为【公式2】:
可以看到pCVR 可以在先估计出pCTR 和pCTCVR之后推导出来。从原理上来说,相当于分别单独训练两个模型拟合出pCTR 和pCTCVR,再通过pCTCVR 除以pCTR 得到最终的拟合目标pCVR 。实际操作中,由于pCTR通常很小,pCTCVR除这个很小的数,容易溢出。故ESMM采用了乘法的形式,避免了除法。且能够使pCVR的值在[0,1]区间。pCTR 和pCTCVR 是ESMM模型需要估计的两个主要因子,而且是在整个样本空间上建模得到的,pCVR 只是一个中间变量。由此可见,ESMM模型是在整个样本空间建模,而不像传统CVR预估模型那样只在点击样本空间建模。
损失函数如下:由两个子任务的loss function组成:
使用交叉熵损失函数。在CTR任务中,有点击行为的曝光事件标记为正样本,没有点击行为发生的曝光事件标记为负样本;在CTCVR任务中,同时有点击和购买行为的曝光事件标记为正样本,否则标记为负样本。
共享特征表示
在embedding层,模型将大规模的稀疏input变为低维的向量。并且,在ESMM模型中,CVR网络中的embedding dictionary和CTR网络是共享的(ID对应的整数是共享的),且embedding层的参数占了网络所有参数的一大部分,且需要很多的数据做训练才能学到较好的embedding向量。由于CTR任务中的训练数据要远多于CVR任务,故这种共享特征表示的机制使CVR网络也能够从只曝光没点击的样本中学习特征表示(也就是embedding向量),有利于缓解CVR训练数据稀疏的问题。
重要:ESMM中的子网络可以被一些模型替代,可能会有更好的表现。但是本文限于篇幅,没有介绍,这也是阿里的一个骚操作,说了方法没说具体时候他们用的什么网络,当然也有可能说了其他小公司也用不成,比如最近的bert NLP模型…
实验结果:
为了评估该方法,从淘宝的推荐系统中收集流量日志(traffic logs),并发布整个数据集的1%随机抽样版本,Public Dataset,将整个数据集称为Product Dataset(生产数据)。
在Public Dataset数据集上的不同算法AUC效果对比情况如表2所示:
在两个数据集上的效果都有提升,这里只说一下对比模型有哪些,可以借鉴:
其中BASE模型是ESMM模型中左边的子神经网络模型,由于其只在点击样本空间训练,会遭遇样本选择偏差和数据稀疏的问题,因为效果也是较差的。DIVISION模型是先分别训练出拟合CTR和CTCVR的模型,再拿CTCVR模型的预测结果除以CTR模型的预测结果得到对CVR模型的预估。ESMM-NS模型是ESMM模型的一个变种模型,其在ESMM模型的基础上去掉了特征表示共享的机制。
比较了模型的两个方面:(1)在点击曝光空间里预估CVR (2)在完整的曝光空间预估CTCVR,观察模型在有偏环境下的表现。pCTCVR = pCTR * pCVR ,两个因子分别建模计算。把Public Dataset按照时间分为两等份,AUC评测,重复十次取平均(网络训练存在随机性,多次训练取平均是常用的方式)。
结论:ESMM模型通过对用户行为模式建模,并且通过transfer mechanism策略充分利用了未点击的数据,效果最好。
总结
综上所述,ESMM模型是一个新颖的CVR预估方法,其首创了利用用户行为的序列特性在完整样本空间建模,避免了传统CVR模型经常遭遇的样本选择偏差和训练数据稀疏的问题,取得了显著的效果。同时,ESMM模型中的子网络可以替换为任意的学习模型,因此ESMM的框架可以非常容易地和其他学习模型集成,从而吸收其他学习模型的优势,进一步提升学习效果。此外,ESMM建模的思想也比较容易被泛化到电商中多阶段行为的全链路预估场景,如 排序→展现→点击→转化 的行为链路预估,想象空间巨大。
个人思考,有什么可以借鉴的?
除了文中说的样本选择偏差和稀疏问题以外。
可以看到DIVISION模型是在完整空间通过base model分别计算CTR CTCVR进而得到CVR的,效果也优于传统的模型,是一个思路;
在实际建模中,也可以尝试把base model替换,只要构造一个新的loss fuction就可以,简单实用的模型可能也比存在bias 问题的数据进行传统CVR建模效果好;
Embedding时候为了提高效率,可以共享embedding dict,怎么实现?之后通过tf尝试一下,有时间在po到博客上来。
这些工程类的文章真的值得用心去读,之前读的DNN4youtube之后有时间也放上来,对于刚进公司的我这种菜鸟,除了多看代码,也要多看工程文章,结合业务才能把工作做好。即时暂时实现不了,多积攒一些小的trick也是极大的帮助。
遗留问题:
在base model中,pooling层看图是sum-pooling,是把user field中的同一维度相加,那这个同一维度是什么意思?是把同一个用户id embedding后的vector相加么?也就是说这个user field指的是什么?是用户ID特征?这个不太理解。
文章最后发布于: 2018-11-07 21:07:01
有 0 个人打赏
jiangda_0_02个月前#3楼
user field 是指用户维度的特征,比如用户维度有楼上说的多个浏览记录等。甚至可能是年龄性别embedding之后的结果。因为embedding维度相同,又都属于用户特征。所以认为是可以直接按照dim相加的。这里user field的说法个人认为类似于FM中或者双塔模型中的习惯说法
查看回复(1)
thormas19965个月前#2楼
element-wise add应该是user field中的不同特征embedding后的向量直接相加
查看回复(1)
jiangzan26603个月前#1楼
不知道我理解的对不对,比如用户浏览的品牌有100个,然后emdedding之后就会有100 x emdeddingsize 的向量,人后这100个向量中emdeddingsize 个元素相加作为这个特征的表示,最后会有100个值作为输入
查看回复(1)
阿里妈妈精准定向检索及基础算法团队最新CVR预估模型
阅读数 2643
今天要总结的一篇paper是阿里妈妈定向广告团队在2018年SIGIR会议上的一篇论文《EntireSpaceMulti-TaskModel:AnEffectiveApproachforEstimati...
博文
来自: guoyuhaoaaa的博客
多任务学习在CVR预估中的应用:Entire Space Multi-Task Model(ESMM,阿里,SIGIR2018)
阅读数 37
原文地址:多任务学习在CVR预估中的应用:EntireSpaceMulti-TaskModel(ESMM,阿里,SIGIR2018)欢迎关注我的公众号,微信搜algorithm_Tian或者扫下面的二...
博文
来自: ty44111144ty的博客
深度模型(十):ESMM
阅读数 148
摘要准确的估计CVR(点击后转化率)对于推荐和广告这类排序系统来说非常关键。传统的CVR模型采用流行的深度学习方法达到目前最好的效果。但是也遇到了一些问题。比如,传统的CVR模型采用点击后的数据训练,...
博文
来自: Jony0917的专栏
推荐系统CTR(CVR)预估模型(多任务学习)之ESMM
阅读数 917
esmm模型是阿里妈妈基础算法团队发表在SIGIR18上的一篇论文,用来做转化率预估。 整篇论文非常简单,创新点也很通俗易懂,转化率预估目前主要存在两个难点:1、sampleselectionbia...
博文
来自: gq的博客
适用华为Huawei Y6 2019硬壳 华为Y6全包360 超薄磨砂PC保护套
1688热销
docker学习笔记
阅读数 9232
docker学习笔记常用的镜像:dockerpullanibali/pytorch:cuda-10.0Docker是什么?Docker是一个虚拟环境容器,可以将你的开发环境、代码、配置文件等一并打包到...
博文
来自: pan_jinquan的博客
学会了这些技术,你离BAT大厂不远了
阅读数 8万+
每一个程序员都有一个梦想,梦想着能够进入阿里、腾讯、字节跳动、百度等一线互联网公司,由于身边的环境等原因,不知道BAT等一线互联网公司使用哪些技术?或者该如何去学习这些技术?或者我该去哪些获取这些技术...
博文
来自: 平头哥的技术博文
Multi-task learning(多任务学习)简介
阅读数 1614
本文转载自:https://blog.csdn.net/u013854886/article/details/38425499 作者来自于中国科学技术大学多媒体计算与通信教育部-微软重点实验室 ...
博文
来自: jialibang的博客
挑战10个最难的Java面试题(附答案)【上】
阅读数 3万+
欢迎添加华为云小助手微信(微信号:HWCloud002或HWCloud003),验证通过后,输入关键字“加群”,加入华为云线上技术讨论群;输入关键字“最新活动”,获取华为云最新特惠促销。华为云诸多技术...
博文
来自: 华为云官方博客
多任务学习(Multi-Task Learning, MTL)
阅读数 3万+
目录[显示]1背景2什么是多任务学习?3多任务学习如何发挥作用?3.1提高泛化能力的潜在原因3.2多任务学习机制3.3后向传播多任务学习如何发现任务是相关的4多任务学习可被广泛应用?4.1使用未来预测...
博文
来自: laolu1573的专栏
...的应用:Entire Space Multi-Task Model(ESMM,阿里,S..._CSDN博客
8-18
Multi-task learning(多任务学习)简介 - jialibang的博..._CSDN博客
10-3
多任务深度学习(MultiTask Learning)
阅读数 2万+
多任务学习给出多个监督信息(标签),利用任务之间的相关性互相促进。案例1-人脸识别香港中文大学汤晓鸥组发表在NIPS14的论文《DeepLearningFaceRepresentationbyJoin...
博文
来自: 毛财胜的专栏
推荐系统遇上深度学习(二十)--探秘阿里之完整空间多任务模型ESSM
10-17
推荐系统论文阅读:Entire Space Multi-Task Model - th..._CSDN博客
10-26
【论文-完整空间多任务模型】Entire Space Multi-Task Model
阅读数 418
转载请注明出处:http://blog.csdn.net/gamer_gyt博主微博:http://weibo.com/234654758Github:https://github.com/think...
博文
来自: Thinkgamer博客
关注
guoyuhaoaaa
80篇文章
排名:千里之外
关注
ty44111144ty
20篇文章
排名:千里之外
关注
jony0917
66篇文章
排名:千里之外
关注
CIA_agent
48篇文章
排名:千里之外
阿里妈妈2018的ESMM(CVR预估) - smartcat2010的博客 - CSDN博客
10-29
...Entire Space Multi-Task Model - Thinkgamer博客 -..._CSDN博客
8-29
程序员实用工具网站
阅读数 15万+
目录1、搜索引擎2、PPT3、图片操作4、文件共享5、应届生招聘6、程序员面试题库7、办公、开发软件8、高清图片、视频素材网站9、项目开源10、在线工具宝典大全程序员开发需要具备良好的信息检索能力,为...
博文
来自: 不脱发的程序猿
中国最顶级的一批程序员,从首富到首负!
阅读数 1万+
过去的20年是程序员快意恩仇的江湖时代通过代码,实现梦想和财富有人痴迷于技术,做出一夜成名的产品有人将技术变现,创办企业成功上市这些早一代的程序员们创造的奇迹引发了一浪高......
博文
来自: 纯洁的微笑
阿里之完整空间多任务模型ESMM介绍 - 猪逻辑公园 - CSDN博客
10-21
阿里妈妈精准定向检索及基础算法团队最新CVR预估模型 -..._CSDN博客
7-7
C语言这么厉害,它自身又是用什么语言写的?
阅读数 2万+
这是来自我的星球的一个提问:“C语言本身用什么语言写的?”换个角度来问,其实是:C语言在运行之前,得编译才行,那C语言的编译器从哪里来?用什么语言来写的?如果是用C语......
博文
来自: 码农翻身
EMSS Entire Space Multi-Task Model: An Effective Ap..._CSDN博客
6-14
利用用户搜索词生成商品标题信息——阿里巴巴IDST
阅读数 1006
今天介绍的论文是阿里IDST在2018年AAAI上发表的paper《AMulti-taskLearningApproachforImprovingProductTitleCompressionwith...
博文
来自: guoyuhaoaaa的博客
强推!盘点阿里巴巴 15 款开发者工具 | 程序员硬核评测
阅读数 8
戳蓝字“CSDN云计算”关注我们哦!程序员硬核评测:客观、高效、不说软话。无论是技术质量、性能水平,还是工具筛选,一测便知!从人工到自动化,从重复到创新,技术演进的历程中......
博文
来自: CSDN业界要闻
美团-深度学习在搜索广告排序的应用实践
阅读数 250
一、前言在计算广告场景中,需要平衡和优化三个参与方——用户、广告主、平台的关键指标,而预估点击率CTR(Click-throughRate)和转化率CVR(ConversionRate)是其中非常重要...
博文
来自: 贾红平
推荐系统遇上深度学习(十九)--探秘阿里之完整空间多任务模型ESSM
阅读数 189
欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答、求职一站式搞定!对商业智能BI、大数据分析挖掘、机器学习,python,R等数据领域感兴趣的同学加...
博文
来自: 简书博客搬家测试账号
《C++ Primer》学习笔记/习题答案 总目录
阅读数 7911
文章目录前言专栏C++学习笔记目录第一章-快速入门第二章-变量和基本类型第三章-标准库类型第四章-数组和指针第五章-表达式第六章-语句第七章-函数第八章-标准IO库第九章-顺序容器第十章-关联容器第十...
博文
来自: 种树最好的时间是10年前,其次是现在!!!
经常喝白酒有3个好处,但前提是,别超过这个份量
天据 · 顶新
Python 愤怒的小鸟代码实现(1):物理引擎pymunk使用
阅读数 9956
python愤怒的小鸟代码实现(1):物理引擎pymunk使用游戏介绍游戏介绍最近比较忙,国庆正好有时间写了python版本的愤怒的小鸟,使用了物理引擎pymunk,代码参考了github上的,实现了...
博文
来自: marble_xu的博客
Entire Space Multi-Task Model: An E ective Approach for Estimating Post-Click Conversion Rate
阅读数 185
ABSTRACT传统的CVR预估有一些问题,比如训练是在被点击的曝光上进行,而预估是在所有曝光上。这就是sampleselectionbias问题。另外,还有一个数据稀疏问题,使得训练比较困难。文中作...
博文
来自: march_on的专栏
推荐系统论文阅读:Entire Space Multi-Task Model
阅读数 62
阿里18年的论文EntireSpaceMulti-TaskModel:AnEffectiveApproachforEstimatingPost-ClickConversionRate.code已经开源...
博文
来自: thormas1996的博客
Git 天天用 但是 Git 原理你了解吗?
阅读数 1万+
Git原理做技术一定要知其然知其所以然,意思就是:知道它是这样的,更知道它为什么是这样的。我主要通过4块内容来简单介绍Git是原理是什么样的。这4块内容如下:Git存储目录结构介绍Git是如何存储的G...
博文
来自: ljk126wy的博客
EMSS Entire Space Multi-Task Model: An Effective Approach for Estimating Post-Click Conversion Rate
阅读数 40
https://zhuanlan.zhihu.com/p/57481330https://blog.csdn.net/sinat_15443203/article/details/83713802ht...
博文
来自: qq_41786778的博客
多任务学习(multi-task learning)
阅读数 515
整理并翻译自吴恩达深度学习系列视频:结构化机器学习2.8。与迁移学习的对比在迁移学习时,你有一个顺序执行的过程,先学习任务A,然后迁移到任务B。在多任务学习中,你开始就使用一个神经网络同时做几个任务,...
博文
来自: Steve Wang's blog
推荐系统遇上深度学习,9篇阿里推荐论文汇总!
阅读数 1637
作者|石晓文转载自小小挖掘机(ID:wAIsjwj)业界常用的推荐系统主要分为两个阶段,召回阶段和精排阶段,当然有时候在最后还会接一些打散或者探索的规则,这点咱们就......
博文
来自: AI科技大本营
【论文笔记】多任务学习(Multi-Task Learning)
阅读数 291
1.前言 多任务学习(Multi-tasklearning)是和单任务学习(single-tasklearning)相对的一种机器学习方法。在机器学习领域,标准的算法理论是一次学习一个任务,也就是系...
博文
来自: weixin_34406086的博客
阿里团队最新实践:如何解决大规模分类问题?
阅读数 2526
翻译|林椿眄编辑|阿司匹林出品|AI科技大本营【AI科技大本营导读】近年来,深度学习已成为机器学习社区的一个主要研究领域。其中一个主要挑战是这种深层网络模型的......
博文
来自: AI科技大本营
多任务学习(Multi-task learning)-1
阅读数 749
多任务学习(Multi-tasklearning)是和单任务学习(single-tasklearning)相对的一种机器学习方法。在机器学习领域,标准的算法理论是一次学习一个任务,也就是系统的输出为实...
博文
来自: wuguangbin1230的博客
VS CODE远程开发入门
阅读数 1584
在我们办公室,通常配置两台电脑,一台Windows主机,主要用于办公、即时通讯,一台Linux主机,用于开发。一般开发人员习惯用Windows系统下的工具,比如SourceInsight,但代码需要在...
博文
来自: 云水木石
Multitask Learning(MTL)
阅读数 23
论文链接:https://link.springer.com/content/pdf/10.1023/A:1007379606734.pdf主要内容单任务学习STL多任务学习MTL图1.四个输入相同的...
博文
来自: DrWells的博客
新手程序员成长之路的五本必读书籍(附资源下载)
阅读数 2万+
全文共3351字,预计学习时长7分钟图片来自Pixabay,IvanPais书籍可以清晰而有条理地陈诉观点,纸张上的笔墨也会给人一种不慌不忙的感觉。不过,科技类书籍存在一......
博文
来自: 读芯术的博客
python机器学习案例系列教程——CTR/CVR中的FM、FFM算法
阅读数 5997
全栈工程师开发手册(作者:栾鹏)python教程全解FM问题来源CTR/CVR预测时,用户的性别、职业、教育水平、品类偏好,商品的品类等,经过One-Hot编码转换后都会导致样本数据的稀疏性。特别是商...
博文
来自: 全栈工程师开发手册(原创)
“我想学习人工智能与机器学习,该从何做起?”
阅读数 5042
全文共3753字,预计学习时长7分钟图源山姆·伯克(SamBourke)在自学机器学习时,经常有人问:我该从哪学起?我需要达到怎样的数学水平呢?我学过Python了,那......
博文
来自: 读芯术的博客
万万没想到:他上亿家产,却委身成窝囊女婿,天天给老婆倒洗脚水...
志阳 · 猎媒
特征工程-TSA笔记
阅读数 1049
看了下前10名的答辩PPT,学习下广告转换率预测中的方法和特征工程中的经验:1.利用历史流水用户最近一次安装App时间差用户最近一次安装同类App时间差用户同类别广告浏览统计用户最近几天安装App统计...
博文
Multi-task Learning(Review)多任务学习概述
阅读数 239
https://www.toutiao.com/a6707402838705701383/背景:只专注于单个模型可能会忽略一些相关任务中可能提升目标任务的潜在信息,通过进行一定程度的共享不同任务之间的...
博文
来自: 喜欢打酱油的老鸟
论文阅读:Deep Neural Networks with Multitask Learning(多任务模型应w用到自然语言处理)
阅读数 1225
文章摘要文章讲述一个使用基于单一卷积神经网络的多任务学习模型,可以给一个句子输出预测一系列语法或语义上的输出:如词性标注、命名实体识别、语言角色,语义相近的单词,自然语言模型(句子有意义的概率)。所有...
博文
来自: SYSU_BOND的博客
阿里之完整空间多任务模型ESMM介绍
阅读数 14
论文地址:https://arxiv.org/abs/1804.07931在正式开篇之前,我们先介绍一下几个名词:impression:用户观察到曝光的产品click:用户对impression的点击...
博文
来自: 猪逻辑公园
别再翻了,面试二叉树看这 11 个就够了~
阅读数 5万+
写在前边数据结构与算法:不知道你有没有这种困惑,虽然刷了很多算法题,当我去面试的时候,面试官让你手写一个算法,可能你对此算法很熟悉,知道实现思路,但是总是不知道该在什么地方写,而且很多边界条件想不全面...
博文
来自: 一个不甘平凡的码农
keras搭建并训练【回归-分类】的multi-task模型——问题总结
阅读数 371
问题与解决:1.【已解决】couldnotconvertBatchDescriptor问题描述:模型可以训练(fit)、预测(predict),但是在存储中间层特征时出现这个问题: 解决过程:单纯的a...
博文
来自: s000da的博客
从入门到精通,Java学习路线导航
阅读数 4万+
引言 最近也有很多人来向我"请教",他们大都是一些刚入门的新手,还不了解这个行业,也不知道从何学起,开始的时候非常迷茫,实在是每天回复很多人也很麻烦,所以在这里统一作个回复吧。 Java学习路线 当然...
博文
我花了一夜用数据结构给女朋友写个H5走迷宫游戏
阅读数 10万+
起因 又到深夜了,我按照以往在csdn和公众号写着数据结构!这占用了我大量的时间!我的超越妹妹严重缺乏陪伴而 怨气满满! 而女朋友时常埋怨,认为数据结构这么抽象难懂的东西没啥作用,常会问道...
博文
100 个网络基础知识普及,看完成半个网络高手
阅读数 10万+
1)什么是链接? 链接是指两个设备之间的连接。它包括用于一个设备能够与另一个设备通信的电缆类型和协议。 2)OSI 参考模型的层次是什么? 有 7 个 OSI 层:物理层,数据链路层,网络层,传...
博文
分享靠写代码赚钱的一些门路
阅读数 3万+
作者 mezod,译者 josephchang10如今,通过自己的代码去赚钱变得越来越简单,不过对很多人来说依然还是很难,因为他们不知道有哪些门路。今天给大家分享一个精彩......
博文
对计算机专业来说学历真的重要吗?
阅读数 5万+
我本科学校是渣渣二本,研究生学校是985,现在毕业五年,校招笔试、面试,社招面试参加了两年了,就我个人的经历来说下这个问题。 这篇文章很长,但绝对是精华,相信我,读完以后,你会知道学历不好的解决方案...
博文
C语言实现推箱子游戏
阅读数 6万+
很早就想过做点小游戏了,但是一直没有机会动手。今天闲来无事,动起手来。过程还是蛮顺利的,代码也不是非常难。今天给大家分享一下~ 一、介绍 开发语言:C语言 开发工具:Dev-C++ 5.11 日期:2...
博文
第二弹!python爬虫批量下载高清大图
阅读数 2万+
文章目录前言下载免费高清大图下载带水印的精选图代码与总结 前言 在上一篇写文章没高质量配图?python爬虫绕过限制一键搜索下载图虫创意图片!中,我们在未登录的情况下实现了图虫创意无水印高清小图的...
博文
2019年10月中国编程语言排行榜
阅读数 8833
2019年10月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 jav...
博文
面试官,不要再问我三次握手和四次挥手
阅读数 10万+
三次握手和四次挥手是各个公司常见的考点,也具有一定的水平区分度,也被一些面试官作为热身题。很多小伙伴说这个问题刚开始回答的挺好,但是后面越回答越冒冷汗,最后就歇菜了。 见过比较典型的面试场景是这样的:...
博文
漫画 | 外行对程序员误会有多深!
阅读数 1万+
作者:阿波、纯洁的微笑漫画:宁州枪手程序员如今已经发展成社会的主流职业,以至于街头的王大妈李大爷都能说出一二来,据说他们认为的程序员是这样子的:程序员都是秃头,秃的越狠越......
博文
感觉自己不会的东西太多了,不知道如何下手?
阅读数 2万+
GitHub 8.8k Star 的Java工程师成神之路 ,不来了解一下吗? GitHub 8.8k Star 的Java工程师成神之路 ,真的不来了解一下吗? GitHub 8.8k Star 的...
博文
据说中台凉了?唔,真香
阅读数 1万+
全文长度: 2200字 阅读时间: 8分钟 TL;DR(too long don'tread) 1、业务中台就是流程模板+扩展点 2、没法很好抽象就别做中台,没那么多需求和业务线就别做中台。 ...
博文
Linux 给我的七个宝贵教训
阅读数 5768
在日常使用过程中,作为时下主流操作系统之一的 Linux,还存在哪些坑?以及从它的应用过程中,我们还可以挖掘出哪些鲜为人知的奥秘?作者 |Nebojsa.todorov......
博文
500行代码,教你用python写个微信飞机大战
阅读数 3万+
这几天在重温微信小游戏的飞机大战,玩着玩着就在思考人生了,这飞机大战怎么就可以做的那么好,操作简单,简单上手。 帮助蹲厕族、YP族、饭圈女孩在无聊之余可以有一样东西让他们振作起来!让他们的左手 / ...
博文
唐僧团队要裁员,你会裁谁?
阅读数 2万+
提问: 西游记取经团为了节约成本,唐太宗需要在这个团队里裁掉一名队员,该裁掉哪一位呢,为什么? 为了完成西天取经任务,组成取经团队,成员有唐僧、孙悟空、猪八戒、沙和尚、白龙马。 高层领导: 观音...
博文
大数据学习之Linux基础
阅读数 2万+
大数据学习之Linux基础 自定义Linux虚拟机安装网络配置1.node1网络配置2.通过快照克隆虚拟机3.配置其他三个节点虚拟机Linux简单命令shell命令运行原理图1.关机与重启2.判断命令...
博文
史上最全的中高级JAVA工程师-面试题汇总
阅读数 3万+
史上最全的java工程师面试题汇总,纯个人总结,精准无误。适合中高级JAVA工程师。...
博文
只因写了一段爬虫,公司200多人被抓!
阅读数 8万+
“一个程序员写了个爬虫程序,整个公司200多人被端了。” “不可能吧!” 刚从朋友听到这个消息的时候,我有点不太相信,做为一名程序员来讲,谁还没有写过几段爬虫呢?只因写爬虫程序就被端有点夸张了吧。...
博文
面试官:谈谈你对mysql索引的认识?
阅读数 1万+
引言 大家好,我渣渣烟。我曾经写过一篇《面试官:谈谈你对表设计的认识?》于是呢,决定再来一个mysql的数据库专题,这篇我们就来谈谈关于索引方面的mysql面试题。还是老规矩,讲的是在Innodb存...
博文
Docker 大势已去,Podman 万岁
阅读数 2万+
前言郑重声明:本文不是 Podman 的入门篇,入门请阅读这篇文章:再见 Docker,是时候拥抱下一代容器工具了Podman 原来是 CRI-O 项目的一部分,后来被分......
博文
别在学习框架了,那些让你起飞的计算机基础知识。
阅读数 2万+
我之前里的文章,写的大部分都是与计算机基础知识相关的,这些基础知识,就像我们的内功,如果在未来想要走的更远,这些内功是必须要修炼的。框架千变万化,而这些通用的底层知识,却是几乎不变的,了解了这些知识,...
博文
Docker技术( 容器虚拟化技术 )
阅读数 1万+
Docker虚拟化容器技术 第一章 Docker简介诞生背景Docker 介绍虚拟机技术容器虚拟化技术官方网址第二章 Docker安装前提条件安装DockerDocker底层原理Docker...
博文
“来我公司写爬虫吗?会坐牢的那种!”
阅读数 1万+
欢迎关注“技术领导力”博客,每天早上8:30推送 “你交代一下,总共抓了多少数据,在哪些网站抓的,数据干什么用了?看看够在里面呆几年。。。”警察语气凝重地对张强说。 程序员张强(化名),回...
博文
快速上手Ajax【一篇文章就搞懂】
阅读数 1万+
目录:1.什么是 AJAX ?2.快速上手2.1 AJAX工作流程图2.2 readyState 和status3. 具体用法3.1 GET 请求3.2. POST 请求3.3选择GET还是POST?...
博文
五款高效率黑科技神器工具,炸裂好用,省时间
阅读数 1万+
loonggg读完需要4分钟速读仅需2分钟感觉我好久好久没有给大家分享高质量的软件和插件了。今天周末,难得在家休息一下,痛下决心,分享一些我认为的高效率工具软件给大家。废......
博文
不就是SELECT COUNT语句吗,竟然能被面试官虐的体无完肤
阅读数 1万+
数据库查询相信很多人都不陌生,所有经常有人调侃程序员就是CRUD专员,这所谓的CRUD指的就是数据库的增删改查。 在数据库的增删改查操作中,使用最频繁的就是查询操作。而在所有查询操作中,统计数量操作更...
博文
程序员必须掌握的核心算法有哪些?
阅读数 3万+
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,...
博文
如何通过个人博客赚钱,走上财务自由?
阅读数 1万+
最近研究个人博客赚钱,看了很多技术人员挣钱的门路的文章,但都只是蜻蜓点水的泛泛而谈,却没有提供具体的方法和策略,也就是挣钱的“术”与“道”。本文与大家分享一下基于个人博客的赚钱方式方法。如果你喜欢这类...
博文
996工作制,还要抽时间提升自己吗?
阅读数 7011
有位朋友说,他新近换了工作,9116工作制,打乱了之前所有的计划,几乎没有多余的时间看书和学习,问我应该怎样在这种忙碌中抽出时间提升自己。 工作很忙,无暇提升,这是个普遍性问题,今天特意针对它聊一下,...
博文
扒一扒编程语言排行榜
阅读数 1万+
“我们公司的课程主推Python , 人工智能首选语言, 2019年 排行第一。” “我们是Java编程课程,Java常年排名第一”“JavaScript才是编程语言......
博文
如何优化MySQL千万级大表,我写了6000字的解读
阅读数 2万+
这是学习笔记的第2138篇文章 千万级大表如何优化,这是一个很有技术含量的问题,通常我们的直觉思维都会跳转到拆分或者数据分区,在此我想做一些补充和梳理,想和大家做一些这方面的经验总结,也欢迎大家...
博文
面试最后一问:你有什么问题想问我吗?
阅读数 1万+
尽管,我们之前分享了这么多关于面试的主题: 高薪必备的一些Spring Boot高级面试题 面试必问:设计模式遵循的面向对象设计原则! 面试必问:怎么保证缓存与数据库的双写一致性? 27道高频Spr...
博文
python 程序员进阶之路:从新手到高手的100个模块
阅读数 2万+
在知乎和CSDN的圈子里,经常看到、听到一些 python 初学者说,学完基础语法后,不知道该学什么,学了也不知道怎么用,一脸的茫然。近日,CSDN的公众号推送了一篇博客,题目叫做《迷思:Python...
博文
计算机公开课推荐 2019.8
阅读数 9692
欢迎任何人参与和完善:一个人可以走的很快,但是一群人却可以走的更远。 ApacheCN 面试求职交流群 724187166 ApacheCN 学习资源 编程 哈佛 CS50:计算机科学导论 ...
博文
大学四年,看过的优质书籍推荐
阅读数 2万+
有时有些读者问我,数据结构与算法该怎么学?有书籍推荐的吗?Java 初学者该怎么学等等。今天我就给大家介绍一些我这几年看过的一些自认为优秀的书籍,由于我看的大部分书籍可以说都是通用的,所以如果你有时间...
博文
Vue + Spring Boot 项目实战(十三):使用 Shiro 实现用户信息加密与登录认证
阅读数 1119
如题,希望这篇文章能解答你对 shiro 的一些疑问。
博文
还在收集资料?我这里有个github汇总
阅读数 7870
原创:小姐姐味道(微信公众号ID:xjjdog),欢迎分享,转载请保留出处。国内程序员都喜欢收集资料,但是又不看,github是重灾区。更有莫名其妙fork的,让人不得要......
博文
程序员不懂浪漫?胡扯!
阅读数 6380
程序员男朋友你的程序员男朋友为你做过什么暖心的事情呢?我的男朋友是一个程序员,他有很多大家在网络上吐槽的程序员的缺点,比如加班很多,没空陪我吃饭逛街看电影,比如说他有的时......
博文
Python 调试冷知识
阅读数 4380
作者 | 喵叔 责编 | 刘静 出品 | CSDN(ID:CSDNnews) 对于 python 代码的调试我们通常都是使用 IDE 自带的调试功能。但是 IDE 提供的调试功能存在局限性,例如...
博文
天天学JAVA-JAVA基础(1)
阅读数 5002
如果觉得我写的还行,请关注我的博客并且点个赞哟。本文主要介绍JAVA基础相关问题,通过阅读本文,你将掌握以下10点 java语言是什么? Java 语言有哪些特点? 面向对象和面向过程的区别 Ja...
博文
date 对应c# c# 处理音频转码mp3 c# 小数点格式 c# 入门经典 第七版 c# main函数调用 c#获取当前代码文件目录 c# int 转数组 c#通讯录管理 c# 中文ascii c#电话客服
©️2019 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客
我的灯还亮着
TA的个人主页 >
私信
关注
原创
18
粉丝
56
获赞
31
评论
71
访问
6万+
等级:
周排名:
5万+
积分:
646
总排名:
10万+
勋章:
最新文章
论文阅读—阿里Graph Embedding的大规模应用
《推荐系统实战》读书笔记——在隐式反馈系统中如何给商品打分
美团如何缓解数据倾斜与shuffle调优
美团实践—spark任务调优以及spark job运行原理
精读2018 KDD rec best paper—embedding在Airbnb的应用实践
分类专栏
算法
11篇
工具
3篇
编程基础
4篇
其他
4篇
白话总结
2篇
归档
2019年9月 1篇
2019年5月 1篇
2019年3月 2篇
2019年2月 1篇
2018年12月 1篇
2018年11月 3篇
2018年10月 5篇
2018年9月 2篇
2018年8月 1篇
2017年10月 2篇
2017年7月 2篇
2017年6月 2篇
2017年5月 2篇
展开
热门文章
coursera无法观看视频解决方法
阅读数 35889
R语言的优劣势
阅读数 6273
用R语言用生存资料做基于radiomic(影像组学)的生存分析
阅读数 4209
精读&解析 Entire Space Multi-Task Model(ESMM) 阿里2018年CVR预测
阅读数 4185
影像组学下(Radiomic)的生存分析基本概念及统计分析
阅读数 2736
最新评论
用R语言用生存资料做基于radio...
sinat_26752095:[reply]sinat_15443203[/reply] 是xtitle嘛?
由aggregateByKey看到...
sinat_15443203:[reply]weixin_45436050[/reply] 嗯 对的 相对来说,aggregatebykey使用起来更灵活,当然reducebykey 也是比groupbykey groupby这些更高效的
由aggregateByKey看到...
weixin_45436050:reduceByKey也会预聚合哦!只不过没有初始值,而且分区间和分区内的操作是一样的
《推荐系统实战》读书笔记——在隐式...
sinat_15443203:[reply]u011531397[/reply] 移步个人知乎,感谢关注。https://zhuanlan.zhihu.com/p/66164007
精读&解析 Entire ...
sinat_15443203:[reply]jiangda_0_0[/reply] 同意,这里面有很多经验操作,效果为导向。
CSDN学院
CSDN企业招聘
kefu@csdn.net QQ客服
客服论坛400-660-0108
工作时间 8:30-22:00
关于我们招聘广告服务 网站地图
百度提供站内搜索 京ICP备19004658号
©1999-2019 北京创新乐知网络技术有限公司
经营性网站备案信息 网络110报警服务
北京互联网违法和不良信息举报中心
中国互联网举报中心家长监护版权申诉
————————————————
版权声明:本文为CSDN博主「我的灯还亮着」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sinat_15443203/article/details/83713802

浙公网安备 33010602011771号