• 大小: 17.96MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-07-09
  • 语言: Java
  • 标签: 文本分类  

资源简介

java实现的文本分类程序

资源截图

代码片段和文件信息

/**
 * 
 */
package com.tassemble.classify.svm;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.objectOutputStream;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;

import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;

import libsvm.svm_model;
import libsvm.svm_node;
import libsvm.svm_parameter;
import libsvm.svm_problem;

import com.tassemble.analyzer.ArticleProcessor;
import com.tassemble.constants.Constant;
import com.tassemble.feature.Character;
import com.tassemble.feature.FeatureSelector;
import com.tassemble.feature.Selector;
import com.tassemble.tfidf.Category;
import com.tassemble.tfidf.TFIDF;
import com.tassemble.vsm.VSM;

/**
 * @author chen-hongqin@163.com 2011-3-23
 * 
 */
public class App {
static Logger logger = Logger.getLogger(App.class);

void predict() {

}

/**
 * 
 * @param args
 * @throws IOException
 *             return void
 * 
 */

public static void main(String[] args) throws IOException {

PropertyConfigurator.configure(Constant.ROOT_PATH
+ “configures/classificationLog4j.properties“);

/**
 * 1. classifier.jar -train c:\语料库2\ 
 * 2. classifier.jar -predict c:\predictTest\ 
 * 3. classifier.jar -check c:\predictTest\
 */
if (args[0].equals(“-train“)) {
train(args[1]);
} else if (args[0].equals(“-predict“)) {
logger.info(“load model please waiting ...“);
svm_model model = (svm_model) Constant.load(“model“);
logger.info(“load model completely!“);
Map map = (HashMap) Constant.load(“map“);

Predictor p = new Predictor(model map);
p.predict(args[1] ““);
} else if (args[0].equals(“-test“)) {
logger.info(“load model please waiting ...“);
svm_model model = (svm_model) Constant.load(“model“);
logger.info(“load model completely!“);
Map map = (HashMap) Constant.load(“map“);

ArticleProcessor processor = new ArticleProcessor();
ArrayList categories = processor.getCategories(args[1]);

VSM vsm = new VSM();
svm_problem problem = vsm.convertToVSM(categories map);


SVMScale svmScale = new SVMScale();
logger.info(“scale problems“);
problem = svmScale.scale(problem Constant.PREDICT_SCALE_ARGV);
logger.info(“end scale problems“);


Classifier t = new Classifier();
logger.info(“start predict ...“);
testPredict(t problem model);
}

}

/**
 * 
 * return void
 * 
 * @throws IOException
 * 
 */
private static void test() throws IOException {
// TODO Auto-generated method stub
Classifier t = new Classifier();

ArrayList categories = new TFIDF().process();
Selector selector = new FeatureSelector(categories);
HashMap> map = selector
.select(Constant.DEFAULT_NUMBER_OF_TOTAL_FE

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        867  2011-03-28 20:15  Classification\.classpath

     文件        390  2011-03-19 20:59  Classification\.project

     文件        246  2011-03-19 20:59  Classification\.settings\.svn\all-wcprops

     文件        368  2011-03-28 20:15  Classification\.settings\.svn\entries

     文件        629  2011-03-19 20:59  Classification\.settings\.svn\text-base\org.eclipse.jdt.core.prefs.svn-base

     文件        629  2011-03-19 20:59  Classification\.settings\org.eclipse.jdt.core.prefs

     文件       1356  2011-03-28 20:15  Classification\.svn\all-wcprops

     文件       2130  2011-03-28 20:16  Classification\.svn\entries

     文件         53  2011-03-19 20:58  Classification\.svn\prop-base\ICTCLAS.dll.svn-base

     文件         53  2011-03-19 20:58  Classification\.svn\prop-base\Jama-1.0.2.jar.svn-base

     文件         53  2011-03-19 20:58  Classification\.svn\prop-base\Jama-1.0.2.zip.svn-base

     文件         53  2011-03-19 20:58  Classification\.svn\prop-base\kernel.jpg.svn-base

     文件         53  2011-03-19 20:58  Classification\.svn\prop-base\libsvm-3.0.zip.svn-base

     文件         53  2011-03-19 20:58  Classification\.svn\prop-base\libsvm.jar.svn-base

     文件         53  2011-03-19 20:59  Classification\.svn\prop-base\log4j-1.2.16.jar.svn-base

     文件         53  2011-03-20 23:38  Classification\.svn\prop-base\语料库2.rar.svn-base

     文件        867  2011-03-28 20:14  Classification\.svn\text-base\.classpath.svn-base

     文件        390  2011-03-19 20:58  Classification\.svn\text-base\.project.svn-base

     文件      14160  2011-03-19 20:59  Classification\.svn\text-base\heart_scale.model.svn-base

     文件     155648  2011-03-19 20:58  Classification\.svn\text-base\ICTCLAS.dll.svn-base

     文件      32775  2011-03-19 20:58  Classification\.svn\text-base\Jama-1.0.2.jar.svn-base

     文件     104915  2011-03-19 20:58  Classification\.svn\text-base\Jama-1.0.2.zip.svn-base

     文件      28000  2011-03-19 20:58  Classification\.svn\text-base\kernel.jpg.svn-base

     文件     519159  2011-03-19 20:58  Classification\.svn\text-base\libsvm-3.0.zip.svn-base

     文件      49782  2011-03-19 20:58  Classification\.svn\text-base\libsvm.jar.svn-base

     文件     481534  2011-03-19 20:59  Classification\.svn\text-base\log4j-1.2.16.jar.svn-base

     文件    2678651  2011-03-20 23:38  Classification\.svn\text-base\语料库2.rar.svn-base

     文件     581999  2011-03-30 10:41  Classification\ans7.txt

     文件       5901  2011-03-30 10:32  Classification\ans8.txt

     文件       1285  2011-03-28 20:14  Classification\bin\.svn\all-wcprops

............此处省略1358个文件信息

评论

共有 条评论