文本分类算法之–KNN算法的简介「建议收藏」

文本分类算法之–KNN算法的简介「建议收藏」1、KNN算法的简介kNN算法就是找到k个最相似的样本,这些样本所在的类,就是当前文档的所属的类。如下图:绿色圆圈表示你想分类的文本,其他是已知类别的样本。图中其他形状和绿色圆圈的距离代表了相似度。如果k=3,就是取3个最相似的文本,那么1个蓝色框,2红色三角被选中,因为红色三角多,则绿色圆圈所属的类就是红色三角所在的类。如果k=5,3个蓝色框和2个红色三角选中,那么就属于蓝色框所

大家好,又见面了,我是你们的朋友全栈君。

1、KNN算法的简介

kNN算法就是找到k个最相似的样本,这些样本所在的类,就是当前文档的所属的类。如下图:绿色圆圈表示你想分类的文本,其他是已知类别的样本。图中其他形状和绿色圆圈的距离代表了相似度。如果k = 3,就是取3个最相似的文本,那么1个蓝色框,2红色三角被选中,因为红色三角多,则绿色圆圈所属的类就是红色三角所在的类。如果k = 5,3个蓝色框和2个红色三角选中,那么就属于蓝色框所属于的类。kNN你也可以取多个类别,就是绿色圆圈既属于蓝色框,也属于红色三角所属的类别。

kNN理解

2、KNN算法分类的一般过程的定义

(1)样本的选择

(2)中文文本分词(工具如下:Rwordseg,LTP,Bamboo,RostCM)

(3)特征的选择(CHI,IG等)

(4)向量空间模型的构建(将文档转换成VSM,每一个特征的值是由TF-IDF计算,特征项的个数是所有文本文档集合的总体弃掉重复的单词)

(5)将 预测的文本分词与样本进行计算,主要使用余弦定理进行计算如下

文本分类算法之--KNN算法的简介「建议收藏」

(6)对结果进行测试是否满足准确率

(7)如果准确率太低,可以调整样本等一些其他的措施


KNN算法的缺点,如果训练的样本过多,则容易造成内存的溢出,因此我们可以改进KNN算法。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/144008.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 答读者问(5):关于数学程序猿的作用、r \\ u0026研发工作的实践要求和问题,如求职的影响

    答读者问(5):关于数学程序猿的作用、r \\ u0026研发工作的实践要求和问题,如求职的影响

    2022年1月7日
    28
  • 跨平台应用框架_安卓前端框架

    跨平台应用框架_安卓前端框架转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。原文出处:https://dzone.com/articles/cross-platform-mobile-

    2022年8月4日
    3
  • 详谈如何定制自己的博客园皮肤

    详谈如何定制自己的博客园皮肤前言最近,有很多博客园的朋友给我留言或私信,询问我的博客背景是如何做的。不是我敝帚自珍,而是由于内容较多,一一回复实在是太费劲。没有及时答复的朋友,请见谅。我在这里做一次集中式分享,如果有喜欢的

    2022年7月1日
    20
  • linux aria2配置(linux下安装windows)

    系统要求CentOS7+/Debian6+/Ubuntu14.04+推荐Debian7x64,这个是我一直使用的系统,我的脚本在这个系统上面出错率最低。注意:本脚本只是安装Aria2后端,安装后默认会启动,但是还需要前端面板配合使用,如Aria2WebUI或AriaNG,教程看这里:https://doub.bid/all-one/#BT、磁力链接下载相关教程注意…

    2022年4月14日
    85
  • java pfx_如何在Java处理PFX格式证书

    java pfx_如何在Java处理PFX格式证书如何在Java处理PFX格式证书公钥加密技术12号标准(PublicKeyCryptographyStandards#12,PKCS#12)为存储和传输用户或服务器私钥、公钥和证书指定了一个可移植的格式。它是一种二进制格式,这些文件也称为PFX文件。开发人员通常需要将PFX文件转换为某些不同的格式,如PEM或JKS,以便可以为使用SSL通信的独立Java客户端或WebLogicServe…

    2022年5月1日
    115
  • Java实现两数之和「建议收藏」

    Java实现两数之和「建议收藏」给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。即:每个index上的数字只能用一次示例:给定nums=[2,7,11,15],target=9因为nums[0]+nums[1]=2+7=9所以返回[0,1]方法一:暴力法遍历每个元素x,并查找是否存在一个值与target…

    2022年6月14日
    25

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号