simsearch 基于字面相似度的文本搜索引擎
simsearch 基于字面相似度的搜索引擎 一个计算多个句子单字相似集合的搜索工具. 作为应用在问答系统中的组件。并返回相似性打分值。假设配置了问题 ABCDFG 但是用户输入的内容是ABDG 则输出配置里最相近的n条。 1.支持错字,少字,或多了字的搜索。 2.支持多用户 3.支持单条删除或新加索引 4.支持英文单词,空格用_
考虑这一个聊天配置场景 输入问题:今天天气不错 回答:是的天气很好 输入问题:今天我很开心 回答:为什么你会开心
实际应用当中,输入的是文本可能是 今天的天气真不错 天气真不错呀今天 今天天儿不错呀 天气不错啊这两天 都希望回答:是的天气很好
配置文件中仅仅需要配置一条 今天天气不错,则能自动匹配到相应的答案上>。
安装方法: 环境要求linux系统perl语言环境 安装perl的库文件包,包括: use Socket; use IO::Handle; use IO::Select; use IO::Socket::INET; use POE qw(Component::Server::TCP); use Clone qw(clone); use Encode; use Data::Dumper; 每个包的安装方法是运行命令 cpan 包名字 例如安装IO::Socket::INET 运行命令: cpan IO::Socket::INET centos或者ubuntu系统下安装 Socket IO::Handle; IO::Select Socket IO::Socket::INET POE Clone 这个几个包。
下载安装包simsearch.tgz 解压缩后进入simsearch目录 运行方法: 1启动服务器: 运行命令./simsearch_server.pl &
2重新加载索引(启动时自动加载) 索引配置文件是test.nomsolo/ME_file 文件格式是 2列,第一列是输入句子,第二句是输出句子 重新建立索引运行命令: ./reload.sh 会重新读取 test.nomsolo/ME_file里的内容
查询测试脚本run_search.sh ./run_search.sh 输入的句子是"你有几个妹妹" 输出结果: 你有妹妹吗 我妹妹,还在实验室里 你 有 妹00.461538461538462 虽然配置文件里没有精确的输入 你有几个妹妹 但是给出了个最相近的配置答 案。
支持多用户,支持停用词表,支持相似度排序和条数输出。 run_search.sh里第二条参数showmatch 是搜索精确包含有索引单子的数据。 运行参数说明: ./simsearch_client.pl 你有几个妹 showtop 4 n test.nomsolo “你有几个妹” 是输入文本 showtop 是模糊搜索,应用在错字少字多字的问题 搜索, 4 是输出4条结果 test.nomsolo是用户名 支持多用户不同配置。 基于GPL协议。
There are no views created for this resource yet.
Additional Information
Field | Value |
---|---|
Data last updated | 21 ژوئن 2017 |
Metadata last updated | 21 ژوئن 2017 |
Created | 21 ژوئن 2017 |
Format | Perl |
لایسنس | GNU-General-Public-License-3.0 |
Datastore active | False |
Has views | False |
Id | 10079fb8-cbd8-41ce-ac96-b53eee37df8c |
Package id | 64211856-33a1-490d-bd4e-4dc50460de74 |
Position | 0 |
State | active |
Url type | upload |