java 向量空间模型_VSM向量空间模型对文本的分类以及简单实现

该博客介绍如何使用Java实现向量空间模型(VSM)对文本进行分类。通过计算文本特征的词频作为权重,建立样本向量,并利用余弦相似度判断文本所属类别。文章提供了加载样本、计算余弦值的源代码,并指出效果与输入样本特征密切相关。
摘要由CSDN通过智能技术生成

1:对文本的分类,不管用什么高级的方法,首先还是需要建立数学模型的,这个地方就用SVM来建立,他的原理是根据文本的特征,比如一个文本有10个特征(一般来说每个特征是一个代表这个文本的关键词),那么这个文本向量大小就是10了。具体的每个值就是这个特征的权重(关于权重的计算很多种,我这个地方只用了词频来代表)。然后读入测试本文,根据该测试文本中的特征,看和样本中的特征的向量做运算,这个地方用的是求向量的夹角,用余弦值来表达,夹角大的就偏的远,否则比较近(这个地方没考虑到角度大于90°的情况)。

2:这个例子是为了我接下来做SVM用的,对于搞此类的算是个入门。我觉得这个效果要和输入的样本特征关系很大,我对同类的比如股票下不同类别来做判断,基本也可以判断出来权重。

3:java源代码如下:

package com.baseframework.sort;import java.io.BufferedReader;import java.io.File;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;import java.util.Vector;public class VsmMain {public static void main(String[] args) {VsmMain vsm = new VsmMain();String basePath = vsm.getClass().getClassLoader().getResource("").toString().substring(6);String content = vsm.getContent(basePath + "artic

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值