斯坦福分词包能在spark 分词跑吗

spark + ansj 对大数据量中文进行分词
spark + ansj 对大数据量中文进行分词
目前的分词器大部分都是单机服务器进行分词,或者使用hadoop mapreduce对存储在hdfs中大量的数据文本进行分词。由于mapreduce的速度较慢,相对spark来说代码书写较繁琐。本文使用spark + ansj对存储在hdfs中的中文文本数据进行分词。
首先下载ansj源码文件,下载地址为/NLPchina/ansj_seg,同时需要下载nlp-lang.jar包,下载地址上述网站中可以看到。由于spark传输数据必须进行序列化,而ansj中的属性类都没有实现序列化,需要将ansj_seg-master/src/main/java/org/ansj/domain中的属性类AnsjItem、Nature、NewWord、NumNatureAttr、PersonNatureAttr、Term、TermNature、TermNatures分别实现Serializable接口。然后使用maven的mvn install生成ansj_seg-2.0.8.jar包,将编译的ansj_seg-2.0.8.jar包 和之前下载的nlp-lang-0.3.jar包加入到spark依赖中,spark便可对hdfs中的文本进行分词。另外,将序列化后编译的jar上传至csdn,可以直接下载使用。
实例如下:
import org.apache.spark.SparkContext import org.ansj.domain.Term import org.ansj.splitWord.analysis.ToAnalysis import org.ansj.util.FilterModifWord import org.ansj.library.UserDefineLibrary import java.util.Arrays
object TokenTest extends App {
val sc = new SparkContext
val numpatitions = 100
val text = sc.textFile("/path/to/ChineseFile", numpatitions).map { x =&
val temp = ToAnalysis.parse(x)
FilterModifWord.insertStopWords(Arrays.asList("r","n"))
FilterModifWord.insertStopNatures("w",null,"ns","r","u","e") val filter = FilterModifWord.modifResult(temp)
val word = for(i&-Range(0,filter.size())) yield filter.get(i).getName
word.mkString("t")
text.saveAsTextFile("/pathr/to/TokenFile") }
感谢关注 Ithao123精品文库频道,是专门为互联网人打造的学习交流平台,全面满足互联网人工作与学习需求,更多互联网资讯尽在 IThao123!
Laravel是一套简洁、优雅的PHP Web开发框架(PHP Web Framework)。它可以让你从面条一样杂乱的代码中解脱出来;它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。
用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。
Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。
Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。
产品设计是互联网产品经理的核心能力,一个好的产品经理一定在产品设计方面有扎实的功底,本专题将从互联网产品设计的几个方面谈谈产品设计
随着国内互联网的发展,产品经理岗位需求大幅增加,在国内,从事产品工作的大部分岗位为产品经理,其实现实中,很多从事产品工作的岗位是不能称为产品经理,主要原因是对产品经理的职责不明确,那产品经理的职责有哪些,本专题将详细介绍产品经理的主要职责
IThao123周刊3116人阅读
spark(6)
目前的分词器大部分都是单机服务器进行分词,或者使用hadoop mapreduce对存储在hdfs中大量的数据文本进行分词。由于mapreduce的速度较慢,相对spark来说代码书写较繁琐。本文使用spark + ansj对存储在hdfs中的中文文本数据进行分词。
首先下载ansj源码文件,下载地址为,同时需要下载nlp-lang.jar包,下载地址上述网站中可以看到。由于spark传输数据必须进行序列化,而ansj中的属性类都没有实现序列化,需要将ansj_seg-master/src/main/java/org/ansj/domain中的属性类AnsjItem、Nature、NewWord、NumNatureAttr、PersonNatureAttr、Term、TermNature、TermNatures分别实现Serializable接口。然后使用maven的mvn install生成ansj_seg-2.0.8.jar包,将编译的ansj_seg-2.0.8.jar包 和之前下载的nlp-lang-0.3.jar包加入到spark依赖中,spark便可对hdfs中的文本进行分词。另外,将序列化后编译的jar上传至csdn,可以直接下载使用。
实例如下:
import org.apache.spark.SparkContext
import org.ansj.domain.Term
import org.ansj.splitWord.analysis.ToAnalysis
import org.ansj.util.FilterModifWord
import org.ansj.library.UserDefineLibrary
import java.util.Arrays
object TokenTest extends App
val sc = new SparkContext
val numpatitions = 100
val text = sc.textFile("/path/to/ChineseFile", numpatitions).map { x =&
val temp = ToAnalysis.parse(x)
FilterModifWord.insertStopWords(Arrays.asList("r","n"))
FilterModifWord.insertStopNatures("w",null,"ns","r","u","e")
val filter = FilterModifWord.modifResult(temp)
val word = for(i&-Range(0,filter.size())) yield filter.get(i).getName
word.mkString("\t")
text.saveAsTextFile("/pathr/to/TokenFile")
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:38933次
排名:千里之外
原创:21篇
评论:27条
(1)(5)(1)(3)(1)(2)(3)(4)(4)下载作业帮安装包
扫二维码下载作业帮
1.75亿学生的选择
The deadly result has spark repeated crackdowns on drunk driving.中的spark是哪个词的过去分词?
spark 就是 spark 的过去分词,语境意为 鼓动 鼓舞 鼓动制裁惩罚酒驾。
为您推荐:
扫描下载二维码1804人阅读
spark(38)
目前的分词器大部分都是单机服务器进行分词,或者使用hadoop mapreduce对存储在hdfs中大量的数据文本进行分词。由于mapreduce的速度较慢,相对spark来说代码书写较繁琐。本文使用
spark + ansj对存储在hdfs中的中文文本数据进行分词。&
首先下载ansj源码文件,下载地址为,同时需要下载nlp-lang.jar包,下载地址上述网站中可以看到。由于spark传输数据必须进行序列化,而ansj中的属性类都没有实现序列化,需要将ansj_seg-master/src/main/java/org/ansj/domain中的属性类AnsjItem、Nature、
NewWord、NumNatureAttr、PersonNatureAttr、Term、TermNature、TermNatures分别实现 Serializable接口。然后使用maven的mvn install生成ansj_seg-2.0.8.jar包,将编译的ansj_seg-2.0.8.jar包 和之前下载的nlp-lang-0.3.jar包加入到spark依赖中,spark便可对hdfs中的文本进行分词。另外,将序列化后编译的jar上传至csdn,可以直接下载使用。&
实例如下:
org.apache.spark.SparkContext
org.ansj.domain.Term
org.ansj.splitWord.analysis.ToAnalysis
org.ansj.util.FilterModifWord
org.ansj.library.UserDefineLibrary
java.util.Arrays
TokenTest&extends
SparkContext
numpatitions =&100
text = sc.textFile(&/path/to/ChineseFile&,
numpatitions).map { x =&
temp = ToAnalysis.parse(x)
FilterModifWord.insertStopWords(Arrays.asList(&r&,&n&))
FilterModifWord.insertStopNatures(&w&,null,&ns&,&r&,&u&,&e&)
filter = FilterModifWord.modifResult(temp)
word =&for(i&-Range(0,filter.size()))
yield filter.get(i).getName
&&&&&word.mkString(&\t&)
&&text.saveAsTextFile(&/pathr/to/TokenFile&)
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:1205624次
积分:13263
积分:13263
排名:第743名
原创:276篇
转载:123篇
评论:246条
(3)(7)(3)(3)(2)(4)(9)(8)(2)(17)(7)(8)(14)(2)(6)(1)(2)(6)(2)(5)(5)(12)(9)(6)(18)(10)(12)(3)(5)(10)(22)(14)(4)(11)(1)(6)(1)(3)(1)(4)(12)(1)(1)(4)(3)(22)(1)(10)(9)(3)(3)(4)(1)(1)(2)(1)(1)(1)(3)(2)(2)(1)(1)(3)(1)(3)(1)(1)(5)(2)(5)(8)(2)(9)(16)(2)(6)Spark + ansj 对大数据量中文进行分词
Spark + ansj 对大数据量中文进行分词
目前的分词器大部分都是单机服务器进行分词,或者使用hadoop mapreduce对存储在hdfs中大量的数据文本进行分词。由于mapreduce的速度较慢,相对spark来说代码书写较繁琐。本文使用
spark + ansj对存储在hdfs中的中文文本数据进行分词。&
首先下载ansj源码文件,下载地址为,同时需要下载nlp-lang.jar包,下载地址上述网站中可以看到。由于spark传输数据必须进行序列化,而ansj中的属性类都没有实现序列化,需要将ansj_seg-master/src/main/java/org/ansj/domain中的属性类AnsjItem、Nature、
NewWord、NumNatureAttr、PersonNatureAttr、Term、TermNature、TermNatures分别实现 Serializable接口。然后使用maven的mvn install生成ansj_seg-2.0.8.jar包,将编译的ansj_seg-2.0.8.jar包 和之前下载的nlp-lang-0.3.jar包加入到spark依赖中,spark便可对hdfs中的文本进行分词。另外,将序列化后编译的jar上传至csdn,可以直接下载使用。&
实例如下:
org.apache.spark.SparkContext
org.ansj.domain.Term
org.ansj.splitWord.analysis.ToAnalysis
org.ansj.util.FilterModifWord
org.ansj.library.UserDefineLibrary
java.util.Arrays
TokenTest&extends
SparkContext
numpatitions =&100
text = sc.textFile(&/path/to/ChineseFile&,
numpatitions).map { x =&
temp = ToAnalysis.parse(x)
FilterModifWord.insertStopWords(Arrays.asList(&r&,&n&))
FilterModifWord.insertStopNatures(&w&,null,&ns&,&r&,&u&,&e&)
filter = FilterModifWord.modifResult(temp)
word =&for(i&-Range(0,filter.size()))
yield filter.get(i).getName
&&&&&word.mkString(&\t&)
&&text.saveAsTextFile(&/pathr/to/TokenFile&)
我的热门文章
即使是一小步也想与你分享

我要回帖

更多关于 spark 分词 的文章

 

随机推荐