- 博客(59)
- 资源 (2)
- 收藏
- 关注
原创 自己实现了一个维特比(Viterbi)算法的Python版本
Viterbi的算法在这边就不解释了。 主要可以参考:(1) Wiki详细介绍了算法的原理与python实现。 不过个人感觉看这个python的实现没太看懂。 于是乎自己在下面又写了一遍而且感觉相对来说要更清楚一些 (2) 知乎:谁能通俗的讲解下viterbi算法吗?其中最高票的答案非常详细的一步步的描写了运算的过程最好各位再在草稿纸上面写写画画以求彻底明白 ...
2015-07-22 12:20:50
855
原创 [NLP] 命名实体识别简要知识点
命名实体识别(Named EntitiesRecognition, NER)是自然语言处理(Natural LanguageProcessing, NLP)的一个基础任务
2015-02-17 13:21:17
3086
[Lucene] Lucene 4.10 显示分词结果
主要参考: http://www.cnblogs.com/dennisit/p/3258664.html 原文写得非常好,非常详细。但是版本有一些老了,以其中的displayToken()中跟displayAllTokenInfo()已经需要修改。否则无法在最新的4.10上工作。 在最新的版本之中,需要:(1)在stream的incrementToken之前增加一个rese...
2014-12-09 17:22:49
285
原创 我对主题模型的理解
本周我司开始研究LDA。听了林哥的sharing感觉还是有很多东西不太清楚。在看了网上的不少文章之后,感觉还是要首先了解一下“主题模型”是个什么东西。下面就是我的一些理解或者说是学习笔记。一、什么是主题、主题模型?引用维基百科上面的描述:主题模型(Topic Model)在机器学习和自然语言处理等领域是用来在一系列文档中发现抽象主题的一种统计模型。直观来讲,如果
2014-11-29 10:35:00
824
[Hadoop] 分布式Join : Replicated Join
上一篇文章说的ReduceSide Join的一个缺点就是,在map方法之中,只对数据加了tag、提取了groupkey,没有做任何的数据过滤,这样在map-reduce之中的shuffle过程会造成大量的 磁盘IO使得效率降低。 这次使用的是Replicated Join,完成的任务跟上次一样.它有一个前提:需要关联在一起的两个文件,其中一个文件比较小,至少能放到内存之中。 ...
2014-09-25 15:41:41
420
[Hadoop]使用Hadoop进行ReduceSideJoin
Note: 1. 内容主要参考<Hadoop in Action> Chapter 5.22. 代码主要参考: http://qindongliang.iteye.com/blog/20528423. 这是基于老的API的实现,这种方法并不高效简洁 数据:(原始数据可以从movielens-1m里面去要,这里将原始数据进行了简单的修改方便演示与自测)文件: u...
2014-09-24 17:09:54
202
[Hadoop] Hadoop 链式任务 : ChainMapper and ChainReducer的使用
注意:1. 本人目前使用的版本是1.2.1,因此ChainMapper使用的还是old api。 2. 老的API之中,只支持 N-Mapper + 1-Reducer的模式。 Reducer不在链式任务最开始即可。比如:Map1 -> Map2 -> Reducer -> Map3 -> Map4 (不确定在新版的API之中是否支持 N-Red...
2014-09-23 11:02:47
222
[Hadoop] 练习:使用Hadoop计算两个向量的内积
同样是<Hadoop in Action> 上面的练习~ 练习:计算两个向量的内积,比如:v1 = [1 2 3]v2 = [2 3 4]内积 = 2 + 5 + 12 = 19 我的输入文件:1.0 2.03.0 4.01 1即:v1 = [1 3 1]v2 = [2 4 1]结果: 15 思路:每行读取两个向...
2014-09-22 13:30:26
296
原创 [Hadoop] TopK的一个简单实现
题外话:《Hadoop in Action》 是一本非常不错的交Hadoop的入门书,而且建议看英文版。此书作者的英文表达非常简单易懂。相信有一定英文阅读能力的同学直接用英文版就能非常容易的上手~ 进入正题。 这个题目是《Hadoop in Action》 上面的一道题目,求出Top K的值。我自己随便弄了一个输入文件:g 445a 1117b 222c ...
2014-09-22 11:54:00
314
原创 [Hadoop] 常用的web界面汇总 (持续更新中...)
假设hadoop运行在伪分布式的模式,并且本机直接用localhost访问 1. JobTracker: http://localhost:50030/jobtracker.jsp 2. DFS Heath Track在这里面能直接点击下面的 “Browse filesystem” 查看上传上来的文件 ...
2014-09-22 11:46:45
1045
[Hadoop] 新API容易遇到的一个问题: expected LongWritable recieved Text
我们在之前一篇WordCount的文章里面使用了下面这条语句: job.setInputFormatClass(TextInputFormat.class);job.setOutputFormatClass(TextOutputFormat.class);这本身不起眼的一句话,其实有一个容易错的地方。 如果你遇到写道Type mismatch in key fro...
2014-09-10 08:17:46
252
[Hadoop] 从WordCount 入门
Hadoop就不介绍了~ 之后应该会补充一个如何在单机Ubuntu上面部署hadoop的文章。不过网上也一大把了~ 先贴一个可以用的WordCount代码 package org.myorg; import java.io.IOException;import java.util.*; import org.apache.hadoop...
2014-09-09 22:37:07
142
[Mahout] 使用Mahout 对Kddcup 1999的数据进行分析 -- Naive Bayes
通常,在网上找到的mahout的naive bayes的例子跟官网的例子,都是针对20 newsgroup. 而且通常是命令行版本。虽然能得出预测、分类结果,但是对于Bayes具体是如何工作,以及如何处理自己的数据会比较茫然。 在努力了差不多一个星期之后,终于有点成果。 这个例子就是使用mahout 0.9 对kddcup 1999 的数据进行分析。 第一步: 下载数据...
2014-07-19 11:58:14
247
[Mahout] 为什么mahout需要sequencefile ?
《Apache Mahout Cook》 第二章的标题是: Using Sequence Files – When and Why ? 看了半天也没看懂需要sequence file的原因。其实是因为我对hadoop不了解。 sequence file 是hadoop底下特有的一种key/value文件格式,而不是mahout自己特有的。而mahout需要hadoop,所以就一定...
2014-07-17 23:02:02
192
[Mahout] mahout 0.9 的 seqdirectory 有bug
具体请参考:http://mail-archives.apache.org/mod_mbox/mahout-user/201311.mbox/%3C1384299917.36018.YahooMailNeo@web163504.mail.gq1.yahoo.com%3E虽然官方已经关掉了,但是在我的环境(Ubuntu 14.04 + Hadoop 1.2.1) 依然出错官方bug链接:h...
2014-07-13 15:29:05
188
[Mahout] 使用Mahout对iris数据进行分析 - Logistic Regression
在mahout的官网上面,有讲诉如何在命令行之中使用Logistic Regression对自带的donut.csv进行训练的例子。现在我们要做的,是自己在java代码之中对iris的数据使用LR进行分析。 首先,我们要熟悉一下,使用LR需要哪些参数以及他们的作用。我们从《mahout实战》上面给出的命令行例子来了解一下: $ bin/mahout trainlogisti...
2014-07-11 14:17:28
361
[Mahout] Windows + Eclipse 构建mahout运行环境
mahout的完整运行还是需要hadoop的支持的,不过很多算法只需要能把hadoop的jar包加入到classpath之中就能正常运行。比如我们在使用LogisticModelParameters的时候,会引用包import org.apache.hadoop.io.Writable; 按照之前的文章,仅仅将mahout的包加入到classpath之中,就会提示找不到hadoop...
2014-07-11 12:50:38
270
[Mahout] 第一个小实验:使用GroupLens进行推荐模型的检验
注: 内容参考至《Mahout实战》根据mahout实战里面的内容,接下来将使用grouplens提供的movielens-1m的数据进行推荐。在mahout自带的example之中,已经有了能读取dat文件的代码。其扩展至FileDataModel, 因此拿过来就能直接用了。但是由于考虑到机器性能的原因,我会丢弃掉部分数据,减小运算的数据量~ 改造主要就是在参数之中增加了一个r...
2014-07-06 15:29:24
249
[Mahout] Windows下Mahout单机安装
刚开始接触Mahout,在网上也看了一些人家的文章,但是感觉都比较复杂。下面我这种方式,在单机做一些简单的实验、作为初步对于mahout的了解估计是比较好的方法。 1. 到官网下载最新的版本:http://apache.fayea.com/apache-mirror/mahout/0.9/2. 下载之后解压3. Eclipse之中创建一个普通的java project 并将解...
2014-07-06 10:41:15
510
原创 [Kaggle实战] Titanic 逃生预测 (5) - 使用Dot语言绘制决策树
昨天好不容易创建了一棵决策树,但是受限于JFreeChart以及Java确实没找到好用的绘图类库。google半天,发现还有一个不错的选择: Dot Langage最Easy的入门方式,应该是使用Google chart了! 传送门:https://developers.google.com/chart/image/docs/gallery/graphviz?csw=1 先列几...
2014-06-07 21:38:31
252
原创 [Kaggle实战] Titanic 逃生预测 (4) - 决策树建模
之前的文章已经解决了数据预处理的问题。从这里开始,就要开始创建决策树了。首先可以使用之前用Java实现的ID3算法进行修改。 之前的算法是基于Weka自带的数据进行的,跟这里的格式不太兼容。基本上需要把String改成Double就好了~ 现在先尝试手动的创建模型,保证待会我们写出来的代码确实是正确的。关于决策树模型以及ID3算法,具体的概念以及思路就不在这里重复写了,可以参考...
2014-06-02 22:20:54
414
[Kaggle实战] Titanic 逃生预测 (3) - Age离散化
昨天的文章大致构建了一个data matrix, 并进行了数据清理。有一个遗留问题就是,如何将连续的Age属性离散化? 对于连续属性离散化,可以参考《数据挖掘导论》 2.3.6小节。首先,我们试着将数据图形化,看看是否有明显的间隔区间。 画图依然使用JFreeChart来进行。从肉眼的角度来分析,虽然没有太明显的区间,但是从分布上看,基本上能如下图进行划分: 再来一张书...
2014-06-02 09:40:39
336
原创 [Kaggle实战] Titanic 逃生预测 (2) - 数据预处理
上一篇文章简要介绍了比赛的主题与将会使用到的数据集。 这一篇文章的主要任务是完成数据挖掘的第一步: 数据清理 完成数据清理的第一步,就是先把数据读到内存之中。在这里,我使用的是OpenCsv. 可以到这里下载。OpenCSV的使用可以参考: http://opencsv.sourceforge.net/#how-to-read 其中我对比了SuperCSV 以及其他...
2014-06-01 23:06:43
271
原创 [Kaggle实战] Titanic 逃生预测 (1) - 项目起步
这次实战的Kaggle比赛,其实只是其中一个没有奖金的公益比赛。主页: http://www.kaggle.com/c/titanic-gettingStarted主题是:Titanic: Machine Learning from Disaster在比赛之中,官方给出了一些原始的一半的数据作为比赛用的训练集与测试集。另外一半作为官方自己的测试集。最后成绩评定也是会使用官方自己...
2014-06-01 23:05:49
350
Java实现的朴素贝叶斯分类器
目前的算法只能处理结果只有两种的情况,即true or false. 多分枝或者是数字类型的还无法处理。用到的一些基础数据结构可以参考上一篇关于ID3的代码。 这里只贴出来实现贝叶斯分类预测的部分:package classifier;import java.util.ArrayList;import java.util.HashMap;import java....
2014-02-15 16:48:47
573
使用Java实现的ID3算法
这里就不描述ID3算法了。关于如何使用java实现,其实网上也不少,只是感觉没有拿来就直接能用的,而且,就我搜索到的实现,并没有能够将属性值以及最后的结果加入进来。算是一个小小的加强版吧。整个项目已经上传上来了。 项目截图如下: 值得说的有几个地方:1. 从arff之中解析出属性public static final String ATTR_PARSE_PATTER...
2014-02-14 10:33:11
526
原创 Weka 界面操作实例
今天google到一个很好的介绍如何使用Weka GUI 的例子。具体看附件吧~ 原文链接: http://referensi.dosen.narotama.ac.id/files/2011/12/weka-tutorial-2.pdf 虽然我们没有例子之中要到的iris.arff 但是可以使用自带的weather-*.arff天气的例子分类如下所示: ...
2014-02-11 14:20:43
534
原创 Weka聚类算法的两个实现算法
在这里将使用Weka自带的K-means以及EM算法对同一份数据进行聚类。目前使用的是自带的数据集。我也不太清楚这样聚类的效果如何 sigh... Weka Version: 3.7.10 K-Means K-均值算法import java.io.File;import weka.clusterers.SimpleKMeans;import weka.cor...
2014-02-07 23:08:11
420
原创 [Lucene] 使用Lucene创建自定义的词干分析器
代码主要来源: 《Collective Intelligence 实战》Lucene版本: 4.6.1原来的代码是基于2.2写的,很多东西已经变了。现在用4.6.1重现实现一遍 package impl;import java.io.IOException;import java.io.Reader;import java.io.StringReader;...
2014-02-06 11:41:54
374
[Lucene] Lucene入门心得
主要参考文章: http://www.cnblogs.com/dyllove98/archive/2013/06/19/3144919.html但是我利用了搜狗的语料库来进行测试:http://www.sogou.com/labs/dl/c.html此次使用的是其mini版 demo而已嘛:) 主要代码可以参考来源的博客,基本上copy到eclipse之中就能用。本人小小改动了一...
2014-02-06 10:29:48
132
原创 【GXCMS使用实录】小问题集锦 (持续更新之中~)
1. 【已解决】直接输入登录地址***/index.php?s=Admin-Login 会自动跳转到首页>> 不能这样直接登录 需要从/admin/index.php登录然后他会自动跳转到登录的页面 2. 【已解决】视频来源覆盖解释:版本1.5, 从bdzy.cc拉资源。发现神枪狙击(国语)会被神枪狙击(粤语)覆盖>> 在主页上面,有一个相似性判断。...
2013-10-24 08:30:30
180
原创 【飞飞CMS二次开发实录】开篇:安装与运行
从国庆到现在,花了很多时间在从头创建一个视频网站。可惜,水平有限,效果一直很勉强。无意之中发现,有很多视频系统,很快就可以创建一个视频网站,而且很多还带视频采集规则。一方面很无语,自己做了那么多,可以算是白做了。另一方面也很开心,自己遇到的一个老大难问题——UI——就这样很轻易的解决了! 简单对了光线CMS MacCMS以及feifeicms之后,最终选用了feifeic...
2013-10-23 07:37:51
745
终于成功运行第一个Hadoop程序
之前一直只在Windows上玩 为了Hadoop 只好迁移到Ubuntu上~ 记录一下自己的历程: 1. 在Windows上安装Ubuntu 方法就是通过wubi安装,全自动化,非常傻瓜,太适合我这种linux小白了! wubi可以直接在官网下载,当时我不知道,使用的还是从iso之中解压出来的程序 哈哈 下载地址:http://www.u...
2013-07-06 20:51:49
482
上小众软件头条了
真的没想到,我做的豆瓣看电影已经登上小众软件的头条了!记录一下这个历史性的时刻: 2012-09-07难怪今天的用户量刷刷往上彪 上图!
2012-09-07 14:27:12
271
猎豹、搜狗Sougou 、 Chrome Extension: 豆瓣看电影
最近忙里偷闲 有做了一个机遇chrome的应用: 豆瓣看电影传送们: https://chrome.google.com/webstore/detail/lhfmcbnidnkaalleepapkdnfblbiaacl已经使用最新版本的猎豹测试过,能直接安装,毫无压力! 增加搜狗浏览器的版本: 具体请下载附件的文件 上一些图简介吧:...
2012-09-05 22:11:25
272
原创 一个chrome上面的看电影助手
发布地址: https://chrome.google.com/webstore/detail/jfhmelkcfpkbemkkionlcadnaejfkine主要功能:在电影的页面,插入一个订阅按钮。对于订阅的电影,只要chrome在运行之中,就会定时检查服务器。一旦有更新,会以桌面通知的形式进行提醒。一个简单的示意图:Popup页面:...
2012-08-30 17:28:46
3122
原创 JqueryUI autocomplete 字体过大
在导入了JqueryUI的css样式之后,自动提示的字体特别大。具体可以看上传的图片。 我只好改了CSS文件,路径:\themes\base\jquery.ui.autocomplete.css .ui-menu .ui-menu-item a { text-decoration:none; display:block; padding:.2em .4em...
2012-04-23 15:39:40
328
原创 Java读文件 带前缀过滤
private static List<String> loadData(File file, String prefix) { List<String> contentList = new ArrayList<String>(); if(!file.isFile()) { return null; } Buffe...
2012-02-07 11:11:22
357
原创 用java读取ini文件(支持中文)
2012-11-29google出一个非常犀利的iniEditor: http://grepcode.com/file/repository.jboss.org/nexus/content/repositories/releases/org.rhq/rhq-core-util/3.0.0.EmbJopr4/org/rhq/core/util/IniEditor.java 我才写了百来行...
2011-10-30 12:15:49
1676
1
原创 解决VS报no symbols loaded的错误
一般的,正常情况下,在VS的Tools -> Attach to process里面,选择好目标线程即可进行debug,但是经常的,会报“The breakpoint will not currently be hit. No symbols loaded ...”百度 google了很久,有人说重装.net framework sdk反正各种方法说了很多。但是都没有解决我的...
2011-03-17 12:34:59
4985
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人