自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

永远飞翔的鸟

专注于人工智能和大数据,以永恒之心,书写技术之美

  • 博客(245)
  • 资源 (6)
  • 论坛 (1)
  • 收藏
  • 关注

原创 tensorflow feature_columns作为keras模型的输入

from __future__ import absolute_import, division, print_functionimport numpy as npimport pandas as pd#!pip install tensorflow==2.0.0-alpha0import tensorflow as tffrom tensorflow import feature_columnfrom tensorflow import kerasfrom tensorflow.ke.

2021-12-03 23:14:32 1099

原创 王喆<深度学习推荐系统实战>之推荐模型篇学习笔记

一、协同过滤1.在 MovieLens 数据集中,不同用户对物品打分的标准不尽相同。比如说,有的人可能爱打高分,评价的影片得分都在 4 分以上,有的人爱打低分,大部分影片都在 3 分以下。你觉得这样的偏好对于推荐结果有影响吗?我们能不能在算法中消除这种偏好呢?答:在生成共现矩阵的时候对用户的评分进行用户级别的校正或者归一化,用当前得分减去用户平均得分作为共现矩阵里面的值。消除用户评分偏差可以根据用户的平均评分标准化,即原始向量【x1,x2,x3】变成【x1-xp,x2-xp,x3-xp】,这样有利于

2021-11-14 16:43:23 537

原创 Conv2d中的group参数:分组卷积是什么?

原文链接:https://blog.csdn.net/weixin_43572595/article/details/110563397

2021-11-07 21:16:20 68

原创 行优先和列优先

计算新向量的各个分量时,分别要乘以矩阵中的不连续元素,这样无法充分利用硬件的向量乘法指令。于是有了 column_major 排列的矩阵计算新向量的各个分量时,分别乘以矩阵中的连续元素,这样可以充分利用硬件的向量乘法指令,提高效率。#define C8NUM 8#define C4NUM 4#define UP_ROUND(x, y) (((x) + (y) - (1)) / (y) * (y))void RowMajor2Col8Major(const float *src_ptr

2021-11-07 14:59:57 13

原创 horovod分布式框架使用

2021-09-30 08:11:55 10

原创 Horovod in Docker

docker run -d -p=3310:8080 -v /home:/home --name mydocker horovod:latestDockerfile文件如下:FROM ubuntu:18.04# TensorFlow version is tightly coupled to CUDA and cuDNN so it should be selected carefullyARG TENSORFLOW_VERSION=2.5.0ARG PYTORCH_VERSION=.

2021-09-25 21:17:18 21

原创 docker-修改容器的挂载目录三种方式

