# 基于知识图谱的文档搜索系统
## 系统架构 ##
1.构建图谱
(1)无监督新词发现
将文档的句子按NGram分块,构建字典树,筛选出词频、信息熵、PMI均满足要求的短语作为图谱标签库。
(2)构建三元组
挖掘标签之间的共现、类属、同义词等关系,构建三元组。利用共现窗口筛选满足阈值的共现标签,挖掘共现关系;基于后缀法和ngram生成候选中心词,挖掘isA关系等。
2.文档搜索
(1)召回
 a.将query分词,得到标签词(用前缀树匹配分词与图谱中的标签,匹配成功的词)和普通词
 b.根据图谱将标签词用bfs做扩展,得到更多标签,计算所有标签的权重
  权重计算:
  *i.*  标签词:(扩展词最大权重+扩展词权重和)* *w1*
  *ii.* 普通词:*w2* + *w3* *词权重
 c.根据标签以及得分,用倒排索引和bm25计算出query与文档的关系得分,返回一系列候选文档
(2)重排
训练数据:结合了华为方的标注数据和用户搜索日志
特征:文档的热度信息(浏览量、下载量、收藏量、评论量等)以及搜索日志中的特征
模型:ranknet
损失函数:二元交叉熵
## 目录结构 ##
KGSearch/
├── data (训练数据以及输出文件)
├── db (倒排索引库样例文件)
├── rerank (重排模型)
│  ├── rerank (ranknet模型)
│  ├── main (训练模型)
│  └── example (调用模型)
├── style
├── TagGraph (图谱构建)
│  ├── gen_rels_coocc.py (生成共现关系)
│  ├── gen_rels_isa.py (生成isA关系)
│  ├── new_word.py (新词发现)
│  └── tag_doc.py (给文档打标签)
├── BM25.py (召回)
├── gen_rels.py (生成关系)
├── gen_tags.py (生成标签)
├── kg_utils.py (操作库文件工具)
├── kw_api.py (CNDBPedia api )
├── make_docu_txts.py (文件处理)
├── search.py (搜索框架)
├── utils.py (常用工具)
└── wtrie.py(字典树)
----------
代码为系统核心框架及算法的复现,去除了意图识别等特征处理算法以及高度匹配华为数据需求的代码。
Others:
api调用kw实验室的中文知识图谱CNDBPedia,详情见 http://kw.fudan.edu.cn/cndbpedia/search/
## 运行步骤 ##
1.运行TagGraph模块构建图谱
2.rerank模块训练ranknet网络
3.运行search.py server 启动服务,端口号41324
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【资源说明】 毕业设计 基于Python+知识图谱(Neo4j)的文档搜索系统源码+详细文档+全部数据资料(高分项目).zip毕业设计 基于Python+知识图谱(Neo4j)的文档搜索系统源码+详细文档+全部数据资料(高分项目).zip毕业设计 基于Python+知识图谱(Neo4j)的文档搜索系统源码+详细文档+全部数据资料(高分项目).zip 【备注】 1、该项目是个人高分毕业设计项目源码,已获导师指导认可通过,答辩评审分达到95分 2、该资源内项目代码都经过mac/window10/11测试运行成功,功能ok的情况下才上传的,请放心下载使用! 3、本项目适合计算机相关专业(如软件工程、计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也可作为毕业设计、课程设计、作业、项目初期立项演示等,当然也适合小白学习进阶。 4、如果基础还行,可以在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!
资源推荐
资源详情
资源评论
收起资源包目录
毕业设计 基于Python+知识图谱(Neo4j)的文档搜索系统源码+详细文档+全部数据资料(高分项目).zip (52个子文件)
KGSearch-master
suggest_server.html 3KB
utils.py 7KB
start_server.bat 24B
gen_tags.py 4KB
data
output
v2.json 2KB
v1.json 14KB
phrases.txt 120B
rerank
data.txt 375B
main.py 154B
rerank
utils.py 285B
__init__.py 7KB
data
feat_list.txt 248B
type_list.txt 34B
model.h5 128KB
log.txt 7KB
ranknet.py 5KB
__pycache__
ranknet.cpython-36.pyc 5KB
__init__.cpython-36.pyc 9KB
utils.cpython-36.pyc 500B
.idea
rerank.iml 398B
workspace.xml 16KB
misc.xml 288B
modules.xml 264B
encodings.xml 135B
log.txt 4KB
example.py 329B
TagGraph
edge_cocco 50B
tag_doc.py 2KB
gen_rels_coocc.py 2KB
gen_rels_isa.py 7KB
new_word.py 6KB
doc_tags.txt 68B
style
img
bg2.png 1.98MB
bgnew.jpg 900KB
bg4.png 393KB
bg3.png 347KB
bg.jpg 32KB
bg.png 550KB
.project 435B
wtrie.py 3KB
gen_rels.py 3KB
make_docu_txts.py 2KB
config.json 232B
kg_utils.py 707B
__pycache__
gen_tags.cpython-36.pyc 5KB
utils.cpython-36.pyc 11KB
kw_api.py 6KB
README.md 3KB
BM25.py 12KB
db
doc_search_.agz 358B
search.py 10KB
171265889347208773632.zip 416B
共 52 条
- 1
资源评论
不走小道
- 粉丝: 3320
- 资源: 5061
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功