自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(184)
  • 收藏
  • 关注

原创 0-1背包的四种解法

有句老话说得好,学会了0-1背包就学会了算法。本篇博客就来盘点一下0-1背包的4中常见解法。动态规划法既然要用动态规划法解0-1背包问题,就要能满足动态规划的两个特性:具有重叠子问题。具有最优子结构性。这两点应该很容易就可以看出,这里就不做过多赘述了。直接来看关键,之前说过,动态规划的本质就是填表,而解动态规划问题的关键是找出动态转移方程,一旦找出动态转移方程,就可以用方程把整个表都填满了。这里直接给出动态转移方程V(i, j)表示在前i(1≤i≤n)个物品中能够装入容量为j(1≤j≤C

2021-11-27 22:11:26 5037 2

原创 LS-PLM

LS-PLM是阿里巴巴曾经的主流推荐模型 “大规模分段线性模型”(Large Scale Piece-wise Linear Model,以下 简称LS-PLM)。早在2012年,它就是阿里巴巴主流的推荐模型,并在深度学习模型提出之前长时间应用于阿里巴巴的各类广告场景。

2022-12-12 20:03:54 88

原创 协同过滤CF

UserCF的核心思想是人以群分,现在我们得到了用户的向量表示,那么计算用户i和用户j的相似度问题,就是计算用户向量i和用户向量y之间的相似度,两个向量之间常用的相似度计算方法有余弦相似度、皮尔逊相关系数、欧氏距离等。以上介绍的协同过滤算法基于用户相似度进行推荐,因此也被称为基于用户的协同过滤(UserCF ),它符合人们直觉上的“兴趣相似的朋友喜欢的物品, 也喜欢”的思想,但从技术的角度,它也存在一些缺点,主要包括以下两点。对相似物品集合中的物品,利用相似度分值进行排序,生成最终的推荐列表。

2022-12-12 18:04:33 233

原创 Linux常用命令总结

(1)用户目录:位于/home/user,称之为用户工作目录;(2)ls:是英文单词list的简写,其功能为列出目录的内容;ls -a 列出隐藏文件,文件中以开头的均为隐藏文件,如:~/.bashrcls -l 列出文件的详细信息ls -R 连同子目录中的内容起列出​(3)cd:change dir 改变当前所在路径,使用“cd”命令跳转到相应目录。使用时要确认后面的目标目录是否存在。比如:cd file1;cd file1/file2;cd …(返回上一级目录);cd(返回根目录)(4)whi

2022-12-05 11:04:26 265

原创 TF-IDF详解

TF-IDF(term frequency–inverse document frequency,词频-逆向文件频率)是一种用于信息检索(information retrieval)与文本挖掘(text mining)的常用加权技术。TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。TF-IDF的主要思想是:如果某个单词在一篇文章中出现的频率TF高,并且在其他文章中很

2022-12-05 10:34:56 112

原创 SPARK数据分析

重点回顾今天这一讲,我们主要围绕数据的生命周期,学习了 Spark SQL 在不同数据阶段支持的处理算子,如下图所示图中涉及的算子很多,尽管大部分我们都举例讲过了,但要在短时间之内一下子掌握这么多内容,确实强人所难。不过,你不用担心,今天这一讲,最主要的目的,还是想让你对 Spark SQL 支持的算子有一个整体的把握。至于每个算子具体是用来做什么的,在日后的开发工作中,你可以反复地翻看这一讲,结合实践慢慢地加深印象,这样学习更高效。我也强烈建议你空闲时把官网的。

2022-11-28 20:18:08 773

原创 如何入门spark

第一步,我们需要掌握 Spark 常用的开发 API 与开发算子。毕竟,通过这些 API 与开发算子,我们才能启动并驱使 Spark 的分布式计算引擎。接着,我们必须要深入理解它的工作原理。第三步,我们需要了解并熟悉 Spark 不同的计算子框架(Spark SQL、Spark MLlib 和 Structured Streaming),来应对不同的数据应用场景,比如数据分析、机器学习和流计算。

2022-11-28 16:30:06 522

原创 使用SPARK进行特征工程

在机器学习领域,有一条尽人皆知的“潜规则”:Garbage in,garbage out。它的意思是说,当我们喂给模型的数据是“垃圾”的时候,模型“吐出”的预测结果也是“垃圾”。垃圾是一句玩笑话,实际上,它指的是不完善的特征工程。特征工程不完善的成因有很多,比如数据质量参差不齐、特征字段区分度不高,还有特征选择不到位、不合理,等等。作为初学者,我们必须要牢记一点:特征工程制约着模型效果,它决定了模型效果的上限,也就是“天花板”。而模型调优,仅仅是在不停地逼近这个“天花板”而已。因此,提升模型效果的第一步,就

2022-11-28 15:56:45 664

原创 回溯框架总结

其实回溯算法和我们常说的 DFS 算法非常类似,本质上就是一种暴力穷举算法。回溯算法和 DFS 算法的细微差别是:回溯算法是在遍历「树枝」,DFS 算法是在遍历「节点」,本文就是简单提一下,等你看到后文图论算法基础 时就能深刻理解这句话的含义了。废话不多说,直接上回溯算法框架,解决一个回溯问题,实际上就是一个决策树的遍历过程,站在回溯树的一个节点上,你只需要思考 3 个问题:1、路径:也就是已经做出的选择。2、选择列表:也就是你当前可以做的选择。

2022-11-26 21:04:26 556

原创 动态规划做题总结

动态规划的本质是填表,自底向上的完成DP数组的构建。难点在于DP数组的定义以及状态转移方程的构建。

2022-11-19 19:14:52 26

原创 三种常见的特征选择方法

特征选择是特征工程里的一个重要问题,其目标是寻找最优特征子集。特征选择能剔除不相关(irrelevant)或冗余(redundant )的特征,从而达到减少特征个数,提高模型精确度,减少运行时间的目的。并且常能听到“数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已”,由此可见其重要性。

2022-11-15 15:07:53 768

原创 Spark、Filnk简单介绍

作为业界主流的大数据处理利器,Spark 的地位毋庸置疑。所以,今天我先带你了解一下 Spark 的特点,再一起来看怎么用 Spark 处理推荐系统的特征。Spark 是一个分布式计算平台。所谓分布式,指的是计算节点之间不共享内存,需要通过网络通信的方式交换数据。Spark 最典型的应用方式就是建立在大量廉价的计算节点上,这些节点可以是廉价主机,也可以是虚拟的 Docker 容器。理解了 Spark 的基本概念,我们来看看它的架构。

2022-11-12 16:11:05 631

原创 推荐系统的数据流

动辄TB乃至PB级別的训练数据,让推荐系统的数据流必须和大数据处理与存储的基础设施紧密结合,才能完成推荐系统的高效训练和在线预估。大数据平台的发展经历了从批处理到流计算再到全面融合进化的阶段。架构模式的不断发展带来的是数据处理实时性和灵活性的大幅提升。按照发展的先后顺序,大数据平台主要有批处理、流计算、Lambda. Kappa 4种架构模式。

2022-11-12 14:49:52 714

原创 BERT论文精读

我们引入了一种新的语言表示模型BERT,它使用了来自Transformer的双向编码器。与最近的语言表示模型不同,Bert的设计目的是结合左右双向的信息,使用预训练模型来生成文本的深度双向表示。预训练的Bert模型可以通过一个额外的输出层进行优化,从而为广泛的任务(如问题回答和语言推理)创建最先进的模型,而无需对特定于任务的体系结构进行实质性修改。它在11个自然语言处理任务上获得了最新的结果。

2022-11-07 10:27:09 190

原创 Transformer论文精读

主要的序列转换模型是基于复杂的递归或卷积神经网络,包括一个编码器和一个解码器。性能最好的模型还通过注意力机制连接编码器和解码器。我们提出了一种新的网络结构Transformer,它完全基于注意力机制,完全省去了重复和卷积。在两个机器翻译任务上的实验表明,这些模型在质量上是优越的,同时具有更高的并行性,需要更少的训练时间。

2022-11-07 09:53:32 324

原创 dataframe常用API(python)

数据收集到驱动器中进行计算,就不是分布式并行计算了,而是串行计算,会更慢,所以,除了常看小数据,一般吧建议使用。map方法可以对dataframe数据集中的数据进行逐个操作,他与flatMap的不同之处在于,flatMap是将数据集中的数据作为一个整体去处理,之后再对其中的数据做计算,map则是直接对数据集中的数据做单独处理。这里的重复项指的是两行的数据完全相同。filter方法是一个常用的方法,用条件来过滤数据集,如果想选择某列中大于或小于某数的数据,就可以使用filter方法。

2022-10-18 21:24:24 387

原创 DataFrame简介

DataFrame实质上是存储在不同节点计算机中的一张关系型数据表。分布式存储最大的好处是:可以让数据在不同的工作节点上并行存储,以便在需要数据的时候并行运算。

2022-10-14 16:12:32 884

原创 十二、集成学习

目前集成学习可以分成Boosting和Bagging两大流派。

2022-10-09 11:25:25 263

原创 十、循环神经网络

Seq2Seq模型的核心思想是,通过深度神经网络将一个作为输入的序列映射为一个作为输出的序列,这一过程由编码输入与解码输出两个环节构成。在经典的实现中,编码器和解码器各由一个循环神经网络构成,既可以选择传统循环神经网络结构,也可以使用长短期记忆模型、门控循环单元等。在Seq2Seq模型中,两个循环神经网络是共同训练的。假想一个复习和考试的场景。我们将学到的历史信息经过了一系列加工整理,形成了所谓的知识体系,这便是编码过程。然后在考试的时候, 将高度抽象的知识应用到系列问题中进行求解,这便是解码过程。

2022-10-05 16:54:50 281

原创 九、前向神经网络

深度前馈网络(Deep Feedforward Networks)是一种典型的深度学习模型。其目标为拟合某个函数f,即定义映射y=f (x;θ)将输入x转化为某种预测的输出y,并同时学习网络参数θ的值,使模型得到最优的函数近似。由于从输入到输出的过程中不存在与模型自身的反馈连接,此类模型被称为“前馈”。深度前馈网络是一类网络模型的统称,我们常见的多层感知机、自编码器、 限制玻尔兹曼机,以及卷积神经网络等,都是其中的成员。

2022-10-03 20:51:12 404

原创 八、采样

MCMC采样法的核心点是构造合适的马尔可夫链,不同的马尔可夫链对应着不同的MCMC采样法,常见的有Metropolis-Hastings采样法和吉布斯采样法。

2022-09-30 15:01:33 47

原创 七、优化算法

优化是应用数学的一个分支,也是机器学习的核心组成部分。实际上,机器 学习算法 = 模型表征 + 模型评估 + 优化算法。其中,优化算法所做的事情就是在 模型表征空间中找到模型评估指标最好的模型。不同的优化算法对应的模型表征 和评估指标不尽相同,比如经典的支持向量机对应的模型表征和评估指标分别为 线性分类模型和最大间隔,逻辑回归对应的模型表征和评估指标则分别为线性分 类模型和交叉熵。

2022-09-22 15:29:18 375 1

原创 四、PCA降维

PCA旨在找到数据中的主成分,并利用这些主成分表征原始数据,从而达到 降维的目的。举一个简单的例子,在三维空间中有一系列数据点,这些点分布在 一个过原点的平面上。如果我们用自然坐标系x,y,z三个轴来表示数据,就需要使用 三个维度。而实际上,这些点只出现在一个二维平面上,如果我们通过坐标系旋 转变换使得数据所在平面与x,y平面重合,那么我们就可以通过x′,y′两个维度表达原始数据,并且没有任何损失,这样就完成了数据的降维。而x′,y′两个轴所包含的信息就是我们要找到的主成分。

2022-09-18 15:05:56 262

原创 五、非监督学习

首先,给定二维空间上的一些样本点,接下来,初始化K个中心点,并根据中心点的位置计算每个样本所属的簇;然后根据每个簇中的所有点的平均值计算新的中心点位置;在经过n轮的迭代之后,算法基本收敛。

2022-09-18 15:05:15 143

原创 YouTube深度学习视频推荐系统

YouTube推荐系统架构是经典的两级模型——召回、精排模型。第一级用候选集生成模型完成候选视频的快速筛选,在这一步,候选视频集合由百万量级降至几百量级。这相当于经典推荐系统架构中的召回层。第二级用排序模型(Ranking Model)完成几百个候选视频的精排。这相当于经典推荐系统架构中的排序层。

2022-09-16 16:28:31 422

原创 个性化推荐的工业级实现

特征工程是所有机器学习项目的起点。为了训练推荐模型,我们需要准备好模型所需的样本和特征。此外,在进行模型线上推断的时候,推荐服务器也需要线上实时拼装好包含了用户特征、物品特征、场景特征的特征向量,发送给推荐模型进行实时推断。在“模型实战准备二”这一讲,我们就通过 Spark 处理好了 TensorFlow 训练所需的训练样本,并把 Spark 处理好的特征插入了 Redis 特征数据库,供线上推断使用。

2022-09-13 19:45:33 635

原创 三、经典算法

不忘初心,方得始终。何谓“初心”?初心便是在深度学习、人工智能呼风唤 雨的时代,对数据和结论之间那条朴素之路的永恒探寻,是集前人之大智,真诚 质朴求法向道的心中夙愿。没有最好的分类器,只有最合适的分类器。随着神经网络模型日趋火热,深 度学习大有一统江湖之势,传统机器学习算法似乎已经彻底被深度学习的光环所 笼罩。然而,深度学习是数据驱动的,失去了数据,再精密的深度网络结构也是 画饼充饥,无的放矢。

2022-09-10 17:17:23 51

原创 二、模型评估

没有测量,就没有科学。”这是科学家门捷列夫的名言。在计算机科学特别 是机器学习领域中,对模型的评估同样至关重要。只有选择与问题相匹配的评估 方法,才能快速地发现模型选择或训练过程中出现的问题,迭代地对模型进行优 化。模型评估主要分为离线评估和在线评估两个阶段。针对分类、排序、回归、 序列预测等不同类型的机器学习问题,评估指标的选择也有所不同。

2022-09-03 20:27:45 104

原创 一、特征工程

俗话说,“巧妇难为无米之炊”。在机器学习中,数据和特征便是“米”,模型和 算法则是“巧妇”。没有充足的数据、合适的特征,再强大的模型结构也无法得到 满意的输出。正如一句业界经典的话所说,“Garbage in,garbage out”。对于一个机器学习问题,数据和特征往往决定了结果的上限,而模型、算法的选择及优化则是在逐步接近这个上限。特征工程,顾名思义,是对原始数据进行一系列工程处理,将其提炼为特征,作为输入供算法和模型使用。从本质上来讲,特征工程是一个表示和展现数据的过程。...

2022-08-30 17:25:20 256 1

原创 局部敏感哈希:如何在常数时间内搜索Embedding最近邻

在深度学习推荐系统中,我们经常采用Embedding召回这一准确又便捷的方法。但是,在面对百万甚至更高量级的候选集时,线性地逐一计算Embedding间的相似度,往往会造成极大的服务延迟。这个时候,我们要解决的问题就是,如何快速找到与一个Embedding最相似的Embedding?这直接决定了召回层的执行速度,进而会影响推荐服务器的响应延迟。遇到最近邻搜索的问题,我想大部分同学直觉上肯定会想到两种解决方案,一种是聚类,我们把相似的点聚类到一起,就可以快速地找到彼此间的最近邻了。...

2022-07-17 15:29:14 88

原创 二叉树心得

二叉树

2022-07-14 20:35:09 621

原创 链表相关题目

链表相关题目

2022-07-03 11:13:39 29

原创 setFunction

set的常用函数:

2022-07-03 10:46:48 35

原创 python数据结构常用函数

python常用函数

2022-07-03 10:13:09 232

原创 冷启动的解决办法

冷启动问题是推荐系统必须面对的问题。任何推荐系统都要经历数据从无到有、从简单到丰富的过程。那么,在缺乏有价值数据的时候,如何进行有效的推荐被称为“冷启动问题”。具体地讲,冷启动问题根据数据匮乏情况的不同,主要分为三类:(1)用户冷启动,新用户注册后,没有历史行为数据时的个性化推荐。(2)物品冷启动,系统加入新物品后(新的影片、新的商品等),在该商品还没有交互记录时,如何将该物品推荐给用户。(3)系统冷启动,在推荐系统运行之初,缺乏所有相关历史数据时的推荐。针对不同应用场景,解决冷启动问题需要比较专

2022-04-24 20:35:16 2134

原创 推荐系统的数据流

批处理大数据架构在大数据平台诞生之前,传统数据库很难处理海量数据的存储和计算问题。 针对这一难题,以Google GFS和Apache HDFS为代表的分布式存储系统诞生, 解决了海量数据的存储问题;为了进一步解决数据的计算问题,Map Reduce框 架被提出,采用分布式数据处理再逐步Reduce的方法并行处理海量数据。“分布式存储+Map Reduce”的架构只能批量处理已经落盘的静态数据,无法在数据采集、传输等数据流动的过程中处理数据,因此被称为批处理大数据架构。相比之前以数据库为核心的数据处理过

2022-04-13 18:55:45 345

原创 Embedging与深度学习推荐系统结合

作为深度学习推荐系统不可分割的一部分,Embedding技术主要应用在如下三个方向。(1)在深度学习网络中作为Embedding层,完成从高维稀疏特征向量到低维 稠密特征向量的转换。(2)作为预训练的Embedding特征向量,与其他特征向量连接后,一同输入深度学习网络进行训练。(3)通过计算用户和物品的Embedding相似度,Embedding可以直接作为推 荐系统的召回层或者召回策略之一。下面介绍Embedding与深度学习推荐系统结合的具体方法深度学习网络中的Embedding层髙维稀疏

2022-04-09 20:54:50 725

原创 Graph Embedding

Word2vec和由其衍生出的Item2vec是Embedding技术的基础性方法,但二者都是建立在“序列”样本(比如句子、用户行为序列)的基础上的。在互联网场景下,数据对象之间更多呈现的是图结构。典型的场景是由用户行为数据生成的物品关系图,以及由属性和实体组成的知识图谱 。在面对图结构时,传统的序列Embedding方法就显得力不从心了。在这样的背景下,Graph Embedding成了新的研究方向,并逐渐在深度学习推荐系统领域 流行起来。 Graph Embedding是一种对图结构中的节点进行Emb

2022-04-07 20:09:48 316

原创 经典的Embedding方法Word2vec

提起Embedding,就不得不提Word2vec,它不仅让词向量在自然语言处理领域再度流行,更为关键的是,自2013年谷歌提出Word2vec以来,Embedding 技术从自然语言处理领域推广到广告、搜索、图像、推荐等深度学习应用领域, 成了深度学习知识框架中不可或缺的技术点。作为经典的Embedding方法,熟悉 Word2vec对于理解之后所有的Embedding相关技术和概念至关重要。什么是Word2vec?Word2vec是“word to vector”的简称,顾名思义,Word2vec是

2022-04-05 19:27:48 1771

原创 什么是Embedding?

Embedding,中文直译为“嵌人”,常被翻译为“向量化”或者“向量映射”。 Embedding的主要作用是将稀疏向量转换成稠密向量,便于上层深度神经网络处理。事实上,Embedding技术的作用远不止于此,它的应用场景非常多元化,而且实现方法也各不相同。形式上讲Embedding就是用一个低维稠密的向量“表示”一个对象(object), 这里所说的对象可以是一个词、一个商品,也可以是一部电影,等等。Embedding技术在NLP领域的应用Embedding方法的流行始于自然语言处理领域对于词向量生成

2022-04-05 13:34:09 4551

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除