自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

唐犁的博客

后端开发,大数据处理,深度学习领域博客

  • 博客(28)
  • 收藏
  • 关注

原创 Redis基础数据结构

Redis中的字符串不像python,是可变字符串。字符串作为变量,创建时会开辟一个比初始字符串本身更大的内存空间,后续扩大该字符串内容时,为该字符串分配的内存空间也会同步变大。当分配的内存小于1M时,该空间成倍扩大;超过1M时,每次扩展最大扩展1M。单个字符串的存储上限为512M。

2022-12-21 15:10:39 149 1

原创 LUNAR:基于图神经网络统一局部异常检测算法

AAAI 2022上的论文《LUNAR: Unifying Local Outlier Detection Methods via Graph Neural Networks》提出了一种基于图神经网络进行异常检测的框架,统一了常见局部异常检测方法的同时,也一定程度上解决了局部异常检测算法超参数无法学习,难于优化的问题。

2022-09-22 15:23:37 1446 3

原创 序列化推荐算法(1):循环神经网络(RNNs)

循环神经网络(Recurrent Neural Networks)是一种可以用于预测的神经网络,它可以分析诸如股票价格之类的时序数据,并告诉你何时应该买入/卖出。同时也可以在自动驾驶系统中,预测车辆的行进轨迹,从而避免发生交通事故。与其他许多神经网络不同的是,RNNs对于输入的序列长度没有要求。也就是说,你可以将长短不一的参数序列传入RNNs,比如任意一篇文章,或者任意一段音频的采样。这也是RNNs经常被应用于NLP领域的原因之一。.........

2022-08-22 17:23:42 1995

原创 排序算法模型(10):使用Attention挖掘历史数据的深度兴趣网络(DIN)

DIN()是阿里巴巴用于解决工业级CTR预估问题的预测模型,论文收录于KDD 2018。这篇论文的主要贡献有三点:提出了DIN模型;提出了mini-batch aware regularizer来减少计算量和规避过拟合;根据输入数据的分布设计了Dice激活函数。对于cost-per-click(CPC)型的广告系统,广告通常是基于eCPM(effective cost per mille)排序的,eCPM是广告竞价与系统预估的CTR的乘积。

2022-07-07 11:23:29 307

原创 排序算法模型(9):优化特征交叉方式的积基神经网络(PNN)

2016年SJTU与UCL合作了一篇论文《》,这篇文章提出了FM和FNN等CTR预估算法的局限性,试图通过在神经网络中引入product layer来解决特征之间交互的问题,并命名为Product-based Neural Networks,积基神经网络。论文发表之后,product layer逐渐成为CTR预估模型中的常见配置,算是众多rank模型中的一个经典款。

2022-04-09 22:21:50 1421

原创 排序算法模型(8):使用Attention机制结合FM的CTR预估模型AFM

由于LR在特征工程上的高昂成本,具有隐性特征交叉向量的FM()成为挖掘二阶特征组合的CTR预估。FM的核心思路是,为每一个特征设置一个隐向量,根据该向量的值来表示该特征与其他特征之间的关系。对于任意两个特征的组合,只需要求出两个隐向量的内积即可得到其权重值。FM在CTR预估作业上的潜力被不断挖掘,先是FFM()提出了“field”概念。原始的FM是每个特征只有一个隐向量wi​,而FFM则认为特征应该被分为不同的field,如果一共被分为n个不同field的话,每个特征就应该具备n个不同的隐向量。

2022-04-07 00:34:20 408

原创 TabTransformer:借助Transformer的预训练机制处理表格数据

表格数据是推荐系统,线上广告,画像优化等领域中最为常见的数据形式。此前对表格数据的建模主要集中于基于梯度提升的树模型,比如GBDT,这与图像和文本数据依赖深度学习差异明显。

2022-04-07 00:33:59 2353

原创 使用Python的异步机制实现高并发

并发(concurrent)是指计算机可以处理多个任务,且并非像串行执行,这些任务并不需要等待计算机完成其中一个后再开始下一个,而是可以在多个任务间切换执行,或者同时执行多个任务。并行(parallelism)是指则是指多核计算机可以使用自己的多个CPU同时独立地执行多个任务。从定义上可以看出,并行的要求更为严格。必须是多核计算机利用其多核同时处理多个任务。而并发并不要求一定是调用多核同时工作,仅仅调用单核通过时分复用的方式在多个任务中切换执行也属于并发的一种。Joe Armstrong博士的画描述了这样一

2021-09-13 17:50:19 3748 4

原创 使用主成分分析(PCA)进行特征降维

主成分分析(Principal Component Analysis)是一种无监督的降维算法。不同于,PCA不需要数据集中包含类别标签,其核心思想是将高维特征映射到新的空间后,按照新空间各个特征重要性有序选取坐标轴。新空间构建时,第一个坐标轴选取原始数据映射后方差最大的方向,后续坐标轴均保证与之前坐标轴正交的情况下方差最大,重复该过程直至新空间维度与原始特征数相等,或新空间维度数量达到降维需求。

2021-07-30 14:50:21 934 2

