推荐算法面经-1
1、描述一下推荐系统的整个流程(架构)
推荐系统负责从海量的内容池中选择用户感兴趣的内容进行展示。整体上分为召回和排序两部分。整体上可以划分为召回、业务过滤、粗排、精排、重排混排、业务逻辑、最终展示这一流程。在召回阶段通过多路召回从海量数据池中得到小规模的候选数据;然后通过策略对部分内容进行过滤后传入排序阶段;粗排对召回数据进行初步排序筛选,是一个中和步骤,将候选集降低量级;精排对粗排结果使用更加精准的网络结构进行排序计算,圈定到目标范围的内容;为了符合一些多业务场景,还可以在精排后重排序,起到打散的作用;最后可以加入一些业务逻辑完成位次排列。
2、什么是多路召回,常见的召回路有哪些?
多路召回指采用不同的策略、特征或简单模型,分别召回一部分候选集,然后把候选集混合在一起供后续排序模型使用,“多路召回策略”是在“计算速度”和“召回率”之间进行权衡的结果,多路召回就像是一种集成学习,通过多条召回路平衡准确和全面。
常见的召回方式有基于内容的策略召回、协同过滤、图召回、深度网路召回等。基于内容的召回通常依赖NLP和CV等模型,深度神经网络以DeepFM、DSSM双塔等经典模型为主,图召回则可以构造社交网络或者依赖GNN模型。
一根辣条的前世今生
cs231n study note 2
cs231n study note 1
一、学习内容
- Data Driven Approach 数据驱动的方法
- KNN K最近邻算法
- Linear classifiers 线性分类器
- Loss function 损失函数
- Optimization 优化
- Back propagation 反向传播
- Neural Networks 神经网络
1. 数据驱动
1.1 思路
dataset: labels –> train –> predict
1.2 CIFAR-10数据集
该数据集共有60000张彩色图像,这些图像是32*32,分为10个类,每类6000张图。这里面有50000张用于训练,构成了5个训练批,每一批10000张图;另外10000用于测试,单独构成一批。测试批的数据里,取自10类中的每一类,每一类随机取1000张。抽剩下的就随机排列组成了训练批。注意一个训练批中的各类图像并不一定数量相同,总的来看训练批,每一类都有5000张图。

hexo前后端分离并存git仓库
缘由
由于hexo框架在执行了generate以及deploy之后, 上传到远端仓库的仅仅是渲染出来的html, 而可运行的工程文件夹还保存在本地无法灵活增删改
选择
- 有大神选择使用APS在线搞了一套git的交互界面, 通过hook等技术, 同步远端和本地, 使我们无论是在PC端, 还是在云端都可以自由编辑; 但是其局限性也很明显–壕, APS不是每个人都有条件搞的;
- 另外一波大神提供了这个思路, 就是在页面的仓库上面, 独立于master分支, 再新建一个branch, 把源代码push到这里, 自由checkout, 也是爽的飞起来的, 当然啦, 其本质和再建一个仓库, 一个存html, 一个存.md, 是一样的;
操作
- 把原来的gitcline下来
- 打开git bash, 或者习惯用交互界面的也无所谓
- 新建一个分支branch
- 从master分支 git checkout 切换到这个source分支
- 先commit到远端, 省去后续麻烦
- git rm 删除掉所有关于页面的
- 把执行hexo init时候生成的那个文件夹, 除去.deploy_git这个文件夹, 统统复制粘贴过来
- git add 所有的内容, 第一次可能很慢
- git commit
- git push
- done!