word2vec使用说明

Google的word2vec官网:https://code.google.com/p/word2vec/ 下载下来的Demo源码文件共有如下几个: word2vec – Revision 41: /trunk … LICENSE //Apache LICENSE README.txt //工具使用说明 compute-accuracy.c demo-analogy.sh  // demo-classes.sh  //词聚类的示例脚本 demo-phrase-accuracy.sh demo-phrases.sh  // demo-train-big-model-v1.sh demo-word-accuracy.sh demo-word.sh distance.c makefile questions-phrases.txt questions-words.txt word-analogy.c word2phrase.c word2vec.c 【快速入门】:1. 从http://word2vec.googlecode.com/svn/trunk/ 下载所有相关代码(所有的文件如上); 2. 运行make编译word2vec工具:Makefile的编译代码在makefile.txt文件中,先改名makefile.txt 为Makefile,然后在当前目录下执行make进行编译,生成可执行文件(编译过程中报出很出Warning,暂且不管); 3. 运行示例脚本:./demo-word.sh 和 … 继续阅读

数据分发shell小脚本

在Linux系统下,当一个文件夹下的文件过多,则文件列表读取会很慢,而且不利于进行cp 或mv 操作,应对与此,我们通过一个分发脚本程序对指定文件夹的数据进行分发,重新分配到多个文件夹下。 #! /bin/sh       ###########################################    scrDir=/data/path/    splitNum=3       count=1    while true; do       FileList =`ls $scrDir|grep txt`        if [ -z "$FileList" ]        then            #The filelist is empty, sleep 10s            sleep 10s        else           #The folder has files, so mv it            for FILE in $FileList           do               if [ $count -gt $splitNum ]                then                    count=1                fi                mkdir -p $scrDir$count‘/’ … 继续阅读

Solr MultiValues

1. 什么是MultiValues,如何建立索引: solr的schema.xml配置文件在配置Filed的时候,有个属性: MutiValued:true if this field may containmutiple values per documents,这个说明有点模糊,下面结合实际应用,列举两个不同的例子。 例子一:一个field有多个值MultiValue,值来自同一filed, 如: <field name=”executor” type=”int” indexed=”true” stored=”true” multiValued=”true” / executor这个field可以多个值,任何executor:29 OR executor:40,类似查询都能查出id为3的记录。 附注:使用solrj建此索引时,定义成集合类型即可,如: @Field private Set<Integer> executor; public Set<Integer> getExecutor() { return executor; } public void setExecutor(Set<Integer> executor) … 继续阅读

solr那点事儿

1. 无论读和写io都是本质瓶颈,固态盘用起来是很爽的,linux下大内存通过缓存也能大大减少io的使用率; 2. solr4.7之后提供了游标方式以解决深页查询问题,但是应避免使用它,因为它是基于sort排序和范围检索实现的,排序会消耗很大的io,应尽可能避免它!!!血的教训!可利用时间切片加浅深翻方式进行查询; 3. solr4.4的问题,solr core不能太多3K左右就会很慢,solr core的lru队列中加载不了新core。solr4.9的问题,同一个tomcat下部署了多实例,通过lru加载或者创建一个1KW的新core速度很慢! 4. 并发写同一个core基本提速很少而且会出现重复写数据问题,而多线程同时写不同的core则基本程线性倍数提高! 5. Solr入库的瓶颈在CPU主频,Solr检索的瓶颈在IO,并发检索排序查询的瓶颈在内存。 6. LRU加载多少个核合适的问题: 对于微博文本这样的内容,原始文本平均4M/W的存储空间,建立索引后,平均为5G/2KW存储,SOLR加载2KW的一个CORE主要为加载词典文件和打开文件操作符,大致消耗60M空间。平均加载一个这样的CORE在2秒左右 7. 今天加大内存到148G,并提高LRU到2000,共用了三台服务器,数据量到达420亿,共3600个核进行5个线程的并发检索,首次检索达12分钟,而再次相同条件检索仅6秒!