zoukankan      html  css  js  c++  java
  • 文本相似度比较(网页版)

    @祁俊辉,2017年6月22日测试。

    1  说明

    • 本程序以关于SimHash算法的实现及测试V4.0为基础,利用JSP添加JavaBean接口,改为网页版;
    • 因为在网页版比较相似度时,生成txt文档会耗费一定的时间,而且在Tomcat发布后路径不方便控制,所以取消txt文档的输入输出,全程以字符串形式输入和返回;
    • 目前文档库中有100篇txt现代小说,若后期需要增加,直接复制到该路径下,然后在程序“TF_IDF”中把“TextNum”变量改为文档库中小说的个数即可。

    制作过程中遇到的问题:

    • Tomcat发布程序后,不能使用相对路径,需使用绝对路径(计算TF-IDF值),目前路径为“E:SimHash文档库”;
    • 分词包一定要复制到Tomcat安装路径下,才能正常使用,否则会报错;
    • CSS表格显示的“table-cell”一定要是块元素。

    目前存在的问题:

    • HTML页面分辨率变化时,如窗口化,格式会乱(因为CSS中有些布局用的绝对布局,可能是这个原因)。

    以下为本项目的流程示意图:

    2  程序

    程序分为Java程序、HTML程序和CSS程序。

    java程序含有“FenCi”、“TF_IDF”、“SimHash128Web”、“Main”四个类,前三个类对应三个主要步骤,最后一个类主要为javaBean接口类提供服务。

    本次程序不再提供源码,若有需要请联系作者:qce.hui@qq.com。

    3  结果展示

    第一次进入网页时展现为:

    若两个文本框什么都不输入,点击“检测”,则不会有结果,仍然显示以上。

    若两个文本框其中一个输入字符,另一个不输入,则会显示“检测无效”,如图:

    若两个文本框都正常输入,点击“检测”,则会显示相应结果。

    若海明距离在40以内,则会显示海明距离及相似度,如图:

    后台数据会将分词结果、计算TF-IDF值得结果以及生成的SimHash指纹显示,如图:

    若若海明距离超过40,说明两个文本完全不相似,会出现如下图结果:

    经测试,显示结果与没有使用网页时相同,说明网页版程序正确。

  • 相关阅读:
    MySql优化-你的SQL命中索引了吗
    php根据两点经纬度算距离
    二维数组排序
    php 求对数
    socket,websocket,socketio之间的关系
    PHP获取两个时间戳间的所有日期
    通过动画理解Raft公式算法
    Fabric创建通道、组织加入通道
    查看进程线程的方法
    Fabric添加节点
  • 原文地址:https://www.cnblogs.com/qijunhui/p/8448879.html
Copyright © 2011-2022 走看看