原创 排序算法模型(5):支持向量机(SVM)

SVM可以说是泛化能力很强的优质分类器,准确率也很高。相比于LR和RF,SVM难点在于调参。RF更多的注重效率,在模型训练以及特征选择上省下了大把时间。LR学习速率也快于SVM,比较通用,精确度和效率都不错。

2021-06-04 15:51:29 912

原创 Redis的安装与基础操作

MacOS上安装,启动,连接redis安装redis打开终端,输入brew install redis启动redis前台启动前台启动需要在终端中输入redis-server后台启动后台启动需要更改redis的配置文件。以MacOS为例,配置文件的位置在/usr/local/etc/redis.conf。将其中的daemonize no更改为daemonize yes,之后在终端运行redis-server连接redis在终端中输入redis-cli连接之后可以看到本地的i

2021-06-04 15:49:59 444

原创 排序算法模型(2):决策树与随机森林

当使用决策树对目标数据进行分类时,若原始数据共有n个特征,则可以通过将所有数据输入至决策树的树根,然后以一个特征维度对数据进行分类。对于每个子类而言,再从剩余的n−1个特征中选择一款,对其进行分类。循环往复,可以得到不断被细分之后的子类。对于特征而言,如果其本身就是离散的,则可以直接根据特征本身进行分类。比如性别可以按照男、女、其他分为三类。如果特征连续,则需要设定阈值进行分类。比如年龄可以按照0-18,19-25,26-40,40岁以上进行分类。

2021-06-04 12:00:07 400

原创 排序算法模型(1):对数几率回归(Logistic Regression)

对数几率回归(LR)是机器学习的入门分类器,属于广义线性回归,解决了线性回归不擅长的分类问题,常用于二分类。由于点击率的预估(CTR)模型往往被理解为判别“曝光后被点击”与“曝光后未被点击”的二分类模型,因此早期的CTR模型经常选择LR。由于模型的复杂度低,可以并行加速等特点,LR在今天依旧被作为很多个性化推荐产品最早一版的CTR排序模型。

2021-06-04 11:47:51 342 1

原创 PySpark大数据分析(8):PySpark机器学习库

{}{}{}{}

2021-05-26 23:11:41 385 1

原创 PySpark大数据分析(7):Spark SQL

UDF可以轻松实现复杂操作以及它们的反复使用。用户可以在dataframe的select(),withColumn(),以及SQL中的udf()调用Python中注册的自定义函数,简单来说就是对于复杂一些的处理,用户不需要在SQL中进行直接编程来实现,而是使用Python实现该功能,并作为一个UDF在SQL中调用。PySpark同时支持Spark SQL以及Hive的UDF。需要注意的是,由于对于Spark而言,UDF相当于一个黑盒,Spark内部对dataframe的优化无法应用在UDF上。因此UDF本身

2021-05-25 22:29:28 320 1

原创 PySpark大数据分析(6):数据读写

PySpark可以直接将一个文本文件读取进来,变成一个RDD,将文件的每一行作为RDD中的一个元素。使用saveAsTextFile()可以将数据保存为文本文件。PySpark会将传入路径作为文件夹,从多个节点在其下并行输出多个文件,因此数据的每一个部分输出到哪个文件中往往是不受控的。

2021-05-25 22:06:35 716 1

原创 PySpark大数据分析(5):数据分区

在Spark这类分布式程序中,通信的开销非常大。控制数据分区的意义就在于,通过合理的数据分布减少网络传输从而提升性能。对数据进行分区主要用于优化基于键的操作。上面的代码可以进行曝光过滤,但是考虑到latest_impressions需要实时更新,这个过滤操作可能会被经常调用,而上面的代码每次都会执行join()操作,导致代码效率很低。实际工作中,存储全量用户的user_recall表要比一直更新的latest_impressions表大很多,并且没有那么频繁的更新。

2021-05-25 20:13:15 1105 1

原创 PySpark大数据分析(4):键值对操作

Spark的RDD支持键值对形式的数据,这种类型的RDD被称为Pair RDD,并且拥有一些基于键值对的专属操作。Pair RDD往往用于聚合操作,比如将数据中的用户ID提取出来作为键值,然后对每个用户的行为进行聚合。这类操作在Spark中十分常用。创建Pair RDD对于一个普通的RDD来说,使用map()函数就可以将它转变为Pair RDD。Pair RDD的转化操作Pair RDD的行动操作数据分区...

2021-05-25 18:50:12 420 2

原创 PySpark大数据分析(3):使用Python操作RDD

