2014年4月15日

摘要: 转自http://longriver.me/?p=403背景:像用户推荐旅游地点(城市),过去的做法是基于用户的历史城市访问记录,采用协同过滤的方法,其效果可能不理想,原因如下:用户的历史城市访问记录稀疏旅游城市的推荐理由不够充分(交通枢纽城市很可能永远绑在一起出现)冷启动比较严重,很多用户只有本地... 阅读全文
posted @ 2014-04-15 10:13 Harveyaot 阅读(262) 评论(0) 推荐(0) 编辑

2014年3月26日

摘要: 见原文,转自http://longriver.me/?p=355空间检索中网格索引的引入网页的检索需要对每篇文档建立倒排索引,空间检索中,需要对每个地域建立网格索引。简单说就是要将地域划分成一个个的网格(mesh),每个网格有个单独的id,唯一标示,利用局部性原理,给出一个点,检索附近的点的时候,只需要计算相邻网格中的点,省去了全局的计算。图1 给出了网格的示例一般会应用场景是,给定一个点,计算器最近邻的几个地点,或者是判断一个坐标点是否落在一个区域内 图1,将一个地域划分为网格,并给每个网格唯一id图2,AOI:圆明园,天安门,森林公园假设一种空间检索的应用场景,现在有一堆面状的区域... 阅读全文
posted @ 2014-03-26 21:36 Harveyaot 阅读(3229) 评论(0) 推荐(0) 编辑

2014年3月14日

摘要: 转自http://longriver.me/?p=80随着shell脚本行数的增大,为了编写和维护的需要,想把一些特定的功能的代码抽取出来,组成函数的形式,放到一个叫做functions.sh中这样将来使用的时候只需要在脚本中source functions.sh 一下,然后就可以方便使用,处理大数据的时候,上篇博文提到过使用多线程处理是重要的手段,所以想到了写一个lock()函数,使得多个进程之间可以异步的工作。函数的返回值有两种用途1,返回函数结束的状态(可以是int,也可以是string)2,共享一些变量以下代码来自(EDIT: This is also true for some ot 阅读全文
posted @ 2014-03-14 14:05 Harveyaot 阅读(438) 评论(0) 推荐(0) 编辑
摘要: 转自http://longriver.me/?p=320这篇文章主要使用LDA topic model 对大众轨迹的pattern(topics)进行挖掘,读了之后,对LDA这种模型的认识又有了些新的认识:1,是其在处理大量的稀疏数据时表现出来的好的效果2,对这种概率分布的结果,可操作空间比较大,相... 阅读全文
posted @ 2014-03-14 14:03 Harveyaot 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 转自http://longriver.me/?p=325经常使用python built-in sort 方法,使用方法例子如下:1234alist=[1,2,3,4,5,6,7]blist=sorted(alist,key=lambdaele:ele,reverse=True)printblist[7,6,5,4,3,2,1]Sorted 方法用起来很方便,当alist的元素是个对象的时候可以自己定义对对象的排序,如1sorted(nb_stats,key=lambda stat:10*len(stat.night_day)+len(stat.day),reverse=True)有的时候我们 阅读全文
posted @ 2014-03-14 14:02 Harveyaot 阅读(763) 评论(0) 推荐(0) 编辑
摘要: 转自http://longriver.me/?p=325在编写C++/C 的项目,因为调试的需要,经常会输出debug信息,那如何输出debug信息呢?在C里面可以这样定义一个debug的宏12345#ifdef DEBUG_BUILD# define DEBUG(x) fprintf(stderr, x)#else# define DEBUG(x) do {} while (0)#endif到了CPP可以这样定义:123#define DEBUG(x) do { \if(debugging_enabled){std::cerr<<x<<std::endl;}\}whi 阅读全文
posted @ 2014-03-14 13:58 Harveyaot 阅读(809) 评论(0) 推荐(0) 编辑
摘要: 转自 http://longriver.me/?p=329解决多分类问题的一些思考:存在大量的label数据,存在比较丰富的context信息,所以想训练分类模型来实现对样本类型的预测,目前是三个类别(0,1,2)候选拟采用的分类模型:LR,SVM,GBDT,RandomForest.这个预测是个多分类问题,ensemble 思想的 GBDT和 RandomForest方法天然支持多分类,效果可能更好,另外sklearn的库上有比较成熟的ensemble的方法,可以直接使用。常住点预测的多分类还是一个不平衡的多分类(classification imbalance)问题,样本之间数目比例差异较 阅读全文
posted @ 2014-03-14 13:51 Harveyaot 阅读(2925) 评论(0) 推荐(0) 编辑

2013年12月14日

摘要: 原文转自:http://longriver.me/?p=23machine learning 的一点基本知识,三个基本元素:训练集(training set)、模型(model)、测试集(test set)。还记得数理统计上的线性回归吗?根据已有的数据,设定惩罚函数,对线性函数进行参数估计,得到的线性函数就是model,然后在测试集上验证model的预测准确性。很简单。当今互联网公司大量使用machine learning方法。最简单的例子,使用google搜索,输入china stroy,它会自动纠正你是不是搜索china story。后台的原理是:google储备了大量的先验数据(大量的文 阅读全文
posted @ 2013-12-14 22:22 Harveyaot 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 转自:http://longriver.me/?p=146 之前在coursera上看过andrew ng的机器学习课程一些章节,感觉讲的清晰明了,展示方式也非常地直观,很喜欢,算是自己机器学习这个领域的入门课程了。最近无意中看了看网易公开课,看到andrew在stanford的cs229 机器学习课程现场录像,感触更加深刻,因为与coursera不同的是,网易的这些公开课是现场教学的录像,不仅在教学内容上较coursera上的更加丰富和深刻,更重要的是你还会有种置身standord的感受,与一群出色的同学一起同思考,共进步。看着andrew从一个黑板爬到另一个黑板,看他也是不停地范着一... 阅读全文
posted @ 2013-12-14 22:21 Harveyaot 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 转自:http://longriver.me/?p=57方法1:单进程处理大规模的文件速度如(上million量级)比较慢,可以采用awk取模的方法,将文件分而治之,这样可以利用充分的利用多核CPU的优势 for((i=0;i output_$i 2>err_$i & done方法2:另外也可以使用split的方法,或者hashkey 的办法把大文件分而治之,该办法的缺陷是需要对大文件预处理,这个划分大文件的过程是单进程,也比较的耗时infile=$1opdir=querysopfile=ress=`date "+%s"`while read linedo i 阅读全文
posted @ 2013-12-14 22:15 Harveyaot 阅读(1978) 评论(0) 推荐(0) 编辑

导航