自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (3)
  • 收藏
  • 关注

原创 nutch2.1 index with solr 4.0

首先修改ivy/ivy.xml,使其对应的solr库为4.0.0:  <dependency org="org.apache.solr" name="solr-solrj" rev="4.0.0" conf="*->default" />在配置solr 4.0时,主要的一点是要使用这个schema.xml:http://nlp.solutions.asia

2013-01-25 17:46:28 1506

转载 【算法设计】基于大规模语料的新词发现算法

对中文资料进行自然语言处理时,我们会遇到很多其他语言不会有的困难,例如分词——汉语的词与词之间没有空格,那计算机怎么才知道“已结婚的和尚未结婚的”究竟是“已/结婚/的/和/尚未/结婚/的”,还是“已/结婚/的/和尚/未/结婚/的”呢?这就是所谓的分词歧义难题。不过,现在很多语言模型都已能比较漂亮地解决这一问题了。但在中文分词领域里,还有一个比分词歧义更令人头疼的东西——未登录词。中文没有首

2013-01-25 17:42:47 818

原创 小试nutch2.1

最近学习机器学习,弄点小数据研究算法对于学习阶段还不错,不过不和实际数据结合总觉得是在玩玩具,因此想抓点数据搞点小应用。nutch有2.1版本了,看介绍还不错,和hbase、gora结合使用,这样抓取数据的分布式存储和处理都一下ok了,那就试试吧。前提我的主机是centos系统,java和hadoop都已安装并正常使用,hadoop是按伪分布式方式部署的。hbase版本使用hbas

2013-01-24 17:56:16 3006 1

转载 Hadoop MapReduce程序中解决第三方jar包问题--终极解决方案

原文地址:http://blog.csdn.net/lazythinker/article/details/7244609,经过我测试确实有效,感谢作者。   在项目中碰到了MapReduce任务中需要引入第三方jar包的问题;   一、现象            报一堆类似异常【Error: java.lang.ClassNotFoundException:***】。

2013-01-22 16:25:01 845

原创 在线公式编辑器

http://www.codecogs.com/latex/eqneditor.php

2013-01-22 09:58:52 734

原创 Mahout MinHash代码阅读理解

MinHash的介绍请参看http://rdc.taobao.com/team/jm/archives/2434初始化 Configuration conf = getConf(); conf.setInt(MinhashOptionCreator.MIN_CLUSTER_SIZE, minClusterSize); conf.setInt(Minhas

2013-01-21 11:00:00 1738

转载 推荐系统的循序进阶读物(从入门到精通)

原文地址:http://blog.sciencenet.cn/blog-210641-508634.html推荐系统-从入门到精通为了方便大家从理论到实践,从入门到精通,循序渐进系统地理解和掌握推荐系统相关知识。特做了个读物清单。大家可以按此表阅读,也欢迎提出意见和指出未标明的经典文献以丰富各学科需求(为避免初学者疲于奔命,每个方向只推荐几篇经典文献)。1. 中文综述(

2013-01-18 09:35:54 886

原创 mahout SparseVectorsFromSequenceFiles详解(8)

