我正在研究一个分类问题,根据使用Lucene API的培训数据将产品评论分类为正面,负面或中性.
我正在使用Review对象的ArrayList - "reviewList",它在抓取网页时存储每个评论的属性.
然后使用索引器索引包括"极性"和"评论内容"的评论属性.此后,基于索引对象,我需要对剩余的审阅对象进行分类.但是在执行此操作时,有一个查询对象,查询解析器在"审阅内容"中遇到EOF字符,因此终止.
导致错误的行已相应评论 -
IndexReader reader = IndexReader.open(FSDirectory.open(new File("index")));
IndexSearcher searcher = new IndexSearcher(reader);
Analyzer analyzer = new StandardAnalyzer(Version.LUCENE_31);
QueryParser parser = new QueryParser(Version.LUCENE_31, "Review", analyzer);
int length = Crawler.reviewList.size();
for (int i = 200; i < length; i++) {
String true_class;
double r_stars = Crawler.reviewList.get(i).getStars();
if (r_stars < 2.0) {
true_class = "-1";
} else if (r_stars > 3.0) {
true_class = "1";
} else {
true_class = "0";
}
String[] reviewTokens = Crawler.reviewList.get(i).getReview().split(" "); …
Run Code Online (Sandbox Code Playgroud)