资源简介
df算法,通过在训练集中提取词语,比较出现次数,进行特征词的提取。
这个代码是提取两个特征的特征词,可修改main函数中(直接删除一部分)(有详细注释),提取一个类的特征。此程序编译过,无错。
![](http://www.nz998.com/pic/45577.jpg)
代码片段和文件信息
package df;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.nio.CharBuffer;
public class dfb {
public static void main(String[] args) {
String[] temp = new String[1024];//所有词语存的数组
int [] w ; //用来记录每个词的权重
int k=100; //取权重最高的前K个feature
String termWeighFile=“termWeigh.txt“; //用于保存全部《特征 ,权重》对
String topFeatureFile=“Feature.txt“; //保存前k个《特征 ,权重》对
String termnonum=“Featrueno.txt“;//保存《特征》
String dirName=“D:\\2013fall\\数字内容安全实验\\3\\训练集\\汽车\\“; //存放所有语料集的目录地址,如C://
//初始化w
w=new int[1024];
//把语料集全部列出来
File dir = new File(dirName);
File[] files = dir.listFiles();
//总结所有词汇
remwords(fileswtemp);
//删除干扰词
for(int a=0;a if(IsStopWord(temp[a])){
delet( tempa w);
}
}
//输出《特征,权重》对
try {
FileOutputStream fos = new FileOutputStream(termWeighFile);
OutputStreamWriter osw = new OutputStreamWriter(fos);
BufferedWriter bw = new BufferedWriter(osw);
for(int i=0;i bw.write(temp[i]+“ “);
bw.write(String.valueOf(w[i]));
bw.newLine();
}
bw.close();
osw.close();
fos.close();
} catch (Exception e) {
System.out.println(e.getMessage());
}
//选出特征词
top_feature(tempw);
//输出权重在前面的特征及权重
try {
FileOutputStream fos = new FileOutputStream(topFeatureFile);
OutputStreamWriter osw = new OutputStreamWriter(fos);
BufferedWriter bw = new BufferedWriter(osw);
for(int i=0;i bw.write(temp[i]+“ “);
bw.write(String.valueOf(w[i]));
bw.newLine();
}
bw.close();
osw.close();
fos.close();
} catch (Exception e) {
System.out.println(e.getMessage());
}
try {
FileOutputStream fos = new FileOutputStream(termnonum);
OutputStreamWriter osw = new OutputStreamWriter(fos);
BufferedWriter bw = new BufferedWriter(osw);
for(int i=0;i bw.write(temp[i]);
bw.newLine();
}
bw.close();
osw.close();
fos.close();
} catch (Exception e) {
System.out.println(e.getMessage());
}
String[] temp2 = new String[1024];//所有词语存的数组
int [] w2 ; //用来记录每个词的权重
int k2=100; //取权重最高的前K个feature
String termWeighFile2=“termWeigh2.txt“; //用于保存全部《特征 ,权重》对
String topFeatureFile2=“Feature2.txt“; //保存前k个《特征 ,权重》对
String termnonum2=“Featrueno2.txt“;//保存《特征》
String dirName2=“D:\\2013fall\\数字内容安全实验\\3\\训练集\\军事\\“; //存放所有语料集的目录地址,如C://
//初始化w
w2=new int[1024];
//把语料集全部列出来
File dir2 = new File(dirName2);
File[] files2 = dir2.listFiles();
//总结所有词汇
remwords(files2w2temp2);
//删除干扰词
for(int a=0;a if(IsStopWord(temp2[a])){
delet( temp2a w2);
}
}
//输出《特征,权重》对
try {
File
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-11-24 22:12 df\
文件 301 2013-11-20 17:22 df\.classpath
文件 378 2013-11-20 17:22 df\.project
目录 0 2013-11-20 17:22 df\.settings\
文件 598 2013-11-20 17:22 df\.settings\org.eclipse.jdt.core.prefs
目录 0 2013-11-20 17:22 df\bin\
目录 0 2013-11-24 22:19 df\bin\df\
文件 8126 2013-11-24 22:17 df\bin\df\dfb.class
文件 501 2013-11-24 22:17 df\Featrueno.txt
文件 659 2013-11-24 22:17 df\Featrueno2.txt
文件 1034 2013-11-24 22:17 df\Feature.txt
文件 1192 2013-11-24 22:17 df\Feature2.txt
目录 0 2013-11-20 17:22 df\src\
目录 0 2013-11-21 18:21 df\src\df\
文件 7605 2013-11-24 22:17 df\src\df\dfb.java
文件 10143 2013-11-24 22:17 df\termWeigh.txt
文件 11368 2013-11-24 22:17 df\termWeigh2.txt
- 上一篇:计算机专业实习总结心得
- 下一篇:eclipse中文版支持win1064位.txt
相关资源
- 核主成分分析方法——特征提取,去
- 基于Gabor滤波器的图像纹理特征提取
- 论文研究-基于优化Gabor滤波器和GMRF的
- creditcard csv - 训练集
- opencv实现的sift算法源码,包含了图像
- hog特征提取,c版本代码
- SIFT特征提取+匹配
- 常用故障特征提取方法_高正明
- 基于LBP算法的人脸识别研究
- 车牌识别中省份汉字的训练集
- 批量手工截取正负样本图片,制作训
- tfidf特征提取
- 基于Moravec算子特征提取的影像匹配
- 深度图-人脸姿态-特征提取.zip
- 基于HOG特征提取的svm行人头肩训练
- TE数据集 由训练集和测试集构成.zip
- 字符训练集
- Mnist手写体训练脚本和测试脚本含训练
- 特征的选择与提取 模式识别
- 二值图像的形状特征提取并显示在图
- haar-like特征提取
- 信号特征提取与模式识别研究
- 一种采用Gabor小波的纹理特征提取方法
- 雷达目标特征提取与识别方法研究
- 特征提取之滑动窗口
- 香港城市大学语料库1 772 202 字,训练
- 基于OPENCV的多种特征提取总结
- zw_边缘检测特征提取.zip
- tf-idf算法.zip
- 指纹图像特征提取系统
评论
共有 条评论