![](https://img-blog.csdnimg.cn/20210828102726118.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
机器学习&深度学习
文章平均质量分 94
机器学习&深度学习知识
天泽28
计算机科学并不仅仅是关于计算机,就像天文学并不仅仅是关于望远镜。
展开
-
推荐系统(二十)谷歌YouTubeDNN(Deep Neural Networks for YouTube Recommendations)
YouTubeDNN包含召回和排序两个模块,目前这个时间点再去按照实用价值评价YouTubeDNN的话,其召回价值大于精排价值,因为目前精排迭代的模型已经很多了,基本上不会有公司使用YouTubeDNN的精排了,其召回应该还应用的很广,目前在我们自己的业务中就有一路YouTubeDNN的召回。原创 2022-04-09 10:09:14 · 3814 阅读 · 8 评论 -
推荐系统(十九)Gate网络(二):百度GemNN(Gating-Enhanced Multi-Task Neural Networks)
百度这篇文章老实讲,创新点是弱了点,这应该也是被SIGIR'21录用为短文的原因吧。个人认为这篇文章最让人感兴趣的反而不是这个模型结构,而是文章中笔墨不多的凤巢目前模型架构的一些trick,然而遗憾的是不知道是因为短文篇幅受限的原因还是不想过多描述的原因(大概率是这个原因),这部分没有被过多的介绍。原创 2022-04-05 13:07:06 · 2631 阅读 · 0 评论 -
推荐系统(十八)Gate网络(一):新浪微博GateNet
CTR预估模型在学术界/工业界进化的路线有明显的几个节点:1. 从单特征到交叉特征,围绕着如何学到更有用的交叉特征,诞生了一系列的模型。2. attention火起来后,被迅速应用到CTR预估领域中,又有很多模型被提出。3. gate网络火起来后,同样也催生了一些模型。但话说,我其实一直没太搞明白『attention』和『gate』本质上的区别是什么?言归正传,这篇博客将要介绍新浪微博张俊林大佬团队提出的GateNet模型,这篇文章我只在arxiv上找到了,并没有找到公开发表的版本。原创 2022-04-04 16:06:49 · 3405 阅读 · 3 评论 -
推荐系统(十七)双塔模型:微软DSSM模型(Deep Structured Semantic Models)
DSSM全称Deep Structured Semantic Models,是伊利诺伊大学厄巴纳-香槟分校(UIUC)与微软于2013年发表在CIKM上的,盲猜是一作在微软实习时的工作,所以基本上是微软的成果。DSSM在业界搜广推的影响力目前来说是超过前面介绍的任何一个模型,基本上统治了召回/粗排阶段。值得一提的是我厂(百度)同样在2013年(那个年头的百度还处在如日中天的状态)搞了个双塔模型simnet,不过并没有发表相应的论文,具体可以参见:[百度NLP | 神经网络语义匹配技术]原创 2022-04-03 13:08:38 · 10033 阅读 · 5 评论 -
推荐系统(十六)多任务学习:腾讯PLE模型(Progressive Layered Extraction model)
PLE模型是腾讯发表在RecSys ’20上的文章,这篇paper获得了recsys'20的best paper award,也算为腾讯脱离技术贫民的大业添砖加瓦了。这篇文章号称极大的缓解了多任务学习中存在的两大顽疾:负迁移(negative transfer)现象和跷跷板(seesaw phenomenon),由此带来了相比较其他MTL模型比较大的性能提升。从论文呈现的实验结果也确实是这样的,但从模型结构上来看,更像是大力出奇迹,即性能的提升是由参数量变多而带来的(仅仅是个人看法~)。原创 2022-03-20 22:24:42 · 16621 阅读 · 2 评论 -
推荐系统(十五)多任务学习:谷歌MMoE(Multi-gate Mixture-of-Experts )
如果又有多个目标,多个tower之间的相关性并不是很强,比如,CTR、点赞、时长、完播、分享等,并且有的目标的数据量并不是很足够,甚至无法单独训练一个DNN(当然,你如果说我单独建模用xgb,那我无话可说),在这种情况下,我们可能就要考虑MTL了,这时候MMoE就可以派上用场了。值得一提的是,MMoE是谷歌发表在KDD'18上的,和阿里的ESMM同年发表,所以相互之间应该独立的两个工作。原创 2022-03-19 10:56:31 · 10813 阅读 · 4 评论 -
推荐系统(十四)多任务学习:阿里ESMM(完整空间多任务模型)
ESMM整个模型结构非常符合我个人的审美:简单、优美。ESSM全称Entire Space Multi-Task Model,也就是全样本空间的多任务模型,该模型有效地解决了CVR建模(转化率预估)中存在的两个非常重要的问题:样本选择偏差(SSB,sample selection bias)和数据稀疏。当然CVR领域还存在其他一些比较重要的问题,比如转化延迟反馈问题,这个不在这篇paper也不在本博客讨论范围之内,后面会写一些这方面的博客。原创 2022-03-12 12:57:23 · 5394 阅读 · 9 评论 -
推荐系统(十三)阿里深度兴趣网络(三):DSIN模型(Deep Session Interest Network)
这篇发表在IJCAI'2019S上的文章,实际上有点对不起标题,与阿里前两篇paper(DIN,DIEN)相比,DSIN是一篇典型的离线跑跑实验,发发paper(俗称灌水?)的论文,个人对这篇论文的评价:估计写这篇paper的团队纯粹为了KPI,他们大概率根本部署到线上,以这篇paper所描述网络结构的复杂度,即使以阿里的工程能力,个人都觉得很难部署到线上,所以这篇paper只提到了在阿里真的数据集(记住是数据集)上做了评估,只字未提部署到淘宝的线上推荐服务中。这篇文章在工业界没有引起什么注意。原创 2022-03-05 10:12:12 · 1787 阅读 · 0 评论 -
推荐系统(十二)阿里深度兴趣网络(二):DIEN模型(Deep Interest Evolution Network)
目前的CTR预估模型都直接把用户行为当做用户兴趣,简单的做个embedding后就进入到MLP中,并没有挖掘潜藏在这些行为之后用户的兴趣。DIEN则通过用户行为序列挖掘背后隐藏的用户兴趣及进化过程。原创 2022-02-26 22:06:39 · 6063 阅读 · 5 评论 -
推荐系统(十一)阿里深度兴趣网络(一):DIN模型(Deep Interest Network)
DIN(Deep Interest Network)模型是阿里妈妈盖坤团队发表在KDD'18上的文章,因为有阿里的光环,因此,这个模型在业界还是比较有名气的,至于最终在其他公司场景下有没有效果,取决于对比的baseline,如果你的baseline足够弱,理论上会有一定效果的提升,当然,如果你的baseline够强,可能一点效果都没有。之前博客介绍的模型都在解决如何有效的学到高阶交叉特征,而DIN的核心思想是把attention机制引入了到用户兴趣建模上。原创 2022-02-26 09:58:17 · 10178 阅读 · 13 评论 -
推荐系统(十)DeepFM模型(A Factorization-Machine based Neural Network)
DeepFM受到谷歌wide&deep模型的启发,是一个左右组合(混合)模型结构,不同的是,在wide部分用了FM模型来代替LR模型。 1. 在wide部分使用FM代替了wide&deep中的LR,有了FM自动构造学习二阶(考虑到时间复杂度原因,通常都是二阶)交叉特征的能力,因此不再需要特征工程。Wide&Deep模型中LR部分依然需要人工的特征交叉,比如【用户已安装的app】与【给用户曝光的app】两个特征做交叉。另外,仅仅通过人工的手动交叉,又回到了之前在讲FM模型中提到的,比如要两个特征共现,否则无原创 2022-02-19 12:02:56 · 4238 阅读 · 0 评论 -
推荐系统(九)PNN模型(Product-based Neural Networks)
PNN模型(Product-based Neural Networks)和上一篇博客介绍的FNN模型一样,都是出自交大张伟楠老师及其合作者,这篇paper发表在ICDM'2016上,是个CCF-B类会议,这个模型我个人基本上没听到过工业界哪个公司在自己的场景下实践过,但我们依然可以看看这篇paper的成果,也许能为自己的业务模型提供一些参考借鉴意义。PNN是通过引入product(可以是内积也可以是外积)来达到特征交叉的目的。原创 2022-02-13 22:40:41 · 4635 阅读 · 6 评论 -
推荐系统(八)FNN模型(FM+MLP=FNN)
FNN全称Factorisation Machine supported Neural Network,如果用一句简短的话概括FNN那就是:FM+MLP,如果再用一句稍显复杂的话概括FNN那就是:FNN是一个两阶段训练的模型,阶段一先训练一个FM模型得到每个field的embedding向量,阶段二,基于阶段一的embedding向量初始化MLP的embedding层,然后训练一个MLP(DNN)。原创 2022-02-12 11:03:57 · 4301 阅读 · 1 评论 -
推荐系统(七)xDeepFM模型
xDeepFM这篇文章是中科大、北邮和微软合作发表在KDD'18上的文章,乍一看论文标题xDeepFM还以为是对DeepFM的改进,实际上xDeepFM是对DCN(deep&cross network)中cross部分做了改进。xDeepFM主要包含三部分:线性部分、CIN部分用于构造高阶交叉特征、普通的DNN部分用于自动学习隐式交叉特征。最终联合训练优化。原创 2022-02-08 15:38:51 · 3439 阅读 · 4 评论 -
推荐系统(六)Deep & Cross Network(DCN)
DCN思想依然是推荐系统模型的永恒主题——**如何得到更有效的交叉特征,从而提高模型的表达能力。**其主要工作是针对wide&deep网络中wide部分做了改进,在wide&deep网络中,wide部分是个简单的线性模型,其交叉特征依然需要人工设计,而在DCN中设计了专门的cross网络用于自动学习交叉特征。原创 2022-01-28 20:05:14 · 4325 阅读 · 0 评论 -
计算广告(一)【Ad Click Prediction: a View from the Trenches】工程实践视角下的广告点击率预估
其实这篇文章也不是最原始的论文,最原始的论文为[1],这篇论文从理论上介绍了FTRL。而《Ad Click Prediction: a View from the Trenches》这篇论文则注重在把理论运用到实践中,因此这篇论文的作者数量高达15+个。这篇论文的motivation为:**在线服务的内存是有限的,如何减少模型的体积,即如何能使得模型变得更加稀疏,减少特征数量。原创 2022-01-16 19:05:28 · 2810 阅读 · 0 评论 -
推荐系统(五)wide&deep模型
推荐系统(五)wide&deep推荐系统系列博客:推荐系统(一)推荐系统整体概览推荐系统(二)GBDT+LR模型推荐系统(三)Factorization Machines(FM)推荐系统(四)Field-aware Factorization Machines(FFM)...原创 2021-11-21 17:59:59 · 3305 阅读 · 0 评论 -
推荐系统(四)Field-aware Factorization Machines(FFM)
推荐系统(四)Field-aware Factorization Machines(FFM)推荐系统系列博客:推荐系统(一)推荐系统整体概览推荐系统(二)GBDT+LR模型推荐系统(三)Factorization Machines(FM)上一篇博客介绍了FM模型,这篇博客来介绍下FM模型的改进版FFM模型,看名字也能窥探一二,FFM模型相比较FM模型改进点在于“F”,这个F指的是Field-aware,作者也在论文中提到这个idea受rendle大佬的PITF文章[文献2]启发。这篇文章的核心原创 2021-11-07 18:17:36 · 2979 阅读 · 5 评论 -
推荐系统(三)Factorization Machines(FM)
推荐系统(三)Factorization Machines(FM)推荐系统系列博客:推荐系统(一)推荐系统整体概览推荐系统(二)GBDT+LR模型按照发表年份,这篇博客应该在GBDT+LR之前写的,但因为FM相比较GBDT+LR的内容稍微多些,所以就后写了这篇博客。言归正传,FM是推荐系统领域大佬rendle于2010年发表在ICDM上的论文,是一篇非常非常有影响力的论文,启发了此后10年学术界大量的工作,直接的改进就有引入神经网络的NFM,引入attention的AFM等(关于NFM和AFM这两个原创 2021-10-19 20:38:13 · 5311 阅读 · 0 评论 -
推荐系统(二)GBDT+LR模型
推荐系统(二)LR+GBDT模型 在写这篇博客之前,一度纠结许久,到底该不该起这个标题,因为把LR+GBDT模型放在推荐系统系列里,似乎有些不妥,如果放到计算广告里那才是根正苗红,但目前推荐和广告在模型这一块几乎都是一样的,因此就暂且把这些CTR预估的模型放到推荐系统系列博客里了。最近重读了Facebook发表在ADKDD’14上的论文《Practical Lessons from Predicting Clicks on Ads at Facebook》,从这篇论文标题中的“Practical Le.原创 2021-09-20 23:15:53 · 3808 阅读 · 9 评论 -
推荐系统(一)推荐系统整体概览
自1992年,施乐的帕拉奥图研究中心(PARC,PARC有很多创造性的发明,比如打印机,鼠标,操作系统图形界面等)发明了基于协同过滤的推荐系统[<sup>1</sup>](#refer-anchor-1)后,后面比较出名的工业界应用就是亚马逊的UCF,Netflix的推荐系统等,进入到深度学习后,推荐系统基本在做电商、资讯、视频的公司里都开启了大规模的应用。在PC互联网时代,主线是 **“人找信息”**,所以搜索引擎的地位如日中天,进入到移动互联网时代后,大量的信息井喷,由此开启了 **“信息找人”**。原创 2021-08-26 22:37:45 · 4686 阅读 · 3 评论 -
LDA系列
LDA系列时隔近一年再次更新了一篇博客,过去一年主要是秋招和一些事情(其实就是自己懒),博客近一年没有更新。这次受到马晨大神的托付帮忙宣传正版,对于正版我们每个人都有义务去维护。在我个人学习LDA的时候,这本《LDA漫游指南》使我受益匪浅。所以这篇博客不仅把正版《LDA漫游指南》放上来,另外把我们以前对一些LDA系列的推导也放上来了,有需要的同学可以参考下,如果我的推导有误,还请包涵。《LDA漫游指南》arxiv地址:《LDA漫游指南》LDA系列公式推导,包括(LDA、BLDA、GSDMM).原创 2020-05-29 14:24:37 · 672 阅读 · 0 评论 -
逻辑斯谛回归之决策边界 logistic regression -- decision boundary
逻辑回归之决策边界 logistic regression -- decision boundarylogistic回归虽然带着回归两字却和线性回归有很大的区别,在前几篇博客中完整的介绍了线性回归。线性回归主要用于预测问题,其输出值为连续变量,而logistic回归主要用于分类问题,其输出值为离散值。logistic回归可以用于多元分类问题,也可以用于二元分类问题,但二元分类更为常用。原创 2016-04-05 22:52:11 · 19349 阅读 · 9 评论 -
scikit-learn之kmeans应用及问题
scikit-learn之kmeans应用及问题&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;最近在实习的时候用到了kmeans做个聚类,采用了sklearn框架,平时在学校数据集规模一般都比较小,搬搬砖一切都ok,但是在工业界碰到大数据量的时候(还没有到用hdfs存的地步,数据集大约10G的样子,370w左右的样本,每个样本维度200),就没有原创 2019-01-20 01:08:58 · 5617 阅读 · 1 评论 -
RNN(recurrent neural network)(一)——基础知识
RNN(recurrent neural network)(一)——基础知识 RNN系列博客:RNN(recurrent neural network)(一)——基础知识RNN(recurrent neural network)(二)——动手实现一个RNN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;n原创 2018-12-11 01:16:51 · 5469 阅读 · 3 评论 -
文本预处理:词袋模型(bag of words,BOW)、TF-IDF
文本预处理:词袋模型(bag of words,BOW)、TF-IDF这篇博客主要整理介绍文本预处理中的词袋模型(bag of words,BOW)和TF-IDF。一、词袋模型(bag of words,BOW)词袋模型能够把一个句子转化为向量表示,是比较简单直白的一种方法,它不考虑句子中单词的顺序,只考虑词表(vocabulary)中单词在这个句子中的出现次数。下面直接来看一个例子吧(例...原创 2018-12-03 14:58:32 · 26232 阅读 · 2 评论 -
scikit-learn中超参数搜索之网格搜索(GridSearchCV)
scikit-learn中超参数搜索之网格搜索(GridSearchCV)&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;为了能够让我们的模型取得更好的性能,往往有很多超参数需要调。sklearn中主要提供原创 2018-11-30 23:11:22 · 13870 阅读 · 5 评论 -
一步步手写神经网络
一步步手写神经网络&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;这篇博客主要是一步步的手撸一个神经网络出来,相信看完这篇博客,大家会对神经原创 2018-04-25 23:42:31 · 13996 阅读 · 13 评论 -
一步步做一个数字手势识别APP
一步步做一个数字手势识别APP 这篇博客主要基于我做的一个数字手势识别APP,具体分享下如何一步步训练一个卷积神经网络模型(CNN)模型,然后把模型集成到Android Studio中,开发一个数字手势识别APP。整个project的源码将会开源在github上,欢迎star,哈哈。先说下这个数字手势识别APP的功能:能够识别做出的 0,1,2,3,4,5,6,7,8,9,10这11个手势。...原创 2018-07-21 21:26:03 · 29887 阅读 · 93 评论 -
将TensorFlow训练好的模型迁移到Android APP上(TensorFlowLite)
将TensorFlow训练好的模型迁移到Android APP上(TensorFlowLite)1. 写在前面 最近在做一个数字手势识别的APP(关于这个项目,我会再写一篇博客仔细介绍,并且开源在github上),要把在PC端训练好的模型放到Android APP上,调研了下,谷歌发布了TensorFlow Lite可以把TensorFlow训练好的模型迁移到Android AP...原创 2018-07-21 21:23:24 · 56310 阅读 · 76 评论 -
ubuntu16.04+GTX750ti+python3.6.5配置cuda9.0+cudnn7.05+TensorFlow-gpu1.8.0
ubuntu16.04+GTX750ti+python3.6.5配置TensorFlow-1.8.0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;因为ubuntu16.04上python3版本是3.5.3,而我又是强迫症,就想用python3.6,因此开始折腾起来,原创 2018-07-08 21:59:49 · 8911 阅读 · 0 评论 -
机器学习资料整理
机器学习资料整理&amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp;写在前面:原创 2018-06-04 23:49:30 · 3866 阅读 · 0 评论 -
RNN(recurrent neural network)(二)——动手实现一个RNN
RNN(recurrent neural network)(二)——动手实现一个RNNRNN系列博客:RNN(recurrent neural network)(一)——基础知识RNN(recurrent neural network)(二)——动手实现一个RNN&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&原创 2019-02-12 22:10:18 · 3095 阅读 · 2 评论 -
LSTM(Long Short-Term Memory)
LSTM(Long Short-Term Memory)前面的两篇博客介绍了基本的循环神经网络RNN(recurrent neural network):RNN(recurrent neural network)(一)——基础知识 RNN(recurrent neural network)(二)——动手实现一个RNN但是基本的RNN(之所以强调是基本的RNN,是因为LSTM本质上也是一...原创 2019-02-24 16:53:29 · 3912 阅读 · 1 评论 -
梯度提升决策树(Gradient Boosting Decision Tree,GBDT)
梯度提升决策树(Gradient Boosting Decision Tree,GBDT)集成学习的系列博客:集成学习(ensemble learning)基础知识随机森林(random forest)AdaBoost算法(一)——基础知识篇AdaBoost算法(二)——理论推导篇梯度提升决策树(Gradient Boosting Decision Tree,GBDT)今天来讲一...原创 2019-07-07 15:09:56 · 16024 阅读 · 5 评论 -
分类与回归树(classification and regression tree,CART)之回归
分类与回归树(classification and regression tree,CART)之回归写在前面: 因为正在看提升树,所以又去看了李航老师《统计学习方法》的CART算法的回归部分,看完莫名想起了本科导师的名言:国内人写书,喜欢简单问题复杂化,复杂问题超级复杂化。可能是我境界不够,我不明白两个for循环的事情为何会叙述的如此复杂。。复杂到你可能得花费一些时间去思考他想表达什么,复杂到你...原创 2019-06-27 22:59:52 · 9728 阅读 · 18 评论 -
AdaBoost算法(二)——理论推导篇
AdaBoost算法(二)——理论推导篇集成学习系列博客:集成学习(ensemble learning)基础知识随机森林(random forest)AdaBoost算法(一)——基础知识篇AdaBoost算法(二)——理论推导篇在前面AdaBoost算法(一)——基础知识篇中详细介绍了adaboost的基础知识和原理,如果你只想了解adaboost的基本原理那么只看那篇博客就足...原创 2019-06-09 17:27:46 · 2057 阅读 · 2 评论 -
AdaBoost算法(一)——基础知识篇
AdaBoost算法(一)——基础知识篇集成学习系列博客:集成学习(ensemble learning)基础知识随机森林(random forest)AdaBoost算法(一)——基础知识篇在前面博客集成学习(ensemble learning)基础知识中介绍了集成学习方法大体可分为Boosting、Bagging和Stacking。在Boosting算法族中最著名的就是AdaBo...原创 2019-05-08 21:09:08 · 8147 阅读 · 12 评论 -
随机森林(random forest)
随机森林(random forest)写在前面:本博客为周志华《机器学习》随机森林部分的读书笔记,虽有自己微小的理解补充,但理论部分大部分内容依然来自西瓜书。集成学习系列博客:集成学习(ensemble learning)基础知识随机森林(random forest)在前面一篇博客里(集成学习(ensemble learning)基础知识)梳理了集成学习中的基础知识,今天这篇博客就来...原创 2019-05-04 16:45:14 · 3582 阅读 · 0 评论 -
集成学习(ensemble learning)基础知识
集成学习(ensemble learning)基础知识写在前面:这是一篇只大体梳理集成学习(ensemble learning)基础知识的博客,如果你已经对集成学习很熟悉了,完全可以跳过了。本博客为周志华《机器学习》第8章集成学习的读书笔记,虽有自己微小的理解补充,但大部分内容依然来自西瓜书。本科时粗浅的搞过一段时间的集成学习,当然正如前面所说,就真的是很粗浅的,今日再次温故从而知新。集成学...原创 2019-05-02 23:41:17 · 13211 阅读 · 7 评论