最后一步,生成tf-idf调用方法是TFIDFConverter.processTfIdf,继续以tf-vectors为输入目录先是makePartialVectors,hadoop程序,Mapper是缺省的,Reducer是TFIDFPartialVectorReducer @Override protected void reduce(WritableComparable

2013-01-18 09:34:07 1028

原创 mahout SparseVectorsFromSequenceFiles详解(7)

现在进入倒数第二步,DF的生成calculateDF调用方法是TFIDFConverter.calculateDF输入目录是tf-vectors目录,上一个步骤生成的,key是文档目录,value是词频vector真正的执行方法是startDFCounting,又是一个hadoop程序,mapper是TermDocumentCountMapper,reducer是TermDoc

2013-01-18 09:33:45 881

原创 mahout SparseVectorsFromSequenceFiles详解(6)

这一部分是tf的生成首先是生成PartialVectors,每个dictionaryChunk生成一个PartialVectors,代码如下: int partialVectorIndex = 0; Collection partialVectorPaths = Lists.newArrayList(); for (Path dictionaryChunk : d

2013-01-18 09:33:20 1056

原创 mahout SparseVectorsFromSequenceFiles详解(5)

这一部分讲述createDictionaryChunks参数wordCountPath,这是输入目录,即上面wordcount目录dictionaryPathBase,输出目录其它几个参数很明显代码很简单 List chunkPaths = Lists.newArrayList(); Configuration conf = new Configur

2013-01-17 17:51:27 969

原创 mahout SparseVectorsFromSequenceFiles详解(4)

这一部分讲述当n-gram不为1时候的情况待续。。。

2013-01-17 17:42:34 814

原创 mahout SparseVectorsFromSequenceFiles详解(3)

创建dictionary和tf-vectors实现类是DictionaryVectorizer调用createTermFrequencyVectors方法,参数是:input,output,tfVectorsFolderName,baseConf,这几个参数很明显minSupport -- 最少要在文档中出现多少次才会放置到sparsevector,缺省值2maxNGramSi

2013-01-17 14:48:14 1427 1

原创 mahout SparseVectorsFromSequenceFiles详解(2)

文档处理DocumentProcessor类处理sequencefile创建输出PathPath tokenizedPath = new Path(outputDir, DocumentProcessor.TOKENIZED_DOCUMENT_OUTPUT_FOLDER);这个Path是hadoop的函数,前面的参数是parent,后面的参数是child,将他们组合在一起并规范化(

2013-01-17 11:18:02 1386

原创 mahout SparseVectorsFromSequenceFiles详解(1)

mahout预处理数据的第一步是将文档转化为可以被hadoop处理的sequencefile,第二步是从sequencefile转化为Vector,称为Vectorizer过程,这里剖析的SparseVectorsFromSequenceFiles是其中一个实现。SparseVectorsFromSequenceFiles.java位置在mahout-distribution-0.6/core

2013-01-16 17:43:15 1964

原创 mahout将文件sequence化过程

实现文件是mahout-distribution-0.6/integration/src/main/java/org/apache/mahout/text/SequenceFilesFromDirectory.javasequence化的意义原始文档不能被hadoop处理,需要一个转化过程,这个过程就是sequence化定义类sequencefile格式是hadoop提供的

2013-01-16 12:52:37 1621

原创 Collocations in Mahout阅读理解

官网讲解:https://cwiki.apache.org/MAHOUT/collocations.htmlcollocation是经常在一起出现的词,如coca colalatent semantic indexing(LSI)可以解决这一问题,但mahout还没实现LSI,采用的是log-likelihood ratio(llr)方法算法实施时经历了两个map-reduce p

2013-01-15 17:41:07 962

原创 c++ hac例子

http://blog.o-x-t.com/2009/01/23/hierarchical_clustering/下面是对其代码阅读笔记:扁平聚类 -- 无结构。高效,o(n)层次聚类 -- 不需要事先指定簇的数目,效率低,至少o(n^2)算法 -- single link    complete link    group average    centroid

2013-01-10 17:13:06 822

原创 minhash在mahout小实验

随便写几个文本文件到examples/minhash-test/执行以下命令:unset HADOOP_HOMEunset HADOOP_CONF_DIRbin/mahout seqdirectory -c UTF-8 -i examples/minhash-test/ -o minhash-test-seqfilesbin/mahout seq2sparse -i minha

2013-01-10 11:21:19 1895 1

原创 Top down clustering

是一种层次聚类算法,先找到大的聚类,然后在大的聚类里边找小的聚类,所以名字叫top down除了MinHash 聚类算法,其它聚类算法都可以用到top down的算法中,包括top level和bottom leveltop level输出需要后处理,分成多组,这样bottom level聚类可以分别对每个组实施,对应的类是ClusterOutputPostProcessorDrive

2013-01-09 13:31:59 1292

原创 lingo算法学习

层次聚类算法,首先要有好的分类效果,同时提取类别标签更为重要lingo算法利用后缀数组聚类lingo算法分析:1:文本预处理过滤文档中的HTML标签、实体,去除非字母字符,提取词干,去除停止词2:关键词提取利用奇异值分解方法发现抽象概念,奇异值分解概念理解需要有线性代数和统计等知识3:类标签提取4:文档分配5:形成最终聚类

2013-01-09 10:35:24 4058

原创 线性代数公开课学习资源

http://52opencourse.com/98/%E7%BA%BF%E6%80%A7%E4%BB%A3%E6%95%B0%E7%9A%84%E5%AD%A6%E4%B9%A0%E5%8F%8A%E7%9B%B8%E5%85%B3%E8%B5%84%E6%BA%90里边有书籍下载地址和视频

2013-01-07 21:29:55 754

原创 mahout读书笔记 -- 聚类(6)

本部分主要关注文档向量化VSM(vector space model)是文档向量化的通用方法,其做法是对于要向量化的所有文档,取出所有至少出现过一次的词,为每个词分配一个数字,这样对于每个文档,其向量就是每个词的出现次数组成的一个列表,词的出现次数就是术语term frequency,即TF,这个向量是一个sparse vector,因为1个文档所包含的词远小于所有文档包含的词由于某些词在

2013-01-07 13:36:26 694

原创 mahout读书笔记 -- 聚类(5)

第八章 数据表示聚类的第一步是将数据vector化,将对象的特征和属性转化为数据vector就是排序好的列表,没啥特别的vector的分类:1:DenseVector,不管是否0都记录上,用单数组实现2:RandomAccessSparseVector,只记录非0的值,用hashmap实现,随机访问3:SequentialAccessSparseVector,也是只记录非0

2013-01-06 17:49:31 631

原创 mahout读书笔记 -- 聚类(4)

相似性度量:1:Euclidean distance measure,直观看就是两点直连距离2:Squared Euclidean distance measure,和类别1的不同就是它不开方了3:Manhattan distance measure,两点之间的折线距离,蚂蚁爬台阶的距离4:Cosine distance measure,可以看成两点与原点相连向量夹角,缺点是没有考

2013-01-06 16:44:52 566

原创 mahout读书笔记 -- 聚类(3)

k-means要完成运算,需要以下输入参数:1:包含vectors的sequencefile2:包含初始中心点vector的sequencefile3:相似性度量4:convergenceThreshold,达到这个值就不在计算5:循环次数最后看数据是怎么读取的:聚类结果放置在输出目录的CLUSTERED_POINTS_DIR子目录中,通过SequenceFile.Re

2013-01-06 15:45:19 646

原创 mahout读书笔记 -- 聚类(2)

最简单例子:聚类算法包括k-means,canopy,fuzzy k-means,lda等,例子是用k-means讲解的。mahout的聚类算法要求输入格式是sequencefile,hadoop库也广泛使用这一格式为mahout准备输入数据分为三步:1:数据预处理2:使用预处理数据创建vectors3:保存vectors到sequencefile具体到例子,第一步不需

2013-01-06 15:16:40 1100

原创 mahout读书笔记 -- 聚类(1)

自己看书第二遍的记录,主要是为加深理解第七章 聚类介绍人类具有发现重复模式和类型的能力,例如我们能分辨甜的和咸的味道我们在分类的时候,物品是否同类和选择的度量方式有关,比如对猿和猴可以以外形分为两类,但他们都喜欢香蕉,又可以根据这个喜好把他们归为一类,用计算机语言来表达,就是根据选择特征的不同得到不同的分类。图书馆聚类例子:最开始是无序状态,找本书太难了,的一本本找,进化一

2013-01-06 11:23:29 599

原创 分类步骤

1:数据准备2:训练3:评估4:生产化

2013-01-06 10:11:15 594

A New Method for Symmetric NAT Traversal in UDP and TCP

一种新的穿越对称NAT的方法,穿越一端修改TTL的方式通过NAT,另外一端通过猜测端口命中,可以大幅提高穿越几率

2012-03-18

redfire-plugin.jar

redfire在spark插件,有了它就可以利用redfire进行音视频通话

2011-10-28

空空如也

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

TA关注的人

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