kmeans 文本聚类方法简介
2018-02-09 18:36
148 查看
k-均值算法是一个很常见的算法,它的基本思想是:通过迭代寻找k个聚类的一个划分方案,使得用这K个聚类的均值来代表相应各个样本时所得的总体误差最小。
算法步骤:
1.生成索引文件
将分类的文本以句子id 句子内容(已分词处理) 作为用来生成索引文件的语料:
java -cp $JAR lucene.text.FileIndexing $baseDir/test $baseDir/index
2.将索引文件生成向量vector
mahout lucene.vector \
--dir $LUCENE_DIR \ #索引文件位置
--idField id \
--output $OUTPUT_DIR \ #输出位置
--field post \
--dictOut $DICT_DIR \
--seqDictOut $SEQ_DICT_DIR \
--weight TFIDF \
--minDF 1 \
--norm 2 \
--maxPercentErrorDocs 1
3.kmeans聚类处理
mahout kmeans \
-i data/vector.txt \
-c data/centroids \
-cl \
-cd 1.0 \
-o data/kmeans-clusters \
-k $ksum \
-ow \
-x 2000 \
-dm org.apache.mahout.common.distance.ChebyshevDistanceMeasure
-i :输入向量
-c:若不设定k,则用这个目录里面的点,作为聚类中心点。否则,随机选择k个点,作为中心点。
-k:多少个聚类
-o:输出结果
-dm:距离公式
4.查看结果
mahout clusterdump -d $baseDir/data/dict.txt \
-dt text \
-dm org.apache.mahout.common.distance.SquaredEuclideanDistanceMeasure \
-i $baseDir/data/kmeans-clusters/clusters-*-final \
-o $baseDir/data/kmeans.clusterdump \
-n 10 \
-b 10 \
-of JSON \
-p $baseDir/data/kmeans-clusters/clusteredPoints
具体代码和示例详见我的githup:https://github.com/ouprince/kmeans
算法步骤:
1.生成索引文件
将分类的文本以句子id 句子内容(已分词处理) 作为用来生成索引文件的语料:
java -cp $JAR lucene.text.FileIndexing $baseDir/test $baseDir/index
2.将索引文件生成向量vector
mahout lucene.vector \
--dir $LUCENE_DIR \ #索引文件位置
--idField id \
--output $OUTPUT_DIR \ #输出位置
--field post \
--dictOut $DICT_DIR \
--seqDictOut $SEQ_DICT_DIR \
--weight TFIDF \
--minDF 1 \
--norm 2 \
--maxPercentErrorDocs 1
3.kmeans聚类处理
mahout kmeans \
-i data/vector.txt \
-c data/centroids \
-cl \
-cd 1.0 \
-o data/kmeans-clusters \
-k $ksum \
-ow \
-x 2000 \
-dm org.apache.mahout.common.distance.ChebyshevDistanceMeasure
-i :输入向量
-c:若不设定k,则用这个目录里面的点,作为聚类中心点。否则,随机选择k个点,作为中心点。
-k:多少个聚类
-o:输出结果
-dm:距离公式
4.查看结果
mahout clusterdump -d $baseDir/data/dict.txt \
-dt text \
-dm org.apache.mahout.common.distance.SquaredEuclideanDistanceMeasure \
-i $baseDir/data/kmeans-clusters/clusters-*-final \
-o $baseDir/data/kmeans.clusterdump \
-n 10 \
-b 10 \
-of JSON \
-p $baseDir/data/kmeans-clusters/clusteredPoints
具体代码和示例详见我的githup:https://github.com/ouprince/kmeans
相关文章推荐
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- kmeans 文本聚类方法简介
- 短文本聚类方法
- kmeans聚类的简介和代码(python)