标签: text-mining

在Lucene中索引和搜索Word级注释图层

我有一个数据集,在底层文本上有多层注释,例如部分标签,来自浅层解析器的块,名称实体以及来自各种 自然语言处理(NLP)工具的其他部分.对于像这样的句子The man went to the store,注释可能如下所示:


Word  POS  Chunk       NER
====  ===  =====  ========
The    DT     NP    Person     
man    NN     NP    Person
went  VBD     VP         -
to     TO     PP         - 
the    DT     NP  Location
store  NN     NP  Location

我想使用Lucene索引一堆带有这些注释的文档,然后在不同的层上执行搜索.简单查询的一个示例是检索华盛顿被标记为人的所有文档.虽然我并不是完全致力于表示法,但语法上的最终用户可能会按如下方式输入查询:

查询:Word=Washington,NER=Person

我还想做更复杂的查询,涉及跨不同层的注释连续顺序,例如,找到所有文档,其中有一个单词标记的人,后面arrived at是单词标记位置的单词.这样的查询可能如下所示:

查询:"NER=Person Word=arrived Word=at NER=Location"

用Lucene来解决这个问题的好方法是什么?无论如何索引和搜索包含结构化令牌的文档字段?

有效载荷

一个建议是尝试使用Lucene 有效负载.但是,我认为有效载荷只能用于调整文档的排名,并且它们不用于选择返回的文档.

后者很重要,因为对于某些用例,包含模式 …

java lucene nlp data-mining text-mining

8
推荐指数
1
解决办法
1210
查看次数

在JAVA中使用哪个NLP工具包?

我正在开展一个项目,该项目由一个连接到NCBI(国家生物技术信息中心)的网站组成,并在那里搜索文章.事情是我必须对所有结果进行一些文本挖掘.我正在使用JAVA语言进行文本化,使用IAXFACES进行AJAX用于开发网站.我有什么:从搜索返回的文章列表.每篇文章都有一个ID和一个摘要.我们的想法是从每个抽象文本中获取关键字.然后比较所有摘要中的所有关键字,找出最重复的关键字.然后在网站上显示搜索的相关字词.有任何想法吗 ?我在网上搜索了很多,我知道有名称实体识别,部分语音标记,有关于基因和蛋白质的NER的GENIA词库,我已经尝试过阻止...停止单词列表等...我只需要知道最好的aproahc来解决这个问题.非常感谢.

java nlp text-mining

7
推荐指数
1
解决办法
9778
查看次数

大型稀疏矩阵奇异值分解的Java实现

我只是想知道是否有人知道大型稀疏矩阵的奇异值分解(SVD)的java实现?我需要这个实现潜在语义分析(LSA).

我尝试了来自UJMP和JAMA的软件包,但当行数> = 1000且col> = 500时,它们会窒息.如果有人能指出我的伪代码或其他东西,那将非常感激.

java large-data-volumes text-mining large-data

7
推荐指数
1
解决办法
2618
查看次数

数据挖掘情况

假设我有如下所述的数据.

11AM user1刷机

上午11:05 user1准备Brakfast

上午11:10用户1吃早餐

上午11:15 user1洗澡

上午11:30用户1离开办公室

12PM user2刷机

下午12:05 user2 Prep Brakfast

下午12:10用户2吃早餐

12:15 PM user2洗澡

12:30 PM user2离开办公室

11AM user3洗澡

上午11:05 user3准备Brakfast

上午11:10 user3刷机

上午11:15 user3吃早餐

上午11:30 user3离开办公室

12PM user4洗澡

下午12:05 user4 Prep Brakfast

下午12:10 user4刷机

下午12:15用户4吃早餐

12:30 PM user4离开办公室

这些数据告诉我不同​​人的日常生活.从这些数据来看,似乎user1和user2的行为相似(尽管它们执行活动的时间有所不同,但它们遵循相同的顺序).出于同样的原因,User3和User4的行为类似.现在我必须将这些用户分组到不同的组中.在此示例中,group1- user1和USer2 ...后跟group2,包括user3和user4

我应该如何处理这种情况.我正在尝试学习数据挖掘,这是一个我认为是数据挖掘问题的例子.我试图找到解决方案的方法,但我想不出一个.我相信这些数据有其中的模式.但我无法想到可以揭示它的方法.此外,我必须在我拥有的数据集上映射此方法,这非常巨大,但与此类似:)数据是关于日志说明事件一次发生.我想找到代表相似事件序列的组.

