热度TopN排名算法的设计

作者: blogchong | 分类: 原创-数据挖掘 | 评论:1人 | 浏览:

最近开始在简书上混,今日在首页上不经意间看到一篇《从豆瓣电影评分算法说起》,感觉有点眼熟,就点了进去。

其实阿北的那篇《豆瓣电影评分八问》,我也是刚看过,这可能也是让我觉得眼熟的原因。

其他的不多说,其实让我耳目一新的是作者说的用户投票排名算法。

我之所以说是耳目一新,那是因为类似这种热度TopN排名的算法,在一年前接触过,也设计过排名算法,并且,至今然仍在用,那就是“极客头条"的最热排行榜。

而现在,总算是接触到比较完整的算法描述了,对排名算法也有了一个比较系统的认知,所以甚是感激。

More...

推荐系统基础知识储备

作者: blogchong | 分类: 原创-数据挖掘 | 评论:0人 | 浏览:

1 推荐系统基础

1.1 个性化推荐概述

1.1.1 推荐系统概述

首先,需要申明一点的就是推荐系统!=推荐算法。推荐系统是一套完善的推荐机制,包括前期数据的准备、具体推荐的过程(这个过程可能是一套复杂的算法模型,也可能是一个简单的规则,也可能是多种模型的混合结果等等)、后期数据的预测、AB测试效果评估等等。

1.1.2 推荐算法模型概述

在算法模型上大体可以分基于内容的推荐、基于协同过滤的推荐。

基于内容推荐,即通过内容本身的属性,然后计算内容的相似性,找到与某物品属性相似的物品。协同过滤,所谓协同过滤,即不依赖于物品本身的物品属性,而是通过其他相关特征,例如人参与的行为数据,来达到推荐物品的目的。

关于协同过滤,又分为以下几个类别:基于物品的协同,即ItemCF;基于用于的协同,即UserCF;基于模型的协同,即ModelCF。

其中,基于模型的协同又可以分为以下几种类型:基于距离的协同过滤;基于矩阵分解的协同过滤,即Latent Factor Model(SVD);基于图模型协同,即Graph,也叫社会网络图模型。

More...

这些年,这些挖掘机算法,这些反思

作者: blogchong | 分类: 原创-我的互联网简历 | 评论:8人 | 浏览:

写这篇文章,缘自于前几天部门内部成员们进行了一次部门内部现有涉及的一些算法的review以及整理。不过比较囧的就是,由于boss不在,我们讨论讨论着就成了吐槽大会,倒是有一半时间在吐槽产品以及业务部门了~~

不过这也算是一件可喜可贺的事情了,这也可以看做是我们数据部门,已经由开轻型挖掘机向深挖阶段迈步了。

More...

程序员如何快速准备面试中的算法

作者: 大数据编辑 | 分类: Storm|DM|Hadoop|NoSql | 评论:0人 | 浏览:

备战面试中算法的五个步骤

对于立志进一线互联网公司,同时不满足于一辈子干纯业务应用开发,希望在后端做点事情的同学来说,备战面试中的算法,分为五个步骤,如下:

1、掌握一门编程语

首先你得确保你已掌握好一门编程语言:

More...

基本排序算法及其在MapReduce的应用

作者: blogchong | 分类: 原创-数据挖掘 | 评论:1人 | 浏览:

1 文档说明

该文档为学习基本排序算法过程中的学习笔记,大部分内容从网络上其他渠道也能得到,仅用于记录备忘之用。

冒泡、选择、插入三种作为基本的排序算法是必须要掌握的,而在MapReduce的实际应用中。在Map阶段,k-v溢写时,采用的正是快排;而溢出文件的合并使用的则是归并;在Reduce阶段,通过shuffleMap获取的文件进行合并的时候采用的也是归并;最后阶段则使用了堆排作最后的合并过程。

More...

二叉树前中后序遍历及其推导

作者: blogchong | 分类: 原创-数据挖掘 | 评论:0人 | 浏览:

1 文档说明

该文档仅作为二叉树学习的笔记记录,包括了前中后序的遍历算法,根据前序中序推导二叉树,或者根据中序后序推导二叉树。

2 二叉树的前中后序遍历算法

//采用递归的方式进行二叉树的遍历

More...

挖掘算法(1)朴素贝叶斯算法

作者: blogchong | 分类: 原创-数据挖掘 | 评论:0人 | 浏览:

1 文档说明

该文档为朴素贝叶斯算法的介绍和分析文档,并且结合应用实例进行了详细的讲解。

其实朴素贝叶斯的概念以及流程都被写烂了,之所以写这些是方便做个整理,记录备忘。而实例部分进行了详细的描述,网络上该实例比较简单,没有过程。

至于最后部分,则是对朴素贝叶斯的一个扩展了,当然只是简单的描述了一下过程,其中涉及到的中文分词以及TFIDF算法,有时间再具体补上。

 

More...