1

私はここ数時間CVB0Driverを動作させるように努めてきましたが、何度も試行錯誤を繰り返した結果、次のエラーが発生しましたが、理解できません。(mahout-integration 0.7を使用)

java.lang.Error: Unresolved compilation problem: 
at org.apache.mahout.math.function.Functions.mult(Functions.java:770)
at org.apache.mahout.clustering.lda.cvb.TopicModel.<init>(TopicModel.java:139)
at org.apache.mahout.clustering.lda.cvb.TopicModel.<init>(TopicModel.java:113)
at org.apache.mahout.clustering.lda.cvb.TopicModel.<init>(TopicModel.java:108)
at org.apache.mahout.clustering.lda.cvb.TopicModel.<init>(TopicModel.java:92)
at org.apache.mahout.clustering.lda.cvb.CachingCVB0Mapper.setup(CachingCVB0Mapper.java:103)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:142)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:764)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:370)

これが私が使用しているコードです。まだ機能していないので、正しい方向に進んでいるかどうかわからないので、間違いを見つけたらコメントしてください。

String [] args = {"-c","UTF-8","-i",input,"-o",output};

//create the seq file from the directory of text documents
ToolRunner.run(new SequenceFilesFromDirectory(),args);

//tokenize the documents
DocumentProcessor.tokenizeDocuments(new Path(inputDir), analyzer.getClass().asSubclass(Analyzer.class), tokenizedPath, conf);

//create tf vectors
DictionaryVectorizer.createTermFrequencyVectors(tokenizedPath,new Path(outputDir), DictionaryVectorizer.DOCUMENT_VECTOR_OUTPUT_FOLDER, conf, minSupport, maxNGramSize, minLLRValue, -1.0f, true, reduceTasks, chunkSize, sequentialAccessOutput, true);

//calculate the document frequencies 
Pair<Long[], List<Path>> dfData = TFIDFConverter.calculateDF( new Path(outputDir, DictionaryVectorizer.DOCUMENT_VECTOR_OUTPUT_FOLDER), new Path(outputDir), conf, chunkSize);

//create tfidf vectors
TFIDFConverter.processTfIdf( new Path(outputDir , DictionaryVectorizer.DOCUMENT_VECTOR_OUTPUT_FOLDER), new Path(outputDir), conf, dfData, minDf, maxDFPercent, norm, true, sequentialAccessOutput, true, reduceTasks);

args = new String[]{"-i","tfidf-vectors/part-r-00000","-o","cvb"};

//create the matrix for cvb
RowIdJob.main(args);

CVB0Driver.run(conf, new Path("cvb/matrix"), mto, numTopics, numTerms, alpha, eta, maxIterations, iterationBlockSize, convergenceDelta, dictionaryPath, dto, msto, randomSeed, testFraction, numTrainThreads, numUpdateThreads, maxItersPerDoc, numReduceTasks, backfillPerplexity);

どんな助けでも大歓迎です。

4

1 に答える 1

0

さて、これはMaven/Eclipseプロジェクト間の競合だったようです。

私は最近、mahout-integration 0.7ソースをEclipseにインポートし、どういうわけかそれをひどく構築しました。mahout-mathに問題があり、他のプロジェクトがひどく構築されたjarを参照し始めた可能性があります。それが事実だったのか、それとも日食が少しおかしくなったのかを知ってください。

このプロジェクトをEclipseから削除した後、すべてが正常に実行され始めました。

この質問はこれを解決するのに役立ちました-java-unresolved-compilation-problem

于 2013-03-25T21:49:56.790 に答える