maven - 如何使用 Mahout 成功运行 kmeans 集群(尤其是获得人类可读的输出)

标签 maven hadoop cluster-analysis mahout k-means

我尝试按照许多在线教程来运行 Mahout 中的 kmeans 示例。
但尚未成功获得有意义的输出。我面临的主要问题是,
从文本文件到序列文件的转换并返回。

  • 当我按照“Mahout Wiki”的“合成控制数据聚类”的步骤进行操作时
    (https://cwiki.apache.org/MAHOUT/clustering-of-synthetic-control-data.html)我可以运行集群过程(使用 $MAHOUT_HOME/bin/mahout org.apache.mahout.clustering.syntheticcontrol.kmeans .Job) 并创建了一些可读的控制台输出。但我希望从聚类过程中获取输出文件(因为大小很大)。
    Mahout 聚类生成的输出文件都是序列文件,我无法将它们转换为可读文件。
    当我尝试执行“clusterdump”($MAHOUT_HOME/bin/mahout clusterdump --seqFileDir output/clusters-10...)时出现错误。
    首先它提示“seqFileDir”选项出乎意料,我猜集群转储没有“seqFileDir”或者我遗漏了一些东西。
  • 尝试以“mahout in action”的方式使用 Mahout 似乎很棘手。我不确定编译该代码所需的类(“import ??”)是什么。

  • 您能否建议我在 Mahout 上成功运行 kmeans 的步骤?特别是如何从序列文件中获得可读的输出?

    最佳答案

    关于第二个问题-您可以获得本书的源代码from the repository . master中的代码分支适用于 Mahout 0.5,而分支中的代码 mahout-0.6 & mahout-0.7是对应 Mahout 的版本。

    源代码也发布到book's site ,所以你在那里下载它(但这只是 Mahout 0.5 的版本)

    附言如果你现在正在看书,那么我建议使用 Mahout 0.5 或 0.6,因为所有代码都检查了 0.5 版本,而对于其他版本,它会有所不同——尤其是 Mahout 0.7 中的集群代码

    关于maven - 如何使用 Mahout 成功运行 kmeans 集群(尤其是获得人类可读的输出),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11161372/

    相关文章:

    hadoop - 通过Apache Pig中的示例消除运算符用法的歧义

    java - 创建多模块maven项目时出错

    java - 象鸟mvn包报错

    Java Maven exec-maven-plugin 带有限定名称的 ClassNotFoundException

    c++ - 在 C 中处理非常大的距离矩阵(或 C++,如果有帮助的话)

    python - scikit-learn 中聚类超参数评估的网格搜索

    java - weka K中 "seed"的意义表示聚类

    java - 如何在java11中使用jdk.internal.misc.Signal

    hadoop - 现有表的 Hive 分桶和分区

    c# - 如何在查询中将 .net DateTime.Ticks 转换为 Hive DateTime?