方式一:修改配置文件(需停止docker服务)1、停止docker服务systemctl stop docker.service(关键,修改之前必须停止docker服务)2、vim /var/lib/docker/containers/container-ID/config.v2.json修改配置文件中的目录位置,然后保存退出 "MountPoints":{"/home":{"Source":"/docker","Destination":"/home","RW":true,"Name":.

2021-09-25 13:24:50 67

转载 字典树(前缀树)

代码实现:#include<cstdio>#include<iostream>#include<cstring>using namespace std;const int MAX_NODE = 1000000 + 10;const int CHARSET = 26;int trie[MAX_NODE][CHARSET] = {0};int color[MAX_NODE] = {0};int k = 1;void insert(char ...

2021-08-29 09:38:11 16

原创 二叉树路径问题(问题分析+分类模板+题目剖析)

1. 如果是从根节点开始,一般不用需要使用双重递归.2.如果不要求一定要经过根节点,可以使用双重递归,也可以不使用双从递归.: 第一层递归,计算根节点,第二层递归经过其叶子节点例题:1687. 最长同值路径https://leetcode-cn.com/problems/longest-univalue-path/双重递归:class Solution {public: int res = 0; int longestUnivaluePath(TreeNo...

2021-07-18 16:15:55 25

转载 前缀和之连续子数组

转载:https://leetcode-cn.com/problems/subarray-sum-equals-k/solution/de-liao-yi-wen-jiang-qian-zhui-he-an-pai-yhyf/

2021-07-17 19:03:47 11

转载 ps-lite参数服务器概况

转载:https://blog.csdn.net/smartcat2010/article/details/88604671

2021-07-04 21:10:20 12

转载 ps-lite及parameter server原理

转载:https://www.cnblogs.com/heguanyou/p/7868596.html目录parameter server原理分布式系统中的同步与异步机制parameter server架构Push and PullTask:Synchronous and AsynchronousPS下的算法ps-lite实现ps-lite角色重要类运行脚本test_simple_app流程MXNet之ps-lite及parameter server原理ps-lite框架是

2021-07-04 20:10:30 232

原创 【分布式】基于ps-lite的分布式计算实例解析

1. xflow_demo中部分数据结构2. AUC计算方法: AUC表示正样本排在负样本前面的概率。采用排列组合,找出所有正样本排在负样本前面的情况,然后除以所有的组合,即可得到AUC。 struct auc_key{ int label; float pctr; }; void calculate_auc(std::vector<auc_key>& auc_vec) { std::sort(auc_vec.be...

2021-07-04 16:09:12 56

转载 ps-lite 笔记(dist-lr分析)

转载:https://blog.csdn.net/weixin_42388406/article/details/81536551

2021-07-04 15:33:17 9

转载 布隆过滤器(Bloom Filter)的原理和实现

转载:https://www.cnblogs.com/cpselvis/p/6265825.html

2021-07-04 09:58:10 41

转载 矩阵乘法的5种视角

我们学习线性代数时,只学了一种矩阵乘法的方法,实际上矩阵乘法的计算方法其实有很多种,每一种都代表着一种不同的视角:1、Normal:2、Row,行向量的线性组合,参考Uno Whoiam:MIT 线性代数笔记(1):如何看待矩阵?3、Column,列向量的线性组合,参考Uno Whoiam:MIT 线性代数笔记(1):如何看待矩阵?4、Row&Column,其中是的第列,是的第行,最后进行 pixel-wise 相加。5...

2021-07-04 09:46:14 81

转载 深度学习中Batch Normalization和Dice激活函数

转载:https://zhuanlan.zhihu.com/p/78829402?utm_source=wechat_timeline

2021-06-13 11:45:49 76 1

转载 Bi-LSTM + Attention模型

虽然看了一些很好的blog了解了LSTM的内部机制,但对框架中的lstm输入输出和各个参数还是没有一个清晰的认识,今天打算彻底把理论和实现联系起来,再分析一下pytorch中的LSTM实现。先说理论部分。一个非常有名的blog把原理讲得很清楚,推荐参考。总之就是这些公式:简单来说就是,LSTM一共有三个门,输入门,遗忘门,输出门,分别为三个门的程度参数,是对输入的常规RNN操作。公式里可以看到LSTM的输出有两个,细胞状态和隐状态,是经输入、遗忘门的产物,也就是当前c...

2021-06-06 12:36:06 348

原创 Hash Trick在机器学习中的应用

 在文本挖掘的分词原理中,我们讲到了文本挖掘的预处理的关键一步:“分词”,而在做了分词后,如果我们是做文本分类聚类,则后面关键的特征预处理步骤有向量化或向量化的特例Hash Trick,本文我们就对向量化和特例Hash Trick预处理方法做一个总结。1. 词袋模型    在讲向量化与Hash Trick之前,我们先说说词袋模型(Bag of Words,简称BoW)。词袋模型假设我们不考虑文本中词与词之间的上下文关系,仅仅只考虑所有词的权重。而权重与词在文本中出现的频率有关。    词袋模型首

2021-06-05 23:11:41 29

原创 推荐系统常见排序模型(二)

文本分类很少做增量训练。文本一般比较稳定,一般隔一段时间整体训练一次。CTR预估的时候,需要增量训练。因为数据更新的比较快。树模型不能进行增量训练。

2021-06-05 12:12:21 101

原创 向量化检索

向量化在推荐中使用的场景:向量相似度计算。工作中用的最多算法:faiss和kd-tree.,最多的是faiss,其底层使用C++实现的。kd-tree一般在vector的维度小于30维度的时候,才可以,否则速度跟不上。用例演练:...

2021-06-05 12:09:15 55

原创 kd树、fiss和向量检索

先找哪一个维度的方差大,然后就按照这个维度,找到该维度的中位数接近的点作为跟节点。faiss的性能:800W个200维度的向量,faiss查找时间30ms以内。faiss一般用来做单路召回,一般不会召回很多,一般召回几百个,最多1000到2000个。...

2021-06-05 09:51:33 29

原创 深度match方法

word2vec

2021-06-05 09:50:25 63

原创 推荐系统常见排序模型(一)

1.

2021-05-28 23:17:39 155

原创 DSSM模型和双塔模型的应用

DSSM有多少层:中间1层也可以,二层也可以。负样本一般取多少个,2到6个都可以。双塔模型:有些场景中为什么不添加用户近期是否浏览过这个商品?因为电商或者文章也好,用户浏览过的商品在一定时间内是不能重复推荐的,它都已经不参与交互了,所以这个特征在这种场景已经失效了。用户id和物品id能做特征交叉嘛?答:不能,比如item500W个,用户400W个维度太大,交叉后特征爆炸。另外,有些物品短期在重复报关,交叉后也没什么用。用户最近浏览的商品来代替用户的近期兴趣。双塔一...

2021-05-28 07:13:35 54

原创 召回模型评估以及训练数据的采样

多路召回中,如何评估单路模型的召回能力?1. 看这一路召回的物品中曝光出去的物品在这一次曝光物品的占比:模型的分发能力。2.端内总体的数据指标:ctr,cvr误区:仅仅看单路召回的指标,如单路的ctr,为什么错误:可能这一路把其他路的分发挤掉了。(例外情况,先上A路,然后A路下掉,上B路。这时可以拿A路和B路对比。或者进行AB测试。)不同召回角色不同,要根据目标进行评判。比如负责多样性的,如果多样性好,只要CTR没有掉,就可以。CTR上来更好。采样:如果线上比例1:9,很多地方一般.

2021-05-27 22:49:37 84

原创 Youtube排序模型和常用模型的部署方法

召回结构:排序结构:工程trick:对每个用户采用相同的采样个数

2021-05-26 23:05:48 25

原创 传统match方法

GMF模型,构图灵活。每一个物品和用户初始化两套。一个直接拼接。一个通过全连接。

2021-05-25 23:08:24 47

原创 用户画像

用户的兴趣有长期、中期、短期。召回的时候,需要每一种都取一点。根据端内用户群体的特征,可以对不同种类的类别再推荐的时候,可以给每一个类别一个基础分base.在用户有行为了之后,可以在进行调整。比如base + Click/Exposure有的tag具有长实效性,有的tag具有短实效性。有些时候,你需要对用户的长实效性的tag进行一些试探。有的tag时效性短,有的tag时效性长。因此,不同tag的用户的兴趣下降和上升的速度不一...

2021-05-25 07:57:01 15

原创 注意力机制详解

attention注意力机制是什么:加权平均。attention机制主要就是两个问题:加权平均、权值怎么算、对哪些做加权。对自注意力机制的改进。softmax--->tanh

2021-05-23 21:33:48 107

原创 内容画像

一般来说内容画像比用户画像简单,因为用户画像涉及到用户的行为,是动态变化的。对于内容画像,以文章为例,主要就是文章的主题、分类、时效性、审核是否规范(涉黄涉秘)等,这些是固定的。以文章画像为例,其流程如下:抽取出来的词,可能需要更具业务进行调整。比如两篇文章。同时出现了一个单词,并且权重相同。但是该单词在第一篇文章中还出现在了标题中。该词在第一篇文章中的权重需要加大,比如加一个权重值(加2)。抽取完毕关键词后,比如一个文章抽取15个关键词。有的文章内容丰富,抽取15个关键词,可.

2021-05-23 11:08:46 39

原创 常用优化算法(梯度法和牛顿法)

沿着梯度的方向,函数下降的最快。常用优化法: 梯度法和牛顿法x0表示上一次的x值, x表示当前x 的值。求最值,导数等于0的之后,所以要让导数等于0求极值点。牛顿法的缺点: 一阶导数是雅可比矩阵,二阶导数是一个海森矩阵。求一个矩阵的逆矩阵计算量比较大。二阶导数要是等于0,牛顿法失效。更多的情况下使用的是拟牛顿法。梯度是使用平面(一阶导)来拟合目标函数,有一阶项, 一阶是平面。牛顿法是用用曲面(二阶导)来拟合目标函数,有二阶项。二阶是曲面。...

2021-05-22 22:17:25 27

转载 堆排序详解--大顶堆

堆排序详解--大顶堆堆的概念堆是一颗顺序存储的完全二叉树每个结点的关键字都不大于其孩子结点的关键字,这样的堆称为小根堆每个结点的关键字都不小于其孩子结点的关键字,这样的堆称为大根堆对于n个元素的序列{R0, R1,R2,.......,Rn}当且仅当下列关系之一的时候,称之为堆(1) Ri <= R2i + 1 且 Ri <= R2i + 2 (小根堆)(2) Ri >= R2i + 1 且 Ri >= R2i + 2 (大根堆)...

2021-05-01 19:49:39 56

原创 sklearn\tree\_splitter.pyx

_splitter用于最优特征分裂的搜索,根据传入的criterion(分裂准则)计算相关衡量指标,确定最有分裂点。 X : object This contains the inputs. Usually it is a 2d numpy array. y : ndarray, dtype=DOUBLE_t This is the vector of targets, or true labels, for the sam...

2021-02-16 10:26:10 67

转载 GBDT为什么拟合上一次的负梯度

2021-02-15 10:36:31 167

原创 sklearn/tree/_criterion.pyx

注解:

2021-02-14 21:19:08 83

转载 GBDT实现详解

转载:https://www.cnblogs.com/silence-gtx/p/12346196.html

2021-02-13 22:22:12 56

转载 caffe卷积神经网络中im2col 详解

转载:caffe im2col详解本文讲解的是caffe中卷积过程,众所周知caffe中卷积采用的是im2col和sgemm的方式。网上已经有很多的im2col的讲解。原本不打算写这篇文章(在此不得不吐槽下,网上有不少的讲解caffe im2col的过程的文章多是错的。一些文章和caffe的具体实现对不上,真不知道他们到底有没有看caffe代码的具体实现,正是因为那些文章,浪费了不少时间。)本文举例讲解caffe中im2col 和 sgemm的具体过程。在此之前先说明下:caffe中的数据是行优

2020-10-25 22:10:07 180

转载 Python, C-Python, Cython代码与GIL的交互

这篇笔记相对Python来说,有点底层,先来解释几个名词:C-Python: 或者CPython,指C实现的Python虚拟机的基础API。最通用的Python就是是基于C实现的,它的底层API称为C-Python API,所有Python代码的最终变成这些API以及数据结构的调用,才有了Python世界的精彩;Cython:准确说Cython是单独的一门语言,专门用来写在Python里面import用的扩展库。实际上Cython的语法基本上跟Python一致,而Cython有专门的“编译器”先将

2020-10-25 21:14:36 184

原创 Cython简介

.pxd文件.pxd 文件是由 Cython 编程语言 "编写" 而成的 Python 扩展模块头文件。.pxd 文件类似于 C 语言的 .h 头文件,.pxd 文件中有 Cython 模块要包含的 Cython 声明 (或代码段)。.pxd 文件可共享外部 C 语言声明,也能包含 C 编译器内联函数。.pxd 文件还可为 .pyx 文件模块提供 Cython 接口,以便其它 Cython 模块可使用比 Python 更高效的协议与之进行通信。可用 cimport ...

2020-10-25 11:14:45 172

FTRL_FM_LR.html

使用FM和LR分别进行了FTRL优化,包含详细的调试步骤

2020-03-06

minist_tensorflow_pb_train_predict.zip

tensorflow训练手写数字识别模型,保存为pb文件,并采用pb文件进行预测。 tensorflow训练手写数字识别模型,保存为pb文件,并采用pb文件进行预测。 tensorflow训练手写数字识别模型,保存为pb文件,并采用pb文件进行预测。 tensorflow训练手写数字识别模型,保存为pb文件,并采用pb文件进行预测。 tensorflow训练手写数字识别模型,保存为pb文件,并采用pb文件进行预测。

2020-02-22

train_mnist.zip

采用dcoker搭建tensorflow_sever对外服务。代码采用minist数据集,训练了模型,并保存为PB文件,然后使用docker容器搭建了tensorflow_sever,并进行了测试。

2020-02-26

OnlineLearning_BasicAlgorithm-master.zip

在线学习优化方法SGD-OGD-FOBOS-RDA-FTRL-FTML 总结

2020-03-05

alphaFM-master.zip

FM_FTRL实现

2020-03-05

Word2Vec中的数学原理详解.pdf

从数学角度详细讲解word2vec模型的原理,目录如下:(一)目录和前言(二)预备知识(三)背景知识(四)基于 Hierarchical Softmax 的模型(五)基于 Negative Sampling 的模型(六)若干源码细节

2020-02-12

m0_37870649的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也

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

TA关注的人 TA的粉丝

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