使用Python编写Spark代码在Python中使用Spark,首先需要导入PySpark,然后创建一个SparkConf对象配置你的应用,再基于这个SparkConf创建一个SparkContext。以创建一个名为’MyApp’的本地应用为例:from pyspark import SparkConf, SparkContextconf = SparkConf().setMaster('local').setAppName('MyApp')sc = SparkContext(conf=con

2020-09-04 11:21:59 1114 2

原创 PySpark大数据分析(2):RDD操作

在Spark中,数据以弹性分布式数据集(Resilient Distributed Dataset)的形式存在。对RDD的操作主要分为转化操作和行动操作两种。Spark可以将RDD中的数据分发到集群上,以此并行化执行相关的操作。当我们读取一个外部数据的时候,它在Spark中就是以RDD的形式存在的。比如我们读取一个此时的iris就是一个RDD。接下来分别对这个RDD进行转化操作以及求值操作。

2020-09-04 10:47:57 1362 1

原创 PySpark大数据分析(1):Spark的安装与文件读取

Spark是大数据分析引擎,擅长批处理,支持部分机器学习算法的并行化。Spark支持Java,scala,python,以及R语言,其中使用python进行编程的pyspark非常适合算法工程师和数据科学家对数据进行分析与建模。Python自身拥有最为完善的算法库,编写容易,算法相关岗位普及率高。相比于Java和scala,pyspark可以节省大量编程时间

2020-06-12 21:16:39 2266 1

翻译 TPC-DS标准规范(7)

TPC-DS是一套决策支持系统测试基准,主要针对零售行业。提供99个SQL查询(SQL99或2003),分析数据量大,测试数据与实际商业数据高度相似,同时具有各种业务模型(分析报告型,数据挖掘型等等)。国内目前相关的翻译文章较少。本文尝试对官网的TPC BENCHMARK DS Standard Specification(下称“原文”)进行翻译。翻译主要参照的是2017年发布的2.6.0版本。现...

2017-10-19 14:55:51 6771 1

翻译 TPC-DS标准规范(6)

TPC-DS是一套决策支持系统测试基准,主要针对零售行业。提供99个SQL查询(SQL99或2003),分析数据量大,测试数据与实际商业数据高度相似,同时具有各种业务模型(分析报告型,数据挖掘型等等)。国内目前相关的翻译文章较少。本文尝试对官网的TPC BENCHMARK DS Standard Specification(下称“原文”)进行翻译。翻译主要参照的是2017年发布的2.6.0版本。现在可以在 http://www.tpc.org/tpc_documents_current_versions/c

2017-10-18 14:44:43 4812 1

翻译 TPC-DS标准规范(5)

TPC-DS是一套决策支持系统测试基准,主要针对零售行业。提供99个SQL查询(SQL99或2003),分析数据量大,测试数据与实际商业数据高度相似,同时具有各种业务模型(分析报告型,数据挖掘型等等)。国内目前相关的翻译文章较少。本文尝试对官网的TPC BENCHMARK DS Standard Specification(下称“原文”)进行翻译。翻译主要参照的是2017年发布的2.6.0版本。现在可以在 http://www.tpc.org/tpc_documents_current_versions/c

2017-08-23 09:46:08 1396 1

翻译 TPC-DS标准规范(4)

TPC-DS是一套决策支持系统测试基准,主要针对零售行业。提供99个SQL查询(SQL99或2003),分析数据量大,测试数据与实际商业数据高度相似,同时具有各种业务模型(分析报告型,数据挖掘型等等)。国内目前相关的翻译文章较少。本文尝试对官网的TPC BENCHMARK DS Standard Specification(下称“原文”)进行翻译。翻译主要参照的是2017年发布的2.6.0版本。现...

2017-08-10 11:01:59 13619 1

翻译 TPC-DS标准规范(3)

TPC-DS是一套决策支持系统测试基准,主要针对零售行业。提供99个SQL查询(SQL99或2003),分析数据量大,测试数据与实际商业数据高度相似,同时具有各种业务模型(分析报告型,数据挖掘型等等)。国内目前相关的翻译文章较少。本文尝试对官网的TPC BENCHMARK DS Standard Specification(下称“原文”)进行翻译。翻译主要参照的是2017年发布的2.6.0版本。现在可以在 http://www.tpc.org/tpc_documents_current_versions/c

2017-07-05 13:13:01 68232 8

翻译 TPC-DS标准规范(2)

TPC-DS是一套决策支持系统测试基准,主要针对零售行业。提供99个SQL查询(SQL99或2003),分析数据量大,测试数据与实际商业数据高度相似,同时具有各种业务模型(分析报告型,数据挖掘型等等)。国内目前相关的翻译文章较少。本文尝试对官网的TPC BENCHMARK DS Standard Specification(下称“原文”)进行翻译。翻译主要参照的是2017年发布的2.6.0版本。现在可以在 http://www.tpc.org/tpc_documents_current_versions/c

2017-06-01 22:31:19 3576 1

翻译 TPC-DS标准规范(1)

TPC-DS是一套决策支持系统测试基准,主要针对零售行业。提供99个SQL查询(SQL99或2003),分析数据量大,测试数据与实际商业数据高度相似,同时具有各种业务模型(分析报告型,数据挖掘型等等)。国内目前相关的翻译文章较少。本文尝试对官网的TPC BENCHMARK DS Standard Specification(下称“原文”)进行翻译。翻译主要参照的是2017年发布的2.6.0版本。现在可以在 http://www.tpc.org/tpc_documents_current_versions/.

2017-05-24 18:52:49 1149 2

空空如也

空空如也

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

TA关注的人

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