任何指针将不胜感激.

data-mining text-mining

7
推荐指数
1
解决办法
203
查看次数

使用LIBSVM grid.py来处理不平衡数据?

我有三类不平衡数据问题(90%,5%,5%).现在我想使用LIBSVM训练分类器.

问题是LIBSVM优化其参数gamma和Cost以获得最佳精度,这意味着100%的示例被归类为class 1,这当然不是我想要的.

我已经尝试修改重量参数-w但没有太大的成功.

所以我想要的是,以一种优化成本的方式修改grid.py,以及按类别而不是整体精度划分的精度和召回的伽玛.有没有办法做到这一点?或者是否有其他脚本可以做这样的事情?

machine-learning svm text-mining libsvm

7
推荐指数
1
解决办法
2431
查看次数

R tm包创建了几乎常用术语的矩阵

我在R中termDocumentMatrix创建了一个tm包.

我正在尝试创建一个具有50个最常出现的术语的矩阵/数据帧.

当我尝试转换为矩阵时,我收到此错误:

> ap.m <- as.matrix(mydata.dtm)
Error: cannot allocate vector of size 2.0 Gb
Run Code Online (Sandbox Code Playgroud)

所以我尝试使用Matrix包转换为稀疏矩阵:

> A <- as(mydata.dtm, "sparseMatrix") 
Error in as(from, "CsparseMatrix") : 
  no method or default for coercing "TermDocumentMatrix" to "CsparseMatrix"
> B <- Matrix(mydata.dtm, sparse = TRUE)
Error in asMethod(object) : invalid class 'NA' to dup_mMatrix_as_geMatrix
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下方法访问tdm的不同部分:

> freqy1 <- data.frame(term1 = findFreqTerms(mydata.dtm, lowfreq=165))
> mydata.dtm[mydata.dtm$ Terms %in% freqy1$term1,]
Error in seq_len(nr) : argument must be coercible to non-negative integer
Run Code Online (Sandbox Code Playgroud)

这是其他一些信息: …

r text-mining tm term-document-matrix

7
推荐指数
1
解决办法
5285
查看次数

多标签文档分类

我有一个数据库,我根据以下三个字段存储数据:id,text,{labels}.请注意,每个文本都已分配给多个label\tag\class.我想构建一个模型(weka\rapidminer\mahout),它可以推荐\将一堆标签\标签\类分类到给定的文本.

我听说过SVM和朴素贝叶斯分类器,但不确定它们是否支持多标签分类.任何指导我正确方向的东西都非常受欢迎!

java machine-learning text-mining document-classification

7
推荐指数
1
解决办法
3410
查看次数

字节与字符与单词 - n-gram的粒度?

至少可以考虑使用3种类型的n-gram来表示文本文档:

  • 字节级n-gram
  • 字符级n-gram
  • 字级n-gram

我不清楚哪一个应该用于给定的任务(聚类,分类等).我在某处读到,当文字包含拼写错误时,字符级别的n-gram优于字级n-gram,因此"Mary loves dogs"仍然类似于"Mary lpves dogs".

选择"正确"表示还有其他标准需要考虑吗?

nlp data-mining text-mining n-gram

7
推荐指数
1
解决办法
1857
查看次数

RTextTools create_matrix返回非字符参数错误

我是R的文本处理新手.我正在尝试下面的简单代码

library(RTextTools) texts <- c("This is the first document.", "This is the second file.", "This is the third text.") matrix <- create_matrix(texts,ngramLength=3)

这是问题2和3个词使用R TM包的短语中的答案之一

但是,它会产生错误Error in FUN(X[[2L]], ...) : non-character argument.

我删除ngramLength参数时可以生成文档术语矩阵,但我需要搜索某些字长的短语.任何替代或更正的建议?

r text-mining

7
推荐指数
1
解决办法
2199
查看次数

计算以逗号分隔的字符串中的元素数

我正在处理文本字符串,如下所示: LN1 2DW, DN21 5BJ, DN21 5BL, ...

在Python中,我如何计算逗号之间的元素数量?每个元素可以由6个,7个或8个字符组成,在我的示例中,显示了3个元素.分隔符始终是逗号.

我从未做过任何与文本挖掘有关的事情,所以这对我来说是一个开始.

python text comma text-mining

7
推荐指数
2
解决办法
2万
查看次数