我想使用火花LDA算法对维基百科数据进行主题建模: 输入文件基本上是一个包含大量xml文件的大型bz2文件。 我使用的火花网站上的基本火花Scala代码:Spark Scala无法解析维基百科数据:enwiki_latest_articles xml bz2
val sc:SparkContext = new SparkContext(conf);
val ssqlc:SQLContext = new org.apache.spark.sql.SQLContext(sc);
val shsqlc:HiveContext = new org.apache.spark.sql.hive.HiveContext(sc);
// Load and parse the data
val data = sc.textFile("/user/enwiki-latest-pages-articles.xml.bz2")
//val datanew = data.mapPartitionsWithIndex { (idx, iter) => if (idx == 0) iter.drop(1) else iter }
val parsedData = data.map(s => Vectors.dense(s.trim.split(' ').map(_.toDouble)))
// Index documents with unique IDs
val corpus = parsedData.zipWithIndex.map(_.swap).cache()
// Cluster the documents into three topics using LDA
val ldaModel = new LDA().setK(25).run(corpus)
// Output topics. Each is a distribution over words (matching word count vectors)
println("Learned topics (as distributions over vocab of " + ldaModel.vocabSize + " words):")
val topics = ldaModel.topicsMatrix
for (topic <- Range(0, 25)) {
print("Topic " + topic + ":")
for (word <- Range(0, ldaModel.vocabSize)) { print(" " + topics(word, topic)); }
println()
// val newtopics = ldaModel.describeTopics(5).foreach(println)
}
它不处理数据,并抛出错误,如:在舞台0.0在任务5.0例外:
ERROR executor.Executor (TID 2) java.lang.NumberFormatException:空字符串16/07/28 09:24:35错误 executor.Executor:阶段0.0中的任务10.0中的异常(TID 5) java.lang.NumberFormatException:对于输入字符串:“|” 16/07/28 9时24分35秒ERROR executor.Executor:异常的任务7.0级0.0 (TID 3)java.lang.NumberFormatException:对于输入字符串: “|}”
可有人请在这件事上给予我帮助? 一个简短的代码,以增强这将有助于。 预先感谢您。
他们是一组XML文件,我非常新的阶为。能够做修改设定的XML文件,其是在一个BZ2文件代表文档语料库中的单词数向量,你对任何输入? – user2122466
@ user2122466表现出一定的努力。新事物不是没有尝试的借口。 – Dikei