实践
着凉的石头
持续学习持续成长
展开
-
LDA中Gibbs采样算法和并行化
最近在用topic model跑一些数据,算法采用了LDA和PLSA进行对比,由于数据量稍大,采用了LDA的并行化版本,对其并行化方法很感兴趣,查看了相关资料后先总结如下,有时间可以继续琢磨。Gibbs Sampling用来逼近LDA中的隐式变量,是一种较为简单的实现方式。 Gibbs 方法 传统的实现方法是串行的,主要流程如下: 步骤4中,每一个word都需要对原创 2013-09-25 19:42:45 · 5782 阅读 · 0 评论 -
openmp 中部分函数简介
考虑对plsa进行并行化,并行化主要包括机器之间的并行和单机多线程的并行,考虑采用omp来实现单机多线程的并行,这样既可以快速验证下算法的效率提升又可以避免把很多时间花在多线程控制上,结合算法特点,需要用到以下函数,在这里简单整理下,原创 2013-10-10 12:52:14 · 1140 阅读 · 0 评论 -
chrome插件-新闻推荐评测插件开发
在实现新闻推荐的过程中,需要对推荐算法进行评测来衡量推荐的效果。前期一般通过人工去评测,但是因为是根据网页来推荐的,为了满足随机性和提高效率,开发了基于chrome的插件来对网页的推荐效果进行评测,前期主要是为了解决一些比较明显的问题,比如标题长度,乱码符号等,后期可以切一部分流量进行a/b test来看效果。原创 2014-02-23 18:02:14 · 1273 阅读 · 0 评论 -
Kmeans的改进-kmeans++算法的聚类中心初始点选取和蓄水池采样算法
kmeans算法存在的一个问题是初始中心的选取是随机的,造成聚类的结果也是随机的,一般的做法是进行多次重复整个聚类过程,然后选取聚类效果好的。Kmeans++算法可以很好的解决初始点的选取问题,本文简单进行了总结和实现,并结合kmeans++算法提到了蓄水池算法在ClouderaML中的两个应用。原创 2014-02-15 18:17:10 · 8035 阅读 · 1 评论 -
实时数据流处理简介
最近在组内作了次简单的分享,题目是实时数据流的处理,切入点主要是推荐系统中多种实时数据流的实时计算问题,当然像搜索的trends, 广告的实时计费等也可能会碰到类似的问题,PPT里面简单的介绍了下线上系统实际的结构和流程,系统上线运行近半年多,虽然没有出现过问题,其中有些问题还是值得修改和改善的,如果有业务相关的需求,这些问题会一并改善。 主要处理的问题:1. 乱序的问题,这个在多数原创 2015-03-29 16:04:30 · 2846 阅读 · 0 评论 -
Java 直连Hive Server运行Hive SQL
最近在做个简单的hive 查询调度系统, 需要实现用java 连接hive server运行sql,并需要把结果自动导入到mysql中, 直接上代码: import com.google.common.collect.Lists;import org.apache.commons.dbutils.DbUtils;import java.sql.Connection;import j原创 2016-01-13 19:20:15 · 1106 阅读 · 1 评论 -
那些年,我使用过的轮子
背景 13年7月19日研究生毕业正式工作开始,到目前已经三年多了,接触和开发的业务线经历了后台+算法->大数据+算法+推荐(新闻,广告)->大数据+微服务(推荐,数据)这个过程,使用的缓存和存储的轮子基本包括了redis,memcached,couchbase,MongoDB,Aerospike,EhCache;既有Localized Cache,也有Distributed Cache;原创 2017-02-19 21:01:48 · 459 阅读 · 0 评论 -
hbase和es在搜索场景的应用
背景 最近有个简单的需求,离线数据挖掘得出的标签需要支持online的查询,查询场景比较简单,支持按照单个id或者多个id批量查询,tp99需要在200ms,批量的时候id 集合的大小不会超过1000,平均下来不会超过200的样子。这种场景直接上ES相对来说比较省事,不过ES占用资源较多,想尝试用hbase来解决这种场景,下面记录下具体的过程。 为何要考虑HBase?原创 2017-08-02 01:04:46 · 15005 阅读 · 0 评论