有人对knn sklearn 文本分类类的knn熟悉吗

>> KNN文本分类
KNN文本分类
所属分类:
下载地址:
knn.rar文件大小:2.98 kB
分享有礼! 》
请点击右侧的分享按钮,把本代码分享到各社交媒体。
通过您的分享链接访问Codeforge,每来2个新的IP,您将获得0.1 积分的奖励。
通过您的分享链接,每成功注册一个用户,该用户在Codeforge上所获得的每1个积分,您都将获得0.2 积分的分成奖励。
用KNN和COSINE相似度对文本进行分类,此外,对于相似度相差过大的分类结果,不按KNN结果,只取相似度最大的所在类为最终分类。
Sponsored links
源码文件列表
温馨提示: 点击源码文件名可预览文件内容哦 ^_^
1.96 kB29-04-14 10:00
4.70 kB29-04-14 11:00
904.00 B29-04-14 08:27
(提交有效评论获得积分)
评论内容不能少于15个字,不要超出160个字。
评价成功,多谢!
下载knn.rar
CodeForge积分(原CF币)全新升级,功能更强大,使用更便捷,不仅可以用来下载海量源代码马上还可兑换精美小礼品了
您的积分不足,优惠套餐快速获取 30 积分
10积分 / ¥100
30积分 / ¥200原价 ¥300 元
100积分 / ¥500原价 ¥1000 元
订单支付完成后,积分将自动加入到您的账号。以下是优惠期的人民币价格,优惠期过后将恢复美元价格。
支付宝支付宝付款
微信钱包微信付款
更多付款方式:、
您本次下载所消耗的积分将转交上传作者。
同一源码,30天内重复下载,只扣除一次积分。
鲁ICP备号-3 runtime:Elapsed:ms - init:0.1;find:0.7;t:160.3;tags:0.4;related:20.3;comment:0.3; 5.8
登录 CodeForge
还没有CodeForge账号?
Switch to the English version?
^_^"呃 ...
Sorry!这位大神很神秘,未开通博客呢,请浏览一下其他的吧用于文本分类的快速KNN算法_论文_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
用于文本分类的快速KNN算法
中国最大最早的专业内容网站|
总评分0.0|
&&KNN(k Nearest Neighbor)算法是一种简单、有效、非参数的文本分类方法.传统的KNN方法有着样本相似度计算量大的明显缺陷,使其在具有大量高维样本的文本分类中缺乏实用性.提出了一种快速查找精确的k个最近邻的TKNN(Tree―k―Nearest―Neighbor)算法,该算法建立一棵用于查找的树,加速k个最近邻的查找.首先以整个样本集合中心为基准,按照距离中心的距离将所有样本进行排
试读已结束,如果需要继续阅读或下载,敬请购买
定制HR最喜欢的简历
你可能喜欢浅谈KNN算法在文本分类中的应用_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
浅谈KNN算法在文本分类中的应用
&&随着现在Internet以惊人的速度发展起来,人们已经进入信息大爆炸的时代,网络上的各种信息让我们眼花缭乱,如何在这海量的信息中给各种信息进行分类,从中提取出对我们有用的信息点,已日愈成为众多企业家、IT认识关注的焦点,在众多算法中,可以对信息进行的分类的有很多,包括k-Nearest Neighbor、支持向量机(Support VectorMachines)、简单贝叶斯、Linear Least Squares Fits、NeuralNetwork.
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,同时保存到云知识,更方便管理
加入VIP
还剩5页未读,
定制HR最喜欢的简历
你可能喜欢有人熟悉文本分类knn吗,帮我看下代码是什么意思 - 数据挖掘 - ITeye群组
在网上下载了一个文本分类的实例程序,对里面knn.java里的LazyLearning不是很明白,
有熟悉的能帮我看一下,主要是它里面的两个参数是做什么用的?
package text_
import java.io.BufferedW
import java.io.FileW
import java.io.PrintW
import java.util.ArrayL
import java.util.HashM
import java.util.I
import java.util.L
import java.util.M
import edu.udo.cs.wvtool.main.WVTWordV
public class KNN {
private int k = 15;
private double[] ClassSim =
private static Map indexmap =
if (indexmap == null)
indexmap = new HashMap();
indexmap.put(0, "汽车");
indexmap.put(1, "教育");
indexmap.put(2, "娱乐");
indexmap.put(3, "财经");
indexmap.put(4, "房产");
indexmap.put(5, "军事");
indexmap.put(6, "奥运");
indexmap.put(7, "时政");
indexmap.put(8, "体育");
indexmap.put(9, "科技");
public KNN()
public List LazyLearning(WVTWordVector v, WVTWordVector[] vectors, int numClasses)
if (v == null || vectors == null)
System.out.println("number of documents : " + vectors.length);
System.out.println("number of classes: " + numClasses);
ClassSim = new double[numClasses];
for (int i = 0; i & numC i++)
ClassSim[i] = 0;
k = (k & vectors.length)? k : vectors.
double[] Sim = new double[vectors.length];
for (int i = 0; i & Sim. i++)
Sim[i] = 0;
Map map1 = v.getWordMap();
Map map2 = vectors[i].getWordMap();
for (Iterator it = map1.keySet().iterator(); it.hasNext();)
String word1 = (String)it.next();
if (map2.containsKey(word1))
double value1 = Double.valueOf(map1.get(word1).toString());
double value2 = Double.valueOf(map2.get(word1).toString());
Sim[i] += (value1 * value2);
for (int i = 0; i & i++)
for (int j = i + 1; j & Sim. j++)
if (Sim[j] & Sim[i])
double dtemp = Sim[i];
Sim[i] = Sim[j];
WVTWordVector wv = vectors[i];
vectors[i] = vectors[j];
vectors[j] =
double TotalSim = 0;
for (int i = 0; i & i++)
WVTWordVector wv = vectors[i];
int numClass = wv.getDocumentInfo().getClassValue();
ClassSim[numClass] += Sim[i];
TotalSim += Sim[i];
// output the first 3 class
int[] index = new int[ClassSim.length];
for (int i = 0; i & ClassSim. i++)
index[i] =
for (int i = 0; i & 3; i++)
for (int j = i + 1; j & ClassSim. j++)
if (ClassSim[j] & ClassSim[i])
double dtemp = ClassSim[i];
ClassSim[i] = ClassSim[j];
ClassSim[j] =
int itemp = index[i];
index[i] = index[j];
index[j] =
List result = new ArrayList();
for (int i = 0; i & 3; i++)
if (ClassSim[i] & 0)
CategoryResult cr = new CategoryResult(indexmap.get(index[i]).toString(), ClassSim[i] / TotalSim);
result.add(cr);
for (int i = 0; i & index. i++)
System.out.println(index[i] + ": " + ClassSim[i]);
for (int i = 0; i & i++)
WVTWordVector wv = vectors[i];
/*int cutIndex = wv.getDocumentInfo().getSourceName().lastIndexOf(File.separator);
if (cutIndex & 0)
id = wv.getDocumentInfo().getSourceName().substring(cutIndex + 1);
id = wv.getDocumentInfo().getSourceName();
System.out.println(id + ": " + Sim[i]);
class CategoryResult
private String CategoryN
public CategoryResult(String categoryname, double similarity)
this.CategoryName =
this.similarity =
public String getCategoryName() {
return CategoryN
public void setCategoryName(String categoryName) {
CategoryName = categoryN
public double getSimilarity() {
public void setSimilarity(double similarity) {
this.similarity =
有熟悉的朋友能帮我看一下public List LazyLearning(WVTWordVector v, WVTWordVector[] vectors, int numClasses)这个方法主要是做什么的,它里面的v和vectors是做什么用的?
相关资源推荐使用KNN算法的文本分类_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
使用KNN算法的文本分类
&&使用KNN算法的文本分类
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
你可能喜欢}

我要回帖

更多关于 knn sklearn 文本分类 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信