在Mahout中,可以使用預訓練好的模型對新數據進行分類。首先,加載訓練好的模型,然后將新數據轉換為模型所需的格式,最后使用模型對新數據進行分類。
以下是一個簡單的示例代碼:
import org.apache.mahout.classifier.NaiveBayesModel;
import org.apache.mahout.classifier.naivebayes.NaiveBayesClassifier;
import org.apache.mahout.math.Vector;
import org.apache.mahout.vectorizer.encoders.Dictionary;
// 加載訓練好的模型
NaiveBayesModel model = NaiveBayesModel.materialize(new Path("path/to/model"));
// 加載詞典
Dictionary dictionary = new Dictionary();
dictionary.loadFromPath(new Path("path/to/dictionary"));
// 創建分類器
NaiveBayesClassifier classifier = new NaiveBayesClassifier(model, dictionary, false, false);
// 準備新數據
Vector newData = // 將新數據轉換為Mahout的Vector對象
// 對新數據進行分類
int category = classifier.classifyFull(newData);
System.out.println("分類結果為:" + category);
在上面的示例中,首先加載訓練好的模型和詞典,然后創建一個NaiveBayesClassifier對象,最后使用classifyFull方法對新數據進行分類,并輸出分類結果。
需要注意的是,在實際應用中,需要根據具體的數據和模型配置來調整代碼。Mahout還提供了其他分類器和工具,可以根據具體需求選擇合適的方法來對新數據進行分類。